Teensy 4.0 spi sck interference

Status
Not open for further replies.

morgoth90

Member
Using a teensy 4 I have tested a breadboard circuit with 3 spi slaves and replicated the connections on a perfboard.
On the breadboard everithing works as supposed but on the perfboard something is interfiring with sck: two connectors works fine but if I try to connect a cable to the third spi bus became inutilizable.
Connecting a lose cable to sck on that connector and touching it break everithing.
 
I am thinking of doing a PR to SPI, to change how the pins are configured. You might try it and see if this helps you:

In SPI.cpp at about line 1283, will be a line that looks like:
Code:
uint32_t fastio = IOMUXC_PAD_SRE | IOMUXC_PAD_DSE(3) | IOMUXC_PAD_SPEED(3);

try changing it to:
Code:
uint32_t fastio = IOMUXC_PAD_DSE(6) | IOMUXC_PAD_SPEED(1);

If I understand correctly this should give it more drive strength, but may not be able to drive the speed as high, but probably fast enough...

It helped with some of the displays we have been playing with.
 
I am thinking of doing a PR to SPI, to change how the pins are configured. You might try it and see if this helps you:

In SPI.cpp at about line 1283, will be a line that looks like:
Code:
uint32_t fastio = IOMUXC_PAD_SRE | IOMUXC_PAD_DSE(3) | IOMUXC_PAD_SPEED(3);

try changing it to:
Code:
uint32_t fastio = IOMUXC_PAD_DSE(6) | IOMUXC_PAD_SPEED(1);

If I understand correctly this should give it more drive strength, but may not be able to drive the speed as high, but probably fast enough...

It helped with some of the displays we have been playing with.

Wow, that fixed the problem like black magic.
 
Status
Not open for further replies.
Back
Top