Over the last couple of months I have been working on a project that might be of interest to you: https://befinitiv.wordpress.com/wifibroadcast-analog-like-transmiss...
Basically it is a digital transmission of video data that mimics the (advantageous) properties of an analog link. Although I use cheap WIFI dongles this is not one of the many "I took a raspberry and transmitted my video over WIFI"-projects.
The difference is that I use the cards in injection mode. This allows to send and receive arbitrary WIFI packets. What advantages does this give?
- No association: A receiver always receives data as long as he is in range
- Unidirectional data flow: Normal WIFI uses acknowledgement frames and thus requires a two-way communication channel. Using my project gives the possibility to have an asymmetrical link (->different antenna types for RX and TX)
- Error tolerant: Normal WIFI throws away erroneous frames although they could have contained usable data. My project uses every data it gets.
For FPV usage this means:
- No stalling image feeds as with the other WIFI FPV projects
- No risk of disassociation (which equals to blindness)
- Graceful degradation of camera image instead of stalling (or worse: disassociation) when you are getting out of range
The project is still beta but already usable. On the TX and RX side you can use any linux machine you like. I use on both sides Raspberrys which works just fine. I also ported the whole stack to Android. If I have bystanders I just give them my tablet for joining the FPV fun :)
Using this system I was able to archive a range of 3km without any antenna tracking stuff. At that distance there was still enough power for some more km. But my line of sight was limited to 3km...
In the end, what does it cost? Not much. You just need:
2x Raspberry A+
2x 8€ wifi dongles
1x Raspberry camera
1x Some kind of cheap display
Happy to hear your thoughts/rebuild reports :)
Decided to change to Open LRS 433MHz to free up the 2.4GHz band. I've just picked up 2 TP-Link 722's - will test out tonight and let everyone know how they go - does anyone know if the images posted on the dropbox account from page 6 have the kernel patched?
Yes, I just used a regular Futaba 2.4Ghz tx/rx. I haven't noticed any interference on the RC controls themselves so far. I haven't tested whether the RC interferes with the video yet.
I did exactly this and it made a dramatic improvement due to no interference. Had some good flights today too and got 586m line of sight. I could probably have gone further but didn't want to push it. I used 2 Alfas and 1 TP-Link with 1 stock TP-Link omni antenna (2.4GHz), 1 5.8GHz 3-turn helical and 1 5.8GHz 14dbi patch antenna. Wasn't expecting much using 5.8GHz antennas with 2.4GHz video but it still made a huge difference.
Malkauns, you had the two Alfas on the ground receiving and the single TP-Link as the transmitter?
Ah, so you have 3 receivers?! I guess if 2 receivers is good then 3 is even better?
As for ground antennas, L-Com and readymaderc seem to have a wide variety of 2.4Ghz antennas I was thinking of this or this because they're "diversity" antennas so maybe just one antenna could be used for two receivers and they have RP-SMA plugs which are what the TP-Link uses (although I don't know if it's male/female. thoughts?
Do people think on the tx side that the stock antenna from the Alfas are ok?
Patching the kernel definitely helps increasing the range. I made the instructions on my page a bit more clear on that point. By default the patch sets the output power to 20dBm. Depending on your country and hardware you could set this value ("max_power") even higher (30dBm in case of the Alfas).
Thanks befinitiv for all the work you've put in here! I have followed your instructions on your wordpress page and setup wifibroadcast on two raspberry A+ boards. My current config uses the TP link 722's. The Pi camera is working fine, and the TX side seems to be running OK. My problem is with the RX side. I just cant get the video to display! I've recompiled the hello video application using the video.c file you provide. I get an error from tv service saying it cant start, error -1, and then I get a bunch of packet dropped messages, no video is displayed. Any clue what I'm doing wrong here? Both my TP-links use the patched drivers you provide.
Sorry to butt in but it might be good to first try using the images provided by Tommy Larsen. I'm not sure if they're optimal but I've confirmed they work on my set-up at least as far as displaying images.
I think you are almost there :) Could you post us the complete command lines you are using for both tx and rx side?
I am really new to RPi2, and to Linux. I wanted to increase the power of my transmitter, but I found the instructions a little difficult.
For example, I could not figure out what section(s) I have to do in here: