Waveshare EPD Intermittent Unable To Display & GxEPD2 Library

I have a Waveshare 5.83 Display with the Pi/universal hat, using the GxEPD2 library. I have it connected to a Boron over SPI. The issue I have is that the display seems to update when it wants to. I had it working earlier in my project, but added i2c GPIO expanders and an i2c accelerometer. The display will update on reboot, but not another. The serial output from the Boron during the display update is “_Update_Full : 30” or" _Update_Full : 25085". This screams hardware/connection issue, but I don’t see it. What are my next steps/where do I look? Halp

Checked:
Connected the display to a RPi, it updates and acts normally.
Connected to the Boron with the example application code in the library, it does not function.
Connection from Boron pins to the pins on the hat show continuity with a meter.

I have ordered a new hat in case hat is the issue.

https://www.waveshare.com/5.83inch-e-paper-hat.htm

I’m seeing issues with the Gen3 SPI on the newer firmware.

@peekay123 is looking into SPI on another project so I’ll tag him here incase your also being affected by the same thing were seeing.

Do you know what firmware it was working on and the firmware your trying now that is not working?

My setup was working under 1.3.0 but not now, it looks like it may be SPI transfer issues like your seeing.

It is currently running on 2.0.0. It has intermittently worked on this firmware, and on 1.5.1, 1.5.2, 1.5.4 also. I just ran a display update and it looked like the original image with additional what looked like “static” from old analog TVs. I reflashed the firmware and it updated to the proper image. The device is on a workbench separate from my computer desk. It has not been touched by me or anything and is having different results.

Update. I also tried this on a Boron 2g/3g (main use is the LTE version) with no change. The last refresh also left the image shifted to the left by a 100 pixels ish.

Yea I’m seeing the same static / scrambled type images.

I think something has been changed with SPI timing and that’s throwing our old programs off.

I’m not seeing issues when I run it on a Photon though, so try that also.

Are you using hardware or software SPI? I am wondering if there is a difference.

Hardware SPI

They updated the SPI functions sometime ago I guess.

I’m waiting on somebody smarter than me to take a look and see what is going on LOL. It’s out of my league at this point.