BMW i3 CCS/charge port controller

Development and discussion of fast charging systems eg Chademo , CCS etc
User avatar
asavage
Posts: 328
Joined: Sat May 14, 2022 10:57 pm
Location: Oak Harbor, Washington, USA
Has thanked: 269 times
Been thanked: 103 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by asavage »

https://openinverter.org/forum/viewtopi ... 478#p28478
Bryson wrote: Wed Jun 09, 2021 5:33 pm $270USD - looks like I’ve got to get back into the world of BMW hacking again! Cool, thanks for the heads up.

edit: purchased here https://www.ecstuning.com/b-genuine-bmw ... 356828052/

https://openinverter.org/forum/viewtopi ... 829#p29829
Bryson wrote: Fri Jul 09, 2021 12:47 am I’ve got a virgin (new, uncoded) LIM, connectors and VCU/housing and am ready and willing to do some testing and logging if there’s hardware ready. If that helps.

https://openinverter.org/forum/viewtopi ... 037#p31037
Bryson wrote: Sat Aug 21, 2021 3:11 pm That’s awesome, took a good while to crack that nut. Any tips on where I should start doing research on programming the virgin LIM?
Bryson, have you been able to have a virgin LIM work for you, or did you have to have it initialised?
Al Savage
2014 RAV4 EV
NissanDiesel
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Seems like I have a wall, we are capable of forcing the LIM to cycle the contactors to clear a fault state, however it still will not take charge.

If anyone minds having a quick look to see if there is anything wrong they can spot. https://github.com/Tom-evnut/BMWI3_LIM_ ... 20June.trc

I have compared it to Damiens and cannot find any noticable difference beyond BMS values.
https://github.com/damienmaguire/BMW-i3 ... _11_21.csv
Founder Volt Influx https://www.voltinflux.com/
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

Is it still failing at the same point? Precharged ok but wont close contactors?
I'm going to need a hacksaw
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Jack Bauer wrote: Thu Jun 23, 2022 2:03 pm Is it still failing at the same point? Precharged ok but wont close contactors?
Correct, I did the comparison and note I was stupid and force charge limit current to 0A. Which might be a reason for not allowing contactors to close.
But I could be wrong.

Can reliably get Contactor feedback into fault state and then cycle Ign via Can to clear it back to 0.
Founder Volt Influx https://www.voltinflux.com/
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

So can you see the station holding the precharge voltage steady and waiting for the LIM to close? The timings can be a little critical depending on the station used. Also do you have a software window defined so as soon as the precharge gets inside you go for close?

Regards programming LIM I have mentioned the process before : https://openinverter.org/forum/viewtopi ... sta#p28401
but despite asking no one wants to do this so as the song says its probably me.
I'm going to need a hacksaw
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Jack Bauer wrote: Thu Jun 23, 2022 2:10 pm So can you see the station holding the precharge voltage steady and waiting for the LIM to close? The timings can be a little critical depending on the station used. Also do you have a software window defined so as soon as the precharge gets inside you go for close?
Yes it goes quick, in the logs the closing request is seen when I would expect it. If I did not request close the station just holds it steady for a long time no issues. I guess at this moment its mainly hoovering up my porting bugs from the VCU coding.

One thing to note, this is with an 108s ID3 pack so all voltages are slightly higher. Battery was already around 396V but station said it could do 500V.

Once I get my own conversion sorted (currently working with someone remotely to sort CCS) I might join in at looking with flashing "fresh" units, or band together with others to push this through.
Founder Volt Influx https://www.voltinflux.com/
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

I dont see the slightly higher voltage having an effect. Sadly I'm nearly a year now away from this but it took a LOT of trial and error for me to get it running stable. I experienced this problem of sitting at precharge quite a bit. Firstly I had misswired the contactors then I didnt understand the clearing error system. One thing to be careful with is the BMS info msg 0x112. If memory serves the LIM likes to see this at close to 0v then precharge and stabilise. You are also missing quite a few ids to me e.g. 0x0a5. I spent weeks sitting there at an ionity station to isolate the ids needed. Some may be superflous for AC charging but it needs them for dc.
I'm going to need a hacksaw
User avatar
mdrobnak
Posts: 692
Joined: Thu Mar 05, 2020 5:08 pm
Location: Colorado, United States
Has thanked: 1 time
Been thanked: 5 times

Re: BMW i3 CCS/charge port controller

