I created a piece of software that might be useful for some of you. It is able to read the status of Xiaoxiang BMSes (www.lithiumbatterypcb.com) via Bluetooth Low Energy, and then send its status via WiFi to an MQTT broker. You can then use something like Node-RED to have an up to date status of your scooter or e-bike when it is parked in your bike shed or garage, even when you're not near it.
The repository can be found here: https://github.com/BeaverUI/ESP32-BluetoothBMS2MQTT
The software is based on work of others (see README.MD), but there are many fixes and improvements included.
Hardware-wise you will need a board with an ESP32 with Bluetooth and WiFi, and you're good to go. I used this board: https://github.com/LilyGO/T-Koala. Software-wise you will need to have an MQTT broker (e.g. mosquitto) and something to display MQTT messages (e.g. Node-RED). Both can run on a Raspberry Pi. I recommend to use the "node-red-dashboard" library to display status on a nice web-based dashboard.
The code is running stably for a few days now. If I find bugs, I'll update the repository with their fixes.
I hope you like it Let me know if you have comments or questions.
The repository can be found here: https://github.com/BeaverUI/ESP32-BluetoothBMS2MQTT
The software is based on work of others (see README.MD), but there are many fixes and improvements included.
Hardware-wise you will need a board with an ESP32 with Bluetooth and WiFi, and you're good to go. I used this board: https://github.com/LilyGO/T-Koala. Software-wise you will need to have an MQTT broker (e.g. mosquitto) and something to display MQTT messages (e.g. Node-RED). Both can run on a Raspberry Pi. I recommend to use the "node-red-dashboard" library to display status on a nice web-based dashboard.
The code is running stably for a few days now. If I find bugs, I'll update the repository with their fixes.
I hope you like it Let me know if you have comments or questions.