So, I am using the R617FS which I normally connect with PWM inputs for each channel. Some surfing has dug up this mod which outputs PPM from the R617FS on which ever pin you choose, but only the first five channels.
Does the current APM failsafe/PPM encoder software deal with this, or as mentioned in some of the source code notes, only when channels 1-8 are present?
Has anyone tried this? (before I destroy my R617FS doing so...)
Thanks in advance!
Andrew
Replies
Channels 1-5 on pin D8-D12 order is important.
Channel 7 to A0
Channel 6 to A1
7ch PPM on A3
Offset values for my 16MHz arduino...
#define PULSEWIDTH 50
#define OFFSETA 48
#define OFFSETB 118
void setup() {
noInterrupts();
DDRB = 0b11100000;
DDRC = 0b11111100;
}
void loop() {
static uint8_t port;
static uint8_t oldPort = 0;
static uint16_t i = 0;
static uint16_t j = 0;
static bool d = 0;
static uint16_t oldA;
static uint16_t oldB;
static uint16_t a = 0;
static uint16_t b = 0;
port = PINB;
if(port != oldPort) {
i = 0;
if(port == 1 && oldPort == 0)
d = not d;
if(d)
PORTC = 0;
if(oldPort == 0b10000) {
j = 0;
oldA = a;
oldB = b;
a = 0;
b = 0;
}
}
oldPort = port;
a += PINC & 1;
b += PINC >> 1 & 1;
if(i == PULSEWIDTH)
PORTC = 0b100;
i++;
if(d && (j == oldA - OFFSETA || j == oldA + oldB - OFFSETB)) {
i = 0;
PORTC = 0;
}
j++;
}
Hi,
The frame rate is 16ms for the R617FS. there is enough space for 5 ch only else you lost the sync space.
Pulse order on pins is "7, 6, 1, 2, 3, 4, 5" Pulses ch.7 and 6 overlap the pulse ch.1.
I made a quick Arduino code (mini pro from sparkfun) as a "R617FS pwm to full 7ch PPM" for this receiver (I use it for my relay, futaba 2.4 to 440MHz UHF LRS)
It divide the framerate by two (32ms ppm) and pull the ch 7 and 6 to the end of frame.