Post by mdrobnak »

Yep. Just like the Tesla stuff wants to know drive system status with DC vs doesn't care with AC. :) 0xa5 sounds like a similar thing. (Based on what little I know of BMW BN architecture CAN messages)

-Matt
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

Sorry ignore me I'm an idiot. You have the right ids. Just looking back over the vcu code. Just spent the day doing plasterboard so not exactly thinking straight:)
I'm going to need a hacksaw
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

You probably recognise 0x0a5 because it comes from my E46 touring can which the lim shares!
I'm going to need a hacksaw
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

I'm going to need a hacksaw
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

Eh Tom? You seem to be setting the current limit to 0 in 0x2f1. Mr.LIM wont like that :)
I'm going to need a hacksaw
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Jack Bauer wrote: Thu Jun 23, 2022 2:49 pm Tom see 0x112 behaviour here : https://github.com/damienmaguire/BMW-i3 ... _11_21.csv
Thanks for pointing me in this direction I will review this.
In the VCU code the voltage in 0x112 run in sync so this must not matter too much. But need to be present that is for sure.

Will need to do a few more test like fixing my dumb fixing Charge Current limit at 0. :?
Founder Volt Influx https://www.voltinflux.com/
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Jack Bauer wrote: Thu Jun 23, 2022 3:09 pm Eh Tom? You seem to be setting the current limit to 0 in 0x2f1. Mr.LIM wont like that :)
Yes thanks for checking the logs, one of the first thing I caught and banged my head against the table. So much for writing code late at night after a long day doing projects.
Founder Volt Influx https://www.voltinflux.com/
User avatar
Jack Bauer
Posts: 3563
Joined: Wed Dec 12, 2018 5:24 pm
Location: Ireland
Has thanked: 1 time
Been thanked: 87 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by Jack Bauer »

No sweat. Let us know how it goes. Also watch the voltage limit in 0x2f1 because guess which voltage the LIM compares this to ? BMS? Nope, Voltage measureing board in the car? Nope. CCS station with all the cable voltage drops and plug resistances etc? Yep:) Got me for ages as of course some station care about this and hard shut down if the station measured voltage exceeds this value others couldnt care less.
I'm going to need a hacksaw
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

Jack Bauer wrote: Thu Jun 23, 2022 3:24 pm Also watch the voltage limit in 0x2f1
Yes that is already dynamic. Unfortunately I am remote supporting someone trying to get this to work, if it was me I would be camping out near some charger trying to code bash it till it works, and looking very suspect. :twisted:
Founder Volt Influx https://www.voltinflux.com/
User avatar
EV_Builder
Posts: 1199
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands
Has thanked: 16 times
Been thanked: 33 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by EV_Builder »

EV_Builder wrote: Mon Jun 20, 2022 10:07 pm I can post the user class for the DBC for the public when its finished. its auto created :) c++. You get a class per message with properties to read/write and methods to get or set the canbus message.
Saves allot of time!

All naming and info comes from the DBC file.
@Tom91 I can help with SW if you have latest DBC file on GitHub!
It really changes the code pattern in your application so that errors become obvious...
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

EV_Builder wrote: Thu Jun 23, 2022 4:44 pm @Tom91 I can help with SW if you have latest DBC file on GitHub!
It really changes the code pattern in your application so that errors become obvious...
I have been updating the Github DBC so you can find it there.

I have looked at the Duosida/Chinese actuator, it has a microswitch that is closed when locked.

So to make this match the Pheonix Connector actuator from the BMW it needs to: 1k unlocked, 11k locked

To achieve this I came up with this solid state solution, can anyone tell my why this would not work? I would like to avoid using a change over relay.
SW1 is the Duosida actuator.
Duosida Actuator Conversion Circuit.JPG
Founder Volt Influx https://www.voltinflux.com/
User avatar
asavage
Posts: 328
Joined: Sat May 14, 2022 10:57 pm
Location: Oak Harbor, Washington, USA
Has thanked: 269 times
Been thanked: 103 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by asavage »

Is there a newer/fresher .dbc file on GitHub than Damien's (whose last commit was Dec2021)?
Al Savage
2014 RAV4 EV
NissanDiesel
tom91
Posts: 1274
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol
Has thanked: 97 times
Been thanked: 204 times

Re: BMW i3 CCS/charge port controller

Post by tom91 »

