Apologies if this has already been covered.. My GoogleFu is usually pretty good, but hasn't really turned up the answer I want.
Here's the project - Add a digital speedometer to my 2008 VW GTI. I'd investigated finding the speedo pulse, doing the math, etc.., but then stumbled on the CAN-BUS shield from SparkFun. It does exactly what I need and a whole bunch more, so I was excited when I got the (now) familiar red box with cool things to play with in it. When I ordered it, I also got a basic red-on-black LCD and an SPI backpack for it. Everything works exactly as intended, but...
The LCD is not quite as sharp and clear as I'd like. Squinting at the LCD while traveling 140 km/h isn't really a good idea anyway, so I figured I'd swap out the LCD with an OLED display. After all, they have the same basic pinout - what could go wrong?
Famous last words, of course. The OLED connected through the SparkFun SPI backpack simply doesn't work. A simple "Hello World" sketch to write to SPI produces a single "H" on the display; "ello World" and the entire second line never make it.
Now, Google did reference a couple threads talking about this problem, and one of them was the Adafruit forum. From what I gather, the OLEDs have slightly different timings, and so won't work with their backpack (in SPI mode) either.
I've the terrible feeling that I'm missing something here. I did see a shield that was using a graphic OLED onboard, and it claimed that it was using SPI. So, is there any way to get it to work with a 16x2 character OLED? The CAN-BUS shield basically uses ALL the pins, so going parallel (CS,RS,E,D04,D05,D06,D07) isn't really an option as far as I can tell so far. Maybe if I removed the joystick mappings.. that's 5 pins right there... but routing a 9-pin ribbon cable isn't a task I relish...
Ideas?