Hey
I've got a project I'm just starting to work on. I want to send arbitrary data between computers over visible light (visible light communication). I'm leaning towards connecting a computer to an arduino and using that as a network card that will handle converting data to/from light, similar to a USB WiFi card. But I'm not sure how to do this. Is it possible to use the arduino as a usb network card? Or would it be easier to get an ethernet shield and forward traffic from that? Or would you suggest something completely different?
It'd be amazing if someone could help with this :-)
The gist that I am getting out of this is that you want to make your own fiber connection.
Buying an Ethernet shield would probably be your best bet, that way you can probably find all the code you need to connect it to an Ethernet cable. Are you planning on using two arduinos, each capable of sending and receiving data over light in this way? :
Computer 1 --ethernet-- Arduino 1 - sensor&led ⇄ light ⇄ sensor&led - Arduino 2 --ethernet-- Switch
If that's the case, look into serial transfer over the RX and TX ports on the arduino. You can probably find some code for sending data over them. On the arduinos,
You'll need to do a lot of research here though, there may be something in the protocol for sending data over ethernet that prevents this from being done (such as lack of speed on the Arduino). But I think this should be doable. Best of luck to you.
Thanks for the suggestions. The project is finished now and we ended up using a Beaglebone Black for development. We created a Linux network module and loaded it into the kernel. We could then use the GPIO on the board for transmitting and receiving bits from the physical interface. I can provide a link to the report we wrote as soon as it gets published by Chalmers :)
If you could link it, that would be cool.
In terms of visible light communications, were you using line of sight laser light or as rollymaster was referring to, fibre?
Potentially this technology can be used to perform efficient communication between cars using their head and tail lights, or to construct intelligent mesh networks using the light fixtures already in place. It's especially interesting for environments that are sensitive to radio waves, such as hospitals and airplanes.
We ended up using LEDs for short-range wireless transmission. It's quite high-powered, but it's the same electronics you would use for creating a lamp. The receiving end performs filtering and automatic gain control in hardware. You can see a quick demo of the hardware here:
My university hasn't published the report yet, but you can find it on the link below. I can especially recommend reading it if you're interested in doing a similar project yourself since it explains a lot of the basic methods and technology in a relatively easy to understand way.
https://drive.google.com/file/d/0B4csFmrdRHercDZQc1pmejlLc0E/view?usp=sharing
The Arduino Yun looks very interesting. I might end up buying it for future projects. Do you know of any cool projects people have used it for? And thanks for the tip!
- Surveillance using cameras, motion sensors;
- Bathroom Occupancy Detector (yes);
- Controlling your boiler remotely or even your lights or your house;
- wifi range extender or repeater;
- Messanger;
- housemaid.
And a lot more network related projects.