Ford Mustang Mach-E Extended PIDs for Torque Project

Eric_C_Boston

Well-Known Member
First Name
Eric
Joined
Apr 16, 2021
Messages
74
Reaction score
141
Location
North Shore, MA, USA
Vehicles
Ford Mustang Mach-E RWD ER
Occupation
Software Engineer
Country flag
I have been on this project for several months and far from done. But I have enough done to enable monitoring of charging. This project grew out of this thread. https://www.macheforum.com/site/threads/any-obd-ii-app-that-works-yet.2952/

I am interested in monitoring my new car and looked around for PID values. I found most of the Electric Drivetrain PID values for the Fusion Hybrid work. I noticed the Workshop Manual mentions PIDs for the Generator/Motor used in the Hybrid are used for the front motor.

I got a couple of surprises as I read up on EV charging. DC Fast Charging uses Powerline Communication between the EVSE and the car. The EVSE sends the maximum values for DC voltage, DC current, and DC power to the car and they show up in the PIDs. It appears there are similar values for the car that are sent back.

Some of the values maybe wrong or incomplete. I tried my best to name things properly.

Name,ShortName,ModeAndPID,Equation,Min Value,Max Value,Units,Header,startDiagnostic,stopDiagnostic,Scale
Grill Shutter Duty Cycle Requested,GrillSDC,0x220707,A/2.55,0,100,%,,,,1
Gear Commanded,GCM,0x221e12,LOOKUP(A:A:70='P':60='R':50='N':40='D':20='L'),0,100,state,7e6,,,1
HVB Temperature,HvbT,0x224800,(A-50)*1.8+32,-50,400,F,,,,1
HVB State of Charge,HvbSoc,0x224801,INT16(A:B)*0.002,0,100,%,,,,1
HV Positive Leakage Voltage,HvPLV,0x224803,INT16(A:B)*0.001,0,100,Volts,,,,1
HV Negative Leakage Voltage,HvNLV,0x224804,INT16(A:B)*0.001,0,100,Volts,,,,1
HV Contactor Voltage Positive,HvCVP,0x224805,INT16(A:B)*0.01,0,300,Volts,,,,1
HV Contactor Voltage Negative,HvCVN,0x224806,INT16(A:B)*0.01,0,300,Volts,,,,1
HVB Temperature Range Maximum,HvbMaxT,0x224808,(A-50)*1.8+32,-60,300,Deg F,,,,1
HVB Temperature Range Minimum,HvbMinT,0x224808,(B-50)*1.8+32,-60,300,Deg F,,,,1
HVB Temperature Range,HvbTR,0x224808,(C-50)*1.8,-60,300,Deg F,,,,1
HVB Temperature Range Average ,HvbAve,0x224808,(D-50)*1.8+32,-60,300,Deg F,,,,1
HVB Current Low Range,HvbALr,0x22480a,((signed(A)*256)+B)*0.02,-500,500,Amps,,,,1
HV Current,HvbA,0x22480b,((signed(A)*256)+B)*0.02,-500,500,amps,7e2,,,1
HVB Voltage,HvbV,0x22480d,INT16(A:B)*0.01,0,500,volts,7e2,,,1
HVB Age,HvbAge,0x224810,INT16(A:B)*0.005,0,320,months,,,,1
HV Leakage Resistance Bus Positive,HvLeakRBP,0x224811,INT16(A:B)*0.025,0,100,K-Ohms,,,,1
HV Leakage Resistance Bus Negative,HvLeakRBN,0x224812,INT16(A:B)*0.025,0,100,K-Ohms,,,,1
HV Leakage Resistance Bus Overall,HvLeakRBO,0x224813,INT16(A:B)*0.025,0,100,K-Ohms,7e4,,,1
HVB Minimum Module Voltage,HvbMinModV,0x224840,INT16(A:B)*0.001,0,10,Volts,7e4,,,1
HVB Average Module Voltage,HvbAvgModV,0x224841,INT16(A:B)*0.001,0,10,volts,7e4,,,1
HV Charger Current Requested,ChgOAR,0x224842,INT16(A:B)*0.01,0,500,amps,7e2,,,1
HV Charger Voltage Requested,ChgOVR,0x224844,A*2,0,500,volts,7e2,,,1
HVB State of Charge Displayed,HvbSocD,0x224845,A*0.5,0,100,%,7e4,,,1
HVB Coolant Inlet Temperature,HvbCIT,0x224846,(A-50)*1.8+32,-50,400,F,,,,1
HVB Energy to Empty,Energy,0x224848,INT16(A:B)*0.002,0,100,kWh,,,,1
HV Charger Output Voltage,ChgOV,0x22484a,INT16(A:B)*0.01,0,500,volts,7e2,,,1
HV Charger Status,ChgSt,0x22484d,LOOKUP(A:A:0='Idle':1='Wait':2='Rdy':3='Chg':4='Done':5='FAULT'),0,5,,7e2,,,1
HV Charger Input Power Available,ChgInPwr,0x22484e,INT16(A:B)*0.005,0,500,kW,7e2,,,1
HV Charger Output Current Measured,ChgOA,0x224850,INT16(A:B)*0.01,0,600,amps,7e4,,,1
EVSE Type,EVSE,0x224851,LOOKUP(A:A:0='None':4='Nrdy':5='Init':6='AC':8='DC':11='FAULT':12='NRLck'),0,12,,7e2,,,1
HV AC Charger Input Voltage,ACInV,0x22485E,INT16(A:B)*0.01,0,300,volts,,,,1
HV AC Charger Input Current,ACInA,0x22485F,A,0,100,amps,,,,1
HV AC Charger Input Frequency,ACInF,0x224860,A*0.5,40,80,Hz,,,,1
HV Charger Pilot Duty Cycle,PilotDC,0x224861,A*0.5,0,100,%,,,,1
HV Charger Proximity Status,ProxSt,0x224862,LOOKUP(A:A:0='NoCon':1='ConS3':2='Con':16='ConLck'),0,12,,,,,1
HV DC Charger Maximum Current,DCChgMaxA,0x224899,INT16(A:B)*0.01,0,600,amps,6f5,,,1
HV DC Charger Maximum Voltage,DCChgMaxV,0x22489D,INT16(A:B)*0.1,0,1000,volts,6f5,,,1
HV DC Charger Status,DCChgSt,0x22489e,LOOKUP(A:A:0='Idle':1='Init':2='Rdy':3='Weld':4='Pchg':5='Chg':6='Done':10='FAULT':11='Nrdy'),0,15,,7e2,,,1
HV Charger Pilot Voltage,PilotV,0x2248BC,INT16(A:B)*0.0012,0,15,volts,7e2,,,1
HV Charger Maximum Power,ChgMaxP,0x2248C4,INT16(A:B)*0.05,0,500,kW,7e2,,,1
Interior Temperature,IntT,0x22dd04,(A-40)*1.8+32,-40,400,F,7e2,,,1
Exterior Temperature,ExtT,0x22dd05,(A-40)*1.8+32,-40,400,F,7e2,,,1
HV AC Charger Coupler Temperature,ChgACT,0x22d117,(A-40)*1.8+32,-40,400,F,7e2,,,1
HV DC Charger Coupler Temperature,ChgDCT,0x22d00c,(A-40)*1.8+32,-40,400,F,7e2,,,1
Engine Run Time,Run,0x22f41f,(((A*256)+B)/60,0,1000,minutes,7e0,,,1
HV Battery Power Flow Calculated,PwrFlow,,val{HVB Current Low Range}*val{HVB Voltage}*0.001,-200,200,kW,,,,
HV Charger Power Flow Calculated,ChgPwrFlow,,val{HV Charger Output Current Measured}*val{HV Charger Output Voltage}*0.001,-200,200,kW,,,,
Advertisement

 

benk016

Well-Known Member
First Name
Ben
Joined
Nov 12, 2020
Messages
1,169
Reaction score
1,616
Location
Tulsa, Oklahoma
Vehicles
2021 Mustang Mach-E First Edition
Country flag
So I noticed that the Value for Total Power Flow calculated was incorrect. It was only showing between -40kw and 40kw. The calculation for it seems to be using a wrong input.

HV Battery Power Flow Calculated,PwrFlow,,val{HVB Current Low Range}*val{HVB Voltage}*0.001,-200,200,kW,,,,

Changing this to just "HV Current" seems to produce the expected result.
 
OP
OP

Eric_C_Boston

Well-Known Member
First Name
Eric
Joined
Apr 16, 2021
Messages
74
Reaction score
141
Location
North Shore, MA, USA
Vehicles
Ford Mustang Mach-E RWD ER
Occupation
Software Engineer
Country flag
It needs some more investigation. I have noticed the HVB Current Low Range PID value seems to read low.

There is a current sensor in the High Voltage Battery Junction Box that connects to the BECM module. The only HV battery current PID provided by the BECM is the HVB Current Low Range PID. Other information suggests the shunt is on the negative lead of the HV battery. This seems reasonable as some other Ford Hybrid Vehicles also have HVB Current High Range PID measuring current on the positive lead of the HV battery. I notice Ford uses range in the labels when they have multiple values of similar measurement. That is why the HVB Temperature values use Range in the labels for the minimum, maximum, and average values.

The HV Current PID is provided by the OBCC, SOBDM, SOBDMC, and SOBDMB. I have noticed at least two cases when the same PID is used by multiple modules, either it represents the value measured by the module, or the value received by the module from another module. So I do not know yet what the HV Current PID represents. I only have a RWD so I can not easily see if the values are the same to each motor.

One interesting case is with the HV Charger Output Current Measured PID. A valid value is output on the OBCC PID when DC Fast charging, and on the SOBDM PID when LeveL 1/2 Charging. If you read the BECM PID, then you get the value for whatever charger path is being used.

This is very much WIP and I just scratched the surface.
 
Advertisement

 
Advertisement
Top