Sorry hier nog een copilot vervolg op mij test voor het uilezen van de correct soc om die uiteindelijk in ABRP te kunnen gebruiken. Zonder gebruik van AI zou ik nooit zover gekomen zijn:
Toyota SOC via Car Scanner doorsturen naar ABRP
Nog een vervolg op het SoC-verhaal.
Omdat we ondertussen een vrij goede mapping hebben tussen de BMS-SoC en de SoC die Toyota op het dashboard toont, wilde ik eens kijken of ik die berekende "Toyota SOC" ook rechtstreeks in ABRP kon krijgen.
Mijn huidige keten is:
OBDLink CX → Car Scanner → ABRP
Car Scanner leest daarbij de originele SoC uit als PID 16435973.
In Car Scanner heb ik vervolgens een extra/custom sensor aangemaakt:
Toyota SOC
met onze eerder berekende formule:
code:
1
| -0.001145390*PID(16435973)*PID(16435973)+1.18373666*PID(16435973)-2.10206038 |
Dat werkt aan de Car Scanner-kant prima.
Tijdens het rijden geeft de nieuwe sensor netjes de berekende Toyota-SoC weer. De originele SoC-sensor blijft tegelijkertijd de ruwe/originele waarde weergeven.
Koppeling met ABRP
Car Scanner heeft een ingebouwde ABRP-integratie. Daarbij kun je per sensor onderaan bij de Sensor properties een aparte instelling vinden:
Let op: dit is NIET hetzelfde als de gewone "Role override" die iets hoger in de instellingen staat.
Voor mijn Toyota SOC heb ik ingesteld:
code:
1
2
| Role override: None
ABRP role override: soc |
De custom Toyota SOC verschijnt daarna ook daadwerkelijk onder:
code:
1
| Settings → ABRP Integration → ABRP sensors |
Daar staat hij als:
Dus tot zover lijkt alles goed te staan.
Maar... ABRP blijft de originele SoC krijgen
Daar zit momenteel nog mijn probleem.
Tijdens de test stond bijvoorbeeld:
Car Scanner originele SoC: 57%
Car Scanner Toyota SOC: hoger, volgens onze mapping
ABRP: 57%
En belangrijker: ABRP zakte tijdens het rijden mee met de originele SoC.
Het lijkt dus niet om een oude/gecachete waarde in ABRP te gaan. ABRP ontvangt live telemetry, maar blijkbaar nog steeds de originele SoC in plaats van mijn custom Toyota SOC.
Volgende test
Ik vond een beschrijving van iemand die Car Scanner op dezelfde manier met de Generic live-data-interface van ABRP gebruikt. Daar wordt aangeraden eerst alle sensoren onder "ABRP sensors" expliciet op:
code:
1
| ABRP role override = UNDEFINED |
te zetten.
Daarna vanuit "All sensors" alleen de sensoren die je werkelijk wilt doorsturen opnieuw een ABRP-role geven.
Voor SoC zou dat dus alleen worden:
code:
1
| Toyota SOC → ABRP role override = soc |
Dat wordt mijn volgende test.
Interessant detail: mijn lijst "ABRP sensors" bevat momenteel nog een hele reeks automatisch geselecteerde sensoren, waaronder meerdere Toyota/EV SoC-waarden. Hoewel daarbij "Role: None" staat, wil ik eerst die volledige reset proberen om uit te sluiten dat Car Scanner intern toch nog de oorspronkelijke SoC als bron kiest.
Doel
Als dit lukt hebben we uiteindelijk:
OBD/BMS SoC
↓
Car Scanner
↓
onze Toyota SoC-mapping
↓
Toyota SOC custom sensor
↓
ABRP role "soc"
↓
ABRP
Dan zou ABRP dus met de SoC werken die overeenkomt met wat je als bestuurder op het Toyota-dashboard ziet, terwijl we voor analyse nog steeds de echte BMS-SoC kunnen blijven loggen.
Wordt vervolgd.