I’m excited to share something I’ve been pouring my heart into for the past 13 months during my free time - the GB Remote Lite, a complete open-source hand controller for electric skateboards.
What I’ve Built
This isn’t just another controller - it’s a full-featured, professional-grade solution that rivals commercial options. I’ve built it from the ground up using the ESP32 platform with real-time telemetry monitoring and a beautiful LCD interface.
Key Features:
High-precision analog throttle (HALL SENSOR) with automatic calibration (through firmware macro)
Real-time telemetry from your VESC and BMS systems
Modern LCD interface built with LVGL graphics library
Dual battery monitoring for both controller and skateboard
Trip distance tracking with persistent storage
Smart power management with sleep modes
Compatible with Jaiabaida and Kaly BMS systems
Technical Highlights:
Custom BLE SPP protocol for low-latency communication
FreeRTOS for real-time performance (No Arduino and platformIO BS)
NVS flash storage for persistent settings
Support for multiple ESP32 variants (ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, ESP32-S3)
Why I’m Sharing This
After 13 months of development, countless late nights, and endless debugging sessions, I wanted to give back to the esk8 community that has inspired me so much. This project represents everything I’ve learned about embedded systems, wireless communication, and user interface design.
Current Status
The firmware is fully functional and ready to use! However, I want to be transparent about the current limitations:
Skateboard parameters (wheel size, pulley ratios) are embedded in the firmware, you have to change it in the code
No external configuration tool yet (parameters need to be modified in source code)
UI is developed with SquareLine Studio which is paid but you can use a free version to change stuff
I’ve released this under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 license. This means you can:
Build it for personal use
Share and modify for personal projects
Use it for educational purposes
But please respect that I’ve put a lot of work into this and don’t sell it commercially without my permission.
My Hope
I genuinely hope you enjoy building and using this controller as much as I enjoyed creating it. The esk8 community has been incredible, and I wanted to contribute something meaningful back.
Feel free to reach out with questions, suggestions, or just to share your builds. I’d love to see what you create with this!
Cant wait to share the 2nd version of this (GB remote Pro), which wont be open sourced since Ive wasted a ton of money on it.
But will have capacitive amoled touchscreen, capacitive hand sensing, QI wireless fast charging, fuel gauge, IMU, light sensing (for automatic screen backlight control) with custom built pcb, and a ton of features I cant start describing here, and the UI will be beautiful as well.
Looks pretty legit, reminds me a lot of the PubMote project which afaik uses ESP-Now for its control (how well that actually performs for throttle input as opposed to just one-wheeled-board tilt-control I’ve yet to determine).
Yep, I read through your post was just saying the other project as far as I know uses ESPNow.
The fact ESP-Now uses a ton of power, comes as no real surprise to me. It uses the 802.11 TX/RX in Espressif’s prop. format as opposed to 802.15 (BLE). I’ve never really compared the two for total power consumption, but I would not be surprised if someone showed a difference of the two to be greater than 50%.
I know several remotes out there are using LoRa but that inflates the BOM where as BLE is baked in to the SOC-Module so I am super interested in how this pans out. Probably take a crack at putting a handful together myself
This is dope and perfect timing! Was reading about this yesterday from your other posts. Downloaded the files and will print the case to see how it feels in hand. Thanks!
i’ve measured the power consumption with the nrf power profiler kit II, i don’t have the measurements now to post here but using esp-now the consumption was around 300mA! and no one talks about it online (i couldn’t find). using ble it averages around 60mA which is a bit high comparing with nrf ble socs.
at least total power consumption is about 80mA and it fits a 1600mah battery.
sleep consumption is about 500uA
Im running most of my prints through my ratrig, so its a whole process (sorta my own fault). Takes about 30-40 minutes to preheat the printer for ASA due to how big the gantry is alas I’ve been so burnt out with work looking at the printer has been a drag
due to all the other small projects I work on here and there, I probably have all the parts sans Screen and the latching button from the BOM. Maybe Ill try and get one of these in the field by the weekend. Cant promise anything though.
You mentioned compatibility with the S3 - any plans or ideas on implementing into the S3 modules with built in displays? Or is that part of your closed source V2 plan?
I spy with my little eye, haptics too. Neato burrito. Like I said, looking forward to how this progresses.
Will follow up as I work on putting together one of my own remotes. Last question I probably have before I need to really focus on work; Do you expect the board BLE “server” (is how its written in the Github) to be running your firmware, or is any BLE capable firmware (EG: VESC Express) suitable?
there is no compatibility with vesc express or any other right now since i’m running my own protocol between them. so you need the receiver also which can be another xiao esp32 or my custom board, will upload it soon