This is the latest (main) BeagleBoard documentation. If you are looking for stable releases, use the drop-down menu on the bottom-left and select the desired version.

Function rc_dsm_bind_routine

Function Documentation

int rc_dsm_bind_routine(void)

Begins the binding routine and prints instructions to the screen along the way.

The user doesn’t need to call this function unless they really want to. Use the rc_bind_dsm example program instead.

DSM satellite receivers are put into bind mode by sending them a sequence of pulses right after it receives power and starts up. This program puts the normally UART signal pin into GPIO pulldown mode temporarily, detects when the user unplugs and plugs back in the receiver, then sends the binding pulses.

The number of pulses dictates the mode the satellite receiver will request the transmitter to use. The transmitter may bind but use a different mode. I suggest configuring your radio to use DSMX 11ms fast mode if it allows that.

2048 & 1024 indicates 10 or 11 bit resolution. 11ms & 22ms indicates the time period between the transmitter sending frames. 11ms is required for transmitters with 8 or more channels.

Testing done with DX7s, DX6i, DX8, and Orange T-SIX

Table of Bind Modes

pulses

mode

3

DSM 1024/22ms

5

DSM 2048/11ms

7

DSMX 1024/22ms

9

DSMX 2048/11ms

This is a bit of a finicky process and may require a few attempts to work.

Returns

0 on success, -1 on failure