I’m having continuous issues with the little piicodev connections dropping out and breaking my project. I’m hoping someone can offer a solution.
I have 12 Picos 2 W each with 3xRFID scanners and 3x buzzers daisy chained.
I frquently get the EIO error, and have been assuming it’s the physical socket connections. Each time I’ve messed around with disconnecting/reconecting/rebooting etc. Sometimes works, sometimes doesn’t, but it doesn’t seem to be obvious where the issue is.
Before using Pico 2 W, I was having the same issue the RPi Nanos.
As I say I’ve been assuming this is a physical connectoin issue. If anyone has a solution to improve the connections continuity aside from soldering, I’d really appreciate it.
Has anyone had any luck with hot glue, as I’ve seen people succesfully do with Arduino pin connections?
I found some 2022 posts the other day regarding a MicroPython bug causing I2C connection issues. This sounds very similar to the issues I’m having. Does anyone know if this bug has actually been fixed?
Would be great to get to the bottom of this as it’s really causing big issues with my project, and I’m not sure if it’s the software or hardware.
Although I’m using Picos 2W (pictured) instead of RPi Zero and the longer version cables.
Now that I’ve switched to Pico, if the scanners/connections drop out apparently more often than not powering of and on gets the scanners working again, but this is not a workable solution. And still sometimes disconnecting the connections and reconnecting them and power cycling is still required.
I took this to mean the connectors were physically falling out of the mating connector. Now I think you mean the connection is “dropping out” as in losing communication. Can you clarify.
When you say “X 12” do you mean you have 12 of this set up including 12 Pis or are you arranging 12 strings as shown on the one Pi and using 3 of those expansion devices.
Looking at that one string of PicoDev things first. What have you done with the I2C pull ups. There is a strong chance that each PicoDev thing has its own pull ups. This would make 6 sets of resistors in parallel. This could be straining things a bit as if the on board pull ups are 10kΩ then 6 in parallel would be effectively 1.66kΩ. A bit low methinks when you consider I2C would be designed for 1 pull up. It can stand more but 6 ???.
Things could get far worse if you have 12 of these strings connected via that expansion thing. The I2C lines would have to be isolated you would have an effective pull ups of about 0.14k (140Ω) pull up on each line. As the data line is bi-directional I don’t see how the expansion ports could be isolated.
I think we need a complete diagram of your set up to comment much further. Maybe your “drop out” problems low value pull up causing a power supply struggle or good old fashioned data overload on the poor old Pi. By my reckoning you have 6 devices on that string and 12 strings. A total of 72 devices.
Cheers Bob
Yes, I have 12 of this set up including 12 Pis. So 6 devices daisy chained to each Pico.
Yep, each PiicoDev device has its own pull ups. I haven’t touched the I2C pull ups.
Reading the connections guide I thought I might get away with 6 devices: PiicoDev Connection Guide - Tutorial Australia
Do you think I should cut some of the pullups, what would you recommend?
I have not looked at these 2 links ut I did look at the PicDev Lipo expansion board schematic generously linked on the topic below. Not often you can get a schematic. But having said that it does not show the USB input connector, Just the I2C connection (with 3V3 power output) and battery connector.
This says there are pull ups of 4k7 on the I2C lines on that board. Now if there are pull ups of 4k7 on the other 6 boards that makes a total of 7 sets of pull ups and if they are all 4k7 the result would be 670Ω. I think way too low.
I would try to remove the pull ups on the first 5 devices and just leave them on the expansion board and the last device on the string and see what that does. The only damage you would do will be physical depending on how gently you carry out the removal task.
Cheers Bob