arduino / arduino/ArduinoCore-renesas

Display garbage on OLED SSD1306 screen when using core version 1.5.2 for Arduino R4 Nano

Open
#520 8 comments 0 reactions 0 assignees View on GitHub
topic: code type: imperfection
Dominant language
C
Stars
193
Forks
112
PR merge metrics
No merged PRs in 30d

Description

Here is the situation. I have been working on a project with a Arduino R4 Nano and among the components, a Oled SSD1306 128x64 screen on the i2c bus. Code is working fine, display data is fine. I am using Visual Code with Platform.io.

Then I moved back to Arduino IDE to make a guide for installing the IDE, libraries, board manager, code folder, compile and upload. I recorded all thoses steps without any problems. But then, when I start using the Arduino for its purpose, the screen shows garbage.

I was using Adafruit SSD1306 libraries 2.5.16 in Arduino IDE, while using 2.5.15 in Visual Code. Move back to 2.5.15, but still garbage on the screen. Essentially when compiled in Visual Code, the display is ok. When compiled in Arduino IDE, the display has garbage.

In terms of hardware and connections, the arduino is welded on a custom pcb board with other connectors and oki buck converter. So it is pretty much stable from test to test.

With the help of AI, in the Visual Code, comparing compiling log, he discovered that the version of the board manager on Visual Code Platform.IO, was version 1.5.1, meanwhile in Arduino IDE, it was the last version 1.5.2. I uninstalled v1.5.2 and installed v1.5.1. Recompiled and uploaded. Now the display is working fine.

So the core version 1.5.2 for the R4 Nano has introduced a bug versus the Adafruit library for the SSD1306. Another detail, I am using this OLED screen purchased from Amazon: https://www.amazon.ca/dp/B076PNP2VD?ref_=ppx_hzsearch_conn_dt_b_fed_asin_title_1

The ssd1306 library is from Adafruit.

### Additional context

#### Additional reports

- https://forum.arduino.cc/t/oled-ssd1306-after-command-begin-is-full-of-random-pixels/1426091
- https://github.com/arduino-libraries/Arduino_Modulino/pull/52#issuecomment-3816436142
- https://github.com/arduino/ArduinoCore-renesas/issues/520#issuecomment-3832965091
- https://github.com/arduino/uno-r4-library-compatibility/issues/41

#### Related

- https://forum.arduino.cc/t/r4-version-1-5-2-issue-with-wire1-port/1425293

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the OLED SSD1306 garbage display with ArduinoCore-renesas 1.5.2 and compare the behavior with 1.5.1, using the additional reports linked in the issue for context. Done means the reported display works correctly with core 1.5.2 and the regression has a verified fix or a documented cause.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.