We've sold a fair number of our SavvyCAN for Tesla Model S http://store.evtv.me/proddetail.php?prod=TeslaCANKit&cat=28. But this tends to be for the real deal geeks out there that want to log off and analyze CAN message traffic primarily from the Drive Train CAN bus.
However, Arthur Hebert provided us a pretty rough but definitive description of a Tesla BMS CAN message ID 6F2. This message is sent in a sequence of actually 32 sequential messages indexed 0x01 through 0x1F in byte 0that form a very interesting matrix. The remaining 7 bytes form a bit-packed matrix listing ALL the 96 individual cell voltages in the battery pack as well as 32 temperatures - two temperatures for each of the 16 modules in the Tesla Model S battery pack. These are 13-bit values that appear to be really quite accurate. We consider Tesla's BMS a pretty authoritative source for this sort of thing.
So We've kind of quickly coded up an Arduino program to print this information out calculating the voltage of each module, total pack voltage, average pack temperature and of course the 96 cell voltages via the Serial USB port on the device to easily read on a laptop.
This is a free download, open source. Should run on any Arduino Due with CAN shield though it does use several of Collin Kidder's libraries to do the magic. With our SavvyCAN for Tesla Model S, it basically lets you just plug it into the diagnostics port located behind the tray below the center console and display it on a laptop.
Perhaps in the future we (or someone) will port this to a similar device with a display screen on it.
In this way, a wider less technical group of Model S owners will still be able to check out their individual pack voltages and cells or watch them come up as they are charging. And it serves as kind of a learning experience for those interested in CAN messaging on the Tesla Model S. You can examine the code to see what was done.
I'm attaching the source code for the program. http://media3.ev-tv.me/TeslaModelSPackVoltages.zip
Jack Rickard
However, Arthur Hebert provided us a pretty rough but definitive description of a Tesla BMS CAN message ID 6F2. This message is sent in a sequence of actually 32 sequential messages indexed 0x01 through 0x1F in byte 0that form a very interesting matrix. The remaining 7 bytes form a bit-packed matrix listing ALL the 96 individual cell voltages in the battery pack as well as 32 temperatures - two temperatures for each of the 16 modules in the Tesla Model S battery pack. These are 13-bit values that appear to be really quite accurate. We consider Tesla's BMS a pretty authoritative source for this sort of thing.
So We've kind of quickly coded up an Arduino program to print this information out calculating the voltage of each module, total pack voltage, average pack temperature and of course the 96 cell voltages via the Serial USB port on the device to easily read on a laptop.
This is a free download, open source. Should run on any Arduino Due with CAN shield though it does use several of Collin Kidder's libraries to do the magic. With our SavvyCAN for Tesla Model S, it basically lets you just plug it into the diagnostics port located behind the tray below the center console and display it on a laptop.
Perhaps in the future we (or someone) will port this to a similar device with a display screen on it.
In this way, a wider less technical group of Model S owners will still be able to check out their individual pack voltages and cells or watch them come up as they are charging. And it serves as kind of a learning experience for those interested in CAN messaging on the Tesla Model S. You can examine the code to see what was done.
I'm attaching the source code for the program. http://media3.ev-tv.me/TeslaModelSPackVoltages.zip
Jack Rickard