wuhanstudio / u8g2-arm-linux

U8g2 for arm linux - a monochrome graphics library
https://github.com/wuhanstudio/u8g2-arm-linux/wiki
Other
51 stars 24 forks source link

SH1106 white line #3

Closed djdo closed 4 years ago

djdo commented 4 years ago

As you can see the image, there's a random white line on the right side of the screen.

I'm using a Raspberry Pi 3B+ running on a custom Linux buildroot generated image, driving a SH1106 display.

I modified the HW I2C example to just display Hello World. IMG_20191203_102414

wuhanstudio commented 4 years ago

As you can see the image, there's a random white line on the right side of the screen.

I'm using a Raspberry Pi 3B+ running on a custom Linux buildroot generated image, driving a SH1106 display.

I modified the HW I2C example to just display Hello World. IMG_20191203_102414

Hi, Are you using a constructor listed in this link: https://github.com/olikraus/u8g2/wiki/u8g2setupcpp#sh1106-128x64_noname

SSH1106 and SSH1306 use the sane initialization sequence, you may need to comment out a single line here and set display offset to 0x02: https://github.com/wuhanstudio/u8g2-arm-linux/blob/3872f209f8d161593532b1057dbf43347288f9d5/u8g2src/u8x8_d_ssd1306_128x64_noname.c#L42

U8X8_CA(0x08d, 0x014),      /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable, SSD1306 only, should be removed for SH1106 */

And you can try to draw a boundary box using u8g2_DrawBox() to see where the actual display area lays. https://github.com/olikraus/u8g2/wiki/u8g2reference#drawbox

I guess the random white line is just an uninitialized RAM area out of the display area.

djdo commented 4 years ago

Yes, the problem was in the constructor, I didn't realized I was using the SSD1306 one. Sorry for that. Regardless, thank you very much for your help.