New ArduPPM firmware version 2.3.16 in the downloads section

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 1 Roll Set to center (1500 μs)
    Channel 2 Pitch Set to center (1500 μs)
    Channel 3 Throttle Set to low (900 μs)
    Channel 4 Yaw Set 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:

Views: 6201

Tags: encoder, ppm


Moderator
Comment by Nathaniel Caner on March 4, 2013 at 2:57pm

Julian,

Could you make a comparision of how the 'Adapted Behavior' differs from the previous fimware? I just updated the firmware to 2.3.13 and would like to know how the two different versions of FW differ with respect to how they handle the loss of a channel before I disassemble everything to upload the new FW.

BTW I have an APM 2.5

 

Regards,

Nathaniel ~KD2DEY

Comment by Julian Oes on March 4, 2013 at 3:33pm

@Nathaniel: Behaviour when a channel is lost:

v2.3.13:

Channel 1 Roll Set to center (1500 μs)
Channel 2 Pitch Set to center (1500 μs)
Channel 3 Throttle Set to low (900 μs)
Channel 4 Yaw Set to center (1500 μs)
Channel 5 ... Set to mode 4 (1555 μs)
Channel 6 ... Set to center (1500 μs)
Channel 7 ... Set to center (1500 μs)
Channel 8 ... Set to center (1500 μs)

v2.3.16:

Channel 1 Roll Set to center (1500 μs)
Channel 2 Pitch Set to center (1500 μs)
Channel 3 Throttle Set to low (900 μs)
Channel 4 Yaw Set 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

So v2.3.16 is suggested in order to prevent that the flight mode is switched (e.g. out of RTL)

Julian


Moderator
Comment by Nathaniel Caner on March 4, 2013 at 4:26pm

Julian,

Thanks for the explanation. In 2.3.13 'CH 5 Set to mode 4 1555 μs' , Is that ArduCopter mode 4? and why 1555 μs. How would it differ for ArduPlane?

Regards,

Nathaniel ~KD2DEY

Comment by Julian Oes on March 4, 2013 at 4:33pm

That is exactly one of the reasons why v2.3.16 was released. Mode 4 can be configured to different flight modes so going to mode 4 won't make sense for most people. Also this was ArduCopter specific as ArduPlane normally has the mode switch assigned to channel 8.


Moderator
Comment by Nathaniel Caner on March 4, 2013 at 4:53pm

Julian,

OK thanks for clearing that up for me. SO for me I use CH 5 for Enable GeoFence. Since that requires a value of at least 1750 us to enable, in effect a loss of signal for me on CH 5 would disable GeoFence correct. I think in any case I will load the new FW, I guess I'll be an expert at it now!

 

Regards,

Nathaniel ~KD2DEY

 

 


3D Robotics
Comment by Craig Elder on March 4, 2013 at 5:10pm

Are you talking about GeoFence for plane or copter?


Moderator
Comment by Nathaniel Caner on March 4, 2013 at 5:16pm

Craig,

I know this gets confusing at times doesn't it? I'm referring to my setup in ARduPlane. For me I have GeoFence assigned to CH5, reset after breach (GeoFence) on CH6, MinimOSD panel switch on CH7 and flight mode select on CH8.

 

Regards,

Nathaniel ~KD2DEY


3D Robotics
Comment by Craig Elder on March 4, 2013 at 5:24pm

I just wanted to check you were not trying to use Geo Fence in Copter.

https://code.google.com/p/arducopter/wiki/AC2_Simple_GeoFence

!Note! Simple GeoFence is temporarily disabled!

Do Not Attempt to Enable it from the Standard Params List at this time

It will be back and this warning will be removed when it is

Setting up a Simple GeoFence in the Mission Planner

In any event it is best if you update your PPM encoder to this latest version 2.3.16.


Developer
Comment by Marco Robustini on March 5, 2013 at 12:43am

Hi Julian and thanks for the update!
Yesterday I had some "kick" to the motors during flight as with the old encoder, but I was testing the 2.9.1-dev, so it is likely that he was not guilty of the encoder, i keep you informed.
Need to chat with Randy because i don't like the option " Continue with the mission - if you are in AUTO mode and have set the FS_THR_ENABLE parameter to "2" ", because if the rx is broken during Auto mission it would be preferable that even in that case switch to RTL+Land, not necessarily in that mission I have set a RTL and unpleasant things could happen.
For safety you should never continue the mission in that case, this option should not even be optional but removed (imh).
If for some reason I was wrong to put some waypoints and my quads are going up against an obstacle and I can not control because the rx does not work I'd rather go home alone.
I know, if that parameter is set to "1" this happens, but there is a risk that someone can make mistakes in setting it.


Developer
Comment by Rob_Lefebvre on March 5, 2013 at 9:50am

Marco, if you are suggesting to disable the option to FS_THR_ENABLE == 2 : continue mission, how do you propose the we are able to run a mission out of radio range?

I understand the risks here.  But at some point we have to allow users to be responsible for their actions, and stop limiting features because we are afraid of the people who will mess it up.  This is an advanced feature for UAV use.  I think it should stay, and simply make sure people understand the risk.

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2014   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service