diy: add support for Waveshare Touch LCD 3.5 - #330
Open
bota87 wants to merge 1 commit into
Open
Conversation
ESP32-S3 board with a 3.5inch 480x320 capacitive touch display (ST7796/FT6336), OV5640 camera and AXP2101 pmu. The pmu, the touchscreen and the camera sccb share the same i2c pins, so the pmu attaches to the bus owned by the touchscreen once it exists, and the touchscreen is now stopped before esp_camera_init() rather than only being restarted after it - otherwise the sccb cannot claim the pins. The 3.5B variant uses a different (QSPI) display controller and is not supported.
Collaborator
|
Thanks - this may have to sit for a bit while we push the next release out. Will try to get to it soon, thanks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds diy support for the Waveshare ESP32-S3-Touch-LCD-3.5 (esp32s3, 480x320 ST7796 display, FT6336 touch, AXP2101 pmu, and an OV5640 camera on the -C version). It follows the existing Touch LCD 2 support, with the same three virtual buttons along the bottom of the screen.
Tested on the hardware: display, touch, QR scanning, brightness, battery level and charging.
Worth flagging for review: on this board the touch controller, the camera sccb and the pmu are all on the same two i2c pins.
camera.ctherefore stops the touchscreen beforeesp_camera_init()rather than only restarting it afterwards - since IDF 5.4 the camera component drives the sccb through the new i2c_master driver (sccb-ng.c), which cannot claim pins the touchscreen bus still holds, so the sensor was never found. That file is shared with the other camera+touch boards, so I built and flashed a Touch LCD 2 from this branch too (its sccb is on separate pins) and QR scanning and the buttons still work there. The M5 Core S3 has its touch and sccb doubled up on the same pins like this board, so its camera has probably been broken by the same thing since the move to IDF 5.5 - this change may actually fix it, but I have no way to test that.The 3.5B variant uses a different (QSPI) display controller and is not supported (#243).