APM Mode switch with LCD display

3689639902?profile=originalHi, let me introduce my APM mode switch with LCD display.
The basic idea is from Stefan Gofferje's project, thanks on him for PPM stream code part!!!

My idea was to make something more good-looking thing for my transmitter and get rid of annoying switch mixes. My APM mode switch uses an Arduino as main processor. Technically, Arduino generates a PPM stream for the RC transmitter, this can be connected through the trainer port. (Check out your transmitters manual for proper trainer port setup). The desired channel in PPM8 stream can be configured in the sketch (default is ch5)

*** Please note that LCD display will display the actual mode regarding PWM value! ***
***The actual mode in the APM can be different, since there is not any telemetry ***
***feedback in this switch! Take care of proper APM setup!!! ***
***Please double check mode matches on the ground before first take-off!!!***

Here is the parts list:

  • Arduino Nano
  • 2x16 LCD screen (HD44780 compatible)
  • 6 pcs of pushbutton (I'm using these, I think they are quite conventional, for 7mm dia holes)
  • 5V buzzer, max. 40mA (optional)
  • 10k pot (optional)
  • 3D printed body
  • upper and lower plates milled from any 1,5 mm GF or CF plate

And this is the connection diagram:



***Don't use Arduino Nano's built-in 5V power source because overheating can cause instability!***
***Use a small DC-DC converter instead***
(or supply LCD from another 5V power source)

I suggest to solder the Arduino to the LCD, D2...D5 and D12 are on the same place as in the LCD screen:


3689639941?profile=originalHere is the working LCD:


The LCD is mounted inside the body with screws:


The neccessary 3D files can be downloaded from the project's GrabCAD page.
And this is the sketch: APM_mode_switch_NHA_v2_0.ino
Here is a Sample of my screen's diyplay states.

Mode names and sign letters can be edited in this part of the sketch:


I can't upload any images about a completelly assembled switch since I'll use it together with my portable ground station, so I designed a unique case that fits to my GS (so guys, the 3D model above is designed only for you... :) ):

Mode_switch_1_www.kepfeltoltes.hu_.jpg?width=200 Mode_switch_3_www.kepfeltoltes.hu_.jpg?width=200 Mode_switch_2_www.kepfeltoltes.hu_.jpg?width=200

I hope you'll enjoy, and of course,

***I'll not take care of any damages caused by malfunction or faulty assembly***


E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • hi!

    I try this on FlySky T6, and is not working. I do something wrong?

  • My variant3702025771?profile=original

  • Feel free to translate.
  • Estimated. I apologize for my bad English. Very good project. Permission to do some translation into Spanish. Thank You.

  • Mike, yes it can be used together. This mode switch connects to the transmitters PPM input pin, the LRS connects to the PPM output pin.

  • Inspired by the same original project I have for the past year used something less refined but just as effective: Illuminated LED momentary switches. I could never imagine using switches with mixes. A push-button flight mode switch is the only way to go. 

    I wish someone would design a case that fits on a Taranis....my 'woodwork' is not easy on the eyes.


  • Some update, to v2.0

    I added a debug menu, activated via long-press Button1 and Button6.

    Display will write the current PWM on mode channel.

  • That is cool. Very creative. Great job.

  • ez marha jó lett

  • Makes me think that a Arducontrol would be a good project. Custom build radios, you pick the sticks, RF section, switches and their layout. I guess one could always dissect a Taranis and go from there. 

This reply was deleted.