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 :)
I found this though (same chipset) : http://www2.advantech.net.au/products/1-2R51YZ/EWM-W149P/mod_0A352C...
Looks like it's available in US/AUS - looks like we'd just need to 3D print a housing... What do you think?
There are a lot of suppliers using this chipset on alibaba.com. Including a few that are willing to sell even single units. These direct prices are pretty low, maybe $8~$15 per piece. I've ordered from Alibaba before although it was not as easy as ordering from a regular online store (the supplier I dealt with wouldn't accept credit cards)
$45 AUD per unit + 10% tax. with 2 week lead time. The amazon units would be a lot easier/cheaper! The challenge is out for someone to find an alternative supplier for us non UK/Euro guys!
As per Randy's comment just a moment ago, would any adapter with this chipset onboard be likely to function the same??
I looked through the raspivid parameters, and I saw the annotations, so I tried it and just did -a "testing", and it works, it sends the video with "testing" text on top/center of the video.
So, if raspivid can put text on top of the video, this means that it should be possible to change the code to make an OSD
awww nice, then I can get at least a battery meter on screen when I figure out how to read it into the pi from my naze32! :)
I've spoken via Skype with this one - they will ship 2 units to Australia for 20USD. I imagine it's would be the same to US/Rest of world. Leadtime will probably be about 3 weeks as it's China Post. Payment with Western Union.
Just wondering; is there a way to use WiFiBroadcast with gStreamer?
I mean, considering we could use a HD USB camera, it would be useful.
You mean like this?
gst-launch-1.0 -v v4l2src ! 'video/x-raw, width=1280, height=720, framerate=30/1' ! omxh264enc target-bitrate=500000 control-rate=variable periodicty-idr=10 ! h264parse ! fdsink | sudo ./tx -r 2 -f 1024 wlan0
Could you please also check if it supports the errored/crc fail frames? Befinitiv, how would he check this?
Tobias, can you please confirm you're using this in monitor mode?
Awesome, thanks for being the guinea pig Tobias :) Do these work plugged straight into the raspberry? There's a comment on the amazon page that says they have to plugged into a powered usb hub, which would make them difficult to use on a uav.
Are they RP-SMA male or female connectors? Ie do the gold connectors on the usb stick have a hole or a pin? (hoping/assuming pin, like most adaptors).
So for anyone else looking to use this on a mac, it works perfectly in a linux vm under Parallels. Virtualization has really improved! I seem to get full rate video with no drops or stutters under parallels on a macbook pro mid-2014 retina.
I did however wonder why I was only getting a few meters range, spent the day trying different settings, only to eventually work out I was using 5.8ghz spiral antennas on a 2.4ghz adaptor. Doh.