Hi everyone! I wanted to share a custom DIY project I recently completed and validated: a wireless Digital Shift Knob integrated with RealDash.
The project combines custom hardware (a PCB designed in EasyEDA and manufactured by JLCPCB), C++ firmware, Hall sensors, and 3D printing.
How Does the System Work?
The setup was designed to be modular and versatile. It consists of two main hardware units communicating wirelessly via ESP-NOW:
-
In the Shift Knob (Transmitter):
-
Powered by an ESP32 microcontroller.
-
Reads all 5 gears + Reverse using analog Hall effect sensors triggered by magnets installed at specific positions on the shifter mechanism/linkage.
-
Features an integrated 0.96" OLED display right on the knob to show the current gear number in real time (for standalone use).
-
Includes extra wireless digital input pins to read hood and trunk open/closed status.
-
-
On the Dashboard (Receiver - TulioCAN):
-
Uses an ESP32-S3 board receiving all data packets via ESP-NOW from the shifter.
-
Forwards the telemetry data to RealDash via a USB Serial connection.
-
Key Features & Versatility:
-
Standalone Knob: You can use just the digital shift knob with its OLED display without needing a digital dashboard.
-
Dashboard Only: Transmit gear position directly to RealDash using the TulioCAN receiver module.
-
Full Setup: Combined gear display on the shift knob + RealDash instrumentation on the dashboard display.
Custom Development:
Everything was designed and built from scratch:
-
Custom PCB: Designed and optimized for JLCPCB fabrication.
-
Software/Firmware: Custom C++ code managing ESP-NOW wireless links, Hall sensor positioning reading, and serial protocol streaming for RealDash.
-
3D Enclosure: Custom 3D-printed shift knob housing the electronics and OLED screen smoothly.
Project Demonstration & Bench Testing Video:
Check out the video showcasing the PCB assembly, bench tests, Hall sensor gear reading, and RealDash integration:
Feel free to share your thoughts, ask questions about ESP-NOW communication logic, Hall sensor magnet tuning, or RealDash XML setups! ![]()
![]()
![]()
