Setting up Torque to show BMS data

Kia Soul EV Forum

Help Support Kia Soul EV Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
ZuinigeRijder said:
I do not know much about CAN. Maybe it helps if we talk more about the contents of the spreadsheet of CAN decoding:

https://docs.google.com/spreadsheets/d/1YYlZ-IcTQlz-LzaYkHO-7a4SFM8QYs2BGNXiSU5_EwI/edit#gid=0

According to the comments in tab "OBD PIDS", the different CAN's are found at (first one is the one you select in Torque Pro):
Code:
CAN ID Pair		ECU
	74E	
771	779	SJB
794	79C	OBC
7A0	7A8	BCM
7A5	7AD	SMK
	7BB	
7C5	7CD	LDC
7C6	7CE	CLU
7D1	7D9	
7D2	7DA	
7D4	7DC	EPS
7D5	7DD	
7D6	7DE	TPMS
7E2	7EA	VMCU
7E4	7EC	BMC

In the VMCU data tab, it shows already detected data, e.g.

Code:
	2101						
10	0E	61	1	F0	0	0	0
21	Unknown	Unknown	Unknown	Unknown	"Unknown
Accel Pedal related"	Accel Pedal Depth (%x2)	Vehicle speed (km/h)
22	0

So in Torque Pro we could show the Vehicle speed, using header 7E2 for selecting the VMCU, issue mode 2101 and select the vehicle speed column?
Actually, I did not yet try.

I played around with alOBD terminal and captured 2101 responses from 7E2.

Code:
5 > atz
atzELM327 v1.5
6 > atsp6
atsp6OK
7 > atsh7e2
atsh7e2OK
8 > 2101
210100E 0: 61 01 F0 00 00 00 1: FF 05 0C 03 00 00 [u]00[/u] 2: 00 00 00 00 00 00 00

Above was standing still, so the speed was 0 km/h (last byte on 1: response)

Code:
9 > 2101
210100E 0: 61 01 F0 00 00 00 1: F4 0D 00 07 52 39 [u]38[/u] 2: 00 00 00 00 00 00 00
10 > 2101
210100E 0: 61 01 F0 00 00 00 1: AF 0C 5E 06 18 2E [u]24[/u] 2: 00 00 00 00 00 00 00
11 > 2101
210100E 0: 61 01 F0 00 00 00 1: DA 0C 72 06 76 2F [u]2D[/u] 2: 00 00 00 00 00 00 00
12 > 2101
210100E 0: 61 01 F0 00 00 00 1: 66 0F B4 07 04 46 [u]42[/u] 2: 00 00 00 00 00 00 00
13 > 2101
210100E 0: 61 01 F0 00 00 00 1: C4 0E 67 07 5A 40 [u]4B[/u] 2: 00 00 00 00 00 00 00
14 > 2101
210100E 0: 61 01 F0 00 00 00 1: BC 0C 63 06 62 2E [u]2D[/u] 2: 00 00 00 00 00 00 00

Speed indicators above are 56, 36, 45, 66, 75, 45 km/h.
I think these are the real km/h and not what is displayed on the display, because these are a few km/h less than shown on the display.

Unfortunately I could not get it to work with Torque Pro, the following code only showed 0, 1, or 255:

Code:
003_VMCU Speed,Speed,2101,K,0,255,km/h,7E2

What is missing for Torque Pro?
 
ZuinigeRijder said:
Code:
003_VMCU Speed,Speed,2101,K,0,255,km/h,7E2

What is missing for Torque Pro?
I tried it this morning and it seems to work fine. However, you need to use a lower case k. I used this line:
Code:
003_VMCU Speed,Speed,2101,k,0,150,km/h,7E2
I forgot to reverse, so I don't know if that works too.

I agree that it is the "real" speed and not the speed in the display. When you go straight the GPS speed is usually the same as this speed. If you drive in circles you'll see the difference. I know this because I have to drive in circles to go up for the car parking at work ;)

I think I have to many dials in Torque because sometimes when I switch to the display where I had put the speed it shows "255" or "1". After a few seconds it will display the correct values. I have the same when I go back with the battery power/current draw values.
 
JeroenE said:
ZuinigeRijder said:
Code:
003_VMCU Speed,Speed,2101,K,0,255,km/h,7E2

What is missing for Torque Pro?
I tried it this morning and it seems to work fine. However, you need to use a lower case k. I used this line:
Code:
003_VMCU Speed,Speed,2101,k,0,150,km/h,7E2
I forgot to reverse, so I don't know if that works too.

