The Flight Millennium Controller

by TimNab96 in Circuits > Arduino

2546 Views, 29 Favorites, 0 Comments

The Flight Millennium Controller

IMG_5865 2.jpg
IMG_5855 1.jpg
Capture d’écran (70).png

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

How It Works

IMG_5861 1.jpg
IMG_5860 1.jpg
IMG_5858 1.jpg
IMG_5914.jpg
IMG_5937.jpg
IMG_5930.jpg
IMG_5935.jpg
IMG_5936.jpg

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. A last press allows to return to the final screen.

PCB Schematic, Transmitter

Capture d’écran (70).png
Capture d’écran (68).png
Capture d’écran (71).png
Capture d’écran (69).png
Capture d’écran 2021-01-30 165947.png
IMG_5857 1.jpg
IMG_5859 1.jpg

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

PCB Schematic, Receiver

Capture d’écran (63).png
Capture d’écran (62).png
Capture d’écran (64).png
Capture d’écran (65).png
Capture d’écran 2021-01-30 170015.png

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

Programming

Capture d’écran (73).png

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

Conclusion

The flight millennium controller
IMG_5866 1.jpg
IMG_5869 1.jpg

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!