AutoPi: Using Raspberry Pi as a Parental Control or Teen Driver Mode
So your teenage son (or daughter) just received his driver’s licence after a period of learning. But you keep worrying about the skills and experience your son have. Will he be able to handle hazardous traffic situations? Will he be able to keep calm and maintain eyes on the road? And you are right to worry, the most common cause of death among teens are caused by driving related incidents. When we are in our younger ages we feel more invincible and this causes us to take higher risks. This also applies in traffic, which is why death rate declines by age (until the around the age of 70).
Did you know?
Most common cause of death among teens is from motor vehicle traffic accidents. cdc.gov
So after you realize that the solution isn’t to ground you son for life, what do you do to feel more at ease? A solution could be to limit the possibilities of the vehicle, with speed and range limits. Not because you don't trust you family and want to monitor them, but because you want to coach them in being a better driver. For everybody’s sake.
Did you know?
Per mile driven, teen drivers ages 16 to 19 are nearly three times more likely than drivers aged 20 and older to be in a fatal crash. cdc.gov - teen driver factsheet
With AutoPi it's now possible to setup limits for how your vehicle is used and sounding in-car alarms to the driver, letting them know that something is wrong. All of this can be made in a user based configuration. It is possible to build your own vehicle parental control and have full flexibility and configuration possibilities with it. You can set the system up just like you want. In fact, the biggest difference between AutoPi and conventional parental control systems, is that with AutoPi everything is flexible from a user perspective. You can alter and configure everything, nothing is locked.
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/3G 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. You can even send commands back to the car.
What exactly does Teen Driver mode on AutoPi mean?
There are a lot of function that can be categorized under Teen Driver mode and which can be implemented using the AutoPi. Common for all is that when implemented using AutoPi, they can be tailored and customized just to you likings. You can combine them in any way you want and even setup new rules, based on you need. We have tried to list a few of the most common uses of the Teen Driver mode.
Mute radio if rules are not obeyed
Study shows that one of the typical reasons to traffic related incidents is inattention. We are busy keeping our eyes on everything else than the road ahead of us. Loud music is one distraction, which can be controlled using the AutoPi. Examples of rules controlling the radio could be:
- Mute radio if speed limit is exceeded
- Mute radio if seatbelt warning is on
- Mute radio if a RPM limit is exceeded (no burnouts)
Sound/speak alert in the car
AutoPi comes with build in speaker. Through an if-this-then-that based setup it would be possible to sound alerts in the car, to warn the driver of misuse of the car. AutoPi can even hook up to a speak engine (such as Googles) and speak an exact text to the user of the vehicle. Examples could be:
- Sound buzzer in car if RPM limit exceeded
- Speak text in car if speed limit exceeded. (using a voice translator e.i. Google Voice API), like “Speed limit exceeded. Slow down now”
SMS/Email alerts to other users
Besides alerts in the car, the AutoPi system is also able to send alerts to other users. Messages can be send via SMS/email/social medias. An example of such a use could be:
- Send a SMS to the owner of the car if speed limit is exceeded
- Send an email to the owner of the car if a Geo Fence is breached
A geofence is a way of setting up rules based on the geographical location of the vehicle. This is very useful if you want to setup rules within a specific area. Or the other way around, if you want to forbid access to certain areas. An example of using geofences could be:
- Sound buzzer in car if geofence is breached
- Speak text in car if geofence is breached (using a voice translator i.e. Google Voice API), like “Geo-fence breached, please return to allowed area”
A curfew is a way of limit the use of the vehicle, based on time. You could limit the use of the car to daytime only. An example could be:
- Curfew between 11PM and 7AM. Speak text in car if curfew is in less than 30 minutes
The image below gives an overview of how the flow of information is between all systems and how they work together:
The user is identified on entering the car, this can be done through bluetooth. The AutoPi dongle connects to the car and ensures communication with the car. User based rules are downloaded to the AutoPi dongle from a cloud dashboard. Warnings to the owner of the car is send from the Cloud. Warnings to the driver of the car is send through the built in speaker.
We hope this gave you an idea of how the AutoPi can help to increase safety in your car, and how AutoPi works as an IoT platform to extend the usage of your car.
Other blog posts for further reading
What is AutoPi and What Does It Do?
Get a short introduction to how AutoPi works and what it does for you. We will cover some of the technical details but also give a brief overview of the use case scenarios for this IoT device, like theft detection and remote safety monitoring. Get a felling of the AutoPi IoT platform and hardware dongle.
Discover hidden functions in your car (using CAN bus sniffing)
All modern vehicles today is controlled by multiple Electronic Control Units (ECU), which you can think of as small computers controlling all electrical components in your car. Using the OBD-II port and an AutoPi it is possible to communicate with the ECUs. One of the ECU’s is called the Engine Control Module (ECM). This is responsible for communication with a lot of subsystems, like transmission, power steering, windows and doors. These subsystems communicates on a network bus called Controller Area Network (CAN), by broadcasting messages on the bus.
Switching from Raspberry Compute to Raspberry Zero
During the design phase of the AutoPi, it was decided to use the Raspberry Compute Module. The Raspberry Compute Module is small, versatile and expandable in a lot of ways, which suited the AutoPi project perfect. All the pinouts from the Broadcom BCM2835 processor is available through the SODIMM DDR2 interface on the Compute Module. This gave us a lot of possibilities during the design phase of the AutoPi and therefore the Compute module was an obvious choice for us as a main processor.