Pushing a Parrot Disco to the limit

Hello tridge.

I’ve read everything you’ve published about running ardupilot on the disco. I’m confused as to what the difference is between the press three times to boot ardupilot vs uploading ardupilot from scratch. Can you help?

Mr. Tridgell, regarding the output of Mavlink per this entry you have on the ArduPlane site;
“The startup script assumes that your Disco appears on the 192.168.42.0/24 network for WiFi and 192.168.43.0/24 network for USB networking. It tells ArduPilot to announce itself as a MAVLink device on those two networks. It will pick up the first MAVLink capable ground station that connects on UDP port 14550 on those networks.”

Does this statement mean that the CHUCK is outputting Mavlink on one of its USB ports?

I’d like to connect a Dragonlink micro UHF receiver to the CHUCK, and bring back Mavlink via Dragonlink V3s serial data transport capability. However, current documented setups connect the Dragonlink receiver to a TLM port on a Pixhawk, which is outputting mavlink, I believe.

I believe that if the CHUCK running ArduPlane is outputting mavlink over one of its USB ports, I can convert to serial data > feed into the Dragonlink > output from the Dragonlink on the ground > send mavlink via BT from Dragonlink ground unit to GCS (ie MP) . Voila…pushing the Disco even farther!

I have a need to use the Disco to scout some property, but I’m looking at 2-4 sections of land per property (1280-2560 acres) which would require me to fly upto 4-6 miles from the GCS. Easy for a UHF radio link, but I need to monitor the Disco’s location and AHRS (PFD) to be “legally” controlling the thing (and for my own peace of mind etc).

Your guidance is greatly appreciated!
r
Dave Folts

Howz the Disco QP build working out?

1 Like

Hi guys, Could someone give me advice or help on running Arduplane on the Parrot Disco???
I followed the document on Ardupilot.org but there is not quite enough details for me to make it work. Do I need to kill the DragonStarter process before launching? How to manually start vid_rec before taking off? I have tons of errors in Mission Planner after loading the disco.param file, is this normal? I love this wing and it flies great with an RC remote and the Parrot AutoPilot, but would really like to use ArduPilot and MissionPlanner with the Disco to do some long range missions. I also have a 4G modem working on my Disco, but I just can’t seem to get the basic’s of Arduplane figured out. If someone could help, that would be great!
I can post whatever info is needed. Firmware versions etc. I have telnet access and FTP access to my Disco and can edit and test whatever is needed. Thank you!

I tried asking for help on the Official Parrot Disco thread on rcgroups.com, but unfortunately they know less than me :wink:

There is also this guide: https://community.parrot.com/t5/Disco-Knowledge-Base/Configuring-APM-for-Parrot-C-H-U-C-K/ta-p/161782
But to switch from the factory firmware to Ardupilot it should just be 3 short presses of the button/airspeed sensor.
Not sure about the video

Thanks, that is a great link as well, but didn’t help me solve my problems using ArduPilot and setting up Mission Planner. So I can plug in my UHF RangeLink Receiver into the CHUCK and everything works perfectly on my controller without having to do anything, as far as flying the Parrot Disco with an RC Remote Controller, everything is mapped perfect out of the box with the Default Parrot ‘Dragon’ AutoPilot program running. But if I kill the Dragon program, and then startup Arduplane like the articles suggest, I get a lot of errors in Mission Planner when writing the know good params to the Disco, and I can’t calibrate my radio at all, it’s like it’s not there, even though I know it works with the Disco. It’s like manual RC Control is not baked into the latest Disco builds, or maybe it can’t handle PPM input like Dragon can, or the latest Parrot Disco firmware is causing issues with ArduPlane and folks that had it working were using older Parrot firmware, or I don’t know what I’m doing…

I know he’s busy, but this might need a knowing word from @tridge

Hi Brian,
I suspect the startup scripts on the disco have changed, and thats why the existing instructions don’t work. We probably need to change just a couple of lines in the startup script to make it work.
If you could pull the contents of at least the /etc directory from yours and put it in a zip file or tarball then put it somewhere I can get to it then I can see if I can spot what needs doing.
There used to be 2 methods:

  1. triple-press the airspeed sensor to make it look for and load ardupilot. You had to do that on every boot
  2. edit the startup script to run ardupilot instead of dragon every time
    the scripts should make it clear what options are available now.
    Cheers, Tridge

