pi1541 / Pi1541

Commodore 1541 emulator for the Raspberry Pi
GNU General Public License v3.0
375 stars 81 forks source link

Problem with cheap OLED SSD1306 that do not send ACK response #176

Closed StormTrooper closed 4 years ago

StormTrooper commented 4 years ago

I've got a few 128x64 I2C SSD1306 from eBay. It seems a lot of these cheap clones do not send a ACK response and fail to work with the Pi1541 code.

https://i.postimg.cc/Z9fffd6q/20200307-085441.jpg

https://i.postimg.cc/HcV6Fkt9/20200307-085459.jpg

On the latest Pi1541 the display is blank and I think it's due to these OLED's not sending ACK responses.

The display works fine on an Arduino with the latest u8glib:

U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NO_ACK); // Display which does not send AC

See here for more info.

https://forum.arduino.cc/index.php?topic=219419.0

I'm not sure if its possible to adapt this or apply some fix to get this OLED working on the Pi1541?

StormTrooper commented 4 years ago

Eventually found a hardware hack to fix the issue.

The ACK pin is not connected. You can short pin 19 to pin 20 on the ribbon cable to restore the ACK line.

https://forum.arduino.cc/index.php?topic=635116.0