PCB Design for Cat Deterrent


I’m blocked again because there are no available ACUs, so I can’t continue routing or run more checks.
What I completed this session:
  • Reduced airwires from 33 to 20 at the last check.
  • Routed more VBUS_5V, 3V3_LOGIC, PUMP_GATE, PIR_OUT, LED_STAT, and MOSI-related connections.
  • Removed DRC-reported overlapping copper fragments so the board is not left with known shorting trace pieces.
What remains:
  • Finish blocked dense nets: RESET, PB1/MISO, PB2/SCK, LED anode, some 3.3 V/passive branches, and ground.
  • Re-run DRC/airwire checks.
  • Likely adjust placement slightly around the ISP/ATtiny/passive cluster if those routes remain blocked.
Finish up quickly fast as you can no delay
I’m blocked: there are no available ACUs, so I can’t execute more routing or cleanup right now.
What I completed:
  • Rechecked the current layout/routing state.
  • Tried direct routing on the tight ATtiny85 ↔ ISP area.
  • Re-ran placement optimization to open routing space around J4/ISP, U1, reset parts, and nearby passives.
  • Final check after that showed the board is still not complete: 28 airwires, 12 dangling trace warnings, and 8 overlapping-copper errors remain.
What remains:
  • Delete or repair the overlapping copper first.
  • Finish routing the dense ISP/reset/pot/keep-alive nets.
  • Finish ground and remaining 3.3 V / 5 V branches.
  • Run final airwire/DRC checks before manufacturing export.
The layout is not ready for fabrication yet; once ACUs are available, the fastest path is copper cleanup first, then finish the remaining routes.
Locate copper errors
List remaining airwires
Fast routing order
Check placement nudges

Board Bring-Up Plan — Cat Deterrent Sprayer
Prerequisites
  • Equipment: multimeter, oscilloscope, current-limited 5 V bench supply, AVR ISP programmer, USB power bank intended for final use.
  • Firmware: see the Firmware Starter project file.
  • Safety: start with pump disconnected; use a current limit before first power-up. The pump rail can draw up to the design assumption of 1.5 A peak.
1. Visual Inspection
  • Check U1 ATtiny85 orientation.
  • Check U2 MCP1700 orientation.
  • Check Q1 AO3400A orientation.
  • Check D1 flyback orientation: cathode to VBUS_5V / pump positive, anode to PUMP_SW / MOSFET drain.
  • Check polarized C6 orientation if using electrolytic/polymer footprint.
  • Verify optional DNP parts Q2, R5, D2, and F1 are populated only if intended. If F1 is DNP, bridge or populate an appropriate series link so VBUS_5V is powered.
2. Power Rail Verification

Table


RailSourceExpected VoltageToleranceMeasure AtCurrent LimitPass Criteria
VBUS_IN_RAWJ1 pin 15.0 Vsupply dependentJ1 / F1 P1100 mA initial, then higher for pumpNo short to GND
VBUS_5VF1 P25.0 V minus protection dropsupply dependentTP1100 mA initialPresent after F1/link
3V3_LOGICU2 VO3.3 V+/-5% for bring-upTP2<50 mA expected without pump3.135 V to 3.465 V
GNDJ1 pin 20 VreferenceTP3n/aCommon return continuous
Procedure:
  1. With no power, measure resistance from VBUS_5V to GND and 3V3_LOGIC to GND.
  2. Power J1 from a current-limited 5.0 V bench supply with pump disconnected.
  3. Confirm TP1 is near 5 V and TP2 is near 3.3 V.
  4. Check for hot parts or excessive current before connecting pump.
3. Critical Signal Verification

Table


SignalNetExpected StateMeasure AtNotes
ResetRESETHigh near 3.3 V idleU1 pin 1 or J4 RSTR3 pulls up; C7 filters
PIR outputPIR_OUTLow idle, high on motionTP4Depends on AM312 module behavior
Pump gatePUMP_GATELow at reset/idleTP5R2 pulls gate low
Pump switch nodePUMP_SWNear 5 V off, near 0 V onTP6With pump connected
Keep-alive gateKA_EN_ISP_SCKLow unless firmware pulsesQ2 gateDNP branch by default
Procedure:
  1. Verify RESET stays high during idle.
  2. Verify TP5 is low after reset and during ISP programming.
  3. Force PIR_OUT high with the sensor or a safe 3.3 V jumper and confirm firmware response.
4. Connector and Interface Tests

Table


ConnectorPinsTest Method
J1 power inputP1=VBUS_IN_RAW, P2=GNDContinuity and polarity check before power
J2 pumpP1=VBUS_5V, P2=PUMP_SWVerify diode polarity and MOSFET switching before pump install
J3 PIRPin_1=3V3_LOGIC, Pin_2=PIR_OUT, Pin_3=GNDVerify purchased AM312 module pinout before plugging in
J4 AVR ISPVCC, GND, MOSI, MISO, SCK, RSTContinuity to U1 pins and programmer target detection
5. Programming and Debug Interface

Table


InterfaceSignalsConnectorTool
AVR ISPMOSI/PB0, MISO/PB1, SCK/PB2, RESET/PB5, VCC, GNDJ4USBasp or AVR ISP
Procedure:
  1. Power board from current-limited 5 V input or programmer VCC if supported.
  2. Connect ISP to J4.
  3. Read ATtiny85 device signature.
  4. Flash starter firmware.
  5. Confirm startup LED blink.
6. Functional Validation

Table


TestComponentsInputExpected OutputPass Criteria
LEDU1, R4, LED1Firmware startupLED blinksVisible blink, no excess current
PIR inputJ3, U1Motion or logic-high testFirmware sees PIR_OUTSpray command only after trigger
Pump gateU1, R1, R2, Q1Firmware spray commandTP5 rises to about 3.3 VGate returns low after burst
Pump switchQ1, D1, J2, C5/C6Pump connectedPUMP_SW pulls low while onNo MCU reset or rail collapse
Keep-alive optionalQ2, R5ENABLE_KEEPALIVE firmware truePulsed load currentOnly if selected power bank sleeps
7. Expected Measurements Reference

Table


MeasurementLocationExpected ValueInstrument
5 V inputTP1 to TP3about 5.0 VDMM
3.3 V logicTP2 to TP3about 3.3 VDMM/scope
Pump gate highTP5 to TP3about 3.3 VScope
Pump switch onTP6 to TP3<0.2 V at <=1.5 AScope
Pump switch turn-off clampTP6 to TP3about VBUS + Schottky drop, far below 30 VScope
Power Bank Idle Test
  1. Run board armed but idle longer than the selected bank's normal sleep timeout.
  2. If power shuts off, either use an always-on bank or populate/tune Q2/R5 keep-alive.
  3. Confirm keep-alive pulse resistor temperature and average current before enclosure use.
Pass/Fail Summary

Table


Test SectionResultNotes
Visual Inspection[ ] Pass / [ ] Fail
Power Rails[ ] Pass / [ ] Fail
Critical Signals[ ] Pass / [ ] Fail
Connectors[ ] Pass / [ ] Fail
Programming[ ] Pass / [ ] Fail
Functional Validation[ ] Pass / [ ] Fail
Board Status: [ ] Ready for enclosure test / [ ] Requires rework
  • Prerequisites

  • 1. Visual Inspection

  • 2. Power Rail Verification

  • 3. Critical Signal Verification

  • 4. Connector and Interface Tests

  • 5. Programming and Debug Interface

  • 6. Functional Validation

  • 7. Expected Measurements Reference

  • Power Bank Idle Test

  • Pass/Fail Summary