informatic
f8ba5ef4ee
Somewhere between ESC 0301 and 0401 response format for write command has changed and is much more similar to that of xiaomi - arg contains register address and single response data byte is a write result. This is behaviour that matches description in nbdocs.pdf on scooterhacking wiki. |
||
---|---|---|
py9b | ||
.gitignore | ||
LICENSE | ||
README.md | ||
cli.py | ||
fwupd.py | ||
lock.py | ||
m365_hax.py | ||
passwd.py | ||
powerdown.py | ||
read_bms.py | ||
read_bms_ll.py | ||
read_bms_mem.py | ||
read_esc.py | ||
read_esc_ll.py | ||
readregs.py | ||
reboot.py | ||
sniffer.py | ||
tcp_test.py | ||
unlock.py | ||
wr_esc.py | ||
wr_esc_sn.py |
README.md
py9b
Ninebot/Xiaomi electric scooter communication library and tools.
This fork adds custom UUID support for use with scooters acquired via impound auction or other means. DO NOT USE THIS ON SCOOTERS THAT DON'T BELONG TO YOU!!!
Tools
- fwupd.py - firmware flasher capable of flashing BLE/ESC/BMS
- readregs.py - ESC/BMS register file dumper Other tools are highly experimental.
Requirements
- Python 2.x.x [www.python.org]
- ProgressBar [pip install progressbar]
- PySerial [pip install pyserial] - for direct serial link backend
- PyGatt [pip install pygatt] - for BLED112 dongle backend
- nRFUARTBridge [https://github.com/flowswitch/nRFUARTBridge] - for Android BLE-TCP backend