What is the failure rate for the Pimoroni LED shim?
I purchased one back in January but have not needed it until now. It worked perfectly for about two weeks. After two weeks of use the pixels stop working in various random patterns. When cold 25 out of the 28 LEDs light up. As things warm up (?) the number of pixels that light up drops to 6 to 12. In some cases all three of the RGB LEDs do not light, in other cases one or two of the LED triad light up. No errors come from the Raspberry Pi 3B+ to say the I2C interface chip is unhappy. It looks to me like the LED driver matrix is temperature sensitive.
The reason I ask is that I don’t want to throw good money after bad buying a replacement.
I have two here. One is running 24/7, has been for well over a year. All 28 led’s are in use. Once lit up its a pretty static display. Only my marker indicator moves up and down changing the colors. It’s orientated vertically
The other is used in harsh conditions. It’s a portable setup that has been out in rain, snow, very hot summer days and cold winter days. It’s in a vented enclosure, no direct contact with any moisture but it is exposed to the relative humidity and ambient temperature.
Mine are soldered to headers with wire jumpers though, not just pressure fit. That was done because of how and where I wanted / needed to mount them.
The friction fit aspect has been a problem for some. Its been a problem for me with one of my Fan Shims. I don’t think that’s your issue though as it just wouldn’t work at all, or just stop working and freeze. The LED Shim uses i2c to control the LED’s.
My best guess is something didn’t get soldered properly during manufacture. Or the LED controller was defective? I try to make it a habit to run the demo python file on stuff like this when I get it. That will catch most problems and give you lots of time to get it replaced.
All I can say is I have have bought a ton of stuff here and defects have been minimal. And I’ve had no problems getting replacements when I detected an issue while still in the return period.
OK, Thinking I may have gotten a lemon I ordered another from AdaFruit. It does the same things.
I am now thinking the interface between my Raspberry Pi 3B+ is the issue. If I use the rgb.py test program I can get all the LEDs to light in Red, Bue, Green, and White if I run the program several times. There is no discernable pattern to the LEDs that don’t light up. I have changed the data send rate in /boot/config.txt to 100000, 400000, 800000 with no change. It is back to auto. The BIOS and other applications are all up to date. Stumped.
I don’t know what to tell you? I’ve had mine running at less than 0 C, around -12 I think, and above 30 C, maybe 35 C, with no issues.
EDIT: I have a bunch of other sensors etc on i2c, BME280, LTR-559 Light Sensor, VEML6075 UVA/B Sensor and an RV3028 RTC.
Do you have multiple devices on i2c? Maybe something else is messing up your i2c coms.
It is the only thing on the i2c bus is at 0x75. I am thinking the 3B+ may be the issue, what I am not sure. In a couple days I am going to try running it on a Raspberry Pi Zero W. It uses a different CPU, etc. we will see.
OK, I put the LED SHIM on a Raspberry Pi Zero W and all looks to work fine. I would assume the LED SHIM driver is not compatible with the Raspberry Pi 3B+ (and by extension the 4B). There is a significant difference in processor speed between the two machines that I have tested the LED SHIM on. That may be the issue.
If the LED SHIM driver is updated to tolerate the 3B+ / 4B how will I know?
I can only tell you about my experience with two LED SHIMs and two different models of Raspberry Pi computers. As I understand you have not tried a 3B+. Too bad we don’t live closer, I would loan you one.
I do system updates every 4 to 6 weeks. It is possible there was an update that messed/sped things up. In my opinion because the 3B+ runs faster and the firmware update improved the system speed, the LED SHIM doesn’t like the faster timing.
I’ve had updates break working systems. I only ever update a select few of my systems. I have several headless non Internet connected builds that I don’t touch unless they stop working. And my Motion Eye OS camera setups require a reinstall to update to a new version.
I have some 3A’s, 3B’s, 3B+'s and 4B’s. I could hook one of my LED shims up to a 3B or 3B+. There is a fair bit of disassembly involved as both LED Shims are wired to Perma Proto Hats with a Unicorn HD on top of that.
I would not take anything apart just to duplicate my findings. Pimoroni should be monitoring their Forums and see what we have found. It is up to them to update the driver to cope with the changing Raspberry Pi environment. Thanks for all you have done.
For what its worth, I have a tone of i2c Breakout Garden stuff on the go here. Pi 400, several Pi Zero’s, even a Pi PICO or two. BME280’s, UV sensor, light Lux sensor, etc. Lots of those small LCD breakouts on SPI. So far so good with a fully updated Pi OS on my Pi 400. I did have my RV3028 RTC stop working on my Pi 400 after an update upgrade, but the process had errored for some reason. I think I lost my Internet connection during the download process. I ended up reinstalling Pi OS to get it working again. And have updated upgraded without it stopping again. Fingers crossed as I update the Pi 400 regularly.
The LED shim is one of the few LED arrays that uses i2c, just about every thing else here that is glowy uses SPI. Why its so finicky I have no idea?
I got it working. One of the system updates added ‘dtparam=i2c_baudrate=1000000’ to the end of the /boot/config.txt file. I changed it to 400000 and the LED SHIM works fine now.