[WIP] Renault Megane III EV Tech conversion

arber333
Posts: 3796
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 166 times
Been thanked: 413 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by arber333 »

Hm...
We just hit -4°C here in Slovenia!!!
As we drive to work together by our Ampera hybrid this week both my other EVs batteries are frozen solid. I do have heaters wired into BMS charging logic, but i did not consider i would have to thaw them out first. I am not inclined to push 15A into frozen battery alongside heating no matter for how short a time because there could be permanent electrode damage...

I decided to change the VCU code a bit. I would like to rewire a CAN1 to ZEVA BMS which works at 250kbps to sense when cell temperatures would be above 10degC before applying charging power... or similar. That would really make BMS connected with charger in all aspects.

But sadly i need this quick and i decided to simply add a comparator to the charging status and a manual limiting switch (previously sport switch) which is already used to limit regen in freezing temperatures...
...in "charging mode" just before HeaterComms(); i enter....

Code: Select all

    if (active_map == 1 && VCUstatus == 6) //  in charge mode chargercurrent 'limited'
    {
    chargercurrent = 0;
    }
This will limit charging in conjunction with limit switch
____________________________________________________________________________

Even better if i use charger temperature sensors with "sport" switch to limit charging when outside temperature is about 1degC.

Code: Select all

    if (active_map == 1 && DCDCTemp <= 1) //  in charge mode chargercurrent 'limited'
    {
    chargercurrent = 0;
    }
I will let you know how this works out today...
For the future i will be working on joint CAN bus with ZEVA BMS
User avatar
johu
Site Admin
Posts: 7182
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 552 times
Been thanked: 1918 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by johu »

I don't think you need to be that cautious with NMC chemistry. When charged slowly (<C/10) you can charge down to -20°C.
I read a study about this where they disassembled the cell after many 100 of those cycles and there was no damage.
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
arber333
Posts: 3796
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 166 times
Been thanked: 413 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by arber333 »

johu wrote: Tue Dec 30, 2025 8:50 am I don't think you need to be that cautious with NMC chemistry. When charged slowly (<C/10) you can charge down to -20°C.
I read a study about this where they disassembled the cell after many 100 of those cycles and there was no damage.
Yes i know they were tested below 0°C, but those were limited tests to look for immediate electrode damage. I dont want to go into long term consequences if its at all possible. Normal time degradation is enough for me...
If possible i would like to make automated system to deal with batteries as much as possible. I would think it gets this cold only for couple of weeks per year.
arber333
Posts: 3796
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 166 times
Been thanked: 413 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by arber333 »

Yesterday and today came down to -15°C here in the morning!!! :shock:

I decided to write something because it seems i was succesfull with battery heater implementation... sort of.
To explain again. I use 4 battery boxes with 24S cells in each with ZEVA 24S BMS modules for surveilance and control.
ZEVA EVMS3 is integrating CAN communication and input/output signalling.
Inside each box i use 400W silicon heater pad wired for 230Vac. Those pads can heat up to 120°C so they need some sort of power control. I provide this with one 12V relay which is controlled by the EVMS3 master. In case of over or under temperature BMS will signal error state and relay will be actuated.
As i use 2 chargers for 2 phases that leaves 3rd phase reserved for heaters. All together power here ammounts to 1600W or 8A (true power about 1800W).

Some posts above i described my intention how to integrate automating battery heating process. In the end i settled for manually selecting to inhibit charging with cell heating. Due to temps going down really fast i decided implementation takes precedense from design.
I decided for manual decision to inhibit charging if cell modules would be frozen so i could first thaw them out and then charge cells at more comfortable temperatures...
I used sport switch which in my code works already to inhibit "regen" function so i would not have much regen blocking my wheels on slippery road. As the switch really doesnt have function in charging mode i added this functionality to it.
i implement Teensy VCU code change to use the same interface for simplicity. Here goes....

// i use definitions

Code: Select all

uint8_t map3;  // Sport switch is pressed

uint8_t chargercurrent = 0; // current limiting variable
uint8_t chargecurrent = 0; // variable to calculate current from charger EVSE report
// in void loop() i set conditional to sense when i press the switch and when charger is at the limit. It works also as HV voltage limiting

Code: Select all

if ((map3 == 0) || (chargerHVbattryVolts > chargerstop) ) // if charger is at voltage limit in charge mode or is 'switch limited'
    {
    chargercurrent = 0x00; // There is no current because it is either at the stop or disabled because of cell heating   
    }
