Skip to content

fillEllipse function causes Adafruit Feather ESP32-S3 TFT to hang #492

Description

@bobmoss

If you use the fillEllipse function on an Adafruit Feather ESP32-S3 TFT board, the board hangs/crashes completely.

It may happen on other ESP32 based boards but I'm unable to check.

The reason is that at the start of the function startWrite() is called. Then drawFastHLine functions are used to draw the lines.

However, drawFastHLine also calls startWrite(). startWrite calls SPI_BEGIN_TRANSACTION() and this nesting of SPI_BEGIN_TRANSACTION causes a deadlock that hangs the board.

The fix is to replace the drawFastHLine calls with writeFastHLine calls as we are already in a "draw" function.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions