OLED Breakout Board Misbehaving

For other supported Arduino products from Adafruit: Shields, accessories, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Post Reply
User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

OLED Breakout Board Misbehaving

Post by rusgray »

I've been working on a project that uses the Adafruit 1.27" color OLED and accompanying Arduino library. The first version the hardware used a solderless breadboard with the older (no Eye-SPI connector) version of the OLED hardware, and it works as expected.

When designing the second version of the hardware for my project, I decided to connect the Adafruit OLED using the 18-pin FPC. Unfortunately, the newer Adafruit OLED board has a nasty tendency to crash and go blank when it's asked to redraw the menu display (just text and separator lines). Sometimes it crashes after two or three redraws, and sometimes it can survive for twenty-ish, but I can make it crash every time. I've tried connecting the new display to the breadboard prototype hardware (by pressing a pin header against the contacts along the top of the OLED), and I can easily replicate the crashes there too, so I do not think the 18-pin FPC connection is at fault.

I have discovered that calling the begin() member function of the OLED library object after the screen crashes/goes dark will cause the menu display to reappear on the screen, so I have assigned a spare button on my hardware to trigger this workaround, and I am able to continue working on my project for the time being.

I would really like to understand what is going wrong. In my experience, software bugs are more common than flawed hardware, but it really seems like the newer variant of the OLED display is not working properly. Has anyone else encountered something like this? Any thoughts on how to diagnose and fix the problem?

User avatar
T_Mo
 
Posts: 289
Joined: Thu Mar 15, 2018 7:10 pm

Re: OLED Breakout Board Misbehaving

Post by T_Mo »

Just a tip that you've probably already considered, but FPC cables are notoriously finicky about mis-alignment.
Be sure the flex cable is flat and smooth and secure and mechanically stable.

User avatar
adafruit_support_carter
 
Posts: 29966
Joined: Tue Nov 29, 2016 2:45 pm

Re: OLED Breakout Board Misbehaving

Post by adafruit_support_carter »

When designing the second version of the hardware for my project, I decided to connect the Adafruit OLED using the 18-pin FPC.
Please post a photo of this hardware setup showing how everything is connected.

User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

Re: OLED Breakout Board Misbehaving

Post by rusgray »

T_Mo wrote: Tue Jun 04, 2024 2:02 am Just a tip that you've probably already considered, but FPC cables are notoriously finicky about mis-alignment.
Be sure the flex cable is flat and smooth and secure and mechanically stable.
I suspected the FPC was the culprit too; which is why I connected the Eye-SPI variant of the OLED to the breadboard prototype via the row of 0.1" pitch connectors along the top edge. The problem still occurs without the FPC in the circuit, suggesting that the FPC is not the sole cause of the undesired behavior.

User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

Re: OLED Breakout Board Misbehaving

Post by rusgray »

adafruit_support_carter wrote: Tue Jun 04, 2024 3:02 pm
When designing the second version of the hardware for my project, I decided to connect the Adafruit OLED using the 18-pin FPC.
Please post a photo of this hardware setup showing how everything is connected.
It's a bit tough to get the camera inside the enclosure, but I hope these are sufficient:
IMG_7510.jpg
IMG_7510.jpg (942.04 KiB) Viewed 196 times
IMG_7518.jpg
IMG_7518.jpg (934.46 KiB) Viewed 196 times

User avatar
adafruit_support_carter
 
Posts: 29966
Joined: Tue Nov 29, 2016 2:45 pm

Re: OLED Breakout Board Misbehaving

Post by adafruit_support_carter »

Thanks for the photos.

Is the FPC connector here on some kind of custom PCB?
fpc.png
fpc.png (829.3 KiB) Viewed 186 times
Do you have one of these that could be used for troubleshooting?
https://www.adafruit.com/product/5613

User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

Re: OLED Breakout Board Misbehaving

Post by rusgray »

Yes, it is a custom PCB. I have blank boards, but I do not have any others that are populated with components.

Just to reiterate, I am able to recreate the issue when I connect the Eye-SPI variant OLED to pin headers on the breakout board, which makes me think that the issue is not related to the FPC (or the connections on either end). I am happy to make videos to show this behavior if needed.

User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

Re: OLED Breakout Board Misbehaving

Post by rusgray »

And yes, I have one of the Adafruit EyeSPI breakout parts

User avatar
adafruit_support_carter
 
Posts: 29966
Joined: Tue Nov 29, 2016 2:45 pm

Re: OLED Breakout Board Misbehaving

Post by adafruit_support_carter »

OK, for troubleshooting, please setup using the EYESPI breakout so we can rule out anything with the custom PCB. It sounds like you've already tried that and are seeing the same behavior.

What about something software related? Does the library demo code run OK? The "test" sketch from the Adafruit_SSD1351 library:
https://learn.adafruit.com/adafruit-1-5 ... g-and-test
Or are you seeing the same eventual "crash" behavior?

User avatar
rusgray
 
Posts: 9
Joined: Sun Feb 21, 2016 10:42 pm

Re: OLED Breakout Board Misbehaving

Post by rusgray »

I've done some experimenting with both prototypes and both OLED screens.

Eye-SPI OLED with breakout board connected to breadboard prototype:
- My software causes the display to go blank, but it takes much longer to happen than it does on the custom PCB prototype
- The OLED test software (modified from the provided default by adding all the drawing examples to the loop() function so they will repeat) does not cause the display to go blank (1 hr test time)

Older OLED connected to breadboard prototype:
- My software does not cause the display to go blank (1 hr test time)
- The OLED test software does not cause the display to go blank (1 hr test time)

Eye-SPI OLED connected to custom PCB prototype:
- The OLED test software causes the display to go blank. This happens at different points in the test routine, but always before a single cycle of test functions is complete.

It seems like the custom PCB is introducing some issues. Additionally, it seems that my software is causing an issue with the Eye-SPI OLED, but not the older model.

User avatar
adafruit_support_carter
 
Posts: 29966
Joined: Tue Nov 29, 2016 2:45 pm

Re: OLED Breakout Board Misbehaving

Post by adafruit_support_carter »

The connections should nominally be the same. The EYESPI connector is really just a convenience feature allowing for a solderless ribbon cable connection option.

Focusing on just hardware related possibilities - what are the pin connections you make on your PCB for the EYESPI connector? What EYESPI pins are connected to what pins on the Arduino board via the custom PCB?

Post Reply
Please be positive and constructive with your questions and comments.

Return to “Other Arduino products from Adafruit”