Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.3" I2C OLED LCD SH1106 draws past the display on the right side #1238

Open
exelion001 opened this issue Dec 22, 2024 · 12 comments
Open

1.3" I2C OLED LCD SH1106 draws past the display on the right side #1238

exelion001 opened this issue Dec 22, 2024 · 12 comments
Labels
bug Something isn't working

Comments

@exelion001
Copy link

exelion001 commented Dec 22, 2024

Expected Behavior

A .96" OLED using SSD1306 shows the complete buttons on the right.

Current Behavior

The right buttons draw past the screen and are missing about 15% of the buttons.
This was used on 2 different pico boards with the same results.

I tested the display with an ESP32 using Adafruit SH110X library using example SH1106_128x64_i2c_QTPY. The example displays correctly and I when I set it to draw a pixel at (127,63) it shows at the correct place so I am pretty sure my display is working.

Name of device
DIYUSER 1.3" IIC OLED Display Module White Blue Color Drive Chip SH1106 128X64 1.3 Inch LCD IIC I2C Communicate For Arduino
Link to where you purchased the device
https://www.aliexpress.com/item/1005007553189902.html

Steps to Reproduce

  1. Attach I2C display
  2. Button Layout (Left) - Stick
  3. Button Layout (Right) - Fightboard
  4. Plug GP2040 into usb port

Screenshots & Files

GP2040 OLED Display

@exelion001 exelion001 added the bug Something isn't working label Dec 22, 2024
@mikepparks
Copy link
Contributor

Which layout are you using?

@exelion001
Copy link
Author

I updated the steps to reproduce.
Button Layout (Left) - Stick
Button Layout (Right) - Fightboard

@mikepparks
Copy link
Contributor

Do the other layouts expand to the full width of the screen? I tested this one and it looks okay on all of my displays.

@exelion001
Copy link
Author

I can only notice with layouts that have more buttons.
ARCADE
Arcade

BUTTONS ANGLED
Buttons Angled

CAPCOM
Capcom

@exelion001
Copy link
Author

exelion001 commented Dec 23, 2024

I tried a splash screen from here and it looks fine.

Splash

@TheTrainGoes
Copy link
Contributor

Tested this on a few of my displays as well and all look well.

@exelion001 with the above splash screen it is missing a the last column of pixels.

You said above that you tested a pixel draw at (127,63), what happens at (128,64)?

@exelion001
Copy link
Author

exelion001 commented Dec 23, 2024

I tried (128,64) but it doesn't show. I think (128,64) is off the display because the first pixel is at (0,0) and the last is (127, 63).
Are the displays you guys are using have the SH1106 chipset?

@TheTrainGoes
Copy link
Contributor

@exelion001 OK just checking. Yes, I have a number of those displays and they work as intended.

Do you have multiple of these displays exhibiting the same issue?

@exelion001
Copy link
Author

I only have the one display I got today. You are right and it looks like I am missing 2 columns of pixels on the right in the splash screen. I haven't seen many people use the 1.3" displays.

@TheTrainGoes
Copy link
Contributor

@exelion001 can you take a pic of the back side?

@exelion001
Copy link
Author

Photo 2024-12-22, 8 30 37 PM
I ran some more tests in arduino using the following code:
display.drawPixel(0, 0, SH110X_WHITE);
display.drawPixel(127, 0, SH110X_WHITE);
display.drawPixel(0, 63, SH110X_WHITE);
display.drawPixel(127, 63, SH110X_WHITE);
display.display();
delay(5000);

// draw a single pixel
display.drawPixel(10, 10, SH110X_WHITE);
display.setTextSize(1);
display.setTextColor(SH110X_WHITE);
for(uint8_t i=0;i<128;++i)
{
display.setCursor(0, 0);
display.println(i);
display.drawPixel(i, 10, SH110X_WHITE);
display.display();
delay(100);
display.clearDisplay();
}

The 4 pixels show in each corner for the first test and the second test draws a pixel across the screen correctly.

@mikepparks
Copy link
Contributor

I managed to find my collection of these exact units and I can reproduce this. Will see about getting a fix included for next version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants