New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update EPaperDisplay to allow for two byte sequence length #5874
Conversation
Could this just be done dynamically by noticing whether the supplied LUT is >128 bytes? |
I don't believe so (and please correct me if I'm wrong here) because the delay mask is in the 8th bit place and it is masked out from the size and this is what originally caused the issue. Because the LUT is just a byte string in the start_sequence there is no size supplied. |
I suggested this. I don't think there is a way to automatically detect it. @dkulinski There are a couple boards that init eink in |
If the init sequence were broken into components, including the LUT, then it could be noticed, but I am not sure it is worth it, especially if the init sequence could be irregular in some way. |
since it has no need for MIDI. There are a bunch of other things that could be removed too, but that's probably enough. |
It turns out I have to fix this for #5896 anyway, for the same reasons, so don't bother to do this yourself. |
Ok, I have fixed the two boards that failed and have committed my changes. |
I've updated the code for the two boards mentioned. I have also brought my repo into parity with the main repository. Builds for expressif fail but this looks to be an issue with the pipeline and not directly related to my code. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good! Thank you for the update. I agree that the ESP builds being broken isn't your fault. Will merge anyway and we'll fix ESP separately.
This update allows EPaperDisplay drivers with LUT tables larger than 128 bytes to be used. Specifically this fix is for the SSD1680 driver and the 153 byte LUT table on the Waveshare 2.9 inch V2 display. This fixes #5850