Need some advice on this one, as I am stumped. Question is, why does this 85 reboot on PCB ?
I have this atmega85 (adafruit trinket 5v) ckt that works fine on breadboard but will not when I move it to a PCB. This was my 2nd go at it and I still have the same issue. The only issue is the wake pin.
Pin2 is configured as a input_pullup and the code uses this pin as interrupt ("wake") during sleep mode via pin state change. On my breadboard when I take pin2 to gnd the 85 comes out of sleep and resumes. However, on the PCB when I do the same thing the 85 reboots.
Notes: its 9v batt. A pFet feeds the Trinket, and the 1M/220uF is a timer, essentially cutting power after about 7min, if that cap is dumped out to gnd then it stays running (via switches on toy, etc). The pixel ring power on both sides (+ and gnd path) are controlled via p/n Fet pair, because if you don't do it this way and only pull +V from ring the ring still allows mA to flow. So in essence, pin3 is used to control power to the ring (pin 3 off when 85 goes to sleep, on when 85 wakes). I do it this way because this a AA batt powered toy, and it will go onto the shelf when kid is done playing with it, no on/off switches, hence to save batt power I do it this way, etc.
Also, using my basic DMM I cannot see any voltages dropping too low (batt or the +5v output), so the reboot appears to be inside the 85 itself. I thought perhaps the 85 was choking on the nFet gate charge when pin3 turns back on, but gates are just 11nC each, and I put a 100ohm in series with that and still same issue.
Board & schematic:
excuse the paper drawing, round two so I figured to trace out every wire on bboard and put it on paper, then build that on PCB, etc.
I have this atmega85 (adafruit trinket 5v) ckt that works fine on breadboard but will not when I move it to a PCB. This was my 2nd go at it and I still have the same issue. The only issue is the wake pin.
Pin2 is configured as a input_pullup and the code uses this pin as interrupt ("wake") during sleep mode via pin state change. On my breadboard when I take pin2 to gnd the 85 comes out of sleep and resumes. However, on the PCB when I do the same thing the 85 reboots.
Notes: its 9v batt. A pFet feeds the Trinket, and the 1M/220uF is a timer, essentially cutting power after about 7min, if that cap is dumped out to gnd then it stays running (via switches on toy, etc). The pixel ring power on both sides (+ and gnd path) are controlled via p/n Fet pair, because if you don't do it this way and only pull +V from ring the ring still allows mA to flow. So in essence, pin3 is used to control power to the ring (pin 3 off when 85 goes to sleep, on when 85 wakes). I do it this way because this a AA batt powered toy, and it will go onto the shelf when kid is done playing with it, no on/off switches, hence to save batt power I do it this way, etc.
Also, using my basic DMM I cannot see any voltages dropping too low (batt or the +5v output), so the reboot appears to be inside the 85 itself. I thought perhaps the 85 was choking on the nFet gate charge when pin3 turns back on, but gates are just 11nC each, and I put a 100ohm in series with that and still same issue.
Board & schematic:
excuse the paper drawing, round two so I figured to trace out every wire on bboard and put it on paper, then build that on PCB, etc.