Skip to content
This repository has been archived by the owner on Jan 22, 2025. It is now read-only.

Support JC2432W328C board #37

Open
DavidKarlas opened this issue Jan 9, 2025 · 3 comments
Open

Support JC2432W328C board #37

DavidKarlas opened this issue Jan 9, 2025 · 3 comments
Labels
enhancement New feature or request

Comments

@DavidKarlas
Copy link

I read ESP32-2432S028 in README, went to Aliexpress, put that into search and ordered 3 boards... Turns out not all ESP32-2432S028 are equal, my is with USB-C port(which I have problem powering via USB-C, but that is different story).
Problem is that both screen(ST7789) and touch(CST820) are different models than this project.

I wonder if I were to open Pull Request... Would you like 2 different build configs for each board or would you prefer detection at runtime so only 1 firmware.bin can be published and distributed, making adoption easier for users, but at same time at least on first boot, multiple screens/touches will need to be probed...

Here is quick dirty commit I made to make it work: DavidKarlas@71ce58d which disabled calibration...

@DavidKarlas DavidKarlas added the enhancement New feature or request label Jan 9, 2025
@AllanOricil
Copy link
Owner

@DavidKarlas thank you for that. I liked what you did. Is it possible to disable the touch calibration for the other touch sensor like you did?

Yes, you can open PRs. Could you also update the flasher site to let people choose the firmware they want to install based on their board? I remember seeing somewhere in the docs that the manifest.json allows multiple configurations, and when you add a second one the built-in webcomponent will prompt users to select which config they want to use. You would also need to change the github workflows to generate 2 artifacts, and then configure the manifest to point to the right one for each build. And the last thing to do is to find a way to guide Users to choose the right firmware. Since the part number of the board is the same, even with different parts, I think we need a section on the README, as well as one in the website tutorial, to help them choose the right firmware.

@DavidKarlas
Copy link
Author

Which rises the question, should we try to detect board/screen/touch at runtime and only have 1 version which would simplify life of users?

@AllanOricil
Copy link
Owner

AllanOricil commented Jan 10, 2025

I dont know if it is possible to determine the peripheral at runtime. OS do that, so maybe it is.

The only issue I can see is the size of the firmware increasing above what is permitted by the default partition table. If we create a single artifact that support different touch sensors, shipping one driver for each peripheral, there is a chance the build will exceed the max artifact size. I remember I had to disable lots of LGVL widgets at build time because I was having issues with the size of the artifact.

I was thinking about having different builds for different boards because it is what I saw other projects doing. But if you can make it work the way you said, I don't have anything against it, since it would ease the installation.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants