ESP32 Based Controller

by ASimpleRobot in Circuits > Arduino

164 Views, 2 Favorites, 0 Comments

ESP32 Based Controller

IMG_0765.jpg

This is an ESP32 Based controller (specifically the ESP32-WROOM-32U board) perfect for robotics applications or other remote control devices. It features 3 x 3 axis joysticks and external antenna for long range communication and an LCD display and 4 colored LED's.

Note: this version of the controller also shows 2 potentiometers but neither are connected to the ESP32 as it doesn't have enough analog input pins.

Supplies

  • ESP32
  • LCD + driver
  • 3x Joystick modules
  • 4x 5mm LED's
  • prototyping board
  • pin headers
  • jumper wires
  • 3D printed parts


Electronics Assembly

IMG_0757.jpg
IMG_0758.jpg
IMG_0759.jpg
wireing diagram.PNG

Start off by cutting the proto-board to size, you will need one that is 29 x 34 holes or about 74mm x 86mm respectively.

You can solder wires directly to the components but i chose to use jumper wires and pin headers instead, since it is just a prototype.

Then the second proto-board will need to be cut to 17 x 11 holes or 43mm x 28mm fore the LED's

Main Assembly

IMG_0756.jpg
IMG_0766.jpg

All components should be fitted using M3 screws as seen above, i have used 6mm screw for all the internal components, and the antenna should be screwed into place.

The Code

Screenshot (520).png
Screenshot (521).png
Screenshot (522).png

You will need to install the ESP32 libraries for the code to work.

  1. First open the Arduino IDE and go to preferences
  2. Then copy this link and paste it into the box that says 'Additional Boards Manager URLs'
  3. Next go to 'Tools > Board > Board Manager' and search for esp32, and install the one by 'Espressif Systems'
  4. You should now have the esp32 boards in your boards menu

Now just download the Transmitter file and upload it to the controller, making sure you have the right com port selected.

Done!!!

IMG_0760.jpg
IMG_0762.jpg
Screenshot (519).png

You should now have a working controller that prints 'sent!' to the serial monitor every time it send a packet. to control another project i have included the file for the receiver so you can add wireless esp Now control to your Arduino/esp32 projects.