Newly-Installed Enviro Generates Errno 5


#1

My newly-installed Enviro on an RPI Model 2 won’t run any of the examples. The import of the envirophat python library immediately produces:

$ sudo python temperature.py
Traceback (most recent call last):
File “temperature.py”, line 5, in
from envirophat import weather, leds
File “/usr/local/lib/python2.7/dist-packages/envirophat/init.py”, line 10, in
light = tcs3472(bus)
File “/usr/local/lib/python2.7/dist-packages/envirophat/tcs3472.py”, line 37, in init
self.i2c_bus.write_byte_data(ADDR, REG_ENABLE, REG_ENABLE_RGBC | REG_ENABLE_POWER)
IOError: [Errno 5] Input/output error

and i2cdetect shows:

$ sudo i2cdetect -y 1
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 if I understand correctly means that there’s nothing on the i2c bus.

I bought two of these boards at the same time – both of them show the same behavior. There were no errors during the software installation.

Any suggestions on what to check or try?

-M.


#2

As a follow-up I just tried a re-install of all of the software, and saw:

Note: Enviro pHAT requires I2C communication

Do you wish to continue? [y/N] y

Checking hardware requirements…

I2C already enabled
Done!

…just before it asked me if I wanted the full install, so it appears the I2C is enabled.


#3

You don’t happen to have 1-wire enabled from an early setup do you? I saw elsewhere that it appeared to cause problems with i2c, and although I’ve not verified if that’s the case it’s worth a try.

Could you also post a picture of your soldering for us to check over?

Otherwise, the response from i2cdetect looks good.


#4

I’ll double-check the 1-wire setting, but I don’t have any 1-wire devices so I’ve never purposely enabled it, but it could have been done by accident, so I’ll check.

Image of the soldering on the header.

-M.


#5

It’s hard to tell with the angle but it’s say you didn’t use enough solder, there’s definitely a couple of (important) joints that seem on the light side.

So I would touch at the very least the 2x4 block on the left hand side, which is where the action is happening: http://pinout.xyz/pinout/enviro_phat

Note that ground points (such as physical pin 6) need to sink solder a bit longer.


#6

Reflowing the solder on the header pins did the trick – thanks!