else if ((chargerHVbattryVolts > (chargerstop - 2)) && (chargerHVbattryVolts <= (chargerstop)))  // if charger is at 370V
    {
chargercurrent = 0x1E; // limit to 3A DC amps    
}
else     {
chargercurrent = chargecurrent; // calculate pwm report[%] * 10 / by 3 to get DC amps    }
// Inside charger function

Code: Select all

void EvseStart()
{
    chargerstopLoByte = lowByte(chargerstop*10);
    chargerstopHibyte = highByte(chargerstop*10);

 if (timer500_2.check() == 1)
  {
    msg.id = 0x286; // Outlander charger
      msg.len = 8;
      msg.buf[0] = 0x10; //voltage 360V
      msg.buf[1] = 0x0E;
      msg.buf[2] = chargercurrent; // Current byte 0x78 = 120; 12A       
      msg.buf[3] = 0x37;
      msg.buf[4] = 0x00;
      msg.buf[5] = 0x00;
      msg.buf[6] = 0x0A;
      msg.buf[7] = 0x00;
    Can2.write(msg)
}
   if (timer100_4.check() == 1)
  {   
    msg.id = 0x2FF; // Eltek charger
      msg.len = 8;
      msg.buf[0] = 0x01; 
      msg.buf[1] = 0xE8;
      msg.buf[2] = 0x03;        
      msg.buf[3] = chargerstopLoByte; // Voltage byte h
      msg.buf[4] = chargerstopHibyte; // Voltage byte l
      msg.buf[5] = chargercurrent;   // Current byte 0x78 = 120; 12A 
      msg.buf[6] = 0x00;
      msg.buf[7] = 0x00;
    Can2.write(msg);
  }}
// i define charge current from Outlander charger EVSE report

Code: Select all

void canRX_38A(const CAN_message_t &msg) {
PWM_signal = msg.buf[3]; // pwm report
if (PWM_signal >= 26) {
PWM_sig = 26; }
else if (PWM_signal < 10) {
PWM_sig = 10; }
else {
PWM_sig = PWM_signal;  }
chargecurrent = PWM_sig*10/2.7; // pwm report[%] * 10 / by 3 to get DC amps
}
This then allows me to toggle sport switch and charger will go to 0A while allow for the battey to heatup to 10°C without charging. After some time i simply toggle switch back and car will start putting amps in battery while keeping the battery at 10°C. Works for limited time while this frost lasts. I expect to make this automated using ZEVA CAN reports.
m.art.y
Posts: 714
Joined: Sat Jun 06, 2020 6:54 pm
Location: UK/EU
Has thanked: 38 times
Been thanked: 37 times

Re: [WIP] Renault Megane III EV Tech conversion

Post by m.art.y »

arber333 wrote: Thu Jan 08, 2026 7:45 am
Inside each box i use 400W silicon heater pad wired for 230Vac. Those pads can heat up to 120°C so they need some sort of power control.
Which silicon heater pads are you using? Do you have a link?
arber333
Posts: 3796
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 166 times
Been thanked: 413 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by arber333 »

m.art.y wrote: Sat Jan 17, 2026 3:36 pm Which silicon heater pads are you using? Do you have a link?
Ah sorry i forgot to add the link here...
Silicone Heating Pad Square Rubber Heat Mat Heated Bed Plate Flexible Waterproof 3D Printer....
https://www.aliexpress.com/item/1005004 ... 1802L97y62

You need to select aliexpress shipping because normaly they ship by some global shiping and then waiting is attrocius! It took 2 months for me!
arber333
Posts: 3796
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 166 times
Been thanked: 413 times
Contact:

Re: [WIP] Renault Megane III EV Tech conversion

Post by arber333 »

arber333 wrote: Thu Jan 08, 2026 7:45 am Yesterday and today came down to -15°C here in the morning!!! :shock:

I decided to write something because it seems i was succesfull with battery heater implementation... sort of..
.....
This then allows me to toggle sport switch and charger will go to 0A while allow for the battey to heatup to 10°C without charging. After some time i simply toggle switch back and car will start putting amps in battery while keeping the battery at 10°C. Works for limited time while this frost lasts. I expect to make this automated using ZEVA CAN reports.
Well to report back it seems this was a success.

My ZEVA BMS is set to trip temperature relay to start 4x 400W heaters under each battery box. Heaters are powered via the 3rd phase that is not in use by my 2 chargers.
If i would leave this as is heaters would turn ON when any of battery temp sensors is under 10degC.
This action would go on in parallel with normal charging.

From my post here i tried to get battery data from ZEVA BMS CAN bus.
https://openinverter.org/forum/viewtopi ... 426#p89426

Result is a good value in CAN report and variables stored in VCU.
Works with heater on as well as charging is done with negative value current report.

Next step is to automate heating while charging based on BMS CAN report for temperatures.
Idea is to observe BMS outside temperature and battery thermistors and decide to turn on heaters. This would mean also seasonal use of this mechanism as one does not want to heat batteries if outside temperature does not fall lower than 6degC.
Also when cells are under 0degC charging should be inhibited to safeguard them from harm...
I need to adapt the code.
Will report back...
Post Reply