admin and Claude Sonnet 4.6
29808e07a6
fix: camera — null-check sensor handle before set_vflip/set_hmirror
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 17:34:38 -07:00
admin and Claude Sonnet 4.6
99756bdbaf
feat: camera module — OV3660 init and 96x96 grayscale capture
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 17:33:10 -07:00
admin and Claude Sonnet 4.6
0a6470a096
feat: CV line-crossing entry/exit detection with tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 15:10:01 -07:00
admin and Claude Sonnet 4.6
655abc914b
fix: CV find_centroids — static fg_copy to prevent 9KB stack allocation
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:41:11 -07:00
admin and Claude Sonnet 4.6
b664753596
feat: CV blob detection and centroid tracking
...
Add BFS flood-fill blob extraction, centroid finding, and nearest-neighbour track matching/spawning inside cv_process. Add test verifying a new blob spawns a track.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:39:23 -07:00
admin and Claude Sonnet 4.6
136b22bc1b
fix: cv_init — replace memset with value-init to avoid UB on std::vector
...
Also fix stale path comment in test/test_cv/test_cv.cpp.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:33:12 -07:00
admin and Claude Sonnet 4.6
e6843584cf
feat: CV module — frame diff + threshold (blob tracking TODO)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:26:34 -07:00
admin and Claude Sonnet 4.6
7662fc4c25
fix: HMAC module — mbedTLS error handling, hex guard, test docs
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:24:48 -07:00
admin and Claude Sonnet 4.6
47f3f6afef
feat: HMAC-SHA256 signing module with native tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:20:24 -07:00
admin and Claude Sonnet 4.6
74bff0912b
fix: config_save_wifi — always write both credentials
...
Replace short-circuit boolean evaluation of putString return values with
separate size_t variables so both writes always execute regardless of
whether the first succeeds.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:05:26 -07:00
admin and Claude Sonnet 4.6
d5afd0bd87
feat: config module — NVS read/write via Preferences
...
Add config.h/config.cpp for DeviceConfig NVS persistence using Arduino
Preferences library. Add minimal main.cpp stub. Fix partition table
overlap (nvs 0x6000→0x5000, otadata 0xf000→0xe000) so firmware builds.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 14:02:28 -07:00
admin and Claude Sonnet 4.6
f4d9e1b2a5
fix: update platformio.ini — OTA partitions, NimBLE, PSRAM flags
...
- Switch board to m5stack-timer-cam (confirmed in pio boards)
- Pin platform to espressif32@6.6.0
- Replace huge_app.csv with custom partitions_8mb_ota.csv (8MB + OTA)
- Add -DCONFIG_BT_NIMBLE_ENABLED=1 and -DCONFIG_SPIRAM_USE_MALLOC=1
- Add h2zero/NimBLE-Arduino@^1.4.2 to lib_deps
- Raise CORE_DEBUG_LEVEL from 1 → 3
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-13 13:52:33 -07:00
admin
6c46ea26ab
chore: init PlatformIO project for TimerCamera-F
2026-04-13 13:31:38 -07:00
admin
46c0908798
chore: ignore .worktrees directory
2026-04-13 13:05:21 -07:00
admin
95d9c7ef4c
chore: initial commit — spec and implementation plan
2026-04-13 13:04:55 -07:00