Normally we talk to SPI Display in 4-Wire (8-bit) Mode ... But today we do 3-Wire (9-bit) Mode ... With a sneaky packing hack

rhydolabz.com/documents/33/ST7

Let's connect a Logic Analyser to Stack ... And troubleshoot the SPI connection to ST7789 Display

doesn't seem to be transmitting anything to ST7789 on SPI MOSI (GPIO 17) ... Let's try a different pin for MOSI

Yep MOSI works if we switch to GPIO 4 ... So what's wrong with GPIO 17? 🤔

GPIO 4 works as MOSI but not GPIO 17 ... What if we connect GPIO 4 to 17? Nope still nothing on the Stack ST7789 Display 🤔

Yep MISO and MOSI are now swapped! This matches the SPI Pin Definitions in Reference Manual ... So from now on we'll always call GLB_Swap_SPI_0_MOSI_With_MISO

github.com/lupyuen/bl_iot_sdk/

Need to verify that our Display is hardwired for "3-line 9bit serial I/F Ⅱ" mode: IM0 = 1, IM1 = 0, IM2 = 1, IM3 = 1 🤔

rhydolabz.com/documents/33/ST7

Let's port moononournation's awesome 9-bit-banging GFX Library to ... And compare the SPI Output with a Logic Analyser

github.com/moononournation/Ard

Show newer

Debugging SPI on BL604 for the @thepine64
#PineDio Stack with @lupyuen : Why are MOSI and MISO swapped? And will GLB_Swap_SPI_0_MOSI_With_MISO() help us?

Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.