Avatar
ARDUINO 3D PRINTED RADIO CONTROLLER
Oct 14th, 2019 | by: ELECTRONOOBS | Views 3868
Views 3868
Yes, I've made another radio controller. Why? well, I wanted to have a more commercial look. So, I've designed a 3D case, then I've used some high quality joysticks in order to have better analog read, It has an OLED screen so we could see the data we send and we could also digitally adjust the data. It also has 2 modes, linear and exponential.
PART 1 - Schematic transmitter

Below you ahve the schematic for this project with all the connections and components values. Check all you need for this porject on the full part list below as well. Make sure you set the buck converters to 12.6V and 3.3V befor you connect them to the circuit. That's very important. For the transmitter you need a NRF24 module with power amplified antenna in order to get more range.
 

Scheamtic
PART 2 - 3D case

The case is made out of 2 main parts, the top and bottom part. Then we need 9 plastic push buttons, 4 push button double support and one single support. We also need the sliding switch button. To close the case I've sued 3 3mm screws, two on the top part and one more on the bottom. I've used 2 perimeters and 20% infill for all the parts and PLA material. There's no need for supports. The parts are already oriented and ready to print. My printer has a 0.4mm nozzle, and the layer height was set to 0.3mm.

The 3D case
PART 3 - Mounting the transmitter

First, I connect in series the batteries and glue them to the back part of the radio controller. Then I solder wires from the DC jack to the big boost/buck converter and I plug in the main adaptor. Then I set the converter to 12.6V and glue the potentiometer so it will stay that way. Now I connect the batteries to the 3S BMS and the output from the buck convrerter to the BMS input/output. I glue everything on the case.

The BMS and batteries
Part 3.2

Step 2 is to add all the small push buttons. Place 2 buttons on each support as you can see below. Also, one button on the small support. Then, add a small plastic push button in each hole on the top aprt of the case and then we screw in place all the supports on the top part of the 3D printed case.

Push buttons
Part 3.3

Now, add wires to the potentiometers of the joysticks for GND, 5V and signal. Then screw in place the joysticks and also the sliding switch in the middle of the controller. Add the toggle switchs and the potentiometers on the top side. Finally, glue in place the Arduino NANO on one corner.

add joysticks
Part 3.4

Ok, now, very important you have to set the small buck converter to 3.3V and then glue the potentiometer. Then connect that to the NRF24 module. Finally, connect all wires to the Arduino as in the schematic. Add the i2c OLED display as well and glue everything inside the case. Connect power from the other part of the case and that's it. You could now close the case and program the Arduino.

Connect everything
PART 4 - Transmitter code

 

Ok, for the code, make sure you downlaod and install the OLED and NRF24 libraries from the link below as well. Then, download the code, compile and uplaod it to the Arduino. For more details read the comments in the code in order to know how to tune all the values for the joystick read and the battery read as well.

 

Test
PART 5 - Schematic PWM receiver

The receiver is very simple. All we need is another Arduino, the NRF24 module, the voltage regulator and some pins for GND, Vcc and also PWM signal out. Solder everything on a PCB and upload the receiver code that you will find below.

Schematic receiver PWM
PART 6 - Receiver PWM code

This code will receive the values from the transmitter and create 6 PWM signals on some digital pins of the Arduino.

Receiver PWM test
PART 7 - PPM receiver

This code will receive the values from the transmitter and create 1 PPM signal on digital pin D2 of the Arduino. And that's it. now you have a full radio transmitter and reciver. In the menu you could select the mode from lineal to exponential and fine tune each value. Have in mind that the middle value of each joystick should be 127. You can download all you need in this tutorial. Consider supporting me on my PATREON page.

PPM Receiver schematic
Video

18 Comments

  • Rangana Tennakoon

    about 5 years ago

    Noob 19129

    about 6 months ago

    Please try a hrefhttpswwwgooglecomGooglea before asking about a hrefhttpsscortvipforumviewtopicphpp606063p606063Cool Product Tipsa 23d94c5

    Noob 19129

    about 3 months ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpswwwlabvirtuscombrlabshowthreadphptid34754pid290338pid290338Recommended Product Siteurl 5f79e0b

    Noob 19129

    about 3 months ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttp99982296comviewthreadphptid1081675pid1375439page1extrapid1375439Great Product Guideurl b59a705

    Noob 19129

    about 3 months ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpspunpromarketcomindexphptopic81326newnewHigh Rated Product Tipsurl 59a7057

    Noob 19129

    about 2 months ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpwwwsubaruxvthailandcomforumindexphptopic1990newnewRecommended Product Siteurl 982595

    Noob 19129

    about 1 month ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpwwwsubaruxvthailandcomforumindexphptopic6062newnewUpdated Product Guideurl 4c5f79e

    Noob 19129

    about 27 days ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpsgamezlandnetviewtopicphpf11t22945p126490p126490Top Product Websiteurl 94c5f79

    Noob 19129

    about 6 days ago

    Please try urlhttpswwwgooglecomGoogleurl before asking about urlhttpsforumludokingcomindexphptopic117newnewHigh Rated Product Infourl 023d94c

  • Rangana Tennakoon

    about 5 years ago

    This is one of the best great tutorial I have ever seen, i LOVE this project Andrei !

  • Rangana Tennakoon

    about 5 years ago

  • Rangana Tennakoon

    about 5 years ago

  • Noob 2041

    about 4 years ago

    Hi Guys, I need a small help most of you would think this is a simple thing not worth asking. But i really want to know. In a previous video in electronoobs, he made a few videos on how to make arduino based RC receivers and controllers. So in the receiver part, there are 3 pin per channel. (Signal, 5V, GND), If i am using a coreless motor. in the motor there are only 2 wires, (5v, GND). How how do i connect the motor to the receiver? Can i do this without using an ESC?

  • Noob 7062

    about 3 years ago

    Здравствуйте , Подскажите пожалуйста как мне сделать управления 4 серво моторами джойстикам , но если я нажал вверх он повернулся и там остался ..нажимаю в низ он крутится в обратном направлении ... я мне не как не запрограммировать подскажите пожалуйста ..

  • Noob 7062

    about 3 years ago

    Здравствуйте , Подскажите пожалуйста как мне сделать управления 4 серво моторами джойстикам , но если я нажал вверх он повернулся и там остался ..нажимаю в низ он крутится в обратном направлении ... я мне не как не запрограммировать подскажите пожалуйста ..

  • Rainer Mueller-Knoche

    about 10 months ago

    Hello guys, I build that transmitter, but I found the wireing a little bit messie so i created an PCB for it. That works fin but I hat to made some modifications on the top cover, I think it would be better to modify the original part. Modifying the ST file of a complicated part like this is nearly impossible. So can you please provide the original construction file, I will return the modified with all you need for the PCB. Second I also have made a PCB for the corresponding receiver. I can provide too Third I need to transmit the full 10 bit values, so I modified the code, that works fine in linear mode, but in exponential mode I do not really understand your formula, can you please explain or give a link to the source. Thanks very much Regards Rainer

    Noob 16021

    about 9 months ago

    My friend I rode too but the servants are locking the movement only solves when I detach the update of the display in the code Can you help me Im using in the transmitter the code it provides here on the page

  • Noob 16021

    about 9 months ago

    Hello, I built your wonderful radio control project with oled display, but it presents a problem. The movements of the servos on the receiver are locking, I uncommented on the display update and the servos operate normally. I'm using the software you made available on your page. Can you help me?

Login or Sign Up to post comments on this tutorial.