Skip to content

Python library to read/write BMS via RS485/RS232

License

Notifications You must be signed in to change notification settings

dumtux/tinkerbms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinkerBMS

Python library to read/write BMS via RS485/RS232

GitHub Repo stars License

Why TinkerBMS?

There's already an excellent BMS reader - dbus-serialbattery. But it is for Venus OS only. I'd like to do the same on any platform - PCs, microcontrollers, and SBCs.

What TinkerBMS is:

  • a reusable Python library, so that it can be run on Raspberry Pi and any SBCs/PCs.
  • inherit the Battery abstract class of dbus-serialbattery, so that it'll support as many BMS as dbus-serialbattery does.

In hopes to (be)

  • support MicroPython compatible for running on microcontrollers
  • support more BMS protocols that dbus-serialbattery doesn't yet
  • support more interfaces, e.g. CAN, SMbus, Bluetooth(LE)

BMS Communication Protocols

Battery Vendor Protocol
48NPFC50 MPINarada Shinwa BMS Protocol
ZTT48100 Zhongtian Zhongtian BMS Protocol

(I hope more batteries are added in this list. But these two are only batteries that I have at the moment of writing.)

Other Resources


TinkerBMS

Python library to read/write BMS via RS485/RS232

Images designed with Microcoft Copilot