nRF52840 BLE causing display glitch on GC9A01 using SPIM

We have a product based on the nRF52840 which uses the GC9A01 display driven using SPI on battery power. The device also functions as a Bluetooth connectable so it is normally advertising data at a 1 second interval. If the display is left on for several hours while BLE is enabled, the display will randomly become glitched and stays this way until reset. It appears that the BLE is somehow interfering with SPI and causing corrupt data eventually. We are fairly confident that the issue is not hardware related, as we have eliminated noise using stable power supplies and impedance matching the SPI lines.

Is it possible that the nRF is low on resources and corrupting the SPI data or display buffer when using BLE?

The pin-out for the display is as follows.

  • DC - P0.06
  • CS - P0.08
  • RESET - P0.11
  • SDA - P0.12
  • SCL - P1.09

We are using nRF Connect SDK v2.5.1.

Parents Reply Children
  • Here is the build output. There is no overflow.

    Memory region         Used Size  Region Size  %age Used
               FLASH:      953705 B         1 MB     90.95%
                 RAM:      145660 B       256 KB     55.56%
            IDT_LIST:          0 GB         2 KB      0.00%

    The issue occurs during runtime, but I do not see how to debug it because the issue occurs randomly after several hours to several days.

Related