Speak to your car with Google Assistant - almost like K.I.T.T. from Knight Rider
Wouldn’t it be cool if you could speak to your car and give it commands? We remember our childhood in the last millennium where Michael Knight (David Hasselhoff) and his intelligent Pontiac Trans Am named K.I.T.T. solved crime together.
Did you know? K.I.T.T. is short for Knight Industries Two Thousand
While we may not be able to have a meaningful conversation with our car just yet, it’s now a possibility to talk to your car and give it commands to execute. We are here giving a short introduction to how this can be accomplished using the AutoPi.io platform and Google Assistant.
Here's a demonstration of how you can talk to your car:
What is Google Assistant?
Google Assistant is Google’s version of Siri (Apple) and Alexa (Amazon). It lets you interact with your device, through voice commands and has typically been used together with Android devices where it comes integrated. More technically, the “Assistants” works by processing the speech recorded on the device and translate them into something understandable by a machine and this can thereby be parsed and an action can be taken. A typical use case is:
- You: “OK Google. How is the weather in New York?”
- Assistant: “It’s 10 degrees and raining”
What is AutoPi?
AutoPi is a small device that plugs into the OBD-II port of your car.
Once connected, the AutoPi device will automatically start working. It has 4G/LTE connectivity, so it is always connected to the Internet. It also comes with a lot of other features, one is continuous GPS tracking.
It comes with an online dashboard, that you can login to from any device. From here you can setup your system and do real-time tracking of your vehicle telematics.
How to use Google Assistant and AutoPi together?
As a new thing, Google recently released their Google Assistant SDK, with a Python based SDK. This SDK lets you integrate the Google Assistant with the AutoPi Dongle, and give you the possibility to setup a system where you are able to give commands to your car.
When Google introduced the Google Assistant SDK with a Python version, they must have thought of AutoPi, because the two things goes together perfectly.
AutoPi Core (the software running on the AutoPi Dongle) is built using Python. With the AutoPi dashboard it is possible to write custom Python code modules and upload them directly to the AutoPi Dongle. It is easy to program your AutoPi directly from the web interface and thereby set it up to integrate with Google Assistant.
The AutoPi Dongle comes with a built in speaker and a connection to your car (or should we call it K.I.T.T.?) using the OBD-II connector. The OBD-II connector lets the AutoPi communicate with the embedded computer systems in your car. The only device you would need to add is a microphone. But as the AutoPi has USB ports for external devices, so a mic is easily added.
The main focus would be to setup the software on the device and that's where the Google Assistant SDK is able to help us. With it you can parse audio recordings from your device, and turn them into actions. In short this is how it works:
- Speak a command using the USB microphone
- Send the recorded action to Google for parsing
- The device initiates the action, based on the result from Google
The flow between the systems is:
- User speaks a command.
- The K.I.T.T. Python application records and sends the spoken command to Google using the Assistant SDK.
- Google Cloud Platform translates the recorded speech into a text string.
- The text string is returned to the K.I.T.T. Python application, using the SDK.
- The K.I.T.T. Python application parses the text string and initiates the action found from the string, in this case the OBD subsystem.
- The OBD subsystem routine is triggered and it sends a command on the CAN bus through the OBD port. The command is to roll down the window.
- The window in the car is rolled down.
- The speaker subsystem routine is triggered. It sends the text to be spoken to Google to translate it into a sound file.
- Google returns the sound file.
- Speaker subsystem plays the sound file to the user.
- Great Success!
AutoPi was mentioned at the Google I/O 2017 conference in San Francisco:
Let us know what you would like to have your car do and how you think this could be possible using the AutoPi and Google Assistant. Join the discussion below.
Subscribe to our newsletter
Don’t worry, we’ll only send you the best stuff - no spam
Or follow us here
Other blog posts for further reading
Saving your car interior on a hot day - Making a cabin overheating protection system using AutoPi
Studies show that on a hot summer day the temperature inside your vehicle will rise dramatically within just 10 minutes after you parked. HeatKill.org reports that with an outside temperature of 27 C (80 F), the inside temperature could rise to as high as 37 C (99 F) after just 10 minutes. The inside of your car becomes an oven roasting your interior. The sun will permanently damage the color and look of everything it touches, thereby degrading the value of your car.
Using a Raspberry Pi Zero as an IoT platform for your car
Internet of Things (IoT) is a popular buzzword in the tech/gadget community. The concept is that all the devices in our everyday life can be online/connected to the Internet 24/7, and thereby help to improve and make our lives more efficient. This includes our light bulbs, kitchen appliances, TVs, alarm and heating systems etc. All our "things" should be able to communicate with each other and be controlled from everywhere in order to achieve a more efficient and convenient world for us to live in.
Build your own Black Ice Detection system for your car using AutoPi
The term “Black ice” refer to a winter phenomenon, where a layer of ice on the road is so thin it becomes transparent and thus appears “black” from the road below. This is a very common situation during winter times and can create hazardous situations for vehicles and pedestrians. The phenomenon often occurs when the temperature is right around freezing point and when a light rain hits a road surface which is below freezing point.