rodizio1 / EZ-WifiBroadcast

Affordable Digital HD Video Transmission made easy!
GNU General Public License v2.0
811 stars 200 forks source link

EZ-WiFiBroadcast on NVIDIA Jetson TX2 #199

Open GiraffeRage opened 5 years ago

GiraffeRage commented 5 years ago

Is there a way to utilize EZ-WiFiBroadcast to transmit from a Jetson TX2 that is using one of the wifi adapters that have been listed as working?

I am doing some image processing on a drone and want to be able to transmit the data to a ground station with high reliability.

rodizio1 commented 5 years ago

The wifibroadcast source can als be compiled on other platforms, only platform-dependent thing is the wiringpi library which can be easily removed in the makefile (If I remember correctly, only tracker.c uses it).

GiraffeRage commented 5 years ago

Sorry for my lack of knowledge, but how would I go about compiling onto an existing Ubuntu OS on the TX2?

mattgorski commented 4 years ago

I'm looking to compile ez WiFi on the Jetson nano but we don't have an /opt/vc includes as the Pis have. If you could provide any details on building on Jetson platforms I would be extremely grateful!!

GiraffeRage commented 4 years ago

Jetson Nano, Nice! It has a lot of nice stuff the TX2 didn't have - like a driver for raspberry pi cameras which are CSI and allows faster imagine processing through the CPU. For your question, you will need to enable a driver for your WiFi adapter that is connected to the nano. If you don't have a wifi adapter that can go into monitor mode, you will need to get one. Compiling the adapter driver into the nano involves enabling it when you compile the OS through jetpack (if that's what it's still called). Once you have that wifi adapter working on the nano you will then have to manually install everything to get WiFi broadcast up and running. Ez WiFi broadcast is based off of an original work called WiFi broadcast. If you Google that you should find the original which includes detailed instructions on getting it working. I used a raspberry pi for the receiver since it allowed me to set things up easily and we were able to get about 2 miles with the video before it was unusable. If you need better reception than that you may want to transmit gps location data from a flight controller along with the video so you can have your receiver be pointed directly to the sender. Some things to check before start up: - Make sure you are transmitting and receiving on a wifi channel that isn't being heavily used to avoid interference.- Make sure if you are transmitting on a channel that has another adapter within range that it isn't wifi for a hospital, or fire department (the WiFi broadcast has a tendency to overpower other signals on the same channel and stop them from working)- don't transmit on 5g in the United States as it gets into cell phone band territory and can be a felony. - if you are using image recognition and tracking software, you will need to convert the video output into H264 format and then pipe than into the broadcast ( When you see a | it means pipe - something is output from one thing and immediately input into another thing)Hopefully some of that was useful, but if you have any other questions about broadcasting or drones or image processing, let me know and I can help as much as I can. On Jun 12, 2020 12:04 PM, Matt Gorski notifications@github.com wrote: I'm looking to compile ez WiFi on the Jetson nano but we don't have an /opt/vc includes as the Pis have. If you could provide and details on building on Jetson platforms I would be extremely grateful!!

—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

mattgorski commented 4 years ago

@GiraffeRage Thank you for the detailed response! I actually am already using this port of WFB https://github.com/svpcom/wifibroadcast so I have all the TX and RX side components setup (patched kernel for crda country code). I was looking to get the wifibroadcast OSD built on the Nvidia jetson nano to broadcast osd over gst-launch to stream to a laptop and or android device. All build instructions I can find have the CPPFLAGS set to include PI specific includes:

https://github.com/rodizio1/EZ-WifiBroadcast/blob/develop/wifibroadcast_osd/Makefile#L1

So what I am wondering and searching for is the equivalent build flags for the Jetson platform. Thanks in advance for any experience you have building the OSD part :)