Small MicroPython app for ESP32 that talks to the Hyundai/Kia EV M-CAN bus and helps trigger battery preconditioning.
- Sends the preconditioning toggle frame when the BOT button is pressed.
- Monitors BMU status and battery temperature CAN frames.
- Shows a simple LVGL UI with:
- command state,
- battery temperature,
- estimated time to reach 21C,
- BMU preconditioning status.
- ESP32 board running MicroPython.
- CAN transceiver (for example TJA1050) connected to the ESP32 CAN pins.
micropython-esp32-twaidriver available asimport CAN.- Display stack used by this project (
lvgl,s3lcd_lvgl, and related board libs).
- Copy project files to the device.
- Ensure
main.pyimportsironiqand callsironiq.main(). - Reboot the board.
- Press BOT to start/stop preconditioning logic.
ironiq.py: main CAN logic and UI.main.py: program entry point.config.py: local config values.tests/: helper scripts and experiments.
This project sends CAN traffic. Use only on hardware you understand and at your own risk.