Jaguar Ipace ISA shunt

Jaguar / Landrover hardware hacking
Post Reply
arber333
Posts: 2408
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Contact:

Jaguar Ipace ISA shunt

Post by arber333 »

You may remember i pulled the ISA shunt from IPACE battery assembly together with two Gigavac GV200-051 contactors.
There was also a LEM DHAB S/159 current sensor in the same box on the same connector. That seemed strange.

So i went and tried to connect ISA shunt. I got it 12V and its CAN came to life. Surprise surprise! CAN bus IDs are not the ones that Isabellenhutte is saying in its manual. But i can see they should be configurable.

For now i get this msgs:
03C3 00 01 FF FF FF EB
03D2 04 06 00 00 00 D6

03D2 stays pretty much the same even if i apply current.
But 03C3 reacts to current flowing through it. For a start i gave it a small 12V light bulb which i see pulls 1.7A. And i get response
03C3 00 02 FF FF F8 C4

I see i will have to test this further with known loads and log results. But i see that FF FF FF FF is an area for reporting current. I will just have to see how accurate this is.
Attachments
IMG_20201218_223929.jpg
IMG_20201218_223937.jpg
tom91
Posts: 746
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol

Re: Jaguar Ipace ISA shunt

Post by tom91 »

Very accurate.

So you do: FFEB(65515) - F8C4(63684) = 727 (1831)

So It is reporting back 1831 mA
arber333
Posts: 2408
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Contact:

Re: Jaguar Ipace ISA shunt

Post by arber333 »

tom91 wrote: Sat Dec 19, 2020 11:26 am Very accurate.

So you do: FFEB(65515) - F8C4(63684) = 727 (1831)

So It is reporting back 1831 mA
Yes i figured it needs substraction instead of addition :). Thank you.
It seems EB is not a valid end since this byte value is jumping quite a bit. So it seems this is quite enough for Chademo use or inverter power reporting for that matter.
I still have to see what happens if i show it the regen.
I will try to make a setup from within my car and try to vary load to get a sort of calibration for it. One PTC heater will draw close to 50A so this will be a known value + the car.

Now to figure what the other ID is for. Maybe a sort of Overcurrent signal? It will be tough to confirm.
I also need to try if i can get it to accept custom IDs from ISA manual. That way we can set up new msgs to drive various car dials.

Sadly this shunt doesnt have any HV voltage measurement. But that would be too much luck :).
tom91
Posts: 746
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol

Re: Jaguar Ipace ISA shunt

Post by tom91 »

If you feed it the current the other way the value should jump to 00 00 07 XX or something like that.
arber333
Posts: 2408
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Contact:

Re: Jaguar Ipace ISA shunt

Post by arber333 »

Ok i tried progresively with H7 light bulbs that i have here plenty.

1x H7 Light bulb at 13,65Vdc draws 4.25A and that translates to ID 03C3 msg 00 0F FF FF EE BC.
So i get 4399mA! Quite good i think.
2x H7 Bulbs were drawing 8.55A according to my power supply which gave ID 03C3 msg 00 0E FF FF DD 77.
Which i calculated to 8820mA!
I now used 1x H7 and one H4 bulb with both elements lit. This setup had a draw of 14.5A. I got 14791mA draw on ISA shunt.
Next one 2x H7 and one dual H4 bulb for 18.2A. I got 18763mA on ISA.

Then i reversed the current and reduced load.
With 18.2A load i got 18667mA! ID 03C3 msg 00 00 00 00 48 EB
With 14.25A i got 14534mA.
With 8.5A i got 8741mA.
Last one for the day was 4.35A for msg at 4418mA!

Really accurate at low end. Next i will setup my PTC heater and try to load my cars 12V wiring with it.
Attachments
IMG_20201219_230111.jpg
User avatar
EV_Builder
Posts: 902
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands

Re: Jaguar Ipace ISA shunt

Post by EV_Builder »

Do you have a partnumber? And do we know which version this is?
(Max current?)
arber333
Posts: 2408
Joined: Mon Dec 24, 2018 1:37 pm
Location: Slovenia
Contact:

Re: Jaguar Ipace ISA shunt

Post by arber333 »

