Be kind - I am just starting out with Arduino and C++ (though I have a background in microelectronics, Motorola Assembler, and electronic design).
My objective is a little telemetry project from sensors on a Mini, over serial, to a Uno and display the sensor values on a SSD1306 OLED. I am familiarizing myself with things as parts come in and the Uno and the Sunfounder SSD1306 display came in Monday.
After connecting the display to the I2C, I downloaded ssd1396_128x32_i2c (from https://github.com/adafruit/Adafruit_SSD1306/blob/master/examples/ssd1306_128x32_i2c/ssd1306_128x32_i2c.ino) and it doesn’t work as it should - it shows the ‘star field’ without movement and flashes to a white screen after a long delay - then back to the star field.
I started stripping parts out of the sample program and it started displaying properly. (I SHOULD have kept a copy!!!)
I started writing my own display program (in the same session) to start with the Adafruit splash screen and then go to a number display. It worked at first.
When starting up again for the next work session, I am right back to Step 1 and nothing is working - I just get the stationary ‘star field’ as if it is just displaying what is stuck in the display memory and not getting new display data.
The fact that it DIDN’T work at first, started WORKING when I was playing around with the demo program, WORKED with my display program, and the DIDN’T work on the next session for either program leads me to suspect that there was some command/initialization used when I was playing around that ‘enabled’ the display that was missing before and since.
This is driving me NUTS! Something is flaky here somewhere (other than ME!) but I have no idea what! I am ready to scrap everything and start all over.