Status
This problem was solved, since it first appeared here. Please see the section called Solution.
Problem
The application hangs after the text Turn on screen is printed to the serial console.
Solution
Check the solder joints on the OLED header pins. I had soldered my VCC pin poorly, so the connection failed.
Environment
The parts in use are a RAK19007 base board, RAK4631 MCU module, and RAK1921 I2C OLED.
The meshtastic firmware tested:
firmware-rak4631-2.5.15.79da236.uf2
firmware-rak4631-2.5.16.f81d3b0.uf2
The connected computer is a Ubuntu 24.04.1 Desktop (AMD64.)
The problem consistently repeats unless I unplug the OLED.
Question
What should I do to solve this problem, in order to use the OLED normally?
Output
$ screen /dev/ttyACM0 115200
DEBUG | ??:??:?? 2 db.proto (525 Bytes)
DEBUG | ??:??:?? 2 Power::lipoInit lipo sensor is not ready yet
DEBUG | ??:??:?? 2 Use analog input 5 for battery level
INFO | ??:??:?? 2 Scan for i2c devices
DEBUG | ??:??:?? 2 Scan for I2C devices on port 1
INFO | ??:??:?? 2 Device found at address 0xc was not able to be enumerated
INFO | ??:??:?? 2 TCA9535 found at address 0x20
INFO | ??:??:?? 2 SSD1306 found at address 0x3c
INFO | ??:??:?? 2 SSD1306 found at address 0x3c
DEBUG | ??:??:?? 2 0x3 subtype probed in 2 tries
INFO | ??:??:?? 2 Device found at address 0x60 was not able to be enumerated
INFO | ??:??:?? 2 2 I2C devices found
…
DEBUG | ??:??:?? 2 Scan address 0x5a
DEBUG | ??:??:?? 2 Scan address 0x5f
ERROR | ??:??:?? 2 Could not open / read /prefs/ringtone.proto
INFO | ??:??:?? 2 Init External Notification Module
INFO | ??:??:?? 2 Use Pin 36 in digital mode
INFO | ??:??:?? 1865 Turn on screen
The application hangs at this point. If I simply unplug the OLED, then the application proceeds and works normally.