VETuner has been getting very little traction. It is a long way from covering its costs, so I thought I’d do a bit of promotion. I posted about it in a Speeduino group on Facebook.
I got a lot of comments and likes and even a couple of sign-ups! However, one comment made me pause.
I know it's only a tenner a year, but locking features that don't cost a penny to serve like tooth logger etc kind of adds a sour taste to the experience, I get it though for things like tune backups/storage/versioning etc
I started to write a response, but I deleted before posting as I wanted a bit more thinking time and room to lay out my case. I will be posting a link to this post back there.
VETuner currently runs this sort of sequence
graph TD; A[Write To ECU] --> B[Wait]; B --> C[Read Data From ECU]; C --> D[Process ECU Data]; D --> A;
The Wait and Read steps account for 93% of the cycle time during which VETuner is twiddling it’s metaphorical thumbs. However this means we can do the processing bit for ‘free’
graph TD; A[Write To ECU] --> B[Process ECU Data from previous read]; B --> C[Wait]; C --> D[Read Data From ECU]; D --> A;
This strictly speaking means that the UI will lag one read behind reality, but as all the data is timestamped it will have no impact on logs or analysis and it has the benefit of about a 10% increase in the read rate because there is no pause between the read and the follow write.
VETuner now supports connecting to a second ECU over CANBus. Typically this is a Microsquirt running the Trans firmware to control an automatic gearbox. As I don’t have any of that hardware, development was somewhat problematic.
A very stoic user called Jochen put up with me pushing out builds for him to test and send me log files so I could rummage through the carnage. Ultimately, I wrote a simulator with enough fidelity to convince Tuner Studio that it was talking to a MS3/Trans combo, and then worked VETuner against that. This should put me in good stead for other odd comms options when they crop up in the future.
(long post ahead)
For a while now, my car gets grumpy when it gets hot. In stationary traffic it gets hot, the fan kicks in and it becomes a bit of a struggle to keep it running at idle as the engine goes lean. I assumed it was to do with the engine ingesting hot air coming out of the radiator as under bonnet temperatures get quite high when the fan is running1
I’ve found a new gadget that I’m genuinely excited about. The Pill from Shelly is a tiny little USB powered thing that you can plug sensors into and advertise the values over BLE
I have a Stupid Car
and I’ve always had trouble with temperatures under the bonnet.
Over the years I’ve tried to interface to DS18B20 sensors in various ways. It started with Raspberry Pi(s) which required a lot of effort not to kill with car voltages and shutdown.
It’s been a little quiet lately so I thought I better post an update. Since the last post there have been over 350 updates made to the software. A lot have focussed on reliability and robustness of the connection, but here are a few of my favourite ‘user facing’ changes.
This is a walkthrough of what VETuner looks like, and what you can do with it.
VETuner uses the WebSerial/WebUSB interfaces supported by the Chrome family of browsers. Typically WebSerial is used on laptops, WebUSB on phones and tablets. Generally it tries its best to find your ECU. For security reasons, you have to select the right device the first time you try to connect, but it will automatically connect from that point onwards.
VETuner now has a proper home at vetuner.co.uk .
If you’ve been following along while I poked at parsers, dashboards, serial comms and all the other fun bits, this is the bit where it turns from “odd side project” into “real thing with an actual domain”. It may even result in “actual users” and “actual users who give me money”!
This was driven by me getting fed up with Android development for MSDroid. MSDroid is great, it’s just Google changing the requirements underneath it, taking phones from general purpose computing devices into ad impression generators. Ironically, it’s Google that makes the only browser with the Serial/USB APIs I need to talk to the ECUs, so I’m not completely done with them.
You may have seen this story last week. Well that was about me and 999 other people and come April 5th I will officially be one of Thatcher’s Threee Million.
I’m 55 and I can’t face the bullshit of interviews so it’s probably game over. I’m good at what I did (Engineering Manager) but I have zero enthusiasm to explain that several times over and get quizzed on my mental recall of random trivia of HTTP verbs for things that in real life are abstracted away or found with a quick DDG.
What you see there is the first time I have successfully connected a web browser running on Android to a Speeduino ECU via a direct USB connection.
The read rate is poor as it was a very old Motorola that is normally my Squeezebox controller , but it was to hand and had a USB-C socket on it. I have got over 60Hz on a desktop browser.