Mit ein bisschen raten, könnte es das sein:zut hat geschrieben: ↑Mo Okt 21, 2024 6:47 pm Ich habe den Fiat500 für Focko schon ungetestet im soc_helper drin. Falls die direkte Lösung gefragt ist, bietet es sich an, die id3-Werte zu nehmen und die PID zu ersetzen mit denen vom Fiat500 - wie gesagt, bisher nicht getestet. Hier der Code als Augangsbasis:
Code: Alles auswählen
SOC_REQ_ID = 0x18DA44F1 SOC_RESP_ID = 0x18DAF144 SOC_REQ_DATA = [3, 34, 160, 16, 170, 170, 170, 170] ... def calcSOC(self, bytes): print(f'Daten für SoC-Berechnung:{bytes}') logging.debug(f'Daten für SoC-Berechnung:{bytes}') displaySoc = min( round(bytes[6]*0.45-6.4), 100 ) # Fiat 500e [0x18DAF144, 98, 160, 16, xx, xx, aa, xx, xx, xx, ...]. SOC ist aa/2.55 return(displaySoc) ...
Init:
ATSP7;ATSHDA44F1;ATCP17;ATCRA18DAF144;ATFCSH18DA44F1;
PID:
22A010
Expression:
((B6*0,46)-6,4)
(Wie runden geht, weiß ich nicht. Teilst Du nochmal durch 100? Da bin ich mir nicht so sicher...)
Aus Deiner Anmerkung (aa/2,5) sieht es eher nach B5/2,55 aus, da werde ich nicht ganz schlau draus.
Der Init String und die PID ist im Carscanner Log relativ leicht zu ermitteln, stehen im Klartext drin.
Nur die Expression "verrät" das Log nicht...