OBDii PID lijst Alfa, mogelijk ook voor Fiat

htevents
Nuovo Arrivato
Berichten: 17
Lid geworden op: do jul 26, 2018 18:27

OBDii PID lijst Alfa, mogelijk ook voor Fiat

Bericht door htevents »

Goedendag allemaal,

Ik ben al heel lang bezig om specfieke OBDii PIDs te vinden voor Fiat (voornamelijk de Punto 1.3mjet 2012).
De reden dat ik deze zoek is omdat ik een LCD instrument cluster wil maken, dus geen analoge tellers meer, maar alles via een groot LCD scherm op de plek van het cluster. Dit wordt allemaal aangestuurd via het OBDii protocol i.c.m. een Android apparaat met Realdash en voor de belangrijke lampjes maak ik een strip boven het scherm.

Helaas is er vrijwel niets te vinden over Fiat specifieke PIDs, echter vond ik op een Alfa forum een mooie lijst, waar nuttige dingen in staan die ik mogelijk wil gebruiken. Nu is een Alfa geen Fiat (en vise versa), maar gezien vele modellen van beide merken dezelfde ECU gebruiken, zou het niet raar zijn dat ze ook dezelfde PIDs gebruiken, lijkt mij tenminste niet dat ze voor de ECU die in een Fiat 1.3mjet zit compleet andere PIDs gebruiken, dan voor dezelfde ECU die in een Alfa 1.3mjet zit, maargoed, ik kan het mis hebben.

Goed, de lijst:

PID PID_Name Calculation_Formula Result Text BytesInResponse StartFromByte BytesForCalculation
1A80 Reading Identification Code FIAT drawing number 61 0 11
1A80 Reading Identification Code HW number 61 11 11
1A80 Reading Identification Code HW version 61 22 1
1A80 Reading Identification Code SW number 61 23 11
1A80 Reading Identification Code SW version 61 34 2
1A80 Reading Identification Code Homologation number 61 36 6
1A80 Reading Identification Code ISO code 61 42 5
1A80 Reading Identification Code Tester code 61 47 10
1A80 Reading Identification Code Production date 61 57 4
1A91 FIAT drawing number FIAT drawing number 11 0 11
1A92 HW number HW number 11 0 11
1A93 HW version HW version 1 0 1
1A94 SW number SW number 11 0 11
1A95 SW version SW version 2 0 2
1A96 Homologation number Homologation number 6 0 6
1A98 Tester code Tester code 10 0 10
1A99 Production date Production date 4 0 4
2101 Injection control unit X&0b00000001 X=0b00000000 Programmed 1 0 1
2101 Engine startup X&0b00000010 X=0b00000000 Allowed 1 0 1
2101 Universal code X&0b00000101 X=0b00000101 Received 1 0 1
2101 Injection control unit X&0b11111111 X=X Not programmed 1 0 1
2101 Engine startup X&0b11111111 X=X Not allowed 1 0 1
2101 Universal code X&0b00000101 X=0b00000001 Not received 1 0 1
2101 Universal code X&0b11111111 X=X Not enabled 1 0 1
2103 Odometer X*0.1 km 3 0 3
2108 Number of overrevs X*1 1 0 1
2109 Max. eng. speed counter X*10 msec. 2 0 2
210A Maximum engine speed X*40 Rpm 1 0 1
210B Number of rewrites X*1 1 0 1
210C Odometer at last rewrite X*0.1 km 3 0 3
2121 Cyl. 1 fuel correct. (X<0x8000) ? X*0.01 : (X-0x10000)*0.01 mm3/inject2 0 2
2122 Cyl. 2 fuel correct. (X<0x8000) ? X*0.01 : (X-0x10000)*0.01 mm3/inject2 0 2
2123 Cyl. 3 fuel correct. (X<0x8000) ? X*0.01 : (X-0x10000)*0.01 mm3/inject2 0 2
2124 Cyl. 4 fuel correct. (X<0x8000) ? X*0.01 : (X-0x10000)*0.01 mm3/inject2 0 2
2125 Cyl. 5 fuel correct. (X<0x8000) ? X*0.01 : (X-0x10000)*0.01 mm3/inject2 0 2
2130 Engine speed X*0.25 Rpm 2 0 2
2131 Vehicle speed X/128.0 km/h 2 0 2
2132 Cruise lamp X&0b0000000000000001 X=0b0000000000000001 Off 2 0 2
2132 Cruise lamp X&0b0000000000000010 X=0b0000000000000010 On 2 0 2
2132 Cruise lamp X&0xFFFF X=X Flashing 2 0 2
2133 Glow plugs lamp X&0b0000000000000001 X=0b0000000000000001 Off 2 0 2
2133 Glow plugs lamp X&0b0000000000000010 X=0b0000000000000010 On 2 0 2
2133 Glow plugs lamp X&0xFFFF X=X Flashing 2 0 2
2134 Water temperature w. lamp X&0b0000000000000001 X=0b0000000000000001 Off2 0 2
2134 Water temperature w. lamp X&0b0000000000000010 X=0b0000000000000010 On2 0 2
2134 Water temperature w. lamp X&0xFFFF X=X Flashing 2 0 2
2135 Oil pressure w. lamp X&0b0000000000000001 X=0b0000000000000001 Off 2 02
2135 Oil pressure w. lamp X&0b0000000000000010 X=0b0000000000000010 On 2 0 2
2135 Oil pressure w. lamp X&0xFFFF X=X Flashing 2 0 2
2136 Water in fuel filter lamp X&0b0000000000000001 X=0b0000000000000001 Off2 0 2
2136 Water in fuel filter lamp X&0b0000000000000010 X=0b0000000000000010 On2 0 2
2136 Water in fuel filter lamp X&0xFFFF X=X Flashing 2 0 2
2137 Power-latch duration X*1 msec. 2 0 2
2139 Failure lamp X&0b0000000000000001 X=0b0000000000000001 Off 2 0 2
2139 Failure lamp X&0b0000000000000010 X=0b0000000000000010 On 2 0 2
2139 Failure lamp X&0xFFFF X=X Flashing 2 0 2
213D Brake pedal status X&0b00010000 X=0b00010000 Pressed 1 0 1
213D Clutch pedal X&0b00000001 X=0b00000001 Pressed 1 0 1
213D Brake contact 2 X&0b00100000 X=0b00100000 Pressed 1 0 1
213D Accelerator pedal X&0b00000010 X=0b00000010 Accelerator potent. track 11 0 1
213D Brake pedal status X&0b11111111 X=X Released 1 0 1
213D Clutch pedal X&0b11111111 X=X Released 1 0 1
213D Brake contact 2 X&0b11111111 X=X Released 1 0 1
213D Accelerator pedal X&0b11111111 X=X Accelerator potent. track 2 1 0 1
213E Accelerator pedal (X*100)/65535 % 2 0 2
213F AD/C accelerator posit. 1 X*0.1 mV 2 0 2

