Products

Board-Side Alternative

VESC Express as Receiver

If your build already runs a VESC Express, you do not need our receiver board. A LispBM script turns the Express into one: it serves the same Bluetooth service, drives your VESCs over CAN, and sends the same telemetry back. Buy the remote on its own and skip the extra hardware.

Your remote needs no firmware change. It pairs with the Express exactly as it pairs with a receiver, so nothing on your side has to be reflashed. There is nothing to configure either: the script asks your VESC for its own motor poles, gear ratio and wheel diameter, so the speed readout and trip odometer are right without you typing them in. That part needs VESC firmware new enough to run LispBM.

gb-receiver.lisp

Download

Which One

The script covers the riding path in full: throttle, smart reverse, failsafe braking and telemetry. What you give up is everything that lived beside it.

GB ReceiverVESC Express + script
Extra hardwareDedicated board on the CAN busNone, if your build already has one
Remote pairingMAC whitelist stored on the receiverAny GB remote in range connects
Link encryptionBonded and encrypted, MITM passkeyNot supported by BLE scripting
BMS monitoringJBD smart BMS over UARTNot available
Battery readingCoulomb count from the BMSEstimated from pack voltage and cell count
Auxiliary outputPWM dimmed, follows throttleOn / off
Failsafe brakingIndependent firmware, ramped regen brakeRamped regen brake in the script
VESC Tool over BluetoothUnaffectedDisabled while BLE scripting is enabled
UpdatesOTA, USB-C and the config toolRe-upload the script in VESC Tool
Config toolPairing, scanning, live stream, coredumpsNot applicable

marks the stronger option, the weaker. Unmarked rows are equivalent.

Worth knowing before you choose

BLE scripting on the Express has no encryption and no bonding, and the script cannot see which device connected. The receiver's whitelist has no equivalent here, so any GB remote in range can connect to a board running this script. If you ride where that matters, or you want BMS data on the remote, use the receiver.

Deploying the script

01

Take the GB Receiver off the CAN bus

If you are converting an existing build, disconnect the receiver first. Two throttle sources on one bus fight each other.

02

Connect VESC Tool to the Express itself

Either USB-C straight into the Express, or connect to the VESC and enable CAN Fwd with the Express selected. Uploading to the motor controller by mistake fails with an unbound ble-set-name.

03

Enable BLE scripting

App Settings, VESC Express, Bluetooth. Set Mode to Enabled with Scripting, BLE Service Capacity to 1, and BLE Characteristic and Descriptor Capacity to 6. Write the config and power-cycle. From here on VESC Tool connects over USB or CAN only.

04

Upload it

Open the Lisp tab in VESC Dev Tools, open the file, and press Upload. That writes it to flash and starts it on every boot. Use Stream instead while you are still adjusting values, since it runs from RAM and is gone on reboot.

05

Pair and verify

Power-cycle the remote so it re-discovers the service. In the Lisp console, can-list-devs must return your VESC IDs, and throttle must track the thumbwheel. Speed appears once the script has read your drivetrain from the VESC, which takes a second or two. On the remote, set the battery cell count and chemistry, otherwise the board battery shows volts instead of a percentage.

(can-list-devs)
(print throttle)
(print conf-valid)
06

Test with the wheels off the ground

Throttle forward should spin up, past neutral should brake, and walking the remote out of range should ramp the brake in and release it once the wheels stop.