BMW i3 CCS/charge port controller
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
So now that I have a workbench again I'll be tackling the brand new LIM programming seeing as no one (to my knowledge) has done so or if so was not shared. As per my previous posts the plan is to use the i3 BDC , key and BDC simulator to allow ista-p program the module. No idea how to do this of course so follow along as I stumble blindly forward. Anyway, a new LIM was collected today from my (new) local friendly BMW dealer for the total sum of 241.42 Euros. Damn cheap for an OEM proven CCS controller if you ask me but then again what do I know ...
I'm going to need a hacksaw
- EV_Builder
- Posts: 1205
- Joined: Tue Apr 28, 2020 3:50 pm
- Location: The Netherlands
- Has thanked: 18 times
- Been thanked: 37 times
- Contact:
Re: BMW i3 CCS/charge port controller
You will need to get hold of a programmed one. If I'm correct you can read that config to your desk. Save it. And load that one into the new LIM if you go bare instantion i think you will need more devices to assemble a car config.
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
see http://www.wdrautomatisering.nl for bespoke BMS modules.
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
New LIM programming in progress. With CAN capture of course so with luck can be just done via CAN in future so no need for BDC etc.
I'm going to need a hacksaw
-
- Posts: 395
- Joined: Sun Aug 25, 2019 12:39 pm
- Location: Finland
- Has thanked: 55 times
- Been thanked: 14 times
Re: BMW i3 CCS/charge port controller

Any opinions are my own, unless stated otherwise. I take no responsibility if you follow my way of doing things and it doesn't work. Please double check with someone who knows what they are doing.
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
-
- Posts: 395
- Joined: Sun Aug 25, 2019 12:39 pm
- Location: Finland
- Has thanked: 55 times
- Been thanked: 14 times
Re: BMW i3 CCS/charge port controller
What 10 minutes.
Didn't take all the Weekend. Next testing?
Any opinions are my own, unless stated otherwise. I take no responsibility if you follow my way of doing things and it doesn't work. Please double check with someone who knows what they are doing.
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
Yeah I'll test it in the goose to be sure its working. Not a big deal to program. I'll make a video tomorrow with details on how to diy and might offer it as a service.
I'm going to need a hacksaw
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
Basic shopping list :
Software : Esys 3.36 from here : https://disk.yandex.ru/d/3XLfVVYHFq8qQw
pszdata lite from here : https://disk.yandex.ru/d/Y0w0r5T1ElMVdA
Hardware : LIM (duh!) and connectors and pins. Details on LIM : https://openinverter.org/wiki/BMW_I3_Fa ... LIM_Module
BMW i3 BDC (Body Domain Controller) basically the main ecu in the i3 the gates all the data around the car.
Car key from the same car as the BDC.
Got my BDC and key from : https://www.evbreakers.com/
They even threw in the plugs and few cm of harness for free.
BDC simulator : https://www.aliexpress.com/item/1005002317110375.html
Enet cable : https://bcables.com/
USB to ethernet adapter if your PC / laptop does not have a spare ethernet port.
Two extra pins for Conn8 on the bdc to bring out pt can.
DC power supply or 12v battery.
Software : Esys 3.36 from here : https://disk.yandex.ru/d/3XLfVVYHFq8qQw
pszdata lite from here : https://disk.yandex.ru/d/Y0w0r5T1ElMVdA
Hardware : LIM (duh!) and connectors and pins. Details on LIM : https://openinverter.org/wiki/BMW_I3_Fa ... LIM_Module
BMW i3 BDC (Body Domain Controller) basically the main ecu in the i3 the gates all the data around the car.
Car key from the same car as the BDC.
Got my BDC and key from : https://www.evbreakers.com/
They even threw in the plugs and few cm of harness for free.
BDC simulator : https://www.aliexpress.com/item/1005002317110375.html
Enet cable : https://bcables.com/
USB to ethernet adapter if your PC / laptop does not have a spare ethernet port.
Two extra pins for Conn8 on the bdc to bring out pt can.
DC power supply or 12v battery.
I'm going to need a hacksaw
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
CAN log from a coding sesion with bench rig :
https://github.com/damienmaguire/BMW-i3 ... mming/Logs
https://github.com/damienmaguire/BMW-i3 ... mming/Logs
I'm going to need a hacksaw
- muehlpower
- Posts: 679
- Joined: Fri Oct 11, 2019 10:51 am
- Location: Germany Fürstenfeldbruck
- Has thanked: 14 times
- Been thanked: 133 times
Re: BMW i3 CCS/charge port controller
I looked at your CAN log. A lot of this is unimportant switch positions etc or comes from the LIM. C0h is the alive signal from the gateway, 3ACh and 3BEh keeps kl30 and kl15 alive. The most interesting is 388h, it reflects the vehicle series and the country code. And the VIN with 380h is also transferred and saved i think.
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
Sure would be interesting if it all could be achieved with a few CAN messages 

