Hmm… I double checked the interrupt code.
No returns, loops, or anything that could branch out or take a long time
between disable and enable.
A 4 case switch statement, a few counter decrements.
I doubt it is that.
Hardware peripherals are a possibility.
I have two tinyAVR devices as slaves on an I2C line.
I did not program or develop those, so short on exact details.
There is a checksum on communication though, and that has never
reported an error, so fairly reliable under normal cases.
But if one of those hung, I2C may fail badly.
I would hope an I2C failure would time out, but perhaps not?
I also have some simple pin outputs -> darlington pair -> relays.
Very good power supply. Pretty good grounding. Doubt it is electrical.
Also: I switched to static IP a week or so ago.
No major difference from DHCP, but I “feel” timeouts were faster.
But not measured in any meaningful way.
My ISP seems to go down in general quite a bit. A few minutes here and there
several times per day. But the wireless router (airport extreme) is good.
Firmware is 0.4.9