
Using Google Assistant with AutoPi to enable voice control of a car - MurdocTannen
https://www.autopi.io/blog/speak-to-your-car-like-kitt-from-knight-rider/
======
Jaepa
First off this looks cool.

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.

~~~
joshuata
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.

~~~
serf
>OBD2 is incapable of doing any of those things.

 _This is false._

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.

~~~
j45
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.

~~~
js2
Google most likely to find the enthusiast forums for the car/manufacturer,
then searching the forurms. Probably there is a subreddit too for your car.

~~~
j45
I keep my social media on a diet but will def expire reddit. Appreciate the
pointer!

------
tylergetsay
How do you control windows over OBD2? I've never seen any universal car
control over OBD2, only specific model/ECU tuning.

~~~
jeron
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

~~~
foobard
(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.

------
Jun8
I didn't see Dashbot
([https://www.kickstarter.com/projects/1598272670/dashbot-a-49...](https://www.kickstarter.com/projects/1598272670/dashbot-a-49-robot-
for-your-dashboard)) mentioned here: it's pretty much the same thing but
instead using Alexa and not using (potentially scary) OBD port connection.
With Ford announcing Alexa integration coming this summer to SYNC3
([https://media.ford.com/content/fordmedia/fna/us/en/news/2017...](https://media.ford.com/content/fordmedia/fna/us/en/news/2017/01/04/alexa-
car-ford-amazon-shop-search-home.html)) it seems devices such as these will be
more commonplace.

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?

------
Severian
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.

Best example I could find is this:
[https://www.youtube.com/watch?v=aTcvE5ptk6Q](https://www.youtube.com/watch?v=aTcvE5ptk6Q)

------
geniium
Just a question of time until you can say "Hey Kitt, come to me!"

~~~
LordKano
All I really want is Turbo Boost.

------
3chelon
The heavyweights are already there...

[http://www.techradar.com/news/you-can-now-get-amazons-
alexa-...](http://www.techradar.com/news/you-can-now-get-amazons-alexa-in-
your-car)

~~~
ChicagoBoy11
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.

~~~
aquark
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?

~~~
jstandard
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.

~~~
aquark
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.

------
laumars
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.

------
blacksmith_tb
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).

------
benkarst
When is AutoPi going to add the option to go keyless through facial, voice,
optical, or fingerprint recognition?

I guess Ford already patented something like this but it would be nice to have
it open source too.

[http://www.biometricupdate.com/201502/ford-granted-patent-
fo...](http://www.biometricupdate.com/201502/ford-granted-patent-for-keyless-
biometric-system-for-vehicles)

------
carlmcqueen
I was actually hoping this was more a hardware sale only where they give us
something like Automatic* that we can tweak ourselves.

[*] [https://www.automatic.com/](https://www.automatic.com/)

~~~
mccrack
What do you mean? It's a Raspberry Pi running Linux, you can tweak it as much
as you like: [https://www.autopi.io/hardware-
dongle](https://www.autopi.io/hardware-dongle)

------
daveguy
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.

~~~
melling
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.

~~~
StavrosK
Yeah, Google's voice recognition has worked for me everywhere, even loud
clubs. It's quite magical. I'm sure it would work in the car.

Now, whether I would trust Google with that data is a different question.
(Spoiler: no.)

~~~
jstandard
Inside the car is a bit of a different since the device won't be handheld and
you may not even be directing your voice toward the microphone.

If you have a phone with a high-quality mic, mount it in the right spot, and
speak loudly, it can usually get the job done though.

Performance in general has gotten a lot better in recent years, though it's
tough to call it a "solved problem".

