I want to connect the code running in the browser, to the ECU. The browser code sends requests that the ECU processes in a synchronous manner and sends back the data.
sequenceDiagram
participant Browser
participant ECU
Browser->>+ECU: Request
ECU->>-Browser: Response
If I use Chrome on a desktop, I can use the WebSerial API and do effectively that. Running at 115200 baud I can get about a 60Hz rate poll rate, which is pretty decent.
Ever since I put a Megasquirt MS1 into the Stupid Car, back in 2009, I’ve been fiddling with software to work with it and similar ECUs. It started with MSLogger, and Android app that only logged and didn’t provide any capability to adjust the ECU. Then I joined the effort working on MSDroid which was much more capable.
Fast forward many years and MSDroid is effectively dead. I still fiddle with the code, but I can’t publish any updates to Google Play as it is tied into an obsolete payments library and that side of it belongs to the project owner.