Page 1 of 2

Eltek/Volvo charger

Posted: Thu Oct 07, 2021 11:16 am
by arber333
Here i think its best to post about Eltek and Volvo chargers

ELTEK EV Charger 360/3000 HE 241121.030

Posted: Thu Oct 07, 2021 11:28 am
by arber333
I found a Chineese supplier on Aliexpress that sold 3kW CAN controlled chargers with DC voltage limit at 420Vdc.
I bought one to try it and figure how to implement CAN control for three such chargers. I need them to charger my 104S battery.
That is charger module meant to be installed into racks where it has cooling and command infrastructure prepared.

CAN control is completely the same as Volvo chargers, with difference in telegram response time. Even data rate is the same at 500kbps. Only instead of command msg at 800ms this charger works with 02FF telegram at 100ms rate.

My intention was originaly to get two of the same chargers and reprogram them to work from different phases at parallel output.
I would have liked to make a central plate where both chargers would bolt to. Inside that plate i would drill channels for cooling and plug most of them. Finally i would cover the whole assembly with formed alu cover to seal it from the outside. I would get 2x 3kW chargers from 2 phases.

In the end my first Volvo charger failed and i decided to install this unit into its housing.
I had to get the housing trimmed down to install additional 10mm plate as thermal interface.
Now it looks almost identical to original Volvo charger and it didnt require complex drilling and sealing.

https://leafdriveblog.wordpress.com/202 ... 41121-030/
https://leafdriveblog.wordpress.com/202 ... d-cooling/

Volvo charger

Posted: Thu Oct 07, 2021 1:17 pm
by arber333
Volvo IP67 charger can be found under those PNs
31394702
30659929
31453939

Charger is 3kW or 10A max, but in every instance the max i could get out of it was 8A. In the end of charge it automaticaly tapers current to stay inside the 3kW limit.
CAN protocol for those chargers is very well described in Eltek documents. I posted them in my blog.
It is essentially plug and play CAN music :). Command telegram is very simple and charger reports back with DC and AC voltage, current, temperature etc...
I have tested it up to 415Vdc battery and it still provided 7A.

https://leafdriveblog.wordpress.com/201 ... w-charger/

Re: Eltek/Volvo charger

Posted: Sat Oct 09, 2021 10:09 pm
by arber333
It took me a little longer with this, but i finally figured out Eltek CAN instructions i got here: https://www.rec-bms.com/datasheet/EVPow ... otocol.pdf

My goal was to find out how to open charger to change of configuration of whatever parameter. Notably i wanted to change "charger address" so i would get CAN data on various return telegrams. That way i would be able to observe each charger for its parameters.

Instructions state you need to transmitt a series of bytes so that charger will open its config to a single change for 1s. When time elapses window for change is closed. So i setup CANframeUrgent telegram to trigger by timer every 800ms whatever i do next. Then i wired my DUE so that i could start an input which would send a telegram with instruction what to change. Telegram named CANframeB

I successfully changed charger address from 1(default) to 2 which is shown in charger reports. Before charger would report on 0x301 address and now it uses 0x311!

Here is what you need to send explicedly. Not 0x01, but exactly 1!

void sendCANframeC()
{
outframe.id = 0x303; // Set our transmission address ID
outframe.length = 3; // Data payload 8 bytes
outframe.extended = 0; // Extended addresses - 0=11-bit 1=29bit
outframe.rtr=1; //No request
outframe.data.bytes[0]=0;
outframe.data.bytes[1]=1;
outframe.data.bytes[2]=0;
// outframe.data.bytes[3]=0x00;
// outframe.data.bytes[4]=0x00;
// outframe.data.bytes[5]=0x00;
// outframe.data.bytes[6]=0x00;
// outframe.data.bytes[7]=0x00;

if(debug) {printFrame(&outframe,1);} //If the debug variable is set, show our transmitted frame

if(myVars.CANport==0) Can0.sendFrame(outframe); //Mail it
else Can1.sendFrame(outframe);
}