EV_Builder wrote: Thu Nov 25, 2021 8:57 am Do you have a partnumber? And do we know which version this is?
(Max current?)
P/N cant be seen but i am certain it is 500A version! It has small ears.
EDIT: Here is the P/N
https://leafdriveblog.wordpress.com/tag ... ousel-1569
LRBen
Posts: 313
Joined: Thu Jul 04, 2019 6:35 pm
Location: Somerset, UK

Re: Jaguar Ipace ISA shunt

Post by LRBen »

I picked up one of these last month with that batch of ISA shunts that Zero EV were selling. Currently just trying to get SIMP BMS to read it but I think I am messing up endiness and concatenation

Code: Select all

case 0x3C3: //
          CANmilliamps = (inMsg.buf[2| inMsg.buf[3] ) - (inMsg.buf[4] | inMsg.buf[5]); 
This is my base, I can get some nonsense readings by moving the bits up and down but I feel like this base code should be working. Does this look correct to anyone?
User avatar
EV_Builder
Posts: 902
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands

Re: Jaguar Ipace ISA shunt

Post by EV_Builder »

Doesn't make much sense to me tobe honest. 8-)

The first thing Todo is construct the number from the bytes.
If two bytes are used: Byte 1 + (Byte 2 <<8)
Or if it's 3 or 4 you add another byte << 16 + byte <<24.
Puzzle with which byte you move etc.

Next thing is the scaling. Each digital increment is it 0,001 amp? Or any other factor. Then you do the math with that.
tom91
Posts: 746
Joined: Fri Mar 01, 2019 9:15 pm
Location: Bristol

Re: Jaguar Ipace ISA shunt

Post by tom91 »

So what you need to do is the same as the ISA shunt implementation in my code

Code: Select all

case 0x521: //
          CANmilliamps = inMsg.buf[5] + (inMsg.buf[4] << 8) + (inMsg.buf[3] << 16) + (inMsg.buf[2] << 24);
          if ( settings.cursens == Canbus)
          {
            RawCur = CANmilliamps;
            getcurrent();
          }
          break;
Just add this as the option in the sections that decodes the canbus under the selected "if (settings.curcan == 3)", which is active when you set it to ISA Scale.
LRBen
Posts: 313
Joined: Thu Jul 04, 2019 6:35 pm
Location: Somerset, UK

Re: Jaguar Ipace ISA shunt

Post by LRBen »

So I have added this to if (settings.curcan == 3). When it works it should then be able to read this shunt when ISA scale is selected.

I don't feel like I should be needing moving bytes around, as they are all in the order they need to be in for concatenation.
In theory this code should read Canbus message 03C3 msg 00 0F FF FF EE BC for example.
Then concatenate and calculate: FFFF - EEBC.

Code: Select all

case 0x3C3: // Jaguar Ipace ISA shunt current reading
          CANmilliamps = (inMsg.buf[2] | inMsg.buf[3]) - (inMsg.buf[4] | inMsg.buf[5]);
          if ( settings.cursens == Canbus)
          {
            RawCur = CANmilliamps;
            getcurrent();
          }
          break;
User avatar
EV_Builder
Posts: 902
Joined: Tue Apr 28, 2020 3:50 pm
Location: The Netherlands

Re: Jaguar Ipace ISA shunt

Post by EV_Builder »

LRBen wrote: Fri Aug 05, 2022 5:08 pm So I have added this to if (settings.curcan == 3). When it works it should then be able to read this shunt when ISA scale is selected.

I don't feel like I should be needing moving bytes around, as they are all in the order they need to be in for concatenation.
In theory this code should read Canbus message 03C3 msg 00 0F FF FF EE BC for example.
Then concatenate and calculate: FFFF - EEBC.

Code: Select all

case 0x3C3: // Jaguar Ipace ISA shunt current reading
          CANmilliamps = (inMsg.buf[2] | inMsg.buf[3]) - (inMsg.buf[4] | inMsg.buf[5]);
          if ( settings.cursens == Canbus)
          {
            RawCur = CANmilliamps;
            getcurrent();
          }
          break;
:?:
If you 'or' then all ones survive in the result. That doesn't make sense at all todo here.
Post Reply