I have the Pico breakout garden base, a Pico W with picow-v1.25.0-pimoroni-micropython.uf2, and the BME688 breakout. When I run the example bme68x_demo.py in Thonny, all I get is a blinking cursor like this after hitting enter on the run line: Any suggestions? I can read the BME688 using a Pico Plus 2W with Adafruit Wipper with no issues. Perhaps the breakout garden is just trash. I’ve tried each of the I2C ports on it with the same results. I’ve verified power to the I2C ports (3.72V)
I ran an I2C scanner, and it found no I2C devices on any of the ports.
I “think” you may be looking at the wrong i2c pins?
This what I run on mine when I want to scan i2c for devices.
import machine
#sda=machine.Pin(4) # Explorer 20 Breakout 4
#scl=machine.Pin(5) # Explorer 21 Breakout 5
#i2c=machine.I2C(0,sda=sda, scl=scl, freq=400000)
i2c = machine.I2C(0, scl=machine.Pin(5), sda=machine.Pin(4))
print('Scan i2c bus...')
devices = i2c.scan()
if len(devices) == 0:
print("No i2c device !")
else:
print('i2c devices found:',len(devices))
for device in devices:
print("Decimal address: ",device," | Hex address: ",hex(device))
And when reading a BME680, it goes something like this.
from breakout_bme68x import BreakoutBME68X
from pimoroni_i2c import PimoroniI2C
PINS_BREAKOUT_GARDEN = {"sda": 4, "scl": 5}
PINS_PICO_EXPLORER = {"sda": 20, "scl": 21}
i2c = PimoroniI2C(**PINS_BREAKOUT_GARDEN)
bme = BreakoutBME68X(i2c)
temperature, pressure, humidity, gas_resistance, status, gas_index, meas_index = bme.read()
Also make sure the BME680 is plugged in the correct way around in the socket, and the pack is on the Pico the right way around..