diff --git a/backlog/config.yml b/backlog/config.yml new file mode 100644 index 0000000..51c7203 --- /dev/null +++ b/backlog/config.yml @@ -0,0 +1,16 @@ +project_name: "ZK-Glasses" +default_status: "To Do" +statuses: ["To Do", "In Progress", "Done"] +labels: [] +milestones: [] +date_format: yyyy-mm-dd +max_column_width: 20 +default_editor: "nvim" +auto_open_browser: true +default_port: 6420 +remote_operations: true +auto_commit: false +bypass_git_hooks: false +check_active_branches: true +active_branch_days: 30 +task_prefix: "task" diff --git a/backlog/tasks/task-1 - Initial-hardware-design-—-OpenSCAD-models-firmware-schematic.md b/backlog/tasks/task-1 - Initial-hardware-design-—-OpenSCAD-models-firmware-schematic.md new file mode 100644 index 0000000..6d2df73 --- /dev/null +++ b/backlog/tasks/task-1 - Initial-hardware-design-—-OpenSCAD-models-firmware-schematic.md @@ -0,0 +1,16 @@ +--- +id: TASK-1 +title: Initial hardware design — OpenSCAD models + firmware + schematic +status: Done +assignee: [] +created_date: '2026-02-22 00:43' +labels: [] +dependencies: [] +priority: high +--- + +## Description + + +Created parametric OpenSCAD models (stealth integrated frame + snap-on clip), ATtiny85 PWM firmware, SVG circuit schematic, and rendered 10 preview images. Stealth design uses flush-mounted SMD IR LEDs behind IR-pass filter strips. + diff --git a/backlog/tasks/task-2 - Breadboard-proof-of-concept-—-test-IR-LEDs-vs-cameras.md b/backlog/tasks/task-2 - Breadboard-proof-of-concept-—-test-IR-LEDs-vs-cameras.md new file mode 100644 index 0000000..b704aa7 --- /dev/null +++ b/backlog/tasks/task-2 - Breadboard-proof-of-concept-—-test-IR-LEDs-vs-cameras.md @@ -0,0 +1,25 @@ +--- +id: TASK-2 +title: Breadboard proof of concept — test IR LEDs vs cameras +status: To Do +assignee: [] +created_date: '2026-02-22 00:44' +labels: [] +dependencies: [] +priority: high +--- + +## Description + + +Order components (SMD IR LEDs, IRLML6344 MOSFETs, ATtiny85, TP4056 charger, LiPo battery) and breadboard a minimal circuit with 4 LEDs. Test against iPhone, Android, laptop webcam, and USB security camera to verify bloom/whiteout effect at 940nm. Measure effective range and daylight performance. + + +## Acceptance Criteria + +- [ ] #1 Components ordered from LCSC/Mouser +- [ ] #2 4-LED breadboard circuit working +- [ ] #3 Tested against 3+ camera types +- [ ] #4 Effective range documented +- [ ] #5 Daylight vs indoor performance compared + diff --git a/backlog/tasks/task-3 - 3D-print-prototype-frame-—-stealth-integrated-design.md b/backlog/tasks/task-3 - 3D-print-prototype-frame-—-stealth-integrated-design.md new file mode 100644 index 0000000..5cb3391 --- /dev/null +++ b/backlog/tasks/task-3 - 3D-print-prototype-frame-—-stealth-integrated-design.md @@ -0,0 +1,25 @@ +--- +id: TASK-3 +title: 3D print prototype frame — stealth integrated design +status: To Do +assignee: [] +created_date: '2026-02-22 00:44' +labels: [] +dependencies: [] +priority: medium +--- + +## Description + + +Print the integrated frame from integrated_frame.scad in PETG matte black. Verify LED channel dimensions, filter slot fit, temple wire routing, battery cavity, and hinge mechanism. Test-fit IR filter strip (cut from Wratten 87C gel sheet). Adjust parametric dimensions as needed. + + +## Acceptance Criteria + +- [ ] #1 Frame printed in PETG, no warping +- [ ] #2 IR filter strip press-fits into brow bar slot +- [ ] #3 Flex PCB strip slides into channel cleanly +- [ ] #4 Battery fits in temple tip cavity +- [ ] #5 Charge port accessible from underside + diff --git a/backlog/tasks/task-4 - Flex-PCB-strip-design-and-fabrication.md b/backlog/tasks/task-4 - Flex-PCB-strip-design-and-fabrication.md new file mode 100644 index 0000000..e0315a9 --- /dev/null +++ b/backlog/tasks/task-4 - Flex-PCB-strip-design-and-fabrication.md @@ -0,0 +1,25 @@ +--- +id: TASK-4 +title: Flex PCB strip design and fabrication +status: To Do +assignee: [] +created_date: '2026-02-22 00:44' +labels: [] +dependencies: [] +priority: medium +--- + +## Description + + +Design a thin flex PCB strip (4mm wide, ~100mm long) with 8x SMD IR LED footprints (PLCC-2/3528), current limiting resistors, and a connector tail. Use KiCad for PCB layout. Order from JLCPCB flex PCB service. Solder SMD components. + + +## Acceptance Criteria + +- [ ] #1 KiCad PCB layout complete +- [ ] #2 Design rule check passes +- [ ] #3 Flex PCB ordered from JLCPCB +- [ ] #4 SMD LEDs and resistors soldered +- [ ] #5 Strip fits inside frame brow bar channel + diff --git a/backlog/tasks/task-5 - Flash-ATtiny85-firmware-and-full-system-integration.md b/backlog/tasks/task-5 - Flash-ATtiny85-firmware-and-full-system-integration.md new file mode 100644 index 0000000..2554230 --- /dev/null +++ b/backlog/tasks/task-5 - Flash-ATtiny85-firmware-and-full-system-integration.md @@ -0,0 +1,26 @@ +--- +id: TASK-5 +title: Flash ATtiny85 firmware and full system integration +status: To Do +assignee: [] +created_date: '2026-02-22 00:44' +labels: [] +dependencies: [] +priority: medium +--- + +## Description + + +Flash zk_glasses.ino onto ATtiny85 via USBasp programmer. Wire complete circuit: MCU → MOSFETs → flex PCB LED strips → battery → charger → switches. Assemble into printed frame. Test all 6 modes, brightness control, button response, battery life, and USB-C charging. + + +## Acceptance Criteria + +- [ ] #1 ATtiny85 flashed and running +- [ ] #2 All 6 LED modes working +- [ ] #3 Button short/long/double press working +- [ ] #4 Battery charges via USB-C +- [ ] #5 Status LED shows low battery warning +- [ ] #6 Full assembly fits in printed frame + diff --git a/backlog/tasks/task-6 - Camera-defeat-testing-and-optimization.md b/backlog/tasks/task-6 - Camera-defeat-testing-and-optimization.md new file mode 100644 index 0000000..5f72c68 --- /dev/null +++ b/backlog/tasks/task-6 - Camera-defeat-testing-and-optimization.md @@ -0,0 +1,25 @@ +--- +id: TASK-6 +title: Camera defeat testing and optimization +status: To Do +assignee: [] +created_date: '2026-02-22 00:44' +labels: [] +dependencies: [] +priority: low +--- + +## Description + + +Systematic testing against facial recognition systems. Test against OpenCV/dlib face detector, cloud FR APIs (AWS Rekognition, Google Vision). Measure at various distances (1-5m), lighting conditions (indoor, outdoor, night), and camera types (phone, webcam, CCTV, doorbell). Optimize LED angle, brightness, and pulse frequency for maximum disruption with minimum power draw. + + +## Acceptance Criteria + +- [ ] #1 Face detection fails at 2m+ indoor +- [ ] #2 Tested against 3+ FR algorithms +- [ ] #3 Optimal pulse frequency identified +- [ ] #4 Power vs effectiveness tradeoff documented +- [ ] #5 Limitations documented (daylight, high-end cameras) +