posix_memalign
New Member
Another project I've thought about for a long time and would like to start -- now that it is summer holidays and all -- is a laser communication project.
I'd like to create a laser communication system between two standard x86 computers, i.e. my own self-created physical layer as per the OSI model.
I imagine each computer connected to a small box/housing either by USB or DE-9/RS232, within this box/housing there shall reside a photodiode and a class 3R laser at close to 5 mW; with one such box per computer, obviously.
The photodiode will generate binary data for the data-link layer whereas the laser will transmit binary data from the data-link layer; this will take place through some code in an Atmel ATmega88 microcontroller or equivalent, the OS in question will be GNU/Linux and the interfacing will be dealt with through a kernel module which I intend to also write myself.
Proof of concept version will be merely a user land debug-program to see if I can receive and transmit single bits consistently. The initial distance used will be short, on the range of a few meter, at least for the poc version.
One major concern though as to the feasibility of the project is the frequency at which the laser diode can be turned on/off -- I don't know where to get this kind of technical data, and I don't know what "typical" values are.
I have a couple of cheap laser pointers with < 5 mW output which I would like to use, but do I need to get something more expensive? I fear that if I turn on/off the laser at a very high frequency the resulting light will be completely continuous as the frequency is raised.
Does anyone have any experience and can give me some advice in what would be a "typical" expected maximum frequency? What the typical latency is for the laser to output a continuous stream of photons? Shut-off latency?
Any other thoughts, ideas?
Thanks in advance.
I'd like to create a laser communication system between two standard x86 computers, i.e. my own self-created physical layer as per the OSI model.
I imagine each computer connected to a small box/housing either by USB or DE-9/RS232, within this box/housing there shall reside a photodiode and a class 3R laser at close to 5 mW; with one such box per computer, obviously.
The photodiode will generate binary data for the data-link layer whereas the laser will transmit binary data from the data-link layer; this will take place through some code in an Atmel ATmega88 microcontroller or equivalent, the OS in question will be GNU/Linux and the interfacing will be dealt with through a kernel module which I intend to also write myself.
Proof of concept version will be merely a user land debug-program to see if I can receive and transmit single bits consistently. The initial distance used will be short, on the range of a few meter, at least for the poc version.
One major concern though as to the feasibility of the project is the frequency at which the laser diode can be turned on/off -- I don't know where to get this kind of technical data, and I don't know what "typical" values are.
I have a couple of cheap laser pointers with < 5 mW output which I would like to use, but do I need to get something more expensive? I fear that if I turn on/off the laser at a very high frequency the resulting light will be completely continuous as the frequency is raised.
Does anyone have any experience and can give me some advice in what would be a "typical" expected maximum frequency? What the typical latency is for the laser to output a continuous stream of photons? Shut-off latency?
Any other thoughts, ideas?
Thanks in advance.