My Software Setup using 4G, Mission Planner, GStreamer

Hi,
Nice work :slight_smile:
I see you use UDP with Gstreamer, i have also tested that but i get lost packages and packages come in wrong order.
Have you done anything special on the receiving end?
How do the gstreamer string look like there?

Sincerely
Andreas

Hi

I find this setup really awesome. But for a beginner like me in UAV`s is there any step by step guide on achieving this kind of setup?

Sincerely
Ren

Im working on an guide like that.
But first I have some code to complete and finish up. But it wont be to long before I’m done.

If you are interested I can give a heads up when it is complete.

Can you me your email so I can email you sir

Sincerely
Ren

Hi @ogulbrandsen ! nice setup! just wanna ask if why did you need a unique ip address that is not shared with others ?

Thanks! In my setup I use a special APN on my modem onboard the quad and that gives me a unique and public IP. This means I can access my RPi directly from my computer with putty for instance, but it is actually not needed. I use Telenor in Norway as my mobile provider with a APN called “internet.public”. (the APN has no password and I use normal mobile subscription ) In the setup above there is a script running on the RPi that polls a public internetserver I’ve setup that holds a que of commands from the base station. The quad also reports connection quality etc to the server. The local programming running on the PC polls the same server and uploads commands and downloads info about connection quality etc. So they both communicate through a common public server on internet. Neither the quad or PC requires a public IP for this to work, access to internet is enough.

However, they way I’ve setup Mission Planner and G-Streamer requires that the quad can connect directly to the base station. This means the PC must have a public IP and you must open the firewall to make this work. If you are using a 4G modem on your PC, you need a special subscription or APN, if you are using ADSL or similar, you need to set up a DMZ in your firewall and hope your internet provider gives a your router a public IP. (most providers in Norway do)

There are ways to make both Mission planner and Gstreamer work through a proxy or VPN. This would eliminate the need for a public IP all together. I have not explored this as I already had a public IP on both the quad and the PC

Hope this helps!

2 Likes

Thanks for the info but how didi you connect mission planner to your drone station/pc base station ? , sorry for the newbee question. :slight_smile: thanks

i was curious about the unique ip address when you have a webserver ,so that’s for putty / ssh reason… thanks for replying…

ill try this setup first in a LAN before going via internet

Hi Jeff, the IP of the PC is automatically detected by the server from the REST API calls. This IP is inserted into the command line before it is run on the RPi over the REST API by the Python script. (The commands to start APM and gstreamer)

thanks @ogulbrandsen… really appreciated :smiley:

what pipeline did you use in your client PC?

These are the parameters I used on the PC:

C:\gstreamer\1.0\x86_64\bin\gst-launch-1.0.exe -e -v udpsrc port=5000 ! application/x-rtp, payload=96 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! fpsdisplaysink sync=false text-overlay=false

1 Like

thanks ill try later, but how were you able to display it from the mission planner? what version of gstream and MP did you use? when I set the GStreamer source nothing happened.

I already tested manual streaming using a working pipeline via RPI and windows gstreamer.

Im using the latest MP 1.3.52 and gstreamer 1.9.2

Hi, if I do not start the the video player, the video appears automatically in my mission planner.

Ole

1 Like

Hi,

I am working on a 5g mobile phone network demo using the Navio connected through the edge and my mission planner GCS is inside the core. I have it all working through a vpn but the video is awful. I previously set this up on a wifi network and the video was also rubbish then. do you have any suggestions to get a cleaner picture? I am using a picam rev 1.3 navio2, rpi 3…

thanks for any assistance

/Steve

1 Like

Hey Ole,
which is the string u are using in MP to see the video? On MP I’m not able to enable gstreamer.

Thanks

any update on this guide?

There is.
But as is, things are mere prototypes.
But if you know python you can take a peek at https://github.com/drobban/drone_xsystem_v1

Made my first “blog” post, yesterday at
https://openbsd-drone.github.io/#/articles
Mostly me writing about developing software in OpenBSD for controlling the navio2 with a joystick.

My focus has shifted from Linux as GCStation OS to OpenBSD. But the software and configs will be roughly the same for Linux/OpenBSD. So keep an eye open on the articles page

1 Like

You have to send the video to port 5600 to display the stream directly in the Mission Planner HUD.

1 Like