-
Notifications
You must be signed in to change notification settings - Fork 2.1k
drivers/st7735: faulty driver initialization #19818
Copy link
Copy link
Closed
Labels
Area: driversArea: Device driversArea: Device driversState: WIPState: The PR is still work-in-progress and its code is not in its final presentable form yetState: The PR is still work-in-progress and its code is not in its final presentable form yetType: bugThe issue reports a bug / The PR fixes a bug (including spelling errors)The issue reports a bug / The PR fixes a bug (including spelling errors)Type: trackingThe issue tracks and organizes the sub-tasks of a larger effortThe issue tracks and organizes the sub-tasks of a larger effort
Metadata
Metadata
Labels
Area: driversArea: Device driversArea: Device driversState: WIPState: The PR is still work-in-progress and its code is not in its final presentable form yetState: The PR is still work-in-progress and its code is not in its final presentable form yetType: bugThe issue reports a bug / The PR fixes a bug (including spelling errors)The issue reports a bug / The PR fixes a bug (including spelling errors)Type: trackingThe issue tracks and organizes the sub-tasks of a larger effortThe issue tracks and organizes the sub-tasks of a larger effort
Description
Most of the initialization code was copied from the
ili9341driver. However, the commands and parameters used in initialization sequence differs a lot, especially for power and frame control even if they have same command indices. See below for examples.Note: I'm already working on a complete rework of the initialization which has been almost finished but it will require a couple of PRs to avoid extensive code duplication. I will use this issue as tracking issue.
lcd(PR drivers/lcd: code deduplication for st7735 and ili9341 #19816)_set_areafunction (PR drivers/lcd: code deduplication for st7735 and ili9341 #19816)Examples for the problem
For example:
RIOT/drivers/st7735/st7735.c
Lines 143 to 146 in 123cce9
Although the command index is the same, the number of paraemeters and their meaning differ a lot.
Another example is:
RIOT/drivers/st7735/st7735.c
Lines 105 to 107 in 123cce9
In best case, the display uses wrong gamma correction and is completely overlit and without any contrast. In worst case, it doesn't work at all or breaks down the display. See below for expected and actual results.
Steps to reproduce the issue
Expected results
Actual results
Versions