BME680 Breakout

Does the BME680 deliver better quality readings (closer to ground truth) than the Envirophat? (assuming both sensors equal distance away from device so negating the heat given off from the device)

To compare accuracy, compare the specs for the BME680 versus the BMP280. I bet they are pretty close.
As far as placement goes, my weather clock is usually on a table or desk, or park bench. 3 or 4 feet or so off of the ground.

I managed to solder this and get it to work on my Raspberry Pi 3.

Now I travelled to a new place, took out the soldered breakout board, attached the female pins to the header pins on a fresh Pi Zero and it doesn’t work. I’m a bit stumped as to what’s going on. The error message given is:

Traceback (most recent call last):
  File "read-all.py", line 6, in <module>
    sensor = bme680.BME680()
  File "/usr/local/lib/python2.7/dist-packages/bme680/__init__.py", line 25, in __init__
    self.chip_id = self._get_regs(CHIP_ID_ADDR, 1)
  File "/usr/local/lib/python2.7/dist-packages/bme680/__init__.py", line 296, in _get_regs
    return self._i2c.read_byte_data(self.i2c_addr, register)
IOError: [Errno 121] Remote I/O error

And when I run i2cdetect -y 1 I get:

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

…which I gather means it isn’t detecting anything plugged into my GPIO header?

Any tips for how to problem-solve this further? It was working before, otherwise I would maybe have thought it was a soldering issue…

Have to ask the obvious questions. Plugged into the correct PIN’s not accidentally off by one pin or backwards?
You ran the installer on the Pi Zero? i2c is enabled?

and THAT was the right question to ask! For some reason I’d put it on back-to-front.

Now:

You can see it’s working! (Also that it’s quite hot where I am :) )

The Pimoroni tutorial said that I could damage the board by putting it on back-to-front. It doesn’t seem to have done so. How would I know if it’s been damaged? It wouldn’t work?

Wouldn’t work at all would be what I would have expected. Just compare your “outdoor” readings with The weather for your area listed online. If one or more of your readings are "way’ off you’ll now something isn’t right. Here I use the Environut Canada website, which I believe gets its info from out local airport. My readings are usually pretty close to what they publish. Close enough that I’m satisfied with the curacy of my readings. I don’t correct my Barometric Pressure to Mean Sea Level as my weather clock is portable, and I live on a hill. 100+ foot variation from here at home to say our dog park.

Is yours the newer BME680, the one shown on the product page? Looking at the pinout, plugging it in backwards would reverse the power in. Maybe there is a diode in there that saved the day?

hmmm yeah. well it all seems roughly to be working! I guess I got lucky. (It’s the newer BME680, yes).

I have the older one, I wasn’t sure if the pinout was the same but it is. Anyway, yeah, count yourself lucky you didn’t damage your Pi or the BME680. I’ve fried one Pi Zero W. It had a 90 male header on it. I plugged it into the female header one row off. I was also feeding power in to it via the GPIO. 5V went where it wasn’t supposed to. =( It didn’t hurt the pHat Beat that was already plugged in though. There was a Proto Zero between the two supplying the +5V to both via GPIO.