OBD2 project met ELM327 - Gek gedrag

Beste

Ik ben mondjesmaat bezig met een project om via OBD2 wat gegevens uit mijn auto uit te lezen omdat er origineel geen meters voor zijn (water & olie temperatuur). Het internet staat vol met voorbeelden etc, maar ik zit met een heel specifiek probleem.

Mijn setup is:

  • originele UNO (uit de starter kit)
  • Velleman HC-05 bluetooth module
  • ELM327 bluetooth (via bol.com)
  • ELMduino library (optioneel - om alles te vereenvoudigen)

Het probleem is namelijk dat als ik via een basic sketch communiceer met de ELM327 deze nooit correct antwoord, tenzij ik 1 willekeurig karakter mee stuur. Bijvoorbeeld, om een reset te doen via commando "ATZ", moet ik "AATZ" sturen. Idem voor het commando "ATRV" (batterijspanning) moet ik "AATRV" sturen.

Ik weet niet wat ik hier fout doe, en wil graag weten waarom dit gebeurd... Verder heb ik al een testen gedaan met de ELMduino library, maar om dit te laten werken heb ik enkele OBD commando's in de header file van de library moeten aanpassen (met leading willekeurige A) vooraleer ik correcte data terug krijg.

Ik vermoed dat mijn ELM327 toch de oorzaak is. Deze komt wel van bol.com, maar toch denk ik dat dit een chinese kloon is omdat het adres ervan 0:0:111111 is toen ik de adapter met mijn HC-05 aan het pairen was.
Los daarvan heb ik dezelfde module al met een Android tablet gebruikt om een auto via de app "Torque" uit te lezen. Deze heeft geen problemen om te connecteren.

Kan er iemand me in de juiste richting wijzen wat ik kan doen zodat ik geen willekeurig karakter mee hoef te sturen?

Mogen we veronderstellen dat je opstelling is zoals hieronder?

Arduino <- wired -> HC-05 <- wireless -> ELM327

Indien ja, aan welke pinnen heb je de HC-05 aangesloten?

Kun je je programma tonen?

  1. In de IDE, tools -> autoformat
  2. In de IDE, edit -> copy for forum
  3. Plak hier in een antwoord.