I designed this really basic board that sports an ATTiny85. This schematic is of the 84, but the setup is exactly the same. It's basically a PWM controller board with an on board MOSFET that uses a pot to adjust the duty cycle up and down(as well as for other functions), switch to activate functions, runs on battery power and has an LED for an indicator. I added an on board 10k resistor (R7) so I only have two wires going to an external 10k pot(0-2.5v is OK here).
I've sold around 1,000pcs with the same setup in the past 7-8 months, and most of the time everything is OK. I program and test them myself, so when they go out I know they're working correctly. I'm using PB2(INT0) for the switch using the internal pullup(using sleep mode), so the switch is active low. The issue is, once in awhile PB2 creates an internal short to GND somehow making the switch active all the time, as the internal pullup and the weird connection to GND causes a voltage divider.
I've seen it as low as 300ohm with the actual pin lifted off the board to confirm that's the issue and not a PCB issue. This is very odd to me. Can anyone see anything wrong with my setup? It's pretty rare, but it happens and it's always after people add the external components(LED, POT, SWITCH). My fix so far has been to add an external 1k pullup, but it shouldn't be happening.
No other pins have had any issue at all. I'm thinking I could use an external pulldown resistor to make the pin active high, but I'm thinking the problem ones will waste some power when the fire switch is depressed. Sleep mode is very important to me, or I would just use another pin.
I've used a similar setup to this with different AVR MCUs and haven't had an issue like this before. Any help is greatly appreciated.