How do you use Graupner SUMD with Pixhawk ?

Hi,

I know how to use Graupner SUMO, but I would like to try SUMD with 3.2.1.

I found PX4 SUMD which I thought would be similar and therefore I connected the Spektrum/DSM port of the Pixhawk with GND and signal only to the Graupner RX port 8. I didn't connect Vcc because its 3V3 at the Pixhawk and I use 5V. Didn't work, any ideas ?

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • the two missing files

    controls.c

    ArduPlane-v2.px4

  • As promised you will find day files for sumd.h, sumd.c, controls.c, dsm.c with above modifications implemented. You can find too the Pixhawk v2 build taggued ArduPlane V3.7.1 DBG20161128


    You need to shorten the ppm input to the ground. If you don't do that, you may observe spurious failsafe off if the tx is of during several tens of minutes.

    I do not use this build in flight up to now, I'm continuing checks before that.

    Benoit

    sumd.h

    sumd.c

    dsm.c

  • Hello,

    when I wrote this message, I was a little too much optimistic. After first good results, I still had some random behaviours on RC input and was not satisfied. So I continue to work on the subject, found some other things, true or false problems. Tonight I have something which seems to work better.

    Modifications are :

    - deactivation of dsm decoding in dsm.c

    - addition of sumd frame decoding with failsafe info , limitation to sumd frame with at least for channel, correction (array indexing) of decoder for 32 channel receiver in sumd.c and sumd.h

    -deactivation of st24 protocol, sbus protocol, usage of sumd failsafe info + minor correction in controls.c

    And tonight it seems to work better with ppm input shorten to the groung to avoid false input.

    It seems the problem is coming from that all input decoders ( dsm/sbus/ppm/st24/sumd) are always active and some spurious input can corrupt RC inputs, specially ppm and sbus inputs. I need more time to re-enable deactivated decoders one by one and found faulty one.

    I will compile a binary and propose it with modified files in next post.

  • Hi Benoit,

    could you please upload the modified files (sumd.c, sumd.h) and your working 3.7.1 version ? I would really like to try it.

    Thank You



  • Benoît said:

    I'm back to continue.
    As all GR XX (without L) receivers seems to have similar software, this issue exists probably too for GR 12, GR 24 and GR 32
    With these information, I dig into the pixhawk code, and found the ardupilot/modules/PX4Firmware/src/lib/rc/sumd.c and sumd.h files. These files belong to the PX4Firmware module.
    A quick look into these files shows that SUMD frames with failsafe header are not recognized as SUMD frames. I don't exactly how protocol detection works, but it seems that the system doesn't recognize the SUMD protocol and disable the dsm input to the next reboot.
    I corrected these two files, sumd.c and sumd.h to decode SUMD frame, even with failsafe header. Then I have to update ardupilot/modules/PX4Firmware/src/modules/px4iofirmware/controls.c to use the SUMD failsafe information to switch on/off the Failsafe status flag of ardupilot.
    After compiling and loading the software into the Pixhawk, ArduPlane 3.7.1 is now compatible with a GR 16 receiver using the SUMD interface with SUMDOF08 setting. There is no reason the change not be usable on ArduCopter and other ardupilot software
    I'm now understanding how pushing the change to ardupilot, which is for me more complicated than correcting the soft, as i'm new with github and as the change doesn't not affect Aurdupilot but the PX4Firmware included module.
    Benoit
  • Hello,

    I had some problem to have a GR16 working with Pixhawk and ArduPlane 3.7.1. It was OK with a GR12L, but not with a GR16.

    I want to use a GR16, even more expensive, to be able to use this mavlink to hott converter

    with all features.

    For the GR16 I use the SUMDOF08 setting.

    But I was not able to get the Pixhawk out of Failsafe.

    After a dive into the SUMD protocol specification, after having analysis GR12L and GR16 output signal with a ftdi cable 'usb to serial converter) and a serial analyser (moserial under linux) I found a difference between GR12L and GR16 :

    At power up, GR12L doesn't transmit any frame up to Tx/Rx link establishment

    At power up, GR16 transmit SUMD frame with Failsafe SUMD Header up to Tx/Rx link establishment. After this establishment, if the link is broken, the GR16 doesn't transmit any frame.

    I've to stop here my reply, I come back in a few minutes.

  • SUMO can output 12 channels just fine (on any non-L receiver, )

    As for HoTT telemetry and ArduPilot,  check outhttp://madhacker.org/mavlink-to-hott-adapter/

  • What if I must send 12 channels to Pixhawk? What about telemetry?
  • Correct :) , and the physical remaining PWM outputs of a gr-16 can output any channels you want, not necessarily 1...7

  • Thanks Andre, this means that I can forward all the 12 channels of the MZ-24 using just 1 servo wire to the Pixhawk, like with the FrSKY Sbus?
This reply was deleted.

Activity