Wireless Racecar Dashboard


The dash mounted in an Alpha brand steering wheel.

I build this to replace the traditional dashboard display used in the MIT Formula SAE racecar. It is self-contained, and receives data from the car via infrared optical signals transmitted through the steering column. A small lithium-polymer battery powers on the onboard microcontroller which decodes the signals and controls the display. The battery will power the system for about 5-6 hours when fully charged.

The display provides an LED tachometer display at the top, with LEDs which light up sequentially to reflect engine RPMS. It has lights to indicate neutral status, oil underpressure, and coolant overtemperature.

The reason for going wireless is that the seat for the driver is so small that to get in and out of the car one must remove the steering wheel just to get one's legs in. This is easier than it sounds, and is accomplished by a quick release button on the back of the wheel. Therefore, it was important to avoid any wires or physical connections between the dash and the chassis, or anything that might restroct the driver's egress in the event of an emergency (I've actually seen these cars catch fire before -- and believe me -- the driver gets out *fast*).


The guts: the controller board and the li-pol battery power supply

This was a step up from my previous year's dashboard display, and was mainly aimed at reducing size. The hardware was designed to be as simple as possible, with a small lithium polymer battery on board to eliminate all wires. This would run the system for about 5 hours on max brightness, which I figured would be more than sufficient.


The module running with the front waterproof cover removed

I'm just testing the display here. Although the software could drive the LEDs at 15 different brightness levels, it turned out that the LEDs were so bright, even in direct sunlight, that we almost always just used the minimum setting.


A close-up of the board. Quick and cheap -- no soldermask or silkscreening to save time.

Hardware-wise, this board was fairly simple. I used an 8-bit RISC processor by Atmel (on the left), and a neat little LED driver by Maxim (on the right). The real weight-lifting is done by the software, which handles incoming infrared data processing and display to the user. There's also another microcontroller (not shown) on the vehicle chassis which takes sensor data from the car's ECU and outputs the encoded data stream to the IR emitter situated at the base of the steering column.


The back of the enclosure, before I cut the hole in the rear for the IR photodiode. For convenience I used a modified ethernet cable to program and charge the device.

Programming of the firmware and charging of the battery are accomplished through a single waterproof connector on the back. Power to the unit was controlled by a recessed switch located at the back left. I designed the enclosure in Solidworks, which was a rather painstaking process. But a previous teammate of mine had since gone to work at a FDM 3D printing company, so he conveninently was able to fabricate my enclosure from the CAD files -- for free!


The breadboard mockup I used to develop & debug the firmware.


A o-scope shot showing the SPI data going out from the microcontroller to the LED driver

Data is on the top channel, clock is on the bottom. This would have been a lot easier if I had my super useful new USB logic analyzer at the time. (An awesome device, by the way, called the Logicport, built by Intronix. It is a A 34 channel logic analyzer that hooks up to your computer via USB, with a really cool software front-end). In any case, all I had at the time was a 4-channel scope, but it did the job.


Questions? Comments? Need something built?
Email: web@zigwire.com