Coder Social home page Coder Social logo

ramonidea / li-fi-arduino Goto Github PK

View Code? Open in Web Editor NEW
25.0 2.0 12.0 1.18 MB

Personal project, Low-level Visible Light communication system.

Home Page: http://www.quramon.com

License: MIT License

Python 55.19% C++ 44.81%
arduino lifi led solar-panels data communication-networks

li-fi-arduino's Introduction

LI-FI-Arduino

This repo is not orginized well, it mainly is an archive of the project I have completed.

Wireless communications, such as Wi-Fi and Bluetooth, are commonly used in the daily life. However, while more and more wireless devices occupy the available frequencies, the frequency spectrum is reaching a maximum capacity.

Thus, Li-Fi, communicating using light waves between two devices, becomes a future solution to transmit data. LED devices with a data wave generator may keep the lighting functionality of a LED while sending data in the background. With the full range of the visible and infrared light spectrum, we may transmit data day and night. With Li-Fi, data communication happens indoors with low latency and high speed and is hard to hijack from outside the room. On the receiver side, a small solar panel both receives the signal and recycles the power to charge the battery for future use. It thus saves energy lost in standard wireless data transmission. The system consists of two Arduino (microcontroller) devices as the emitter and receiver. The user interface, based on the Python programming language, is used to control sending and receiving data. Infrared LED signals the beginning and end of the data transmission During the transmission, LEDs switching on and off signal binary 0’s and 1’s.

This system can transmit text and images successfully. However, with the limitation of the consumer-grade solar panel’s response time, it is hard to reach high speeds in data transmission. With high-end and low-response-time components, it will be able to transmit live videos at high speeds. The Li-Fi system not only provides the basic lighting function but also sends the data and power to the receiver side.

----------------------------

Usage

  • pypic - Python end for receiver side. Pypic.py is reeiver Side

  • transmitter Python for transmitter(emitter side)

  • re_calib Arduino Code for Light threathold calibration.

  • re_data Arduino code for Light Receiver side

  • tran Arduino code for Light Emitter side

  • tr/transmitter1 Arduino code for Light Emitter side testing

Please check the paper vlc_paper.pdf

This browser does not support PDFs. Please download the PDF to view it: Download PDF.

li-fi-arduino's People

Contributors

ramonqu7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

li-fi-arduino's Issues

how to use python codes to interface with arduino uno

I'm trying to run the transmitter and receiver python programmes in python..

while running transmitter.py code given in code section, i'm getting error like

***Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\Transmitter.py", line 36, in
ser = serial.Serial('COM4',115200,timeout=.1) #Begin the Serial connection
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialwin32.py", line 31, in init
super(Serial, self).init(args, kwargs)
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialutil.py", line 240, in init
self.open()
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialwin32.py", line 62, in open
raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'COM4': FileNotFoundError(2, 'The system cannot find the file specified.', None, 2)

while running pypic.py code,it is showing error

**Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\Pypic.py", line 15, in
ser = serial.Serial('COM3', 115200, timeout=.1) # Start the serial connectiion
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialwin32.py", line 31, in init
super(Serial, self).init(*args, kwargs)
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialutil.py", line 240, in init
self.open()
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\lib\site-packages\serial\serialwin32.py", line 62, in open
raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'COM3': FileNotFoundError(2, 'The system cannot find the file specified.', None, 2)

please help me what to do

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.