Outlander cabin heater

Introduction and miscellaneous that we haven't created categories for, yet
Post Reply
FFMan
Posts: 321
Joined: Mon Jul 25, 2022 7:59 pm
Location: Bicester, Oxfordshire
Has thanked: 8 times
Been thanked: 46 times

Outlander cabin heater

Post by FFMan »

So i have the cabin heater hooked up on a circulating water loop taking in the cabin matrix, a pump, the heater and a small expansion bottle Teed in.

It works ok but i wanted to check against other peoples experiences with it as it. It gets mid-warm after 5 or so minutes, enough to take the chill off the car and demist, but not toasty. In the outlander was this the only form of cabin heating or did the engine provide some too ?

Does it matter which way the water runs through the heater. I note my in temp is higher than my out, suggesting it may be running it the wrong way.

Does the orientation matter, i have it mounted horizontally.

When i fire it up in high heat mode the in & out temps rise gradually over 5 minutes to say 40 or more and are generally only 1 or 2 degrees apart. I did put a pwm controller on the pump to slow it down to half speed as i wondered of the water circulating too quickly was an issue.

Does this sounds like its work as well as it should or are other getting real hot air from it ?

thanks
E46 touring
Phev rear motor, OEM inverter cabin heater and charger
BMW 9kwh & 12kwh packs
arber333
Posts: 3265
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 80 times
Been thanked: 234 times
Contact:

Re: Outlander cabin heater

Post by arber333 »

Can you put oem issues under specific oem section next time?

Orientation doesnt matter. One sensor is on the in and one on the out. I use middle value from both.

Something is interfeering with Your 0x285 telegram. Under full power and good flow you should reach 55deg in 2 minutes.

I noticed the same behaviour with mine. I connected current clamps over it and saw current move on and off per second as circuit was switching on and off.
This as well as you need to deair your system matrix too. For this you need pump at full power. This meant a lot for me.
Solution with 0x285 was to put it on a different hw timer that fired at 10ms independently from other code which was at 100ms or so. For that i had to rethink the teensy code quite a bit.
For DUE code i havent had any issues as i used timerinterrupt line at 10ms
User avatar
Bigpie
Posts: 1595
Joined: Wed Apr 10, 2019 8:11 pm
Location: South Yorkshire, UK
Has thanked: 75 times
Been thanked: 304 times

Re: Outlander cabin heater

Post by Bigpie »

Mine gets pretty toasty. Can logs will help
VW Beetle 2003
Outlander front generator
Prius Gen 3 inverter (EVBMW logic board)
Outlander charger
3x Golf GTE batteries
Chademo Charging
Outlander water heater
FFMan
Posts: 321
Joined: Mon Jul 25, 2022 7:59 pm
Location: Bicester, Oxfordshire
Has thanked: 8 times
Been thanked: 46 times

Re: Outlander cabin heater

Post by FFMan »

i think my 285 was going out about every 60 msec so i've improved that to around 25 but i'll have to optimise some code to get it quicker but there is scope for that. I'll see if this improves it and i'm barking up the right tree. thanks for the advice.

I think i've got all the air out, i've got the expansion tank which will allow air out, and a bleed tap on the other side of the loop so i'm thinking that is ok, though it wasn't with the first design.
E46 touring
Phev rear motor, OEM inverter cabin heater and charger
BMW 9kwh & 12kwh packs
arber333
Posts: 3265
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 80 times
Been thanked: 234 times
Contact:

Re: Outlander cabin heater

Post by arber333 »

FFMan wrote: Sun Jan 28, 2024 6:07 pm i think my 285 was going out about every 60 msec so i've improved that to around 25 but i'll have to optimise some code to get it quicker but there is scope for that. I'll see if this improves it and i'm barking up the right tree. thanks for the advice.
Outlander Heater needs faster heartbeat than most other electronics curiously. I dont know why is that, empyric evidence suggests it is so.

This code is for DUE, what did you say you use again?
First declare duetimer library

Code: Select all

#include <DueTimer.h>  //https://github.com/collin80/DueTimer
Then You call interrupt within setup function and attach the heartbeat telegram to timer4. This way telegram will fire every 10ms no matter what happens...

Code: Select all

 Timer4.attachInterrupt(sendCANframeURGENT).start(10000); // This sets an interrupt time to send an URGENT CAN frame every 10ms.  The function can be changed and the time can be changed.     
arber333
Posts: 3265
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Has thanked: 80 times
Been thanked: 234 times
Contact:

Re: Outlander cabin heater

Post by arber333 »

Heater my code for Teensy 4.1

Call timer interval after library declarations

Code: Select all

 // Timer for BMS heartbeat
IntervalTimer BMStimer;
Declare function

Code: Select all

void bmsComms();  // Comms to the BMS heartbeat 
In setup function set timer

Code: Select all

  BMStimer.begin(bmsComms, 10000);
Make BMS heartbeat timer function

Code: Select all

void bmsComms()
{
    msg.id = 0x285;
    msg.len = 8;
    msg.buf[0] = 0x00;
    msg.buf[1] = 0x00;
    if (BMS_Status == 3)
      {
    msg.buf[2] = 0xB6; //We are charging
      }
    else if (BMS_Status == 5)
      {
    msg.buf[2] = 0x00; // Errors!!
      }
    else 
      {
    msg.buf[2] = 0x14; // Else is driving or at ignition
      }      
    msg.buf[3] = 0x39;
    msg.buf[4] = 0x91;
    msg.buf[5] = 0xFE;
    msg.buf[6] = 0x0E;
    msg.buf[7] = 0x10;
    Can2.write(msg);
}
Post Reply