Commit Graph

25 Commits

Author SHA1 Message Date
John Arne Birkeland 3783d0b6de ArduPPM v2.3.12 ATMega32u2 (APM 2.x)
---------------------------------------------
- New improved fail-safe detection and handeling for single or multible signal loss and receiver malfuntion
- Improved LED status for APM 2.x
- Improved jitter performance (PPM output using nested interrupts)

-------------------------------------------------------------
ARDUPPM OPERATIONAL DESCRIPTION
-------------------------------------------------------------

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

SERVO INPUT (PWM) MODE:
 -----------------------
- PPM output will not be enabled unless a input signal has been detected and verified
- Verified inputs are lost during operaton (lose servo wire or receiver malfunction):
  + The PPM output channel for the lost input will be set to the default fail-safe value
  + PPM throttle output (ch3) will be permanently set to fail-safe (900us)
- Lost channel signal is restored:
  + PPM output for the restored channel will be updated with the valid signal
  + PPM throttle output (ch3) will not be restored, and will continue to output fail-safe (900us)

PPM PASS-THROUGH 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
2012-11-23 21:53:35 +01:00
John Arne Birkeland 8fc27a45cc Improved watchdog timer reset, so that only valid input signals will prevent the watchdog timer from triggering 2012-11-16 12:51:34 +01:00
John Arne Birkeland 11142bd466 - ArduPPM v2.3.0 (pre-release)
- Single channel fail-safe detection
2012-11-06 00:45:38 +01:00
Olivier ADLER 43a71df3b0 ArduPPM: cleaning
case correction for PPM_Encoder.h include from Encoder-PPM.c. Minor comment change.
2012-11-03 12:35:44 +01:00
Olivier ADLER e1c7d2677d ArduPPM: PWM to PPM mode
PPM polarity reversing was not working when changing the Output PPM pin level before timer 1 / output compare init. The compare generator initialization was reverting the pin to low level. Instead of that a force match compare is used after timer / compare generator init to set the PPM output to high level.
2012-11-03 00:57:22 +01:00
Olivier ADLER f531f49c1a ArduPPM: PWM to PPM encoder mode
Added PPM output polarity selection - mainly for stand alone 8 channels encoder board.
2012-11-02 16:32:58 +01:00
Olivier ADLER 01863f95a5 ArduPPM: Redundancy mode
Frame rate change for standard PPM extended format.
2012-11-02 16:32:58 +01:00
Olivier ADLER 49d8fa5345 ArduPPM: Redundancy mode
#define correction for sync symbol limits
2012-11-02 16:32:57 +01:00
Olivier ADLER dbdf028cae ArduPPM : Redundancy mode
#define modifications for sync symbol detection and center pwm value correction
2012-10-29 22:22:48 +01:00
Olivier ADLER d70553bece ArduPPM : Redundancy mode
Switchover : wait for end of PPM frame before switching
2012-10-28 01:33:23 +02:00
Olivier ADLER 34151cbe91 ArduPPM: Redundancy mode
Fixed logic problem in the decoder (PPM channel increment)
2012-10-27 23:41:08 +02:00
Olivier ADLER 48a9c505a1 ArduPPM: redundancy mode
Channel count auto detection post processing code
Added a #define : valid frames threshold before detection validation
2012-10-21 23:46:16 +02:00
Olivier ADLER 78e88994e1 ArduPPM: Redundancy mode
Reworked the PPM decoder (i did forget the sync symbol pre-pulse)
Splitted pre-pulse and pulse width variable for better reliability and easier processing
2012-10-17 16:28:05 +02:00
Olivier ADLER 6b6e580a13 ArduPPM: Redundancy mode
Base algorithm added for channel count auto detection in the decoder himself.
Replaced the #define for PPM_CHx_CHANNELS by PPM_CHx_MAX_CHANNELS.
Channel count #define was not needed anymore thanks to the channel count auto detection.
Channel detection post processing to do.
2012-10-15 22:49:01 +02:00
Olivier ADLER b9372826b4 ArduPPM: Redundancy mode switchover algorithm
Auto Switchover algorithm with primary receiver switchback.
Force switchover channel moved to channel 9
Manual modifications.
2012-10-14 23:58:00 +02:00
Olivier ADLER ddef15b095 ArduPPM: Redundancy mode
Dual input PPM decoder rework
flags for frame and channel error control
decoder algorithm rework
2012-10-14 01:10:52 +02:00
Olivier ADLER 4f0fae5436 ArduPPM: Redundancy mode
Work in progress
adding a channel pre pulse lengt #define for each PPM mode
dual channels PPM input capture interrupt algorithm
2012-10-13 14:59:03 +02:00
Olivier ADLER 3cecc8256d ArduPPM: PPM Redundancy mode
Some rework and cleaning for #define stuff
2012-10-12 19:08:19 +02:00
Olivier ADLER 499a2931e5 ArduPPM : Redundancy mode
Work in progress on a new Redundancy dual PPM sum mode for PPM encoder.

- New library PPM_Encoder_v3.h and new manual manual_v3.txt

- New format conversion capability between input and output PPM frame timings and channel count.

This will be experimental until heavily tested. The main goal is to allow the use of low cost satellite receivers in a high safety setup, and allow a new teacher / student RC mode without link between the two pilot transmitters.
2012-10-12 14:32:14 +02:00
John Arne Birkeland 3431064d09 ArduPPM V2.2.68 - Fixed possible logic flaw in throttle failsafe reset if _JITTER_FILTER_ is enabled 2012-06-04 22:55:15 +02:00
John Arne Birkeland 4013cbebfa V2.2.67 - Implemented detection and failsafe (throttle = 900us) for missing throttle signal. 2012-06-03 02:42:39 +02:00
John Arne Birkeland 55055fca2b ArduPPM V2.2.66
- Added APM2 (ATmega32U2) support for using TX and RX status leds to indicate PWM and PPM traffic

<RX><OFF> no pwm input detected
<RX><TOGGLE> speed of toggle indicate how many channels are active
<RX><ON> input lost (failsafe)
<TX><OFF> ppm output not started
<TX><FAST TOGGLE> normal PWM->PPM output or PPM passtrough failsafe
<TX><SLOW TOGGLE> PPM passtrough
2012-03-16 20:48:55 +01:00
Andrew Tridgell 572c0c69f1 ArduPPM: let the 2560 know when the USB is connected
this sets pin 23 on the 2560 according to whether the USB cable is
connected or not
2011-11-20 19:06:24 +11:00
Olivier ADLER 2dac6958e6 ArduPPM : modified library path 2011-10-01 16:18:39 +02:00
John Arne Birkeland 72b7658062 ArduPPM: New and improved PPM encoder firmware for APM 1.x boards with ATmega328p and new ones using ATMega32U2. 2011-10-01 00:12:22 +02:00