Custom RF Controller
Custom RF controller with two joysticks, two triggers, and four buttons
Total Time Spent: 29 hours
DAY ONE - June 11, 2025
I spent today creating a wiring schematic for this project, as making an RC controller is fairly electrically intensive. The schematic uses an ESP32-DevKitC for the microcontroller, two KY-023 modules for the joysticks, two MP1584 modules for the buck converters, an nRF24l01+ PA/LNA module for the RF transmitter, six buttons, and a Deans Connector for the battery. Because KiCAD does not include modules in its symbol libraries, I had to create custom symbols for the ESP32-DevKitC, the KY-023, the MP1584, and the nRF24L01. I used one buck convertor to reduce the battery's 7.4V to 5V, and a second buck convertor to convert the 5V to 3.3V.
Time Spent: 8 hours
DAY TWO - June 12, 2025
Today, I created custom footprints for 5 different comonenents on my PCB. This was my first time creating footprints, so it took me longer than expected. The first one was the most difficult: a footprint for the Deans Connector. This connector would allow the battery to connect to the PCB. I also created a footprint for the ESP32-DevKitC, the MP1584 module, the nRF24L01+ PA/LNA module, and the KY-023 module. I then found 3D STEP models for each of these components on grabcad, and added the models into KiCAD.
Time Spent: 6 hours
DAY THREE - June 14, 2025
Today, I finally designed the PCB! I made a sketch of the PCB outline in OnShape, then exported the sketch as a DXF file and placed it into KiCAD, in the Edge.Cuts later. I then began positioning the components where I wanted them to be on the final design. I placed the ESP32 in the center, one joystick on each side, four buttons in the middle, and two buttons on the bottom. I also placed the RF module in the middle, so that the antenna could could extrude from the middle of the case. I used a ground pour on both sides to make sure that all components are correctly connected to ground. I then added all the necessary traces to finish the PCB
Time Spent: 8 hours
DAY FOUR - June 16, 2025
I spent today finishing the CAD model for the controller. I first imported the STEP file for the PCB from KiCAD into Onshape. I then designed a mount for the battery, standoffs for the PCB to be mounted to, and a top section to cover the electronics. I also designed 3D-printable buttons that could be hot-glued to the electronic buttons. These would allow the buttons to be pushed even when the electronics are covered up
Time Spent: 5 hours
DAY FIVE - June 17
Today, I finished setting up this GitHub repository. I added folders for the electrical files and design files. I also added an empty folder for code that will be added to after the controller is assembled. The project is noe ready to be shipped!
Time Spent: 2 hours