Did I buy the right OLED?

Hi every one at the moment I’m building a arduboy clone that looks like a pip boy/watch and the oled doesn’t work I was hoping I was doing it wrong other wise I’m in big trouble. Also I’m using a arduino micro pro atmega32u4

It could very easily be wired up wrong, you’ll need to make sure each of the pins is connected to the correct signals of the OLED. It is also possible that the screen may not use the same controller as the one in the arduboy. There are OLEDs with SSD1306 controller which is what the arduboy uses, and there are also SH1106 which is not the same but some people have made work, but you have to make changes to the library.

If you can post some more detailed pictures or maybe a link to the OLED you bought would be helpful.

Unless it’s physically cracked there is very little you can do that will actually damage an OLED display. (unless for some reason you managed to put 110AC voltage through it or something very bizarre)


Before pics
It’s a four pin
Not sure what controller I will check

Sounds like an I2C interface and the Arduboy uses an SPI version (I think?). The Arduboy library may need to be re-written to support I2C.


How do I re write it?

By researching and studying.
Have you done other Arduino projects? Might want to start simple before writing and modifying a library.

Half the work is already done. Smarter not harder.


Cheaper and quicker to buy the correct part.

As @Ground7 suggests, this is not a task for the feint hearted.


Now where’s the fun in that?
One of my favourite past-times is reinventing the wheel!

In all seriousness though, @filmote is right, by the time you’ve got half-way to getting the Arduboy2 library compatible with a different screen you could have earned enough money to buy several SPI compatible screens from just mowing lawns or washing cars (or bathing dingoes).


It’s easy to get confused when ordering an OLED display as many (Chinese) sellers use both SPI and I2C in the discription. Just check the images of the board and see if there are 7 pins (with only 6 pins the Chip Select pin is missing)

4 pins indicate the displays breakout board uses I2C as already said. There’s no point in rewriting the libraries as I2C is a much slower protocol then SPI. If you’re lucky the breakout board can be hacked to use SPI. But it may be easier to just get a new display.

For the hacking bit. It would help showing a clear picture of the circuit board or a link from where you bought the display.


Probably just gonna bye a 7 pin

1 Like

I’d suggest this one:

Seems were both on pretty equal footing starting out here, but I can tell you this screen in particular supports both i2c and spi (depending what resistor bridges are soldered or desoldered), and comes pre configured for SPI, but the PCB is printed with what resistor bridges need in place for either or.

Got the ssd1306 library working with it today (in a test sketch) so gonna try to use it in my DIY arduboy project.

1 Like

And just since you already have that display, even if you can’t use it for an arduboy, setup information can similarly be found here: https://forum.arduino.cc/index.php?topic=500958.0

1 Like

Still looking but for ones in au

Understandable. The wait time and shipping kinda sucks, but works for something cheap.

1 Like

Might get one from the uk or China

Yeah, these are from china, but I just like them cuz they can be used for i2c or spi depending what you want to do. I seem to have lucked out not knowing what I’m doing and finding something setup for SPI though, which is why I figured it was worth mentioning as well

1 Like

I don’t know if you are looking for a display with the same OLED controller as the Arduboy ( SSD1306) or if an alternative one with an SH1106 will do. Most cheaper 1.3" OLED displays online have the SH1106 controller. ( They love putting SSD1306 in the title but when you read on you’ll find out they have a (S)SH1106 controller) Most 0.96" OLED displays do have an SSD1306 controller though.

Which type you use all comes down on how compatible you want your clone to be. When using a display with a SH1106 controller you’ll need to upload (recompile) sketches using the Arduino IDE with adapted Arduboy and Arduboy2 Libraries. You can’t simply upload existing hex files.

When using an SSD1306 OLED display you can upload existing hex files. But since you mentioned you’re using a Pro Micro. You have some missing functionality. (You need to ground OLED Chip Select and ground 2nd speaker pin so you’ll have softer sound/missing sound channel and no green LED control)

If you’re not sure which display type and/or display size you want, You can find a size comparison of 0.96" vs 1.3" here


If you worry about modifying libraries, I’ve made a board package that you can add to the Arduino IDE that makes it easy to select between different Arduboy variants / displays and upload a sketch.


Is audio needed for the library to work?

If you’re asking if you need to connect a hardware (piezo)speaker for the libraries to work then the answer is no you don’t have to.

1 Like

Then what exactly were you saying?