SparkFun Forums 

Where electronics enthusiasts find answers.

Discussions about carrier boards have here!
User avatar
By TES_AL
#233876
I am using SparkFun MicroMod RP2040 Processor (https://www.sparkfun.com/products/17720) on SparkFun MicroMod Data Logging Carrier Board (https://www.sparkfun.com/products/16829)
The I2C fails to talk with i2c devices (have tried several devices).
I try to debug the port so I checked SDA/SCL with oscilloscope using https://github.com/raspberrypi/pico-exa ... bus_scan.c
The clock falls to 0V.
The data "falls" 2.6V
I disconnected pullup resistors and using the internal pull up
gpio_pull_up(PICO_DEFAULT_I2C_SDA_PIN);
gpio_pull_up(PICO_DEFAULT_I2C_SCL_PIN);
there is no devices that connected and I see only one fall of the SCL (instead of at least 8 of the address).
Any suggestion why I am not see the SDA falls down while requesting device address?
You do not have the required permissions to view the files attached to this post.
By jremington
#233907
Reconnect the pullup resistors. They are absolutely required for I2C function.

Droop in the data voltage is the direct result of the pullup resistances (impedances) being too high. 4.7K is typical, but you can lower the values, to 1K if necessary.
User avatar
By TES_AL
#233930
I reconnect the 2.2kOhm resistor and tried to change them to 10kOhm.
The yellow channel is SCL.
The green channel is SDA.
the signal rate is 100kHz and the pulse change from 3.3v to 0v and back in 10us (100kKz).
Do you have any suggestion why doesn't see the second pulse of the clock?
As I see the signal doing all the way from 3.3v to 0v successfully so i guess the guess that the resistor rate is ok.
You do not have the required permissions to view the files attached to this post.
User avatar
By TES_AL
#233932
I found that in case of removing the function:
Code: Select all
stdio_init_all();
The SCL works fine.
I want to work with I2C and UART.
Code: Select all
PICO_DEFAULT_UART_TX_PIN = 0
PICO_DEFAULT_UART_RX_PIN = 1
PICO_DEFAULT_I2C_SDA_PIN = 4
PICO_DEFAULT_I2C_SCL_PIN = 5
In the datasheet it looks like the both interfaces can work together:
https://datasheets.raspberrypi.com/rp20 ... asheet.pdf
User avatar
By TES_AL
#234133
Do you have any how can I use UART and I2C in the same project?
 Topic permissions

You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum