Go Down

Topic: 52mm gauge with 1.5" RGB OLED, graphics and gps - on an Arduino pro mini ! (Read 229 times) previous topic - next topic

MUDSEL

Hi all,

I wanted to share my project which I made with zero knowledge on Arduino but with 'some' experience in HW/SW design :)

Let me start by telling you what I wanted to achieve:

We have a motorboat, and it is (partially) being renewed. This work includes a new dashboard, and I wanted to get rid of the bulky wiring running to and from two Ammeters. One is/was used to monitor the glowplug current, and the other to monitor the alternator/charge current.

So, I looked for commercial products using a remote shunt. Some exist, but are ridiculously expensive. That made me decide to build my own! More fun anyway!

But, when being able to visualize current, using remote shunt resistors, a microcontroller is 'needed', opening up possibilities for GPS (speed, distance, time, date, logging). So I decided to include those functions as well.

After some searching I ended up choosing a 1.5" Oled to fit into a 52mm (standard size) gauge. It JUST fits inside!

Since I could not find a board for this, I made my own. The same goes for the board holding the Arduino pro mini, the current sense amplifiers, a GPS module, some SPI SRAM needed to buffer data for the OLED, a microSD card holder to load images needed, plus basic stuff like regulators and level shifters.

Before getting into a real long story, let me post a few pictures.

After starting a project I soon found that many libraries eat up flash like crazy, so I copied some basic OLED functions to code. TinyGPS++ takes care of the gps, SpiRAM does the SRAM, softserial the gps interface, SD lib the SD card and the rest is just code :)

See the pictures and observe anti aliased graphics (compass ring, heading, speed, date/time/voltage/current and an odometer).

The update rate is 1 image per second. The boat has a top speed of 12 to 13km/h, so 1 ips is good enough. Reading the GPS takes about 130ms, builiding the image in SRAM (loading from uSD card) and copying it to the OLED takes around 500ms. All reflecting voltages, currents, and so on.

Not visible on this image, but also included is a timer and visualization for the glowplugs (starting) and for situations where there is no GPS lock.

If anyone wants details, or wants to spend a few euro for a bare board to fit an 1.5" OLED in a 52mm gauge let me know. I have ten boards and need only one :)

By the way, the display board is based on the Adafruit 1.5" oled board and schematic, but has some improvements like being able to control the 13V for proper OLED power down, and some component values are corrected.

Questions? Shoot!

- David



Fork501

Does the direction work off of your GPS when moving, or can it figure it out from standstill?  I've never worked with GPS components before.  Do you have any shots of the final installation and wiring it up?  What about some videos?  I could see this going on my motorcycle.  Very cool, especially with zero knowledge about the Arduino.

MUDSEL

The direction works only when moving.

I have not completed the entire project; some boards are on its way from China. I expect to receive them within three weeks.

As soon as I have them I will post the entire project here (hope it will then be moved back to a dev forum where I also started it - but it was moved by a mod).

The OLED is very nice when indoors, or at least not in the full sun. Outdoors in bright sunlight it's readability reduces to zero.

So, on a motorcycle: I don't think you'd be happy. Displays need to evolve more before that will happen. There are some Sharp displays that are perfect in the sun, but they're monochrome and only offer pixel on or off. No grayscale.

I have attached a picture of the display inside a 52mm housing (used to be a voltmeter :) )

About the zero knowledge when starting, it was a learning curve and most of all I needed to get used to functions that were running with no proof of that from the IDE. But, thanks!

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy