Skip to content

NetworkDir/SimpleVescDisplay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

46 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Simple VESC Display for ESP32-2432S028R

Credits: Based on the original project by Gh0513d/SVD πŸ”—

This is a modified version of the VESC display project, optimized for the ESP32-2432S028R display. The goal is to enhance functionality and add new features while keeping it simple and efficient.

🎨 Demo

Demo Image

✨ Features

βœ… Real-time speed, RPM, and power display
βœ… Optimized data calculations similar to VESC Tool
βœ… Trip and total distance tracking
βœ… EEPROM storage for trip data
βœ… Automatic brightness control using LDR sensor
βœ… High-speed UART communication with VESC
βœ… Overheating and battery warnings
βœ… PNG image support for custom UI background and startup logo

πŸ“₯ Installation

Follow these steps to set up the project on your ESP32-2432S028:

1️⃣ Install Arduino IDE & ESP32 Board Support

  • Download and install the latest Arduino IDE.
  • Open Arduino IDE and go to File > Preferences.
  • In the "Additional Board Manager URLs" field, add:
    https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
    
  • Go to Tools > Board > Boards Manager, search for "ESP32," and install the latest ESP32 board package.

2️⃣ Install Required Libraries

  • Extract the libraries.zip file into your Arduino libraries folder (Documents/Arduino/libraries/).
  • If you prefer manual installation, ensure you have the following libraries installed:
    • TFT_eSPI (for display control)
    • FlickerFreePrint (for flicker-free text rendering)
    • ComEVesc (for VESC communication)
    • PNGdec (for PNG image decoding)
    • EEPROMAnything (for EEPROM read/write support)

3️⃣ Flash the Code to ESP32

  • Open the vesc_display.ino file in Arduino IDE.
  • Select the correct board: ESP32 Dev Module.
  • Set the correct COM Port.
  • Click Upload and wait for the process to complete.

πŸ”§ Configuration

Before compiling, you may need to tweak some settings (if you install tft_espi byself):

  • User_Setup.h in the TFT_eSPI library to match your display pinout.
  • Adjust motor and wheel parameters in the main.ino file.

πŸš€ Coming Soon

πŸ”Ή More UI customization options (with new library instead as tft_espi :D) 🎨
πŸ”Ή BLE and WiFi bridge 🌐
πŸ”Ή Improved data logging & visualization πŸ“Š
πŸ”Ή Add CANBUS support for better and reliable communication

🀝 Contributing

Feel free to fork the project and submit pull requests. Suggestions and improvements are always welcome! 😊

πŸ“œ License

This project is open-source and licensed under the MIT License.


Happy coding! πŸš€