BKB Voyager V2 Scripts - Release Notes

NOTE: A guide will come hopefully soon on how to properly update the BKB Voyager V2 Remote and Receiver. For now, if you’re not sure of the process, I do not recommend installing until that guide is released.


GitHub Repo / Releases: Releases · NicoAleman/BKB-Lisp_scripts · GitHub


v1.30:

  • Displayed Remote SOC is now a percentage, based on observed discharge curve (still need to implement forced LV cutoff, be sure to turn off at or before 0%)
  • Battery Saver Mode: Variable Data Rate
    • When in Bat. Saver Mode, we throttle the data transmission rate at lower/idle throttle speeds (switches between 50Hz, 25Hz, and 5Hz). CPU usage is noticeably lower when idle.
  • Main Screen UI revamped to only re-draw when necessary (when respective displayed values change), hopefully reducing power draw
  • Display and Throttle Threads now run at specified refresh rates and properly sleep in-between, hopefully reducing power draw (CPU usage is noticeably reduced)

Note: Data Rate option in Remote Settings currently does nothing. Ignore for now.


v1.21:

  • Optimizations to improve performance / battery life:
    • Main Screen follows a defined refresh rate (currently a responsive 10Hz)
    • Remote SOC updated every 4 seconds except when charging
    • Data_Send optimizations
    • And more to come

v1.20 (Initial Onewheel Release):

  • Fixed Speed and Trip Distance Calculations
  • Disabled any potentialy dangerous functions (SET_CURRENT calls, Bugged/Unnecessary Safety Switch)
  • Added Float Logo to Bootup
  • UI Cleanup for better legibility (No unnecessary leading zeros, better spaced digits, dynamic layouts based on # of digits)
  • Numerous optimizations and tweaks (mostly on remote-side) to prioritize low latency and high refresh rate. Some are purely optimizations (i.e. synchronizing throttle and data_send in same thread, or Receiver-side Buffer optimizations), others should be monitored for impact on battery life (when not in battery saver mode)
  • Fixed critical issue with ghost inputs during receiver boot-up
  • Replaced UART Motor Control (set_current) with UART Remote Data (COMM_SET_CHUCK_DATA), for use with VESC Apps and Packages that handle Motor Control
    • Includes support for Thumbstick Click, CFG Button, and Mode Switch as inputs for future features
  • Fixed Throttle Scaling to properly scale the throttle input, rather than truncating it early into its travel range and limiting precision
  • Updated Battery Indicator animation to be more reflective of current battery state (“filling up” animation loops back to SOC, rather than fully empty)
  • Reworked the “Button Press” logic for more intuitive mode switching (for Throttle Scale and Direction Change)
  • Implemented Deadband-esque EMA filter with a variable alpha based on rate of change, in order to reduce throttle noise and nervousness without sacraficing low-latency / responsiveness for rapid inputs
  • Reciever Lisp version now read properly by remote, and hid misleading placeholder version numbers (FW/HW)
  • Numerous other Onewheel specific updates (e.g. New defaults that override the old, Direction now labeled as Mode 1 and Mode 2 for future features, irrelevent menus hidden)
1 Like