void sendCANframeB()
{
outframe.id = 0x303; // Set our transmission address ID
outframe.length = 3; // Data payload 8 bytes
outframe.extended = 0; // Extended addresses - 0=11-bit 1=29bit
outframe.rtr=1; //No request
outframe.data.bytes[0]=1;
outframe.data.bytes[1]=4;
outframe.data.bytes[2]=2;
// outframe.data.bytes[3]=0x00;
// outframe.data.bytes[4]=0x00;
// outframe.data.bytes[5]=0x00;
// outframe.data.bytes[6]=0x00;
// outframe.data.bytes[7]=0x00;

if(debug) {printFrame(&outframe,1);} //If the debug variable is set, show our transmitted frame

if(myVars.CANport==0) Can0.sendFrame(outframe); //Mail it
else Can1.sendFrame(outframe);
}

void sendCANframeURGENT()
{
outframe.id = 0x303; // Set our transmission address ID
outframe.length = 8; // Data payload 8 bytes
outframe.extended = 0; // Extended addresses - 0=11-bit 1=29bit
outframe.rtr=1; //No request
outframe.data.bytes[0]=1;
outframe.data.bytes[1]=22;
outframe.data.bytes[2]=0xF1;
outframe.data.bytes[3]=0xE2;
outframe.data.bytes[4]=0xD3;
outframe.data.bytes[5]=0xC4;
outframe.data.bytes[6]=0xB5;
outframe.data.bytes[7]=0xA6;

if(debug) {printFrame(&outframe,1);} //If the debug variable is set, show our transmitted frame

if(myVars.CANport==0) Can0.sendFrame(outframe); //Mail it
else Can1.sendFrame(outframe);

Re: Eltek/Volvo charger

Posted: Fri Oct 15, 2021 4:38 pm
by m.art.y
Hi, did you find the volvo v60 charger and the one you are using now is essentially the same charger? Do you have dimensions? 😊

Re: Eltek/Volvo charger

Posted: Fri Oct 15, 2021 8:17 pm
by arber333
m.art.y wrote: Fri Oct 15, 2021 4:38 pm Hi, did you find the volvo v60 charger and the one you are using now is essentially the same charger? Do you have dimensions? 😊
Bah! They are totally the same. Even protocol is the same. Difference is only in keep alive time between telegrams. On ip67 it is 800ms and on ip20 it is 200ms. And Volvo model has additional HV connector. Persumably to power the heater for battery heating.
Dimensions are all in the data specs.
https://www.rec-bms.com/datasheet/EltekGuideIP20.pdf
https://leafdriveblog.files.wordpress.c ... 710111.pdf

Also some old data from Orion
https://www.orionbms.com/charger-integr ... -chargers/

Re: Eltek/Volvo charger

Posted: Fri Oct 15, 2021 8:50 pm
by m.art.y
Thanks! Trying to decide on a charger. If I have 40 ah cells that can be charged at 1C and my battery is 2P96S what would be suitable charging power? 😊

Re: Eltek/Volvo charger

Posted: Mon Oct 18, 2021 1:10 pm
by arber333
m.art.y wrote: Fri Oct 15, 2021 8:50 pm Thanks! Trying to decide on a charger. If I have 40 ah cells that can be charged at 1C and my battery is 2P96S what would be suitable charging power? 😊
If you use 96S the most affordable option would be outlander charger which has dcdc built in. 2 devices for price of one! Later you can add eltek charger for 2phase charging. I use outlander to pull in cp signal and is followed by eltek to 17A.

Re: Eltek/Volvo charger

Posted: Tue Oct 19, 2021 5:34 am
by Zapatero
Just in case anyone is interested - i've got one left over water cooling plate for these chargers! If interested PM me


I'm using two of these 3 Kw Chargers on 2 phases, works perfectly fine.

Re: Eltek/Volvo charger

Posted: Tue Oct 19, 2021 6:59 am
by arber333
Zapatero wrote: Tue Oct 19, 2021 5:34 am Just in case anyone is interested - i've got one left over water cooling plate for these chargers! If interested PM me


I'm using two of these 3 Kw Chargers on 2 phases, works perfectly fine.
Are they from Volvo or Eltek? How dod you seal them from the enviroment? Any pics?

tnx

Re: Eltek/Volvo charger

Posted: Tue Oct 19, 2021 6:42 pm
by Zapatero
The cooling plate is designed for the IP20 charger, i'm using it with the IP67 charger anyways, just squeezed it inbetween my 2 chargers :) I ordered the last 2 available ones from EV Europe but only used one. One of them was 125€.
My Chargers are Eltek Valere, i'm charging with 2 phases 6 Kw per hour.
2Eltek.JPG

IP20 vs IP67 - technically exactly the same charger, the IP67 though has the better housing in my opinion
EltekValere_IP67IP20.JPG
This is the cooling Plate:

IMG_20211019_142236.jpg
IMG_20211019_142243.jpg
IMG_20211019_142250.jpg

Re: Eltek/Volvo charger

Posted: Mon Oct 25, 2021 8:11 pm
by m.art.y
arber333 wrote: Mon Oct 18, 2021 1:10 pm If you use 96S the most affordable option would be outlander charger which has dcdc built in. 2 devices for price of one! Later you can add eltek charger for 2phase charging. I use outlander to pull in cp signal and is followed by eltek to 17A.
Yes I have got an outlander charger already but I ended up not needing it's dcdc and 3.3 kw is not enough. I would like to have at least 10 kw charging capability for public charging so I'm deciding on which route to take. I could get 3 eltek chargers or tesla gen2 or use a toyota prius inverter as a charger which I already have. Can eltek charger also pull in CP? You are having trouble with same CAN ids when using more than 1 eltek charger?

Re: Eltek/Volvo charger

Posted: Mon Oct 25, 2021 8:18 pm
by arber333
m.art.y wrote: Mon Oct 25, 2021 8:11 pm Yes I have got an outlander charger already but I ended up not needing it's dcdc and 3.3 kw is not enough. I would like to have at least 10 kw charging capability for public charging so I'm deciding on which route to take. I could get 3 eltek chargers or tesla gen2 or use a toyota prius inverter as a charger which I already have. Can eltek charger also pull in CP? You are having trouble with same CAN ids when using more than 1 eltek charger?
I heared about Elteks biting the dust in parallel. There was never any explanation. But i didnt wanted to take the chance and i reprogrammed one charger o have a different address. I hope this would be ok. I am now sending command at 150ms.
No Elteks do not pull Cp in. You need to have a circuit to do that. I use my DUE board with Cp relay.

Re: ELTEK EV Charger 360/3000 HE 241121.030

Posted: Wed Nov 10, 2021 3:04 pm
by m.art.y
arber333 wrote: Thu Oct 07, 2021 11:28 am My intention was originaly to get two of the same chargers and reprogram them to work from different phases at parallel output.
Hi, have you got a 3 phase type 2 socket in your car to achieve this? From which car is that socket?

Re: ELTEK EV Charger 360/3000 HE 241121.030

Posted: Wed Nov 10, 2021 4:15 pm
by arber333
m.art.y wrote: Wed Nov 10, 2021 3:04 pm
arber333 wrote: Thu Oct 07, 2021 11:28 am My intention was originaly to get two of the same chargers and reprogram them to work from different phases at parallel output.
Hi, have you got a 3 phase type 2 socket in your car to achieve this? From which car is that socket?
It is a new Type 2 car socket with rubber boot and 1M cable 5x 6mm2 2x 0.75mm2. I boought it from Dostar Duosida at the time.

Re: Eltek/Volvo charger

Posted: Mon Jan 03, 2022 12:29 pm
by arber333
I have researched a flag operation within my DUE so i can use a single button and toggle between chargers.
I have 3x Eltek chargers wired 3phase in star circuit with common neutral. Each can pull 3kW from its phase. Now in my house i have various loads distributed between phases. To avoid overloading my system i decided to make a loop in my DUE code that will allow me to toggle between chargers with a single button. This will only take one input pin and toggle between 3 CAN addresses in any ombination.

CheckButton function is used with flags

Code: Select all

//Charger flags
bool Charger1 = false; //flag for charger1
bool Charger2 = false; //flag for charger2
bool Charger3 = false; //flag for charger3

//Then i call function

checkButton();
Now function i declare with all options and debouncing

void checkButton()
{
  buttonState = digitalRead(button);
  if (lastButtonState != buttonState)
  {
    lastButtonState = buttonState;
    //has the button been released (HIGH is not pushed)
    if (buttonState == HIGH)
    {
      buttonCounter++;
      if (buttonCounter == 1) {
        Charger1 = true;        
        Charger2 = false;
        Charger3 = false;    
      }

      else if (buttonCounter == 2) {
        Charger1 = false;        
        Charger2 = true;
        Charger3 = false;      
      }
      else if (buttonCounter == 3) {
        Charger1 = false;        
        Charger2 = false;
        Charger3 = true;
      }
      else if (buttonCounter == 4) {
        Charger1 = true;        
        Charger2 = true;
        Charger3 = false;
      }
      else if (buttonCounter == 5) {
        Charger1 = false;        
        Charger2 = true;
        Charger3 = true;
      }
      else if (buttonCounter == 6) 
      {
        Charger1 = true;        
        Charger2 = false;
        Charger3 = true;
      }    
      else
{
        buttonCounter = 0;         
        Charger1 = true;        
        Charger2 = true;
        Charger3 = true;     
      } 
    }   
  }
}

//Now i can see all combinations and toggle code for CAN bus telegram

if(digitalRead(PP_pin) == LOW) { // if PP_pin senses EVSE
digitalWrite(PP_relay,HIGH); // turn on Cp_relay  
  if(millis()-lastime > myVars.transmitime)  //Nominally set for 120ms - do stuff on 120 ms non-interrupt clock
    {
     if(Charger1 == true){
     lastime=millis();        
      sendCANframeA();  
      printstatus();
digitalWrite(LED1_pin, HIGH);
         } 
         else {
digitalWrite(LED1_pin, LOW);
 }      
     if(Charger2 == true){
     lastime=millis();        
      sendCANframeB();
      printstatus();
digitalWrite(LED2_pin, HIGH);       
    }
         else {
digitalWrite(LED2_pin, LOW);
 }  
     if(Charger3 == true){
     lastime=millis();        
      sendCANframeC();
      printstatus();
digitalWrite(LED3_pin, HIGH);       
}
         else {
digitalWrite(LED3_pin, LOW);
 }         
}      
}             
else {
digitalWrite(PP_relay,LOW); // turn off PP_relay
 } 
I also added three LEDs to signify each charger channel and provide visual UI.
I coded them to transistor pins of the ULN2003 chip so DUE provides pulldown and 12V is connected to each LED.
When i push the button it changes state and switches to the next case. Thus i can toggle between various combinations of 3 chargers and LEDs show me which chargers are lit. The green button is there for DUE reset.

Re: Eltek/Volvo charger

Posted: Wed Feb 09, 2022 9:19 pm
by boekel
Hi @arber, no issues with 3x eltek on same canbus? or do they need individual canbus per charger?

I have to build a big charger for a boat, with sets of 3 chargers to enable for 16A / 32A and later even 63A three phase and have to decide what I'm going to use. (on a small budget)

I do already have 3x eltek in stock...

Re: Eltek/Volvo charger

Posted: Wed Feb 09, 2022 9:59 pm
by arber333
boekel wrote: Wed Feb 09, 2022 9:19 pm Hi @arber, no issues with 3x eltek on same canbus? or do they need individual canbus per charger?

I have to build a big charger for a boat, with sets of 3 chargers to enable for 16A / 32A and later even 63A three phase and have to decide what I'm going to use. (on a small budget)

I do already have 3x eltek in stock...
They are wonderfull little chargers.
I am using 3 eltek chargers for some time without any issues. There were occasions when EVSE tripped and went into some error, but it was traced to bad firmware on the EVSE side.
If you just want to use all of them in 3phase wiring at the same time.you can connect them on the same CAN bus and command them with 0x2FF telegram. It is common to all af them.
I would recommend you to reprogramm them to unique IDs the way i did it. So you would get 0x300, 0x310 and 0x320 chargers. Up to 16 chargers can be used on the same bus. They would still respond to 0x2FF telegram, but would transmitt on separate telegrams on the same CAN bus. That way there wouldnt be any collision on that data link. I read about some Eltek chargers went crazy in star wiring, persumably due to CAN control malfunction. I havent had that here. I am keeping control on charger voltage, current and temperature via CAN bus. If i remove telegram 0x2FF chargers would stop.
Be carefull to keep ends of CAN bus wiring short. Under 15cm if possible.....

Re: Eltek/Volvo charger

Posted: Mon Feb 14, 2022 9:25 pm
by boekel
Thanks for the info!!

I'll use them and will look for some more :)

Re: Eltek/Volvo charger

Posted: Sun Apr 17, 2022 12:22 am
by cristy081
"would recommend you to reprogramm them to unique IDs the way i did it. So you would get 0x300, 0x310 and 0x320 chargers. Up to 16 chargers can be used on the same bus. They would still respond to 0x2FF telegram, but would transmitt on separate telegrams on the same CAN bus"
hello, i have a can interface but i didn't know how i can reprogramm them ? i have to replace one of 3 chargers on my car

Re: Eltek/Volvo charger

Posted: Sun Apr 17, 2022 12:06 pm
by arber333
cristy081 wrote: Sun Apr 17, 2022 12:22 am hello, i have a can interface but i didn't know how i can reprogramm them ? i have to replace one of 3 chargers on my car
First you would need CAN controler that can spit out two msg IDs at asynchronus rate.
Keep open at 800ms and Command at 500ms.
Here you see what i did with firmware for my DUE control board.
https://leafdriveblog.wordpress.com/202 ... ogramming/

You need to read up on Eltek CAN protocol first. You can see that you need to send a trigger msg ID 0x303 (unchanged charger) to unlock configuration for 1s.
That is the 0x303 1 22 0xF1 0xE2 0xD3 0xC4 0xB5 0xA6 telegram i am sending repeatedly as urgent. Notice byte0 and byte1 are straight numbers. I dont know why is that, but i couldnt get the process to work with 0x22 byte so i just input the value 22 and it works!

During that second you send the new parameters, in my case i set one charger ID from 1 to 2 by commanding 0x303 1 4 2 telegram. Byte1 is reserved, i keep it at (1), byte2 (4) is the process command and byte2 is the adress.

If you like to have various chargers at different adresses i advise you to setup different command messages bound to different input pins. Then connect each charger alone to your CAN control and command them.

I repeat the "keep open" msg at 800ms and transmitt "command" msg at 500ms when i trigger one pin on my DUE.
Several other options can also be changed, for example CAN bus speed...

Re: Eltek/Volvo charger

Posted: Sun Apr 17, 2022 3:01 pm
by mjc506
0x22 = 34 decimal. If you want everything in hex, you need 0x01 0x16 :-)

Re: Eltek/Volvo charger

Posted: Sun Apr 17, 2022 6:36 pm
by arber333
mjc506 wrote: Sun Apr 17, 2022 3:01 pm 0x22 = 34 decimal. If you want everything in hex, you need 0x01 0x16 :-)
Sure i knew that, but i didnt know why they would use some bytes in hex and some direct. Probably to stop some moron indiscriminately changing settings...

Re: Eltek/Volvo charger

Posted: Fri Apr 22, 2022 9:48 am
by cristy081
Thank you for your answer, I have a can interface module named "USBtin" and has some free software. What software you use for your can interface?

Re: Eltek/Volvo charger

Posted: Mon May 09, 2022 1:42 pm
by boekel
Does anyone know the type of the small 3 pin connector? 3mm pitch seems the same as Molex Micro-Fit but the lock is on the side...
20220509_153604.jpg
20220509_153547.jpg
20220509_153558.jpg