No-Ip name resolving issues

Hello, i am having trouble using my no-ip name instead of ip address when launching arducopter software.

I can connect telemetry trough LTE no problem if i launch the software with the correct ip address, but launching it with the no-ip name like mynavio.no-ip.net doesn’t work.

No-ip is correctly configured and other applications can use the name mynavio.no-ip.net and correctly resolve the name.

Any help would be greatly appreciated.

Corrado

hi corrado,
you can get into mavproxy
( http://dronecode.github.io/MAVProxy/html/getting_started/download_and_installation.html )
it works with dynIP services and you can stream it to multiple destinations (and much more!)

Thanks for your answer, but since Gstreamer starts with no prob and can resolve my GCS ip, i was hoping in something a bit easier than running a proxies.

Everything works as it should now over LTE network, i just have to fix that little thing so that i don’t have to edit the local.rc everytime my ADSL IP changes.

As said, Gstreamer works so i hope there was a little trick to add to the string that launches Arducopter application in local.rc

Corrado

mavproxy is a program that runs on your rpi and passes mavlink protocol to your DDNS target! You can also run it on Startup ( etc/rc.local ) together with ArduXXX (-Copter);
after installation:

$sudo apt-get install python-dev python-opencv python-wxgtk3.0 python-pip python-matplotlib python-pygame python-lxml
$pip install MAVProxy

you only need to add something like:
mavproxy.py --sitl=127.0.0.1:14550 --out=udp:“yourdns”.noip.com:14550 --nodtr

or replace “–sitl” with “–master” (i don’t remember right now) and you should be good to go!

If anyone has a reliable method to solve the ddns probllem in another way i would also be interested!

Thank you very much!!!

So i just instal MAVProxy as you indicated and add the line to rc.local and i should be good to go?

Than i start arducopter with my uav.no-ip.net as i am doing now?

(i’ll test --sitl and --master to see what works)

Thanks again.

mavproxy line should look like that: (–sitl or --master)

mavproxy.py --sitl=127.0.0.1:14550 --out=udp:“yourdns”.noip.com:14550 --nodtr
OR
mavproxy.py --master=udp:127.0.0.1:14550 --out=udp:“yourdns”.noip.com:14550 --nodtr

your arducopter line should look like that (if you haven’t compiled yourself) :

sudo ArduCopter-quad -A udp:127.0.0.1:14550

I deleted my old sdcard;
if it doesn’t work - just post, I will reconfigure my Copter and solve it;

Will try tomorrow and let you know, thank you very very much for your time!!!

Corrado

Hello, tested both lines and didn’t work.

mavproxy installed with no errors.

Corrado

add sudo →
sudo mavproxy.py --master=udp:127.0.0.1:14550 --out=udp:“yourdns.noip.com”:14550 --nodtr

try the command in the console - check if no errors - then add it to rc.local! (just tried worked for me)

if i start it from the console it works, if i add to rc.local with & it doesn’t work.

Corrado

switch the order of ArduCopter and Mavproxy in the rc.local file

Before arducopter and after mavlink?

ok it seems like it doesn’t start in rc.local (not even with --daemon); not sure right now I’look into it the next days;
But you can do it another way i just tested:

make a file:
sudo nano mavproxy.sh

write in the file:
#!/bin/bash
sudo mavproxy.py --master=udp:127.0.0.1:14550 --out=udp:XXX.noip.com:14550 --nodtr

CTRL-X and Y to save

make executable:
sudo chmod -x mavproxy.sh

make a cronjob on boot:
sudo crontab -e

write in the last row:
@reboot sudo sh /home/pi/mavproxy.sh (!!! edited this line at 19:18)

CTRL-X and Y to save

keep the Arducopter line in rc.local with localhost IP as described before (udp:127.0.0.1:14550)
but remove the mavproxy line in rc.local! (or just put a # at the beginning of the line to comment it out!)
reboot and it should work!

Thank you very uch, i’ll try that tomorrow and let you know how it goes.

Corrado

Tested last solution. It doesn’t work at boot.

If i start mavproxy.sh from command line than it works but is extremely slow. Mission planner takes up to 5 minutes to get all parameters.

Any other idea?

Corrado

make sure you are logged in as user pi;
check if the file exists in /home/pi/:

cd /home/pi
dir

check if “mavproxy.sh” is listed below the command “dir”

open mavproxy.sh:
sudo nano mavproxy.sh

add --daemon to the command:
sudo mavproxy.py --master=udp:127.0.0.1:14550 --out=udp:YOURDDNSIP:14550 --nodtr --daemon

*reboot and check if works

IF that doesn’t work:
open crontab:
sudo crontab -e

remove the line
@reboot sudo sh /home/pi/mavproxy.sh
add the command instead:
@reboot sudo mavproxy.py --master=udp:127.0.0.1:14550 --out=udp:yourDDNSIP:14550 --nodtr --daemon

reboot and check if it works

Thank you, i’ll check tomorrow and let you know.

What about the slowness of mavproxy, is it normal?

Corrado

i remember i had these “slowness” issues when multiple mavproxy instances were running or i had a lot of “–out” parameters;
→ recheck if you removed the mavproxy line from /etc/rc.local
→ if you use the mavproxy.sh file - make sure crontab didin’t start mavproxy parallel;
recheck if you have any typos in rc.local (with ArduCopter) and crontab (with mavproxy)
just tried (though over wifi) mavproxy it wasn’t noticeable slower than from ArduCopter

ok, will try thanks!!!

Ok, with --daemon it works!!!

Now i only have to figure out why is so slow using mavproxy.

How do i check if crontab started mavlink parallel?

Corrado