Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Workflow and behavior
Former Innotrace X1 owners need to send a special CAN message before the controller becomes accessible in VESC Tool. X1-Unlocker packages that step as a LispBM script for VESC Express, intended to make the X1 appear as a VESC CAN device without sending the message manually.
At startup, the script turns on the red LED, selects CAN baud-rate setting
1, sends extended frame0x00D431FFwith payload14 78 00 00 00 00 00 00, and scans the bus. If the scan finds no device, it repeats with baud-rate setting2. A successful scan turns the LED blue and printsX1 available; otherwise it printsnot found.The script runs once at boot. There is no periodic availability check or reconnect loop, and a successful CAN scan is not an X1-specific identity check. The package contains the script and README, with no custom QML interface.
Using the unlocker
The X1-Unlocker README contains the full setup instructions and connector references. With the package installed on VESC Express, the documented sequence is:
The README describes support for X1 firmware 2.4.x.x and 2.5.x.x. Rotor calibration, maximum current and maximum wattage were reported as working in the original PR description; these are historical author reports, not results from a new hardware test. This remains experimental, with limited functionality and no claim that arbitrary controller parameters are supported.
Connector references
These are the existing wiring illustrations included in this PR, not before/after screenshots or proof of a successful connection.
Location image source: Green Bike Kit, as credited in the README. Pinout credit: @dedo's forum post. Connector references: female
04R-JWPF-VSLE-S, male04T-JWPF-VSLE-S.Current branch scope and review limits
The current diff also contains a later
ebike/addition copied fromblacktip_dpv: a LispBM runtime, QML configuration UI, documentation, display assets, tools and Python smoke tests. Separatesrc_lbm/files provide pedal-assist and Bafang UART reference logic. The root Makefile addsebiketoPKGSand changesTEST_PKGSfromblacktip_dpvtoebike;res_all.qrcadds both packages.This is broader than the X1 unlocker alone. The copied e-bike README/UI still contain DPV-specific content; those contents are not evidence of validated e-bike behavior.
QA and outstanding checks
Description review against head
a374619503feaed44cb5da325d53a1c0c2581ab7on 19 October 2026:x1_unlockeris referenced byres_all.qrcbut absent from rootPKGS; the e-bike Makefile still refers toebike.lisp, while the committed runtime isebike.lbm. A successful clean archive/package build is not established.