Nissan Leaf BMS
Here we collect information about Nissans BMS.
A well fleshed out comm stack is implemented in the stm32-car project: https://github.com/jsphuebner/stm32-car
Connectors
Credit goes to Wolftronix for figuring this out.
You will also find it on the diyelectriccar forum, you will need to sign up for downloading
P4 24 pin | P3 32 pin | P6 16 Pin | P5 40 Pin | ||||||||||||
Pin | Cell | Cell | Pin | Pin | Cell | Cell | Pin | Pin | Cell | Cell | Pin | Pin | Cell | Cell | Pin |
1 | 1 | 13 | 1 | 21 | 17 | 1 | 9 | 1 | 61 | 60 | 21 | ||||
2 | 3 | 2 | 14 | 2 | 23 | 22 | 18 | 2 | 49 | 48 | 10 | 2 | 63 | 62 | 22 |
3 | 5 | 4 | 15 | 3 | 25 | 24 | 19 | 3 | 51 | 50 | 11 | 3 | 65 | 23 | |
4 | 7 | 6 | 16 | 4 | 27 | 26 | 20 | 4 | 53 | 52 | 12 | 4 | 67 | 64 | 24 |
5 | 9 | 8 | 17 | 5 | 29 | 28 | 21 | 5 | 55 | 54 | 13 | 5 | 69 | 66 | 25 |
6 | 11 | 10 | 18 | 6 | 31 | 30 | 22 | 6 | 57 | 14 | 6 | 71 | 68 | 26 | |
7 | 13 | 12 | 19 | 7 | 33 | 32 | 23 | 7 | 59 | 56 | 15 | 7 | 73 | 70 | 27 |
8 | 15 | 14 | 20 | 8 | 34 | 24 | 8 | 58 | 16 | 8 | 75 | 72 | 28 | ||
9 | 16 | 21 | 9 | 35 | 36 | 25 | 9 | 77 | 74 | 29 | |||||
10 | 22 | 10 | 37 | 38 | 26 | 10 | 79 | 76 | 30 | ||||||
11 | 17 | 18 | 23 | 11 | 39 | 40 | 27 | 11 | 78 | 31 | |||||
12 | 19 | 20 | 24 | 12 | 41 | 42 | 28 | 12 | 81 | 80 | 32 | ||||
13 | 43 | 44 | 29 | 13 | 83 | 82 | 33 | ||||||||
14 | 45 | 46 | 30 | 14 | 85 | 84 | 34 | ||||||||
15 | 47 | 48 | 31 | 15 | 87 | 86 | 35 | ||||||||
16 | 49 | 32 | 16 | 89 | 88 | 36 | |||||||||
17 | 91 | 90 | 37 | ||||||||||||
18 | 93 | 92 | 38 | ||||||||||||
19 | 95 | 94 | 39 | ||||||||||||
20 | 97 | 40 |
Connector part numbers
In case you need to adapt or extend the sense wires, you will need the male and female connectors and the respective pins. Here are the part numbers:
Part | Number | Notes |
16-pole male | 1473796-1 | |
16-pole female | 1318386-1 | |
24-pole male | 1376103-1 | |
24-pole female | 1318917-1 | |
32-pole male | 1473799-1 | |
32-pole female | 1318747-1 | |
40-pole male | 1376113-2 | Solder part, crimp not available |
40-pole female | 1318389-1 | |
Pin male | 1376109-1 | |
Pin female | 1123343-1 |
CAN Messages
Upon powerup the unit spits out messages that contain various useful info. After a while these messages stop and you have to send 50B#00 00 00 C0 00 00 00 to get it going again.
All messages are big endian, i.e. hi-byte, lo-byte!
To get the individual cell voltages, first issue 79B#02 21 02 FF FF FF FF FF. You will receive the first reply looking like this: 7BB#10 C6 61 02 0E C9 0E C0.
Now send 27 times 79B#30 01 00 FF FF FF FF FF and you get 7BB#21 0E C0 0E C2 0E C0 0E. It is one index byte and 7 data bytes. So after 28 messages you will have collected 98 words (16-bit) of data. Every other message it stretches over to the next message. The first the last two words are unknown so we discard them. That leaves us with 96 Words that represent the cell voltages in mV in big endian format.
https://docs.google.com/spreadsheets/d/1EHa4R85BttuY4JZ-EnssH4YZddpsDVu6rUFm0P7ouwg/edit#gid=7
Dalas repository of CAN https://github.com/dalathegreat/leaf_can_bus_messages
Different Versions
Their seem to be at least two different versions of the LBC out there, as discovered here: https://openinverter.org/forum/viewtopic.php?f=13&t=370&start=10
The earlier version has only white input headers while the later version has ONE black HV header and a grey low voltage header. We call the first version the "white" BMS and the later version the "grey" BMS.
The BMS cannot limit anything, it only measures voltage and current and it will balance the cells 24/7 as long as it receives +12V on pin 5 (BAT) of the round connector, which is wired to pin 12 of the LB11 connector. The BMS will only communicate when there is 12V on either IGN (pin 4 round connector, pin 6 or 7 of LB11, for old/new BMS) or CHG IGN (Charging) which is located on pin 21 or 31 (old/new battery type), pin 5 of LB11. Treated as a black box the main differences are:
- Interlock is between Pin 8 and Pin 21 on white BMS as opposed to Pin 8 and Pin 6 on grey BMS
- Ignition input is on pin 6 on white as opposed to pin 7 on grey
- White BMS expects 4 temperature sensors, grey BMS only 3
- Supposedly the current sensors GND is on Pin 7 but I found Pin 7 internally unconnected and left GND on Pin 15
So if you have a "grey" wiring loom but a white LBC you need to move Pin 6 over to Pin 21 and Pin 7 to Pin 6.
PDF for HV wiring; https://www.diyelectriccar.com/threads/re-using-complete-leaf-drive-system-w-vcm.151458/page-11?post_id=871121#post-871121
To mitigate the missing temperature sensor you need to bridge the two input internally behind the input stage. Therefor remove R59. Then Find R62 and bridge it over to the adjacent channel 4. If you want you can use the resistor you just removed.
CAN connector pins
Pins for CAN-H and CAN-L and others as identified by wolftronix in the diagram below. Pins are for LB11 and LB12 connectors in Nissan terminology.
40kWh BMS
The pinout for +12V, CAN-H, CAN-L, Ignition and HV is identical o previous versions.
It uses a daisy chain of MAX17823B for sensing cell voltages.
Extending Sensing Wires
People have succesfully extended sensing wires on a 30kWh pack, beware of extending them too much on a 40kWh pack as this can cause a variety of issues [1]