I agree that it is the "real" speed and not the speed in the display. When you go straight the GPS speed is usually the same as this speed. If you drive in circles you'll see the difference. I know this because I have to drive in circles to go up for the car parking at work ;)

I think I have to many dials in Torque because sometimes when I switch to the display where I had put the speed it shows "255" or "1". After a few seconds it will display the correct values. I have the same when I go back with the battery power/current draw values.

Thanks, I did not know the codes are case sensitive :oops: The documentation of Torque Pro is really lacking, although there is a forum:
http://torque-bhp.com/forums/?wpforumaction=viewforum&f=1.0

Here are some more codes for the VMCU that worked for me:

Code:
003_VMCU P,P,2100,{h:0},0,1,,7E2
003_VMCU R,R,2100,{h:1},0,1,,7E2
003_VMCU N,N,2100,{h:2},0,1,,7E2
003_VMCU D,D,2100,{h:3},0,1,,7E2
003_VMCU B,B,2100,{h:4},0,1,,7E2
003_VMCU Eco,Eco,2100,{h:5},0,1,,7E2
003_VMCU CH tmr Inh,CH,2100,{h:6},0,1,,7E2

003_VMCU Accel Pedal Depth,Pedal,2101,j/2,0,100,%,7E2

The upper ones are meant to see which gear is selected (P, R, N, D, B).

The Eco only changes temporarily when you changes Eco as far as I could see.
The CH stands for the Charge Timer overrule, and if you press the overrule timer button this setting changes for a short while.
 
ZuinigeRijder said:
Thanks, I did not know the codes are case sensitive :oops: The documentation of Torque Pro is really lacking, although there is a forum:
I'm not sure if they are, I just tried it because I saw other PIDs with lower case variables and it worked right away. I hadn't actually tried with the upper case K.

I have now added your other codes and they seem to work. Like you said, if you press Eco it will only show "1" for a short time and then reverse to "0". I think these are just the switches which show a press of the button and not the setting itself. Probably the same is true for the gear switch, only that is a selection switch which will have one setting selected all the time.

Unfortunately, adding these settings also made my speed dial stop working. I tried deleting the new PIDs from Torque Pro and add them again, but that did not help.

If I go to the PID maintenance screen and choose "edit" and then "test" it does show the correct value for the speed. However the widgets will only show 0, 1 or 255.

