According to the United States' National Safety Council, nearly 40 children under the age of 15 die each year as a result of being left in a hot car. Most recently, at the end of February, a 2 year old sadly passed away after being left in a car for 8 hours. In that case, the air temperature was 80 degrees Fahrenheit, but temperatures can quickly rise to unsafe levels in an idle car that's powered off.
It is my feeling that these deaths are largely preventable. In the case of the 2 year old above, the father went to the daycare to pick up his child after work, not realizing that he didn't drop his child off at daycare before work. If the father could have only been notified that his child was still in the car, this heart-breaking loss of life could have been prevented. Having 3 young children of my own, these stories have a strong emotional impact on me.The Solution
In response to these tragic stories, I set out to develop Cargus (a portmanteau of car and argus, which means "watchful guardian" in Latin). Cargus is a tool for busy parents that gives a voice to those that may not have one: their toddlers. Cargus consists of a Useful Sensors Person Sensor and a Notecarrier-F from Blues Wireless. Combining these two pieces of hardware, it can be determined if a child is in the car seat. It can also determine if the car is moving or not. And it has a cellular connection so messages can be sent out from the hardware.
The premise of Cargus is simple: Cargus is strapped to the seat's head rest posts with the Person Sensor facing the car seat. The Person Sensor detects if a child is in the car seat. If a child is detected, and the car is not moving for an extended period of time, that must mean that either the parent is in the car idling, or the child was left unattended in the car. If a certain amount of time has elapsed (I chose 5 minutes for this project), a text message is sent to the parent alerting them that their child is in the car. I also have it set up to send a second text message after 10 minutes. If the parent is knowingly in the car and idling (I presume with the temperature controls running), the parent can ignore the text message. But if the parent isn't in the car, it could prevent a serious tragedy.
Cargus is completely self-powered with a battery and solar panel, but also has a micro-USB connection in case the user wants to use an alternate power source.
Future functionality could include sending a text message (with GPS coordinates) to an emergency point of contact after another period of time (say 20 minutes) in case the parent is unreachable or unresponsive. If that emergency point of contact is far from the vehicle, they could contact emergency personnel with the GPS coordinates of the vehicle for intervention.The Build
Developing Cargus was relatively straight-forward from a hardware perspective. I used a Blues Wireless Notecarrier-F with a Swan MCU, the Useful Sensor Person Sensor, a 3.5 Ah LiPo battery, a 2W solar panel, and a 3D printed enclosure. I used the enclosure designed by Tony Weil, and printed it at my local Makerspace.
As you can see the photo above, the hardware fits nicely into the enclosure, with the LiPo battery sitting underneath the Notecarrier. The Person Sensor attaches to the lid to complete the build. I also included an On/Off switch (on the side, see below) so the power wasn't on the entire time I was testing.
And here is the setup with the lid installed and the solar panel on top.
I used the Arduino IDE to write the code for this project, although the PlatformIO plugin in VS Code is also very popular. You can see the code on my github, but the basic flow is as follows:
In the setup() function:
1. Initialize the Notecard parameters (product ID, card location mode/track)
2. Initialize the I2C connection with the Person Sensor
In the loop() function:
1. Read the Person Sensor
2. If a child is detected in the car seat, get the last motion time and the card time from the Notecard
3. If the difference of those 2 times is greater than 300 seconds (5 minutes), send a note with the text message number and message.
4. Set a flag so a text message isn't sent on every loop
5. If no motion is detected after 10 minutes, send another note.
As you can see the code, similar to the hardware, is not incredibly complex. Along with the code, I had to set up a route on Notehub that routed Notecarrier notes to the Twilio API, which sends to message to the appropriate phone number. Blues Wireless has a pretty straight-forward tutorial on this.
Once I had the code uploaded to the Swan, it was time to put everything together and test it in the car. With the strap I attached it to the head rest post of the seat, pointing towards the car seat. I positioned the solar panel facing the car window so it could get sunlight. I put a stuffed doll in the car seat (I wasn't exactly ready to leave my young daughter in the car seat!) and went for a drive. I then stopped and left the car. After 5 minutes I received the text message!
I hope this project sheds some light on the dangers that hot cars pose to infants and toddlers. Even if this project saves one life, I will have considered worthwhile. Please reach out if you have any questions on getting this project implemented. I hope this tutorial gives you enough information to do it on your own, but otherwise please reach out. Thank you!