Having acquired a FlySky 6 channel Radio Control transmitter (FS-T6) for a planned model airplane, I decided to take on the common advice that it is worth practicing on a simulator before being let loose on the ‘real thing’. Here’s what’s required.
The RC transmitter has a special port on the back for simulation/training (and, on some other models, firmware updates). In principle all I need to do is to connect a cable between this and the PC that running the simulator application. These cables are available ready-made, but I did not want to wait for delivery and, besides, I had all the parts that would be needed to make one.
Some research uncovered that the transmitter communicates from the trainer port using a PPM signal in an ‘audio’ or Serial format. Later testing with my oscilloscope showed they seem to be the same signal but at different voltage levels.
For my home made cable I decided to use the audio signal, as this suited one end of the cable I had on hand.
What is PPM?
Pulse-position modulation (PPM) is a form of signal modulation in which M message bits are encoded by transmitting a single train of pulses, continuously repeated every T time period.
In Radio Control systems, a complete PPM frame is about 22.5ms, and signal low state is always 0.3ms. It begins with a start frame (high state for more than 2ms). The position value transmitted for each channel is encoded by the time of the high state.
This encoding is easily seen in the traces below, which show 3 separate ‘packets’ that include the position of all 6 channels. The width of the signal for control channel 1 (the black line) varies depending on the position of the control joystick (joystick is far left on the top trace, centre in the middle and far right on the bottom trace).
Connecting the transmitter and PC
In principle a simple cable connects the transmitter and the PC. However, there was so much conflicting misinformation on various web sites about how this needs to be wired I went back to first principles and worked it out myself.
On removing the back cover for the transmitter unit I was pleasantly surprised to see that the connector was labelled by the manufacturer. Some PCB tracing quickly mapped the connector pinouts and revealed the PPM-TX signal that I needed to use.
The connection on the other end plugs into the PC microphone input, so the ground is on the sleeve of a 3.5mm phono connector, and the PPM-TX to the center pin. A mono plug is sufficient, so for a stereo plug bridge the tip and the ring to be the same signal.
Making the cable is straightforward, and I started from one that was in my junk box, clipped off the yellow end and replaced it with the transmitter DIN type connector. This cable did not function and I later worked out that the ferrite core on the cable was blocking the PPM signal. I switched to a another (no-ferrite) cable and I was able to see the signal at the phono plug using an oscilloscope.
Unpacking the Audio Signal
The last piece of the puzzle was getting the audio signal translated back into joystick positions for the simulator.
There are a couple of well known (in the RC community) utilities for Windows that will do this. I opted to use SmartPropoPlus, which automatically picked up the signal from the PC audio jack and displayed the joystick positions. To other software running in Windows my RC transmitter now looked like a joystick controller.
There are also many options available for the RC simulator software. I use ClearView, as I already use their iPad version. This too worked right away and I was able to calibrate the joysticks for the software and start using the simulator.
All I need to do now is to stop crashing the simulated plane!