Hi all, this isn’t yet ROS-related, but I’m trying to integrate a SBS laptop battery into a ROS-based robot I’m building, and it’s been a difficult road. Wondering if anybody here has had any experience with this and could share their perspective.
I’ve had minor amounts of luck with a few approaches
- Arduino using Peter Fleury’s i2cmaster library, which let me speak SMBus (Wire library doesn’t format communication correctly for smbus) - but the library seems to not handle the multi-master situation well and freezes up the communications quickly
- I’ve also tried this little project http://www.karosium.com/p/smbusb.html which also seems to freeze up on me
I’m hoping to discover a fairly “out of the box” solution to reliably retrieve data from the SMBus. The built-in state of charge measurement, and other metrics, is really attractive from these smart batteries. However, I don’t have a lot of experience implementing these protocols on microcontrollers, so it’s fairly daunting to try and get it working reliably.
Once the communication is working, I’m looking forward to making a node to talk to the SMBus communication layer and publish BatteryState messages
For the curious I am currently using the following battery and charger from RRC - they’re a bit pricey but seem really nice