The Retro Gauge is a mechanical vehicle gauge that displays data received over a serial communication line. One possible use of the gauge is to display vehicle data from the OpenXC platform.
The design intent was to keep the gauge as open and accessible as possible so that the community could contribute and benefit from the design.
For an instructional lab on how to build the gauge, see the Retro Gauge Lab.
For an instructional lab on how to build the gauge, see the Retro Gauge Lab.
Dependencies
Besides a standard Arduino development environment, the firmware also requires the SwitecX25 library to drive the stepper motor. This library is based on Guy Carpenter's Gaugette project.
Compiling with Arduino IDE
Update the git submodules to pull down the SwitecX25 library:
$ cd retro-gauge-firmware
$ git submodule update --init
After updating the submodules, open the firmware.ino
sketch in the Arduion
IDE. In the menu, go to Sketch -> Import Library -> Add Library
, navigate to
the firmware folder and import the SwitecX25 folder.
In the Tools -> Board
menu, select the Arduino Pro or Pro Mini (5v 16MHz) w/ ATmega328
option.
Finally, hit upload! You may need to manually select the right serial port if you have more than one device connected.
Compiling with Makefile
Update the git submodules to pull down the SwitecX25 library and the Arduino-Makefile project:
$ cd retro-gauge-firmware
$ git submodule update --init
After updating the submodules, compile the firmware:
$ make
and flash the attached gauge:
$ make upload
The Makefile will attempt to automatically determine the name of the attached
port, but you may need to specify it manually with MONITOR_PORT
if it doesn't
work. For example, if your device shows up as /dev/ttyUSB1:
$ MONITOR_PORT=/dev/ttyUSB1 make upload
This repository is one of 4 repositories listed below:
Mechanical Enclosure Design - The retro-gauge-enclosure repository contains .STL and STEP files for the 3D printable gauge housing.
Hardware - The retro-gauge-hardware repository contains Eagle schematics and PCB layouts for the gauge's embedded hardware.
Firmware - The retro-gauge-firmware repository contains Arduino source code to run on the Retro Gauge.
Android - The retro-gauge-android repository contains an Android application to control the gauge with vehicle data from the OpenXC platform.
The firmware source code is available under the BSD open source license.