Skip to content

ESP32S3: displayio causes "CircuitPython core code crash"  #9341

@Sola85

Description

@Sola85

CircuitPython version

Main branch (see commit ids below) on espressif_esp32s3_devkitm_1_n8

Code/REPL

import busio, board
import displayio
displayio.release_displays()
# The issue is reproducable whether there is something connected to these pins or not. The exact pins used here also don't matter.
spi = busio.SPI(board.IO5, board.IO4, None)
display_bus = displayio.FourWire(spi, command=board.IO3, chip_select=board.IO2, reset=board.IO1)

print("\nDone setup")

Behavior

Running in safe mode! Not running saved code.

You are in safe mode because:
CircuitPython core code crashed hard. Whoops!
Hard fault: memory access or instruction error.

This occurs after saving the above code in code.py. Sometimes the crash only occurs after saving the file a few (usually < 10) times.
Running this code in the REPL does not trigger the issue. Only when saving the code to the file does the crash occur.

Description

At 55028d0, everything was working normally, but at ed5591c (94 commits later) I am seeing this issue.

Between these two versions, I am also seeing a significant increase in power consumption (previously 50-60mA while in repl, now 90-100mA)

If this is known to be related to some work that is still in progress (this is not a release version of CircuitPython after all), feel free to close the issue.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions