But these 4G connected smart ODB dongles scare the crap out of me. You are giving an IOT device the ability to disable breaks, the transmission, and lock you inside. I'm not really worried about a Maximum Overdrive type situation, giving this much control to a category of devices that was able to take down Dyn because so many of these devices used a subset of 60 common factory default usernames and passwords.
I think there is a good use case for these type of devices, but I think ODB, isn't the right mechanism for it. But I don't know if there will be a new standard.
OBD2 is incapable of doing any of those things. It is a diagnostic interface to read out information about important systems. There is a standard set of data streams, and vendors add customizations on top. So any OBD2 scanner should work on any car, but it may not be able to parse/display non-standard data streams.
There is some danger of control over the interface, but the interface does not specify any control operations beyond resetting diagnostic codes. The vulnerabilities in the interface stem from automakers repurposing the protocol, and are model/maker specific.
It seems like another protocol would only help if it defined control mechanisms so that carmakers would stop abusing OBD2.
OBD2 is utilized very differently by different manufacturers.
I am capable of applying brakes through the ABS system, applying any given throttle percent, shifting the cars sequential manual gearbox, forced over-pressurization of the transmission hydraulic system (for pressure vessel testing and relief valve testing) , or reflashing ANY of the ECMs available to the CANBUS network via the normal OBD2 interface on my BMW E46 M3 using the (bootlegged) OEM Rheingold/INPA software. (Among many many other things)
The ONLY ECM on the E46 M3 that is cordoned away from the OBD2/CANBUS interface is the SRS system (thankfully)
This software is freely available on most public trackers. It's by no-means rare or uncommon.
OBD2 is MUCH more capable than most are aware, especially on manufacturers like BMW or Audi that needed to shoehorn additional tech and diagnosis capabilities into the system.
P.S. I know you mentioned that manufacturers make the interface unsafe; I just wanted to clarify to those reading that it is by no means uncommon for manufacturers to do so nowadays. A consumer should by no means make a judgement about the control of their car by thinking "OBD2 is incapable of doing any of those things." when that's demonstrably not the case for many modern cars.
This was really informative. Is there a way to find out how different manufacturers have enabled (or left disabled) such functionality? Would love to know the potential pitfalls before messing around with something like this.
Of course, one thing you could do is have the AutoPi locked down to only reply to a certain IP, VPN connection, etc, but the underlying security issues once connected, remain.
My mistake. I was trying to point out that the OBD2 protocol is not inherently unsafe. I would love to see a new standard emerge for securely interacting with the various systems and processors in a car, but I'm not very hopeful given their tendency to lock-in.
Actually OBD on moderns cars is pretty much useless, it only reports the basic federally mandated emissions info for e-checks and that's it. All the fun stuff is on CAN and other often proprietary buses.
this was my question as well, like other people have pointed out OBD2 can get you diagnostic information but cannot actually control movement of vehicle or other parts on the car
(Some?) modern cars expose a CAN bus via the OBD port. There typically are pins that adhere to the OBD2 spec as well as additional pins for the CAN bus.
On my car (Mk6 VW) there are multiple CAN buses which are separated by a gateway device. A device plugged into the OBD port has to negotiate with the gateway in order to access the other buses, but once it has done so can control the windows, lighting, instrument cluster, etc.
Question to HN: What can Alexa/GA integration enable in a car other than the mundane music search, ask directions, etc. scenarios? How many of you would want to use it to send short messages (e.g. "Sorry!" after cutting someone off) to a small LED display mounted on your rear bumper?
Heh, it would be cool to script it so that if it detects someone talking for a minute or two with the window down, then accelerates quickly away, it loudly plays the Knight Rider commercial break theme music.
This is not equivalent. The key distinction in the device from OP's post is that it actually connects to the OBD port in your car, giving you a direct connection the cars systems. The one you linked does not seem to do that at all.
Anyone know how Android Auto (and Car Play) compare to the functionality exposed through the OBD port?
I have Android Auto and love it for navigation/music, but it is missing any car specific controls, eg. climate controls, reporting speed, maintenance, etc. I have to exit out of Android Auto and into Sync to access some specific functionality only available through the Sync touchscreen.
Is this just a case of the manufacturer needing to provide the right app, or is that information not available to third party apps running in those environments?
They sandbox many of the different systems. Carmakers won't cede deeper control to Android Auto or Carplay because they want to hold on to being the main user interface. There's also safety, security, and data-sharing issues at play.
Fair enough, I would be OK with having to run a Ford app through Android Auto to access that functionality on a Ford.
I just want the best of both worlds .. trying to hold onto being the main user interface feels short sighted. I'm not going to NOT buy your vehicle because I can use Android Auto vs your custom UI, so having both available shouldn't be a negative to the manufacturer.
Given how the most sought-after car today literally receives driving instructions through an OTA update, I've got a feeling we've all collectively decided we're ok with the dangers this brings, even if we didn't actually take part in that discussion :-/
Driving instructions via OTA are fine as long as your in car entertainment system is separate from the cars engine control et al. Which is the air gapped point I was making.
This looks an amazing project however I am very concerned about just how secure it is. Anyone remember the vulnerability disclosures of the existing in car systems and their ability for remote exploit resulting in a malicious party having control over things as essential as the cars velocity? AutoPi, while undoubtedly cool, definitely feels like quite an exploitable attack vector if not very carefully engineered. So I'd personally wait for an independent audit before buying this product.
It looks like a promising piece of hardware (though I am not sure if it's an RPi Zero they're adding BT and Wifi to, or actually an RPi Zero W - which would be easier, you'd think). My last two cars both put their OBD II ports exactly where my left leg is under the steering wheel, so I hope they ship it with a short right-angle extension cable (I use a much shorter BT dongle to connect to my phone current, it doesn't project too far).
Cool, and no offense, but let me know when a third party reviews it.
Voice recognition and personal assistants are annoying enough in a quiet house (but arguably useful). I would be surprised if it is useful yet in a noisy moving car.
I've seen people use Google Voice in a loud bar. It seemed to be effective. I can't get Siri to work under those conditions, however. The noise should be a solvable problem.
Your cautious optimism is well-founded. Having worked in the space for a few years, I've found voice tech in the car isn't quite the promised land I was hoping it would be.
The experience is still uneven. There are times when I'm amazed the recognition and language models could pick out proper names of friends and other times when I'm red in the face shouting "I SAID 'PLEASE GET CELERY', NOT 'PLEASE SELL TO ME!'"
For the time being, we still need analog button backups to handle the cases where speech rec fails or routinely misinterprets. The long tail of error cases can actually be even more dangerous for the driver than a simple button press, since they can take your mind off the road for several seconds.
But these 4G connected smart ODB dongles scare the crap out of me. You are giving an IOT device the ability to disable breaks, the transmission, and lock you inside. I'm not really worried about a Maximum Overdrive type situation, giving this much control to a category of devices that was able to take down Dyn because so many of these devices used a subset of 60 common factory default usernames and passwords.
I think there is a good use case for these type of devices, but I think ODB, isn't the right mechanism for it. But I don't know if there will be a new standard.