check_device_i2c_address
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| check_device_i2c_address [2026/08/18 22:10] – [I2C Address Check] walkeradmin | check_device_i2c_address [2026/08/19 12:18] (current) – [I2C Address Check] walkeradmin | ||
|---|---|---|---|
| Line 7: | Line 7: | ||
| ===== Introduction ===== | ===== Introduction ===== | ||
| \\ | \\ | ||
| - | When you attach a device on the I2C bus, even though you might know it's address, it's a great idea to run a test to see if you can read it's actual address. | + | When you attach a device on the I2C bus, even though you might know it's address, it's a great idea to run a test to see if you can read it's actual address. The achieves two things, it proves |
| \\ | \\ | ||
| \\ | \\ | ||
| - | In this example, I have an LCD address on I2C bus zero, and I know it's address is 3C0 Hex, which in decimal is 60. | + | In this example, I have an LCD address on I2C bus zero, and I know it's address is 3C0 Hex, which in decimal is 60. So this test will confirm that my assumptions about my device address is good. |
| \\ | \\ | ||
| \\ | \\ | ||
| Line 16: | Line 16: | ||
| ==== I2C Address Check ==== | ==== I2C Address Check ==== | ||
| \\ | \\ | ||
| - | Below is the code we need to run to check for devices on the I2C. | + | Below is the code we need to run to check for devices on the I2C. This script uses standard built in libraries, so you won't need to go hunting for any extra library files, you Pico (or RP2040 device) will be good to go. |
| - | <code | download> | + | <code: |
| from machine import Pin, I2C | from machine import Pin, I2C | ||
| Line 29: | Line 29: | ||
| * i2c = I2C(0 - The Zero is for Bus 0 | * i2c = I2C(0 - The Zero is for Bus 0 | ||
| - | The Pico has Bus 0 and Bus 1, and you should know which you used. | + | The Pico has Bus 0 and Bus 1, and you should know which you used. If you have connected your device to Bus 1, then change this zero |
| - | \\ | + | |
| - | * scl=Pin(5), sda=Pin(4) | + | * i2c = I2C(< |
| These are the Pico pins your device is connected to, so scl(5) is Pico Pin 7 and sda(4) | These are the Pico pins your device is connected to, so scl(5) is Pico Pin 7 and sda(4) | ||
| - | \\ | + | |
| - | \\ | + | * scl=Pin(5), sda=Pin(4) |
| If you run the code above, you will see something similar to below: | If you run the code above, you will see something similar to below: | ||
| \\ | \\ | ||
check_device_i2c_address.1787091026.txt.gz · Last modified: by walkeradmin