asavage wrote: Thu Jun 23, 2022 4:48 pm Is there a newer .dbc file on GitHub than Damien's (whose last commit was Dec2021)?
https://github.com/damienmaguire/BMW-i3-CCS/pulls
Founder Volt Influx https://www.voltinflux.com/
User avatar
asavage
Posts: 328
Joined: Sat May 14, 2022 10:57 pm
Location: Oak Harbor, Washington, USA
Has thanked: 269 times
Been thanked: 103 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by asavage »

Thx.
Al Savage
2014 RAV4 EV
NissanDiesel
User avatar
EV_Builder
Posts: 1199
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands
Has thanked: 16 times
Been thanked: 33 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by EV_Builder »

tom91 wrote: Thu Jun 23, 2022 4:48 pm To achieve this I came up with this solid state solution, can anyone tell my why this would not work? I would like to avoid using a change over relay.
SW1 is the Duosida actuator.
Duosida Actuator Conversion Circuit.JPG
Think it will work, you could swap the FET for a NPN transistor and the 12Volts from the right to an output and the switch to an input.

In that way a software managed solution rises and a config setting of lockfeedback type :)
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
Pete9008
Posts: 1801
Joined: Sun Apr 03, 2022 1:57 pm
Has thanked: 102 times
Been thanked: 347 times

Re: BMW i3 CCS/charge port controller

Post by Pete9008 »

tom91 wrote: Thu Jun 23, 2022 4:48 pm
EV_Builder wrote: Thu Jun 23, 2022 4:44 pm @Tom91 I can help with SW if you have latest DBC file on GitHub!
It really changes the code pattern in your application so that errors become obvious...
I have been updating the Github DBC so you can find it there.

I have looked at the Duosida/Chinese actuator, it has a microswitch that is closed when locked.

So to make this match the Pheonix Connector actuator from the BMW it needs to: 1k unlocked, 11k locked

To achieve this I came up with this solid state solution, can anyone tell my why this would not work? I would like to avoid using a change over relay.
SW1 is the Duosida actuator.
Duosida Actuator Conversion Circuit.JPG
That should work fine. If you need exactly 1k and 11k for the lock feedback circuit then R1 and R3 in the circuit need to be 11k and 1k1. Also if you stay with the FET then it would be worth adding a couple of caps to protect it from ESD/EMC hits (definitely one across G-S and maybe one across D-S).

Depending on what voltage the BMW puts on the contact you may also be able to lose the 12V feed. If it's a couple of volts or more, and you use a low gate voltage FET, you could connect the +12V signal to the lock feedback line too (if you do this you may need to increase the value of R2 to reduce the extra current it will be taking from the lock feedback line).

Edit - Ignore the last bit, unless the BMW module uses a current source, which is highly unlikely, it won't work. Stick with the 12V supply.
User avatar
muehlpower
Posts: 570
Joined: Fri Oct 11, 2019 10:51 am
Location: Germany Fürstenfeldbruck
Has thanked: 12 times
Been thanked: 96 times

Re: BMW i3 CCS/charge port controller

Post by muehlpower »

tom91 wrote: Thu Jun 23, 2022 4:48 pm
EV_Builder wrote: Thu Jun 23, 2022 4:44 pm @Tom91 I can help with SW if you have latest DBC file on GitHub!
It really changes the code pattern in your application so that errors become obvious...
I have been updating the Github DBC so you can find it there.

I have looked at the Duosida/Chinese actuator, it has a microswitch that is closed when locked.

So to make this match the Pheonix Connector actuator from the BMW it needs to: 1k unlocked, 11k locked

To achieve this I came up with this solid state solution, can anyone tell my why this would not work? I would like to avoid using a change over relay.
SW1 is the Duosida actuator.
Duosida Actuator Conversion Circuit.JPG
The 10k resistor goes on D from the FET, not directly on the signal.
User avatar
EV_Builder
Posts: 1199
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands
Has thanked: 16 times
Been thanked: 33 times
Contact:

Re: BMW i3 CCS/charge port controller

Post by EV_Builder »

muehlpower wrote: Mon Jun 27, 2022 8:14 am The 10k resistor goes on D from the FET, not directly on the signal.
Yes you are right it should be parallel on the FET!
Then it's 11K if switch is closed and void if not. Good eye!
Converting an Porsche Panamera
see http://www.wdrautomatisering.nl for bespoke BMS modules.
Post Reply