I don't understand what's wrong :(
 
ZuinigeRijder: Thanks for adding these new codes. I just tested them. They all seem to be working. One more from the VMCU is accelerator pedal depth. This one may be interesting to graph against battery current. It should show the regeneration effect in B mode as you take you foot off the pedal.

Torque does work with a capital K for the speed. I prefer small letters because I am used to algebra being written that way, and for hex values to be written in caps. I think the author of Torque prefers capital letters because the signed function only works with caps. Everything else seems to be case insensitive. I have not yet had the problem with too many PIDs displayed, but am assuming that was probably the reason you had a problem not the case of the letter.

The codes for charging also seem to be working fine. I have add a note to always turn off the car before plugging / unplugging. It was probably me disconnecting with the car on that caused the errors and nothing to do with Torque or the dongle.
 
JeroenE said:
I'm not sure if they are, I just tried it because I saw other PIDs with lower case variables and it worked right away. I hadn't actually tried with the upper case K.

I have now added your other codes and they seem to work. Like you said, if you press Eco it will only show "1" for a short time and then reverse to "0". I think these are just the switches which show a press of the button and not the setting itself. Probably the same is true for the gear switch, only that is a selection switch which will have one setting selected all the time.

Unfortunately, adding these settings also made my speed dial stop working. I tried deleting the new PIDs from Torque Pro and add them again, but that did not help.

If I go to the PID maintenance screen and choose "edit" and then "test" it does show the correct value for the speed. However the widgets will only show 0, 1 or 255.

I don't understand what's wrong :(

I also had the problem that the Speed was not shown, so I think indeed that the uppercase K was not the problem.
So I got it working, by removing all extended pids and only added the Speed in a separate display.
Then I added the other extended pids, so these were correctly shown again in another display (luckily they survived when adding again, even after restarting Torque Pro).
However, adding this Speed in that display, did not show the speed.

So apparently the number of extended pids in one display is the problem, at least for the Speed. And maybe there is also a limit to the number of extended pids loaded :?:
 
I looked again at the spreadsheet (see VMCU tab):
https://docs.google.com/spreadsheets/d/1YYlZ-IcTQlz-LzaYkHO-7a4SFM8QYs2BGNXiSU5_EwI/edit#gid=0

Here are some more VMCU settings for Torque Pro:

Code:
003_VMCU Break lamp,Break lamp,2100,{j:0},0,1,,7E2
003_VMCU Break sw,Break sw,2100,{j:1},0,1,,7E2
003_VMCU Break related,Break related,2100,j,0,255,,7E2
003_VMCU Accel Pedal Related,Pedal related,2101,i,0,255,,7E2
003_VMCU Accel Pedal Depth,Pedal,2101,j/2,0,100,%,7E2

VMCUBreaks.jpg


The Break lamp shows when the rear brakes lamps will lit when pressing the brake pedal. Note that I could not see this changing when in B mode and not using the gas pedal.
The Break sw, shows when software braking is on and when you use the brake pedal hard enough (I tested in D mode) the setting changes.
During testing I saw:
  • 89 (1011001)
    90 (1011010)
    91 (1011011)

So I do not know the meaning of the first 4 bits (and also not explained in the spreadsheet).
The "Pedal related" setting is also unknown.

I also tested the following extended pids:

Code:
003_VMCU Climate 1,Climate 1,2102,g,0,255,,7E2
003_VMCU Climate 2,Climate 2,2102,h,0,255,,7E2
003_VMCU Motor Actual Speed RPM,Speed rpm,2102,((j<8)+i),0,10000,rpm,7E2
003_VMCU Motor Torque Command Nm,Torque Command,2102,((l<8)+k),0,10000,Nm,7E2
003_VMCU Estimated Motor Torque,Est. Torque,2102,((n<8)+m),0,10000,Nm,7E2
003_VMCU Motor Phase Current RMS,Phase Current RMS,2102,((v<8)+u),0,10000,rms,7E2
003_VMCU Motor Temperature,Motor temp,2102,w-40,-40,200,C,7E2
003_VMCU MCU Temperature,MCU temp,2102,x-40,-40,200,C,7E2
003_VMCU Heat Sink Temperature,Heat sink,2102,y-40,-40,200,C,7E2
003_VMCU Motor U Phase Current Sensor Offset,U Phase,2102,((z<8)+y),0,10000,,7E2
003_VMCU Motor V Phase Current Sensor Offset,V Phase,2102,((ab<8)+aa),0,10000,,7E2
003_VMCU Motor Resolver Offset,Resolver Offset,2102,((ad<8)+ac),0,10000,,7E2

See screenshots:

VMCUTemp.jpg


The Climate 1 and 2 gave the same result. It changed to 0 when the Heat button was off. For the rest I did not see other values, also when airco was on/off.

VMCUMotor.jpg


Maybe someone can explain more about these values and the meaning?
 
Haven't had much time for the Soul Spy work lately, but at least my data logger is working fine. :geek:
So, I made an effort and tried to identify the unknown data from the VMC unit. At my first service occation I got a printout from the GDS instrument, listing both the BMS and the VMC data. I put all the sensor names and data, from the printout of the VMC, in the spreadsheet. Then by assuming the instrument lists the items incrementally, I found a good correlation to the data from my logger.

I've added this to a new tab in the Soul Spy spreadsheet (named VMCU). The green fields were well known before, and the red ones still very unsure.

Still a lot of guessing, but I think that some live testing in the Torque App could help confirming many of these data fields. :)
 
Have swapped the values for battery module 8 temperature and the inlet air temperature in the BMS data on page 1 of this thread.
From
Code:
000_Battery Module 8 Temperature,Batt Temp8,2101,Signed(W),0,120,C,7E4
000_Battery Inlet Temperature,Batt InletT,2105,Signed(J),-40,120,C,7E4
to
Code:
000_Battery Module 8 Temperature,Batt Temp8,2105,Signed(J),0,120,C,7E4
000_Battery Inlet Temperature,Batt InletT,2101,Signed(W),-40,120,C,7E4
This follows the posting by Elmil on the Soul Spy thread which shows that these two values are wrongly interchanged.
Can people check to see if this change is working and if the new values make better sense.

Edit: Values corrected 3rd April 2016
 
Here's the VMCU PIDs collected from the posts above.
Code:
, Vehicle Motor Control System VMCU data for Kia Soul EV using Torque Pro
Name,ShortName,ModeAndPID,Equation,Min Value,Max Value,Units,Header
003_VMCU Climate 1,Climate 1,2102,g,0,255,,7E2
003_VMCU Climate 2,Climate 2,2102,h,0,255,,7E2
003_VMCU Motor Actual Speed RPM,Speed rpm,2102,((j<8)+i),0,10000,rpm,7E2
003_VMCU Motor Torque Command Nm,Torque Command,2102,((l<8)+k),0,10000,Nm,7E2
003_VMCU Estimated Motor Torque,Est. Torque,2102,((n<8)+m),0,10000,Nm,7E2
003_VMCU Motor Phase Current RMS,Phase Current RMS,2102,((v<8)+u),0,10000,rms,7E2
003_VMCU Motor Temperature,Motor temp,2102,w-40,-40,200,C,7E2
003_VMCU MCU Temperature,MCU temp,2102,x-40,-40,200,C,7E2
003_VMCU Heat Sink Temperature,Heat sink,2102,y-40,-40,200,C,7E2
003_VMCU Motor U Phase Current Sensor Offset,U Phase,2102,((z<8)+y),0,10000,,7E2
003_VMCU Motor V Phase Current Sensor Offset,V Phase,2102,((ab<8)+aa),0,10000,,7E2
003_VMCU Motor Resolver Offset,Resolver Offset,2102,((ad<8)+ac),0,10000,,7E2
003_VMCU Brake lamp,Brake lamp,2100,{j:0},0,1,,7E2
003_VMCU Brake sw,Brake sw,2100,{j:1},0,1,,7E2
003_VMCU Brake related,Brake related,2100,j,0,255,,7E2
003_VMCU Accel Pedal Related,Pedal related,2101,i,0,255,,7E2
003_VMCU Accel Pedal Depth,Pedal,2101,j/2,0,100,%,7E2
003_VMCU P,P,2100,{h:0},0,1,,7E2
003_VMCU R,R,2100,{h:1},0,1,,7E2
003_VMCU N,N,2100,{h:2},0,1,,7E2
003_VMCU D,D,2100,{h:3},0,1,,7E2
003_VMCU B,B,2100,{h:4},0,1,,7E2
003_VMCU Eco,Eco,2100,{h:5},0,1,,7E2
003_VMCU CH tmr Inh,CH,2100,{h:6},0,1,,7E2
Have I missed any?
Anyone got any ideas on which of these are most useful?
 
Have a Kia soul EV 2016, and ELM327 with Tourqu on my android, tested out the diffrent opertunerties, but when I tried to red charging parameters i got som strange result??

 
torle said:
Have a Kia soul EV 2016, and ELM327 with Tourqu on my android, tested out the diffrent opertunerties, but when I tried to red charging parameters i got som strange result??


I'm getting pretty much the same result. Also, strangely, the OBC values jump up and down from zero to ones similar to what you posted.
There must be an error in the coding somewhere.
 
I have recently notified about this in the Soul Spy thread. It is caused by a data format change in the newer/updated OBC Controller. The present apps, knowing only about the 1:st gen OBC will read the DC output voltage instead of the A/C input current...

Software will need to implement a mechanism to detect this. Shouldn't be too hard, though.
 
Hi torle, welcome to the forum.
Hi 2016Electric, glad to hear you have Torque setup.
It seems you both have a new version of the On Board Controller in your car.
Can you post some data about your cars.
Is it new? When was it made? Or have you had an OBC replacement?
If so, did you happen to see the version number?
There are pictures of the OBC stickers on the Charging Fault Error thread.

I have the old version of the OBC so cannot test this code, please report back if it is working.

Here are the On Board Charger codes for ver2 . - save as "Kia_Soul_EV_OBC_data.csv"
This is version 2 for cars newer than Oct 1st 2016 or with an OBC replacement
Code:
, On Board Charger OBC data for Kia Soul EV using Torque Pro v2
, available when the J1772 Cord is connected
Name,ShortName,ModeAndPID,Equation,Min Value,Max Value,Units,Header
002_Normal Charge Port,SlowCharger,2101,{j:5},0,1,,7E4
002_Rapid Charge Port,FastCharger,2101,{j:6},0,1,,7E4
002_OBC_Charging_Voltage,ChargeVolts,2102,((g<8)+h)/10,0,400,V,794
002_OBC_OutputVolts,OutputVolts,2102,((m<8)+n)/10,0,400,V,794
002_OBC_Charging_Current,ChargeAmps,2102,((o<8)+p)/10,0,400,A,794
002_OBC_Charging_Power,ChargePower,2102,(val{002_OBC_Charging_Current}*val{002_OBC_Charging_Voltage})/1000,0,400,kW,794
 
JejuSoul said:
Hi torle, welcome to the forum.
Hi 2016Electric, glad to hear you have Torque setup.
It seems you both have a new version of the On Board Controller in your car.
Can you post some data about your cars.
Is it new? When was it made? Or have you had an OBC replacement?
If so, did you happen to see the version number?
There are pictures of the OBC stickers on the Charging Fault Error thread.

I have the old version of the OBC so cannot test this code, please report back if it is working.

Here are the On Board Charger codes for ver2 . - save as "Kia_Soul_EV_OBC_data.csv"
This is version 2 for cars newer than Oct 1st 2016 or with an OBC replacement
Code:
, On Board Charger OBC data for Kia Soul EV using Torque Pro v2
, available when the J1772 Cord is connected
Name,ShortName,ModeAndPID,Equation,Min Value,Max Value,Units,Header
002_Normal Charge Port,SlowCharger,2101,{j:5},0,1,,7E4
002_Rapid Charge Port,FastCharger,2101,{j:6},0,1,,7E4
002_OBC_Charging_Voltage,ChargeVolts,2102,((g<8)+h)/10,0,400,V,794
002_OBC_OutputVolts,OutputVolts,2102,((m<8)+n)/10,0,400,V,794
002_OBC_Charging_Current,ChargeAmps,2102,((o<8)+p)/10,0,400,A,794
002_OBC_Charging_Power,ChargePower,2102,(val{002_OBC_Charging_Current}*val{002_OBC_Charging_Voltage})/1000,0,400,kW,794


Jeju -

Hey thanks! I'll update Torque with the new data as soon as I am able. I'll likely have a chance some evening this week.

What info would you like?
Model, In service date, KM total, KW chg (in and out), and battery deterioration stats?
 
2016Electric said:
What info would you like?
Model, In service date, KM total, KW chg (in and out), and battery deterioration stats?
Yes - if it all works fine -
On this thread - age of car, device used, any problems with Torque.
On the Battery Ageing thread - KM total, cumulative kWh (CEC and CED), battery deterioration stats
and a comment about climate, driving style, charging behaviour.
Example cool climate, mostly freeway driving, charge once a day from 20% to 80% using 3.3kW charger.
 
JejuSoul said:
2016Electric said:
What info would you like?
Model, In service date, KM total, KW chg (in and out), and battery deterioration stats?
Yes - if it all works fine -
On this thread - age of car, device used, any problems with Torque.
On the Battery Ageing thread - KM total, cumulative kWh (CEC and CED), battery deterioration stats
and a comment about climate, driving style, charging behaviour.
Example cool climate, mostly freeway driving, charge once a day from 20% to 80% using 3.3kW charger.

Great - done!

I've had a chance to pull the stats and I can confirm that your revised code (input as a CSV) works well.
Per your request, here are the stats for this thread:


Age of car: 2016 Kia Soul EV (Luxury model with Chademo option), in service as of October 2015

Device used: OBDLink MX Bluetooth adapter, Rev. 2.2/R4 (Mfr: 2014.12.19), on Samsung Note 3

Problems with Torque: Had to set "Disable ELM327 auto timing adjust (slow mode)", as without that disabled, the OBC readings constantly jump from nil to actual values. Other sensors did not seem to be affected. Having ELM327 disabled solved the problem.
 
2016Electric said:
Device used: OBDLink MX Bluetooth adapter, Rev. 2.2/R4 (Mfr: 2014.12.19), on Samsung Note 3

I have the same OBDLink MX Bluetooth adapter but It can't display correctly the TPMS , does it work on yours ?
 
PIFOUKIA said:
2016Electric said:
Device used: OBDLink MX Bluetooth adapter, Rev. 2.2/R4 (Mfr: 2014.12.19), on Samsung Note 3

I have the same OBDLink MX Bluetooth adapter but It can't display correctly the TPMS , does it work on yours ?

TPMS will only give results when driving (rolling the tires), because the TPMS sensors have no batteries and use the rolling of the tires for energy.
For me I need to drive approx 500 meters before values show up on my Konnwei bluetooth adapter.

Does the TPMS not show up while driving?
 
I have TPMS datas OK when using ELM327 but they are corrupted on torque when using OBDLink because of firmware configuration of the dongle. i wrote some informations about it previously on the topic.

Does it fully works on yours ?
 
Back
Top