ODB2 UART Blocking code
Posted: Thu Apr 23, 2020 1:50 am
Hi,
Having run some trials, the code utilised for this is clearly blocking, waiting for a response from a connected vehicle.
I am utilising the serial ODB2 connector to provide a couple of buts of data, plus the orientation., however I cannot countenance the device effectively blocking the rest of my program, as bad things will happen!
Do you have a non blocking version of the loaded code, your "firmwear"?
Can you please supply the firmwear as a download, so I can look at it / possibly modify?
About 18 months or so ago, I bought a Freematics ONE+, for another project, and modified the "datalogger" code, to stream data via bluetooth, to another Arduino. If the data was unavailable (in the Freematics 1+), then false values, which I can detect, were sent instead, indicating an error, e.g. PID_SPEED was returned as 999 if data was not immediately (>200ms) available. This ran in the loop, and streamed sequentially the data I needed. I then monitored the incoming data, parsed it, and utilised the values as needed.
Is there a full manual for the UART adaptor somewhere?
Can I get the code for the V1.1 firmwear to look at / modify please?
Please advise a way forward.
Having run some trials, the code utilised for this is clearly blocking, waiting for a response from a connected vehicle.
I am utilising the serial ODB2 connector to provide a couple of buts of data, plus the orientation., however I cannot countenance the device effectively blocking the rest of my program, as bad things will happen!
Do you have a non blocking version of the loaded code, your "firmwear"?
Can you please supply the firmwear as a download, so I can look at it / possibly modify?
About 18 months or so ago, I bought a Freematics ONE+, for another project, and modified the "datalogger" code, to stream data via bluetooth, to another Arduino. If the data was unavailable (in the Freematics 1+), then false values, which I can detect, were sent instead, indicating an error, e.g. PID_SPEED was returned as 999 if data was not immediately (>200ms) available. This ran in the loop, and streamed sequentially the data I needed. I then monitored the incoming data, parsed it, and utilised the values as needed.
Is there a full manual for the UART adaptor somewhere?
Can I get the code for the V1.1 firmwear to look at / modify please?
Please advise a way forward.