Hi
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-transmission-of-live-video-data/
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 :)
See you,
befinitiv.
Replies
No just using the picam. I haven't seen anyone doing hdmi into the raspberry successfully/easily yet unfortunately, although there are some projects working on it. When hdmi in works, it will open up a whole new world of possibilites :)
That is amazing! Thanks a lot for the detailed results!
Thanks a lot for the idea and code :)
So this is what I get on the TX and RX side, but no video!
tx.jpg
rx.jpg
Could you please show us as well the output of tx right at the beginning? It might be a problem with your video data from raspivid. Your high tx rate reminds me a bit of an effect that occurs when the data source process (in this case raspivid) terminates.
Thanks befinitiv! Its fixed and working now. Turns out there was an error in my tx side command! Sorry! Now experimenting with the command and trying to figure out how I can do some outdoor testing. Do the scripts you provide on fpv_scripts work with getting the Pi directly into the tx and rx programs upon boot?
My ready made images on Dropbox is running everything needed on boot
I tried your images, but i get really short range, anything i could be doing wrong there?
I looked into that issue and resolved a sharp edge from tx. It wasn't catching EOF at input, leading to zero sizes packets being flooded at maximum rate. That's why you observed 0B/s at the rx side. If you pull from my repo you'll get the patch.