I'm going to need a hacksaw
- muehlpower
- Posts: 679
- Joined: Fri Oct 11, 2019 10:51 am
- Location: Germany Fürstenfeldbruck
- Has thanked: 14 times
- Been thanked: 133 times
Re: BMW i3 CCS/charge port controller
I couldn't find any unknown messages. Maybe sending 388h is enough. You sent:
Type I01 MCV, electric motor, England, right-hand drive, no cylinders, no displacement, automatic transmission, Clubman body style. You could try to send another country, e.g. USA and left-hand drive. It should change at 272h CHGNG_TYP_AVLB.
Type I01 MCV, electric motor, England, right-hand drive, no cylinders, no displacement, automatic transmission, Clubman body style. You could try to send another country, e.g. USA and left-hand drive. It should change at 272h CHGNG_TYP_AVLB.
- EV_Builder
- Posts: 1205
- Joined: Tue Apr 28, 2020 3:50 pm
- Location: The Netherlands
- Has thanked: 18 times
- Been thanked: 37 times
- Contact:
Re: BMW i3 CCS/charge port controller
Muehlpower do you mean: So no UDS involved? Just plain car messages? Which would mean that swapping between cars also automatically adopts to new config?
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
see http://www.wdrautomatisering.nl for bespoke BMS modules.
- muehlpower
- Posts: 679
- Joined: Fri Oct 11, 2019 10:51 am
- Location: Germany Fürstenfeldbruck
- Has thanked: 14 times
- Been thanked: 133 times
Re: BMW i3 CCS/charge port controller
it's worth a try. I don't have a LIM to try it right now.
what is an UDS?
what is an UDS?
- EV_Builder
- Posts: 1205
- Joined: Tue Apr 28, 2020 3:50 pm
- Location: The Netherlands
- Has thanked: 18 times
- Been thanked: 37 times
- Contact:
Re: BMW i3 CCS/charge port controller
UDS is a protocol many times used in automotive world.
https://en.m.wikipedia.org/wiki/Unified ... c_Services
https://en.m.wikipedia.org/wiki/Unified ... c_Services
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
see http://www.wdrautomatisering.nl for bespoke BMS modules.
-
- Posts: 56
- Joined: Fri Jan 15, 2021 2:30 pm
- Location: Netherlands
- Has thanked: 3 times
Re: BMW i3 CCS/charge port controller
A UDS bootloader would be a very nice feature for the open inverter devices. 
- asavage
- Posts: 371
- Joined: Sat May 14, 2022 10:57 pm
- Location: Oak Harbor, Washington, USA
- Has thanked: 356 times
- Been thanked: 117 times
- Contact:
Re: BMW i3 CCS/charge port controller
Yeah, I was thinking "UDS" too, when Damien first mentioned using CAN to code a LIM without his other bits.
UDS is a CAN protocol, and a UDS session can require authentication, which is one reason why we're still forced to use cracked OEM software to work with our vehicles.
UDS is a CAN protocol, and a UDS session can require authentication, which is one reason why we're still forced to use cracked OEM software to work with our vehicles.
-
- Posts: 56
- Joined: Fri Jan 15, 2021 2:30 pm
- Location: Netherlands
- Has thanked: 3 times
Re: BMW i3 CCS/charge port controller
While trying to understand what the screenshot of the programming log tells I found this post which is not really related but still explains a bit...
The UDS jobs might only be to communicate with the BDC.
It might be useful to have the whole programming log.
https://f30.bimmerpost.com/forums/showt ... ?t=1318616E-sys installation instructions suggest to un-check "Update VCM" & "MSM." These stand for Vehicle Configuration Management & Master Security Management, respectively. They are part of ZGW (Zentrales Gateway), which stores everything which happened with the car, including some codings.
It is not necessary to tell your car everything you do. You cannot change the calculated values, like last coding date, in CAFD files. But, disabling these two functions, minimizes the record of what is written to vehicle.
ZGW will be read each time a vehicle is connected to an online ISTA+ (Diagnostic Software) in a service station and collected data is transmitted to BMW AG. So, to avoid further problems with BMW, we switch of the actualization of VCM and MSM.
When You Read FA or SVT, you are pulling from VCM. As such, there are times when you want these enabled like before flash programming.
With VO coding, there are two options:
Writing FA changes to VCM
This method is described in getting started guides
"Read" FA will show modified Vehicle Order.
Loading modified FA (without writing to VCM) to VO code.
This method avoids any flash programming issues & records mismatch at service
For additional Retrofits tips, check out this post.
The UDS jobs might only be to communicate with the BDC.
It might be useful to have the whole programming log.
- muehlpower
- Posts: 679
- Joined: Fri Oct 11, 2019 10:51 am
- Location: Germany Fürstenfeldbruck
- Has thanked: 14 times
- Been thanked: 133 times
Re: BMW i3 CCS/charge port controller
now that i know what UDS is i found it. CAN address 6F4h sends to the LIM, which responds with 614h.
- EV_Builder
- Posts: 1205
- Joined: Tue Apr 28, 2020 3:50 pm
- Location: The Netherlands
- Has thanked: 18 times
- Been thanked: 37 times
- Contact:
Re: BMW i3 CCS/charge port controller
Ok now you can try to login and try to read memory addresses.
Becare full with experimenting that you don't execute routines because you have no clue if they wipe the flash empty etc.
Becare full with experimenting that you don't execute routines because you have no clue if they wipe the flash empty etc.
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
see http://www.wdrautomatisering.nl for bespoke BMS modules.
- Jack Bauer
- Posts: 3638
- Joined: Wed Dec 12, 2018 5:24 pm
- Location: Ireland
- Has thanked: 9 times
- Been thanked: 272 times
- Contact:
Re: BMW i3 CCS/charge port controller
Not sure if useful, but you can get the i3 BDC into ignition "on" mode without the key by running the full fault delete function using ISTA. One of the steps cycles the ignition and leaves it (and all other modules) on. It will not allow drive of course, but does give ability to code/talk to all modules.
-
- Posts: 395
- Joined: Sun Aug 25, 2019 12:39 pm
- Location: Finland
- Has thanked: 55 times
- Been thanked: 14 times
Re: BMW i3 CCS/charge port controller
What If you change the VIN to lets say "GREYGOOSE1" ?muehlpower wrote: ↑Sat Aug 13, 2022 1:23 pm I looked at your CAN log. A lot of this is unimportant switch positions etc or comes from the LIM. C0h is the alive signal from the gateway, 3ACh and 3BEh keeps kl30 and kl15 alive. The most interesting is 388h, it reflects the vehicle series and the country code. And the VIN with 380h is also transferred and saved i think.
Will it work? Will it send that to the charger?
Imagine a Technician at Ionity lookin at charging logs where "Damiens minions" are charging in 7 countries at once..

Will there be possible future problems if identical VIN cars are charging at different locations at once?
Any opinions are my own, unless stated otherwise. I take no responsibility if you follow my way of doing things and it doesn't work. Please double check with someone who knows what they are doing.
- EV_Builder
- Posts: 1205
- Joined: Tue Apr 28, 2020 3:50 pm
- Location: The Netherlands
- Has thanked: 18 times
- Been thanked: 37 times
- Contact:
Re: BMW i3 CCS/charge port controller
If it happens swapping a VIN could be done easyly...so doesn't make sense. We could even together manage a POOL of VINS as long all cars are iot'ed
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
see http://www.wdrautomatisering.nl for bespoke BMS modules.
-
- Posts: 395
- Joined: Sun Aug 25, 2019 12:39 pm
- Location: Finland
- Has thanked: 55 times
- Been thanked: 14 times
Re: BMW i3 CCS/charge port controller
Oh yeah its the VIN broadcast in CAN that comes from the BDC? So LIM doesn't propably care much about storing it. Maybe just transmits the received VIN to CCS charger.
Any opinions are my own, unless stated otherwise. I take no responsibility if you follow my way of doing things and it doesn't work. Please double check with someone who knows what they are doing.