import board i2c = board.I2C() # or busio.I2C(pin_scl,pin_sda) while not i2c.try_lock(): pass print("I2C addresses found:", [hex(device_address) for device_address in i2c.scan()]) i2c.unlock()
Speed up the I2C bus
CircuitPython defaults to 100 kHz I2C bus speed. This will work for all devices, but some devices can go faster. Common faster speeds are 200 kHz and 400 kHz.
import board import busio # instead of doing # i2c = board.I2C() i2c = busio.I2C( board.SCL, board.SDA, frequency=200_000) # then do something with 'i2c' object as before, like: oled = adafruit_ssd1306.SSD1306_I2C(width=128, height=32, i2c=i2c)
Page last edited March 08, 2024
Text editor powered by tinymce.