Control your Ardupilot Mega Rover with your Android Smartphone (III)


The Ardupilot Mega (APM) and other flight controllers are frequently controlled by a PPM stream rather than the parallel input per channel which I described in part 1 of this blog. The new PiKoder/PPM wRX receiver with its PPM frame output brings this capability to you. The connection between the receiver and the flight controller is reduced to a single 3 strand cable as shown in the featured image.

Setting the receiver up

The PiKoder/PPM wRX receiver will be controlled by the udpRC4UGV App as described in part 2 of this blog.

The feature set of the app has been extended to allow you to freely determine the position of the direction and throttle channel within the PPM frame through the app preferences.

To change the channel setting please select the respective preference and enter the channel number (1 .. 8). E.g. the APM Rover configuration features direction on channel 1 and throttle on channel 3.

Please note that setting the APM’s input mode from parallel to PPM requires a jumper between channel 2 and channel 3 input as shown below.

Control your Ardupilot Mega Rover with your Android Smartphone (II)


As already indicated in my previous blog Control your Ardupilot Mega Rover with your Android Smartphone I continued to implement more features resulting in the new udpRC4UGV Android(TM) app with a number of rover specific functions. The most important enhancements are the selection of the flight mode and the toggling of channel 7 making a number of APM special functions available.


As outlined in the previous blog a PiKoder/SSC wRX receiver replaces the standard RC receiver in the rover. The smartphone RC uses WLAN for command transmission: the PiKoder does offer an access point (AP) to which the smartphone will connect.

The udpRC4UGV app fashions various usage preferences: a simple button controlled interface, a virtual joystick, and an accelerometer based user interface.

Every user interface offers next to the generic control elements for RC the option for selecting the flight mode. Additionally, channel 7 can be triggered by hitting the CH7 button (thereby e.g. in LEARNING mode storing the current position as a way point for a mission).

The app is available free of charge in the Goggle Play Store. The user manual can be downloaded on the PiKoder webpage – it describes not only the program but also the hardware setup in more detail.

Control your Ardupilot Mega Rover with your Android Smartphone


In the standard setup of the Ardupilot Mega (APM) for Rovers you would deploy a conventional RC for manual control:  the RC receiver feeds the input channels of the APM with PWM signals for Rover movement and for executing special functions such as switching flight modes.

Replacing the RC receiver in this configuration by a PiKoder-Receiver such as the WLAN receiver PiKoder/SSC wRX gives you full control of the Ardupilot using your Android smartphone with the udpRC4UGV app which is available at the Play Store.

Setting up the Rover

Use the Mission Planer to configure your APM with the standard ROVER – configuration; the default settings worked for me perfectly.

The following image shows the straight forward hardware setup.

Connect the PiKoder – channel 1 with the APM input 1 (Steering) and PiKoder – channel 2 with the APM input 3 (Throttle). For the APM output the standard-rover-setup is used. (servo at channel 1, ESC with BEC at channel 3). In this configuration the Ardupilot provides the power for the receiver.

The Ardupilot does not process any PWM-signals outside of the standard range from approx. 1.000 – 2.000 µs. Therefore, you would have to adjust the PiKoder’s min. and max. lengths as shown in the following screen print using the PiKoder Control Center (PCC).

Please refer for more information about connecting and programming your PiKoder to the User’s Manual for the PiKoder/SSC wRX.

This completes the hardware setup. For a detailed description of the app’s user interface please refer to the respective user manual.