Here is mine I built a few years ago.
https://mbed.org/forum/mbed/post/3519/edit/
My project is somewhat unique. I have seen questions related to such a device but I now have it all working on one chip. I have a vintage car that I take to the track often. of course, the only thing vintage about it is its looks. Just about everything else has been brougt up to a modern standard. This includes the engine where the original carburetors were replaced with a Megasquirt fuel injection system. Megasquirt is an open-source engine management system with all of the functionality of the much more expensive systems like Motec. It is reasonably priced and geard toward the DIY developer. While the system has always worked well I needed to see what the engine was doing while driving. This meant a display project.
Last year I built a simple device that would talk to the Megasquirt ECU and display parameters on an LCD. Being a track car means no radio and that slot is the perfect size for a character LCD. I must admit that I played a partial role in the code devlopment for that ATmel device. Many thanks to a sympathetic co-worker. When I originally started the display project I envisioned additional functionality. Who knew it would take so long to make this happen. My code skills are poor at best but I can say I made this happen with only a little outside help. The same person that helped with the example code showed me the mbed and was amazed at the high level of functionality and number of output ports. So I bought one thinking this would be the next generation.
The additional functionality I wanted was based upon datalogging capabilities. Vehicle dymanic systems and loggers are easy to find if you want to spend the money. When I saw the examples on the mbed I was really happy. Everything I needed was right there. SErial connection to ECU. accelerometer, 4bit parallel display, SPI for SD card and an additional serial port for GPS. yes, that is 5 devices working off the same MCU.
My build answers the call from DIY track enthusiasts, Motorcycles and other users that can not carry a laptop for obvious reasons. This is not meant to replace a laptop but rather be a supplement.
The current setup has the following features:
microSD card
switch operated file format (.frd) that imports into Megasquirt TunerStudio Software for engine analysis, tuning and feedback (Thanks to Phil Tobin for the help)
LCD display compatibility (# variables depends on size)
3-axis accelerometer
10Hz GPS
switch activated logging capability of engine parameters, acclerometer and GPS for vehicle dynamics in .csv format that imports into popular video editing software (Trackvision)
data rate ~10Hz (GPS limited)
I had some boards made to complete the project. The boards have been complete for a while and I had to assemble and debug. This took way too long since my day job got in the way. All of the issues have been software related. Thankfully, no current board revisions are planned.
The boards are dual sided. The topside is basic functionality for the MS system. This includes a micro controller, SD card slot and power supply. There is also display output and a trim-pot for the LCD contrast. The dual sided board was made with a full ground plane. Hopefully, this will cut down on cross talk and noise from the car environment. Boards are Sn plated Cu.
The backside of the board is for additional functionality. I have installed a 3-axis accelerometer and 10Hz GPS. This provides full vehicle dynamics capability whereby I can log all the parameters of the engine along with position, velocity (yes, speed and heading direction) and acceleration data.
Everything mounts nice and neat in a standard plastic project box. There are two switches to enable different datalogging functions. These are the .frd format for using in Tunerstudio and the vehicle dynamics logger which is a parameter datastack in .csv format. The comma separated value (csv) table will allow insertion into popular track video overlay programs.
There is a realtime output in the form of a multi-line character display. I have 2x20 and 4x20 display capability.