The Flight Millennium Controller
Introduction: The Flight Millennium Controller
I realized a PCB remote control in order to control remote controlled objects and more particularly an airplane. This one works in wifi 2.4Ghz, has an Oled screen, joysticks, potentiometers, buttons/switches and a pipe to select the device to control. I made a form of controller resembling the famous "Star Wars" spaceship, hence my dedication to the millennium falcon.
After mentioning the hardware used, I will talk about its operation, the schematics of the two PCBs (transmitter and receiver) and before the conclusion and demonstration, the programming of the two boards.
Supplies
For the transmitter :
- 2x Potentiometer 10Kohm
- 2x Joystick
- 1x Oled screen
- 1x Double switch
- 1x plate of six micro switches
- 1x 220ohm resistance
- 1x led
- 1x Arduino nano
- 1x 9V battery
- 1x Connector for 9V battery
- 1x switch ON/OFF
- 1x 2.4Ghz wifi module and its regulated power supply
For the receiver :
- 1x 2.4Ghz wifi module and its regulated power supply
- 1x Arduino nano
- 1x plate of six micro switches
- 1x 2.54mm connector strip
Step 1: How It Works
As for the controller :
On the back of the PCB :
You can distinguish the 9V battery and the ON/OFF switch that turns on the remote control.
On the front panel :
There are two potentiometers that can be used to implement functions that are not yet determined at present.
A switch allowing to lower or raise the wheels of the plane (the led lights up in red once the wheels are raised).
Two joysticks allowing to control the 3 axes of the plane and its acceleration.
The button of the right joystick is used to switch from one display menu to the other, and the button of the left joystick does not yet have a specific function.
Finally, in the upper right-hand corner, there is a binary micro encoder that is used to determine the communication pipe of the transmitter.
As for the display of the oled :
!!! The images showing the screen display are cut off because of the refresh rate of the camera compared to that of the Oled screen. So it does not reflect exactly the final rendering !!!
Once the transmitter is switched on, it tries to connect to the emitter having the same pipe as it, during this phase, we can see on the screen the inscription "connection" followed by the binary code of the pipe to be searched.
After finding the receiver, the screen displays the digital value of the potentiometers, the left joystick button, the switch and the battery voltage in the aircraft.
By pressing the right joystick button we go to the next menu, this one displays the value of the potentiometers and also the minimum, middle and maximum value of them.
Finally by pressing again a last time we go to the last menu which displays the flight time and the software version. 769
A last press allows to return to the final screen.
Step 2: PCB Schematic, Transmitter
The PCB was designed on Altium, and produced by JLC PCB.
I realized mechanical perforations to be able to pass the potentiometers and also the relief of the oled screen and the wifi module. I also made perforations for screws in case I want to integrate it in a case even if I like the bare rendering. You will find enclosed the ZIP to send on JLC PCB.
Regarding the soldering of the components, just look at the pictures and reproduce them.
Note that I finally used PS4 joysticks much more precise than those used for the footprint design, so I had to adapt them.
Files: https://github.com/NaberTimothy/The-Flight-Millennium-Controller
Step 3: PCB Schematic, Receiver
For the receiver located in the aircraft, simply connect the different servo motors in the appropriate sockets.
Files: https://github.com/NaberTimothy/The-Flight-Millennium-Controller
Step 4: Programming
You will find enclosed the two arduino codes, one for the receiver and one for the transmitter.
Files: https://github.com/NaberTimothy/The-Flight-Millennium-Controller
Step 5: Conclusion
This "Instructables" page, focused on the transmitter PCB and not on the aircraft or the receiver. Nevertheless here is a video demonstration of the final project.
Thanks and see you soon for new creation, or the continuation of this one! 611