Replies: 4 comments 1 reply
-
Which boards and firmware version do you use? |
Beta Was this translation helpful? Give feedback.
-
Sorry, forgot to mention. MicroPython v1.19.1-932-g6bb60745b on 2023-03-07; ESP32S3 module (spiram) with E I am using ESP32-S3 with QUAD SPIRAM (not octal). Board: For default, it would probably be best to neither have a pull-up nor a pull-down enabled, just neutral (I don't know if this is possible -- but if not, pull-down would be the right choice). |
Beta Was this translation helpful? Give feedback.
-
SPI MOSI and SCK outputs are driven at low impedance either high or low in order to achieve a high transfer rate. There is no neutral state. Looking through the SPI API of the espressif SDK, I see no option to set the MOSI level at inactive times. Only SCK quiet level and SCK phase can be selected. |
Beta Was this translation helpful? Give feedback.
-
I'll move this topic to discussions, since it does not seem to be a bug. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
It seems that an SPI instance (SPI, not SoftSPI) switches the pull-up resistor on for MOSI by default.
I am using the following code:
Just for information the variables:
The MOSI pin pulls high on my oscilloscope after the SPI instantiation. This is really bad, since SPI devices normally are not able to sink current. This means, that MOSI will remain pulled up and data transmission to the master does not work.
It seems that the Pin.PULL_DOWN parameter is overwritten or not taken into account.
As a result it is not possible to use SPI without the pull-up resistor switched on.
SoftSPI doesn't seem to show this behavior but is not an alternative to the hardware SPI.
Beta Was this translation helpful? Give feedback.
All reactions