Tesla Model 3 Battery: Difference between revisions
No edit summary |
|||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 12: | Line 12: | ||
https://www.evbmw.com/index.php/evbmw-webshop/tesla-boards/tesla-model-3-bms-batman | https://www.evbmw.com/index.php/evbmw-webshop/tesla-boards/tesla-model-3-bms-batman | ||
there are a few differnt types of modules used | |||
NCA | |||
- 60(?)kWh "short" modules. most of these packs contain 24s modules that are about 51in long. pack with known short modules are: 1104428-00-''R, 1137378-01-'', 1522118-*''-'', 1104428-00-P, 1104426-00-'', 1104428-0L-'', 1104426-00-P. | |||
-75kWh | |||
-90kWh | |||
LFP | |||
-60kWh | |||
[[File:Broken isospi.gif|thumb|broken isospi connector]] | [[File:Broken isospi.gif|thumb|broken isospi connector]] | ||
| Line 65: | Line 81: | ||
https://openinverter.org/forum/download/file.php?id=20709 | https://openinverter.org/forum/download/file.php?id=20709 | ||
apps: | |||
[https://www.scanmytesla.com/home scanmytesla] | |||
[https://www.teslax.app/ teslax] - load custom dbc files! | |||
| Line 74: | Line 98: | ||
ID 0x401 cell voltages | ID 0x401 cell voltages. each parallel group is labeled as a "brick" | ||
[[File:Tesla shunt.jpg|thumb|tesla shunt polarity]] | |||
ID 0x332 min/max | ID 0x332 min/max | ||
ID 0x3D2 total charge/discharge kwh | ID 0x3D2 total charge/discharge kwh | ||
| Line 83: | Line 107: | ||
ID 0x352 soc | ID 0x352 soc | ||
* BMS_energy status | |||
** BMS_energySatusIndex: | |||
** BMS_nominalFullPackEnergy: | |||
** BMS_nominalEnergyRemaning: | |||
** BMS_idealEnergyRemaning: | |||
ID 0x20A contactor state | ID 0x20A contactor state | ||
=== cell balancing === | |||
its theorized (according to collin kidder) | |||
"The biggest things needed seem to be not being in drive (won't balance while you're driving), not heavily charging or discharging (seemingly less than 20A?), and detecting that the pack is out of balance. It seems this imbalance will need to be larger than 0.005V to trigger balancing. You might need to send messages that let it know it's currently "idling" and not "driving" but I think it will probably default to thinking it's not driving so no CAN traffic might be OK. Before balancing it will, however, check that it could enable the balancing resistors. So, my assumption would be that if you don't have all four modules hooked up it would find that it couldn't enable some balance resistors and then refuse to work. | |||
However, I don't have a full Model 3 pack to test with so this is all just the result of dark arts and guessing. And, of course, the firmware version of your pack might make a difference. However, the good news is that it sure looks to me like the BMS will automatically do balancing based on the pack being in a good state to do so and the modules being out of balance." | |||
[[Category:Tesla]] [[Category:Battery]] | |||
Latest revision as of 02:56, 16 October 2025


model 3/y battery uses custom versions of the LTC6812 chips for voltage sensing dubed "batman"
bms boards talk via a modified version of isospi
Damien Maguire has developed 2 different unfished approaches to communicating directly with the cell level boards:
https://www.evbmw.com/index.php/evbmw-webshop/tesla-boards/tesla-model-3-bms
https://www.evbmw.com/index.php/evbmw-webshop/tesla-boards/tesla-model-3-bms-batman
there are a few differnt types of modules used
NCA
- 60(?)kWh "short" modules. most of these packs contain 24s modules that are about 51in long. pack with known short modules are: 1104428-00-R, 1137378-01-, 1522118-*-, 1104428-00-P, 1104426-00-, 1104428-0L-, 1104426-00-P.
-75kWh
-90kWh
LFP
-60kWh

HV controller
Model 3 High Voltage Controller
the HV controller located in the penthouse controls the PCS, contactors, pyro fuse, talks to the bms boards, etc
reading cell voltages and controlling contactors can be done by talking to the HV controller over CANbus
you can read cell temps and voltages with scanmytesla and hooking up a obd connector to the hv controller canbus
the HV matting connector is:
Sumitomo TS Sealed Series
see thread post https://openinverter.org/forum/viewtopic.php?p=31886#p31886
useful links:
https://github.com/commaai/opendbc
reading canbus data
Arduino sketch for due based boards:
https://openinverter.org/forum/download/file.php?id=15866
or https://openinverter.org/forum/download/file.php?id=21585 (dose not require msgid6f2)
libraries needed:
- due_can
- msgid6f2
make a s folder named "msgid6f2" in ardunio/libraries and put these two files there:
https://openinverter.org/forum/download/file.php?id=20710
https://openinverter.org/forum/download/file.php?id=20709
apps:
teslax - load custom dbc files!
IDs
some of these ids are found on ether charge port (cp) can or vehicle can
ID 0x401 cell voltages. each parallel group is labeled as a "brick"

ID 0x332 min/max
ID 0x3D2 total charge/discharge kwh
ID 0x132 battery amps/volts
ID 0x352 soc
- BMS_energy status
- BMS_energySatusIndex:
- BMS_nominalFullPackEnergy:
- BMS_nominalEnergyRemaning:
- BMS_idealEnergyRemaning:
ID 0x20A contactor state
cell balancing
its theorized (according to collin kidder)
"The biggest things needed seem to be not being in drive (won't balance while you're driving), not heavily charging or discharging (seemingly less than 20A?), and detecting that the pack is out of balance. It seems this imbalance will need to be larger than 0.005V to trigger balancing. You might need to send messages that let it know it's currently "idling" and not "driving" but I think it will probably default to thinking it's not driving so no CAN traffic might be OK. Before balancing it will, however, check that it could enable the balancing resistors. So, my assumption would be that if you don't have all four modules hooked up it would find that it couldn't enable some balance resistors and then refuse to work.
However, I don't have a full Model 3 pack to test with so this is all just the result of dark arts and guessing. And, of course, the firmware version of your pack might make a difference. However, the good news is that it sure looks to me like the BMS will automatically do balancing based on the pack being in a good state to do so and the modules being out of balance."