Allereerst even wil ik graag even in de informatie over de PID duiken. Ik loop hier namelijk tegen aan en zou echt wel wat hulp kunnen gebruiken, vooral gezien met het achterhalen hoe ik deze info bij Realdash in kan voeren (ik zal hieronder wat links plaatsen in de hoop dat mensen mee willen kijken die hier iets meer van snappen dan ik).

- Een PID bestaad uit een header (PID nummer), deze kunnen in Decimal of HEX staan. Volgens mij, maar ik weet het dus niet zeker, staan deze PIDs in HEX.
- Daarna is de PID naam zichtbaar, ofwel, wat er op wordt gevraagd met deze PID.
- Na de naam is de calculatie zichtbaar. De ECU geeft een waarde terug aan de opvrager en deze waarde bestaat uit verschillende bytes, deze byte waardes kunnen anders zijn dan de werkelijke info, daarom moet er dus een calculatie plaats vinden. Voorbeeld: Engine RPM via standaard protocol heeft een conversie van (256A+B)/4, maar Engine Speed (RPM) in deze lijst heeft een Conversie van Value*0.25 (X in deze lijst staat volgens mij voor de teruggegeven waarde).
- Dan krijg je het resultaat van de waarde die opgevraagd is, niet heel spannend.
- Hier staan de bytesinresponse. Ik ga er van uit dat dat betekend in hoeveel bytes de ECU reageert, 2,3,4,5, etc. Ook hier kom ik er niet helemaal uit bij het invullen van de info bij Realsdash.
- Als eenalaatste is er de start vanaf byte, dit snap ik niet helemaal en ik weet ook niet of ik het uberhaupt nodig heb bij Realdash.
- Last but not least: de bytesforcalculation. Ook (nog) abracadabra voor me. Ik snap het woord, maar niet wat die bytes dan precies doen.

Het doel is dus om PIDs aan Realdash toe te voegen, waardoor ik die data op het LCD cluster weer kan geven.
Hier een link hoe Realdash PIDs leest en welke info ze nodig hebben: http://www.realdash.net/test/manuals/cu ... ations.php het kopje "The rotation section" is waar ze uitleggen welke data je in moet vullen. Over het algemeen snap ik dat redelijk, behalve de conversion.

Hier nog een video wat Realdash precies is en kan: https://www.youtube.com/watch?v=dGo1qDF ... structions

Ik hoop dat iemand dit erg interessant vind en mij hiermee kan en wil helpen.
Plaats reactie