3689507018?profile=original

A new PPM encoder firmware has been released. This applies to APM2.x, APM1.x and the standalone PPM encoder.

Basically, a PPM encoder converts the 8 incoming PWM signals to one PPM signal that is then fed to the main processor. While doing so it detects if a cable from the receiver the the APM gets disconnected or if the receiver stops working.

Changes:

  • New interrupt system that handles certain Futaba receivers better (simultaneous changes on groups of R/C channels in fast intervals) (this was already present in v2.3.13)
  • Adapted behaviour in case of channel loss: If one channel is lost, it will be set according to the following table. The other channels will continue working.

    Channel 1RollSet to center (1500 μs)
    Channel 2PitchSet to center (1500 μs)
    Channel 3ThrottleSet to low (900 μs)
    Channel 4YawSet to center (1500 μs)
    Channel 5...Remain at last value
    Channel 6...Remain at last value
    Channel 7...Remain at last value
    Channel 8...Remain at last value

    In ArduCopter and ArduPlane a fail-safe action can be triggered by the throttle low signal.
    This should be carefully configured as explained in the wiki for ArduCopter and ArduPlane.

    Also note that this has nothing to do with loosing radio connection between the transmitter and the receiver. The receiver's behaviour when it gets out of range depends on the transmitter/receiver hardware and setup. So make sure to go through all the scenarios before flying

Functionality

APM 2.x LED Status:
  • RX - OFF = No input signal detected
  • RX - SLOW TOGGLE = Input signal OK
  • RX - FAST TOGGLE = Invalid input signal(s) detected
  • RX - ON = Input signal(s) lost during flight and fail-safe activated
  • TX - OFF= PPM output disabled
  • TX - FAST TOGGLE = PPM output enabled
  • TX - SLOW TOGGLE = PPM pass-trough mode

 

APM 1.x LED Status:

Normal mode:
  • Error condition (All channels lost or throttle channel lost): blue LED blinks very fast
  • Normal behaviour: blue LED blinks according to throttle position

Radio Passthrough mode (for ArduPlane only, using firmware with channel 8 override):

  • If throttle position < 1200 μs, status LED is off
  • If throttle position > 1200 μs, status LED is on

 

Normal servo Input (PWM) mode:

  • PPM output will not be enabled unless a input signal has been detected and verified
  • Verified inputs are lost during operation (lose servo wire or receiver malfunction):
    • The last known value of the lost input channel is kept for ~1 second
    • If the lost input channel is not restored within ~1 second, it will be set to the default fail-safe value (for channel 1-4) or kept at the last value (for channel 5-8)
    • Lost channel signal is restored: Normal channel operation is restored using the valid input signal

 

PPM pass-through mode mode (signal pin 2&3 shorted):

  • PPM output will not be enabled unless a input signal has been detected
  • Active signal on input channel 1 has been detected:
    • Any input level changes will be passed directly to the PPM output (PPM pass-trough)
    • If no input level changes are detected withing 250ms:
    • PPM output is enabled and default fail-safe values for all eight channels transmitted
    • Input level change detected again, PPM fail-safe output is terminated and normal PPM pass-through operation is restored

 

Download

The hex file files are located in the downloads section:

Flashing/Updating

The instructions on how to flash the the PPM encoder firmware can be found in the wiki:

E-mail me when people leave their comments –

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

Join diydrones

Comments

  • The flip 3.4.7 says "can not open ArduPPM_v2.3.13_ATMega32U2.hex" .WHY?

  • Developer

    >>>2. I've gone back through the instructions in detail several times. Everything works exactly as expected (as it did the very first time) except I cannot access the Atmeg 2560 (though it does show up correctly in the device manager and in the com list for mission planner).

    That means you have the 32u2 programmed correctly with a functioning program.

    >>>3. I've already tried reinstalling the bootloader by connecting the Atmega 2560 ISP header (not the Atmega 32u2 ISP header) to a USBasp and the arduino IDE. It just hangs. I've tried this on multiple computers, multiple OSes. I've used the USBasp to reinstall bootloaders before on different boards, but it is possible there is something wrong with the USBasp.

    You had a functioning bootloader when you previously described that the blue light was flashing.  If you still have a functioning bootloader on the 2560 and the 2560 is showing up in Mission Planner (that means that you have working code on the 32u2) then load the flight code.

  • Developer

     I don't know how you have gotten to the state the APM is in, but you have at least 2 problems.  If the Blue LED is blinking that means the code in the 2560 has been erased and the 2560 is in bootloader mode.  Perhaps you tried to load the PPM code onto the 2560 and it erased the device and then did not load the code but for whatever reason the 2560 has been erased.

    Problem 2: Ryan is your board a real APM?  Some of the clone boards do not have a bootloader in the PPM encoder chip?

    If it is real, then go back through the instructions http://copter.ardupilot.com/wiki/common-program-the-atmega32u2-ppm-...

    When you install JP2 and reset the device, the APM should show up in the device manager and be recognized by the programming software.  If does not then it has no bootloader and you will have to install one. 

  • Developer

    If you can see the APM in device manager try uninstalling the driver, rebooting, and then reconnecting the APM. This may fix the issue.

  • Developer

    Install 2.3.16 per the normal instructions.  Remember to take The JP2 jumper off.  Now load firmware onto the APM using Mission Planner.

  • @Indre: As far as I know there have not been any changes for the PPM passthrough mode. It might be possible that it's a tiny bit more accurate because there have been speed improvements but this is just my guess. 

  • @Julian PPM updated and all problems have been solved first receiver now working well

  • @Julian Thanks I have ordered a programmer and will update to 2.3.16

  • @David: So you are using APM1.x I guess?
    Well if another receiver of the same model works, that sounds like the receiver is faulty.
    But anyway it is recommended to use 2.3.16 for Futaba receivers.

  • @Julian: I want to use channel 6 to tune the hex according to my scope channel 6 is outputting 1500us in the centre but the according the radio calibration screen it never moves from 900us. The Blue LED on APM is blinking and channel 1 - 5 and 7 work perfactly. The receiver is a futaba 617 7 channel receiver with a 14mz transmitter. I have not upgraded to 2.3.16 yet as I don't have a programmer.

    The really strange thing when i swapped the receiver r another of the same model everything works perfactly.

This reply was deleted.