BMW i3 Inverter
BMW I3 inverter
Forum thread: https://openinverter.org/forum/viewtopic.php?p=23214#p23214
BMW i3™ inverter drop-in board Available
https://openinverter.org/shop/index.php?route=product/product&product_id=72
Pin No | Assigniment | Description |
---|---|---|
1 | 12V | |
2 | BRAKE_IN | |
3 | PRECHARGE_OUT | |
4 | CANL | |
5 | CANH | |
6 | DCSW_OUT | |
7 | FORWARD_IN | |
8 | REVERSE_IN | |
9 | 5V (OUT) | |
10 | RESOLVER_S2/ENCODER_A | Sin Hi |
11 | GND | |
12 | RESOLVER_S1 | Sin Lo |
13 | THROTTLE1 | |
14 | THROTTLE2 | |
15 | RESOLVER_R1 | Ex Hi |
16 | RESOLVER_S3/ENCODER_B | Cos Hi |
17 | MTEMP+ | |
18 | MTEMP- | |
19 | RESOLVER_S4 | Cos Lo |
20 | EMCYSTOP_IN | |
21 | GND | |
22 | RESOLVER_R2 | Ex Lo |
23 | START_IN |
There are 2 variants of the i3. one with the REX and one with out.
the REX variant has a additional 25kw inverter to run the onboard generator.
Power stage: Infineon FS800R07 IGBTs rated for 800amps 650v
Gate Driver Board
Pin No | I/O | Description | Notes | Pin No | I/O | Description | Notes | |
---|---|---|---|---|---|---|---|---|
1 | 21 | GND Switching Mosfets ? | ||||||
2 | I | 32V in | 22 | GND Switching Mosfets ? | ||||
3 | I | 32V in | 23 | |||||
4 | I | IGBT A HI | 24 | |||||
5 | I | IGBT A LOW | 25 | |||||
6 | I | CS (ADC) | 26 | GND IGBT Driver ground | ||||
7 | I | SDI | 27 | GND IGBT Driver ground | ||||
8 | I | SDO | 28 | GND IGBT Driver ground | ||||
9 | I | SCK | 29 | GND IGBT Driver ground | ||||
10 | I | IGBT B HI | 30 | GND IGBT Driver ground | ||||
11 | I | IGBT B LOW | 31 | GND IGBT Driver ground | ||||
12 | I | IGBT C HI | 32 | GND IGBT Driver ground | ||||
13 | I | IGBT C LOW | 33 | 5V IGBT Driver Power | ||||
14 | 34 | 5V IGBT Driver Power | ||||||
15 | 35 | I | IGBT PSU 12V on | |||||
16 | O | IGBT DRIVER UVW Upper Ready | 36 | O | IGBT Driver Fault | |||
17 | O | IGBT DRIVER UVW Lower Ready | 37 | I | 5V LEM Current sensor Power | |||
18 | O | Current Sense C Signal | 38 | GND Current sensor Ground | ||||
19 | O | Current Sense B Signal | 39 | GND Current sensor Ground | ||||
20 | O | Current Sense A Signal | 40 | GND Current sensor Ground |
Gate Driver Board - SPI Commication
The BMW gate driver board communicates the DC bus voltage (ie traction battery voltage) and IGBT heatsink temperatures to the Openinverter via SPI.
On the Openinverter mini mainboard, pin 17 on JP2 is used for the SPI Clock signal, instead of its default assignment as 'Error Output'.
To avoid the clock signal being pulled high or low by the pin acting as an Error Output, find this section of code in vehiclecontrol.cpp:
//Brake pin is used as SPI_MISO
DigIo::brk_out.Configure(GPIOC, GPIO5, PinMode::INPUT_FLT);
and insert this below it to disable the Error Output:
//Disable err_out so it doesn't pull the clock signal up or down
DigIo::err_out.Configure(GPIOC, GPIO10, PinMode::INPUT_FLT);
Motor Resolver & Temperature Sensors
12-pin PCB header to connect to the motor sensors is an ERNI MiniBridge, part number 294920
Suspected wire colours to pin allocation below determined by schematic and multimeter trace, with resolver coils and temperature sensors checked for resistance.
Note as of 03 December 2023 this pinout has only been checked by manually rotating motor, but not under powered operation.
Pin No | Colour | Description | Notes |
---|---|---|---|
1 | Brown | Sin Hi | Twisted pair. 22.4 - 33.6 Ω. |
2 | Blue | Sin Lo | |
3 | Yellow | Ex Hi | Twisted pair. 22.4 - 33.6 Ω |
4 | Green | Ex Lo | |
5 | Red | Cos Hi | Twisted pair. 13.6 - 20.4 Ω |
6 | White | Cos Lo | |
7 | Blue | Temperature
Sensor |
From BMW Service Technical Training Manual - I01 High-voltage Components:
There are two stator coil temperature sensors. The rotor temperature is determined using readings from the stator temperature sensors. |
8 | Grey | ||
9 | Red | Temperature
Sensor | |
10 | Grey | ||
11 | - | Unused | These wires terminate in one of the six pin connectors in the motor housing. There is nothing connected to them. |
12 | - | Unused |