Closed dkulinski closed 2 years ago
The change looks correct to me. I'm happy to help you debug via Discord. Just ping me when you have time.
I finally found my off by one error and fixed it in my code and I'm now sending what appears to be good SPI data. EPaperDisplay looks like the RAM pointers are wrong so and if I send the LUT my data looks backwards and skips a column. If I don't send the LUT the RAM window looks off.
I'm glad you made progress! Usually the increment direction is part of the init sequence. You should be able to update it to get the right direction. This is the fun of getting a new display going. I've attached the display-ruler.bmp I used to verify the settings.
CircuitPython version
Code/REPL
Behavior
No error message but display fails to initialize correctly because of the long LUT. This is for a Waveshare 2.9 inch v2 grayscale EPaperDisplay which is using the SSD1680 driver.
Description
When checking the SPI stream it is obvious that the bitwise AND of the delay byte is interfering with the LUT length.
Additional information
After talking with tannewt on Discord, he suggested adding a boolean for a two byte array length and defaulting this to false. I had worked on this but my C skills are lacking and my expression always evaluates to false regardless of what I set in my code (branch is here: https://github.com/dkulinski/circuitpython/commit/6d4e90cbcc0f11a7f68c718cffd9d5cfa89130ec ). I wanted to open an official bug report on this issue.