Hi,

When updating Dragon autopilot (chuck fw) to latest version, procedure is not the same. I had been updated wiki but forgot to make to make a pull request. It was before tridge made guide to update wiki and I am not able to find changes at this time.

To resume :

APM folder is not the right folder to put the file
There is an existing ardupilot folder
The correct name of the file has to be arduplane and not apm-plane-disco like parrot share.

Check issue I made here :

  1. /data/ftp/internal_000/APM is a wrong folder now. You should put fw in /data/ftp/internal_000/ardupilot/

  2. upload in binary mode and verify checksum. They say we have to upload in ascii mode which is wrong. It’s binary mode
    Inspired from Parrot I made a script to upload in binary :

    #!/bin/sh

    /usr/bin/ftp -vdin << EOF
    open 192.168.42.1
    binary
    mkdir internal_000/ardupilot/
    put arduplane_fw/arduplane
    EOF

  3. Make it executable :
    Through telnet, change directory to ardupilot and run
    chmod +x arduplane

Then you could press 3 times to make it working

What is not working on 3.8 :

  • Reverse thrust (I have it working on other custom frame with blheli flashed esc)
  • sonar
  • Video

Disco with magnets is really bad IMO. Hard to calibrate MAG !

There is 2 FTP on Disco : port 21 and port 61

2 Likes

thanks for the info!

it should be a lot better with plane 3.8.x. I raised the COMPASS_OFFS_MAX to 2200 by default on the Disco. You can raise it even more if need be.
Cheers, Tridge

Thanks Tridge.

Yes I found your parameters on your FTP :smiley:
But even with this, not really good … In flight it’s different but when you are the ground even with proper calibration, disco show wrong direction (around couple of degrees : 15°). I move from 3.7.1 to 3.8.x and don’t find any improvement on mag with disco. I will try in 2 months, I’m far away to disco at this time.

Do you know why sonar is not working on Disco ? Is this related to this : Optical flow is not available in the new version firmware ArduPlane 3.8.1-dev
Main advantage on Disco is lightweight frame and standard reverse thrust support but could not be enable. I tried with joystick support, not RC so could not adjust some parameters, I will try with Sbus … Or do you have recommandation on reverse thrust with disco ? Does esc support reverse thrust on arduplane ?

Thanks for the info on where to transfer the arduplane file in binary mode, to allow the triple press of the airspeed sensor.

Where can I obtain the best parameters file to use with the Disco?
How do I load this parameters file? Do I just copy it into the same directory as the arduplane file?

Any ideas on why my RC RX/TX works perfect with Dragon but is not detected when Arduplane loads? I’ll try QGroundControl but don’t think it matters…

I use this parameter file:

you load it with a GCS such as MissionPlanner, QGC or MAVProxy

what type of receiver is it? What pins did you connect it to?
Cheers, Tridge

I’ve read Disco ESC is on I2C. Don’t know if true but will be a great improvement if reverse thrust could be use on my Disco. Congrats to the team that port Arduplane to Disco !

yes, it is I2C, and we do have the information needed to support reverse throttle, it just isn’t implemented yet.

2 Likes

thanks for answer Tridge. Nice WE.

Could we hope a support for it one day ?

I am using an Aurora 9 with a 12 channel UHF RangeLink system. I plug a standard servo cable into the PPM out port on the RangeLink Receiver, and the other end into the horizontal 3pin plug left of the power input on the CHUCK. I can fly the Parrot Disco with this setup using the stock Dragon autopilot, and even configure the various RC channels within the FreeFlight app, but as soon as I startup Ardupilot and connect with Mission Planner, it does not see the RX, or allow me to configure it. I’ll try to post the exact error message. Do I need to use a different type of TX/RX? or use a PPM to SBUS adapter for it to work with Ardupilot??

Thanks again for all the help so far.

-Brian

yes, unfortunately we don’t support PPM input yet for Disco.
What we support are:

  • SBUS
  • DSM (spektrum satellite)
  • ST24
  • SUMD
  • SRXL
    The hardware can support PPM input but we haven’t yet implemented that in ArduPilot. Sorry!