We’ve seen several so-called “digital dash” upgrades over the years that either augment, or completely replace, a vehicle’s original dashboard indicators with new displays. Whether its seven segment LEDs or a full-on graphical interface powered by the Raspberry Pi, the end result is the same: a dashboard that looks wildly different than it did when the car rolled off the assembly line.
But this LED dashboard project from [Flyin’ Miata] takes a slightly different approach. Rather than replace the analog gauges entirely, rings of RGB LEDs of the same diameter were placed behind their matte black faces. When the LEDs are off you’d never notice them, but once they kick on, the light is clearly visible through the material.
So far, it looks like most of the work seems to have been put into the tachometer. The firmware running on the CAN equipped Adafruit Feather M4 can do things such as light up a dynamic redline based on current engine temperature. It will also light up the LEDs to follow the analog gauge as it moves around, which might not have much practical application, but certainly looks cool.
On the speedometer side, the LEDs seem to be used primarily as warning indicators. As demonstrated in the video below, the whole gauge can light up bright red to indicate a critical situation such as low oil pressure. If you wanted to, the system could also be configured with different colors corresponding to various possible fault conditions.
Outputting data from a microcontroller over a serial port is convenient and easy, but formatting, visualizing, and analyzing the data can be tedious and frustrating. [Alex Spataru] knows this all too well, having spent too many hours building and debugging custom dashboards. To save himself and others the same frustration in the future, he created Serial Studio, a tool for quickly building dashboards for serial data.
The only input required for Serial Studio to create a dashboard is a simple JSON structure specifying the data’s format, and how it should be grouped and displayed. Originally Serial Studio required all the JSON data to be sent over serial, which is fine for simple data but quickly becomes cumbersome for more complex applications. To solve this, [Alex] added a feature allowing the JSON document with the format information loaded from the computer, while only the data is sent over serial.
Serial Studio includes several visualization options, including raw line graphs, bar/level indicator, dial indicator, the artificial horizon for IMU data, or a map widget. It can also output the formatted data to a CSV file for further analysis in other software. A console window is also included for viewing raw data or debugging purposes. See the usage demo after the break.
We like Serial Studio’s ease of use and adaptability, and we’ll likely use it for our own projects in the future. It is compatible with Linux, Windows, and Mac thanks to the Qt framework, and the code is open-source and available on GitHub.
Many dream of tooling around in a high performance sports car, but the cost of owning, maintaining, and insuring one of them make it a difficult proposition. While this LEGO version of the Corvette ZR1 might not be exactly like the real thing, it’s 4-speed manual and electronic gauge cluster can give you a taste of the supercar lifestyle without having to taken out a second mortgage.
Built by [HyperBlue], this desktop speedster has more going on under the hood (or more accurately, the roof) than you might expect. While it looks pretty unassuming from the outside, once the top is lifted, you can see all the additional components that have been packed in to motorize it. The functional gearbox takes up almost the entire interior of the car, but it’s not like you were going to be able to fit in there anyway.
But the motorized car is really only half of the project. [HyperBlue] has built a chassis dynamometer for his plastic ride that not only allows you to “start” the engine with realistic sights and sounds (recorded from an actual GM LT1 V8 engine), but put the mini ‘Vette through its paces. With a virtual dashboard powered by the Raspberry Pi, you can see various stats about the vehicle such as throttle position, RPM, and calculated scale speed; providing a real-world demonstration of how the transmission operates.
Millions of people all over the world don’t have access to clean drinking water, and it’s largely because of pollution by corporations and individuals. Solving this problem requires an affordable, scalable way to quickly judge water quality, package the data, and present it to an authority that can crack down on the polluters before the evidence dissipates. Ideally, the solution would be open source and easy to replicate. The more citizen scientists, the better.
UnifiedWater judges quality by testing the pH and the turbidity of the water, which gauges the amount of impurities. Commercial turbidity sensors work by measuring the amount of light scattered by the solids present in a liquid, so [Andrei] made a DIY version with an LED pointed at a photocell. UnifiedWater also reads the air temperature and humidity, and reports its location along with a timestamp.
This device can run in one of two modes, depending on the application. The enterprise mode is designed for a fleet of devices placed strategically about a body of water. In this mode, the devices sample continuously, taking readings every 15 minutes, and can send notifications that trigger on predefined thresholds. There’s also a one-and-done individual mode for hikers and campers who need to find potable water. Once UnifiedWater takes the readings, the NeoPixel ring provides instant color-coded judgment. Check out the demo after the break.
For [Leigh Oliver], there’s something undeniably appealing about the green on black instrumentation of the 2003 Saab 9-3 Gen2. Perhaps it’s because the Infotainment Control Module 2 (ICM2) screen brings a bit of that classic Matrix vibe to the daily commute. Whatever the reason, it seemed the display deserved better than to be stuck showing the nearly 20 year old stock user interface. Luckily, you can control it via I2C.
Though as you might expect, that fact wasn’t obvious at first. [Leigh] had to start by taking the ICM2 apart and reverse engineering the display board. With a multimeter and high resolution photographs of both sides of the PCB, all of the traces were mapped out and recreated in KiCAD. This might not have been strictly necessary, but it did serve as good practice for using KiCAD; a worthwhile tip for anyone else looking to build practical experience creating schematics.
With everything mapped out, [Leigh] was able to connect a BusPirate V3 up to the board and pretty quickly determine it was using I2C to control the display. As far as figuring out how to repurpose existing displays goes, this was perhaps the best possible scenario. It even allowed for creating a display library based on Adafruit_GFX which offers graphical capabilities far beyond what the ICM2 module itself is capable of.
Even with so much progress made, this project is really just getting started. [Leigh] has managed to put some impressive imagery on the black and green Saab display, but the hardware side of things is still being worked on. For example, there’s some hope that an I2C multiplexer would allow the display to easily and quickly be switched between “stock” mode and whatever enhanced version comes about thanks to the new libraries and an ESP8266 hiding behind the dashboard.
Despite most of the common gauges remaining the same over the last 60 years, the automotive dashboard of days past used very different technology to those today. Cable driven speedometers were common, along with mechanical drive for the odometer, too. Fuel and temperature gauges were often wired directly to their senders, and some oil pressure gauges actually ran an oil line right up to the back of the dash. Now, things are mostly handled over the CAN bus, which inspired [Thomas]’s bookshelf-based Mustang build.
The idea behind the project is to build a nice piece of bookshelf art, using a modern CAN-driven Mustang dashboard. Through research and much trial and error, [Thomas] was able to figure out the CAN messages necessary to interface with a 2009 Mustang dashboard. There were innumerable hiccups along the way – [Thomas] had to 3D print his own connectors, reflash CAN bus interfaces, and make more than a few educated guesses to get things working.
The dash is combined with an Arduino with an MP3 shield and a 30 watt audio system, which provides both CAN signals to drive the dash as well as the obligatory sound effects of a Mustang tearing about town. It’s all finished up with an ignition keyswitch and 3 LED-lit buttons in the traditional Mustang colors.
So you just got something like an Arduino or Raspberry Pi kit with a few sensors. Setting up temperature or motion sensors is easy enough. But what are you going to do with all that data? It’s going to need storage, analysis, and summarization before it’s actually useful to anyone. You need a dashboard!
But even before displaying the data, you’re going to need to store it somewhere, and that means a database. You could just send all of your data off into the cloud and hope that the company that provides you the service has a good business model behind it, but frankly the track records of even the companies with the deepest pockets and best intentions don’t look so good. And you won’t learn anything useful by taking the easiest way out anyway.
Instead, let’s take the second-easiest way out. Here’s a short tutorial to get you up and running with a database backend on a Raspberry Pi and a slick dashboard on your laptop or cellphone. We’ll be using scripts and Docker to automate as many things as possible. Even so, along the way you’ll learn a little bit about Python and Docker, but more importantly you’ll have a system of your own for expansion, customization, or simply experimenting with at home. After all, if the “cloud” won’t let you play around with their database, how much fun can it be, really?