DIY Dashboard Camera “Dashcam” with Raspberry Pi and PubNub #piday #raspberrypi @Raspberry_Pi


Via PubNub

Since the Raspberry Pi was released in 2012, the capabilities of low-power, low-cost embedded computing devices have grown tremendously. It is now quite common to see smart devices (thermostats, lighting, locks, cameras) in homes as well as real-time updates in industrial settings such as package delivery services. As ride sharing services like Uber and Lyft gain popularity and autonomous vehicles loom closer on the technical horizon, the most important applications of mobile devices in smart car settings are becoming clearer and clearer. In this blog entry, we create a DIY “always on” live dashboard camera broadcast using the Raspberry Pi 2 Model B and the Raspberry Pi 8MP Camera Module. With this platform, we can broadcast high- or low-quality images at a fixed interval and have them immediately picked up by our receiver user interface (which we’ll cover in the upcoming Part 2 entry).

When designing a live dashboard camera, the first technical hurdle is ubiquitous network connectivity. As 4G/LTE permeates throughout the United States, most drivers have Internet access in their vehicles via an embedded hotspot (such as OnStar Wifi), portable hotspot (such as a Verizon MiFi), or personal hotspot using a smartphone (such as the iPhone 6S or Nexus 6P).

The second technical hurdle is availability of sensors and control in vehicle setting. Power is already relatively easy using a car charger with micro-USB plug and/or a USB battery pack. As platforms like Raspberry Pi, Arduino and Tessel have matured over the past few years, the availability of low-cost sensors with easy configuration has become more and more widespread. It is now very easy to acquire and set up Wifi, Bluetooth Low Energy (BLE), Camera and GPS connectivity on embedded computing platforms.

The last major hurdle (one which is still being addressed as a strategic challenge of these platforms) is the difficulty of programming embedded devices. Of the three platforms previously mentioned, Tessel is the most user-friendly because it uses a JavaScript interface that most developers can easily manage. Arduino tends to be more challenging because it involves coding in C or C++. Raspberry Pi is my personal favorite because it runs a full Linux ARM distribution, enabling the developer to choose JavaScript (node.js), Python, C/C++, or even Erlang based on the use case (other languages such as Ruby, R and Go are also readily accessible).

So, given all these tools and techniques, we can assemble a complete platform for vehicle-based computing within a couple hours. Although our first application is a connected camera feed, it is easy to imagine extending it with GPS location and speed data for geolocation and geofencing, or even advanced image processing capabilities such as facial recognition or license plate recognition. It’s also worth mentioning that once you have a self-contained platform with network and power, you can also apply it to use cases such as wearable or drone-based cameras.

Read more.

2358Each Friday is PiDay here at Adafruit! Be sure to check out our posts, tutorials and new Raspberry Pi related products. Adafruit has the largest and best selection of Raspberry Pi accessories and all the code & tutorials to get you up and running in no time!

Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here:

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in!

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community!

CircuitPython – The easiest way to program microcontrollers –

Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.