kasparsd / besst-reference

0 stars 0 forks source link

BESST Reference

Bafang creates amazing electric bike systems. The BESST software is used to configure their controllers, displays and sensors over the CAN-bus and their CAN-over-UART tool (BESST Box). Since it is an Electron app (a web application behind the scenes), we have access to the main components of the codebase.

Follow the instructions below to re-create this:

  1. Download the BESST application .exe from their website (version 1.2.43 used in this repository).
  2. Rename it from .exe to .zip and uncompress the archive.
  3. Uncompress the $PLUGINSDIR/app-32.7z archive within in.
  4. Uncompress the electron app resources/app.asar archive in the app-32 directory using npx @electron/asar extract resources/app.asar app to the app directory.
  5. Re-create the original source code using the source maps (.js.map files) included in the app/static/js directory using npx reverse-sourcemap app/static/js to the app/static/js/webpack directory.

Research Questions

The following questions are of interest:

BESST Box Hardware

The application includes Windows drivers for the following Silicon Labs (VID 10C4) hardware:

so it is reasonable to assume that the BESST Box is based on one of these chips.

The application also includes the source code for the besst-usb-sdk JS library which is used for all device communication.

Related Projects