# ESP32 Hacking Tasks **Last Updated:** 2026-02-04 ## Current Sprint: v0.2 - Remote Management ### P0 - Critical - [x] Firmware: UDP command listener (port 5501) - [x] Firmware: LED status indicator (GPIO2) - [x] Firmware: NVS config persistence (rate, tx_power) - [~] Build and flash firmware to device ### P1 - Important - [x] Firmware: REBOOT, IDENTIFY, STATUS commands - [x] Firmware: RATE command (10-100 Hz, restarts ping) - [x] Firmware: POWER command (2-20 dBm) - [x] Firmware: Refactor ping to support restart - [x] Pi-side: `esp-cmd` CLI tool - [ ] Update CHEATSHEET.md with esp-cmd usage ### P2 - Normal - [ ] Document esp-cmd in USAGE.md - [ ] Add Kconfig CSI_CMD_PORT option ### P3 - Low - [ ] Document esp-crab dual-antenna capabilities - [ ] Document esp-radar console features ## Completed: v0.1 - Documentation - [x] Copy firmware sources to project - [x] Document current firmware and settings - [x] Document build & flash workflow - [x] Create .gitignore for build artifacts - [x] Test building firmware from this repo - [x] Document CSI config options - [x] Compare csi_recv vs csi_recv_router differences ## Notes - Build confirmed working on ESP-IDF v5.5.2 (aarch64/Pi 5) - v0.2 firmware adds ~1.5 KB heap + 6 KB stack usage - NVS namespace: `csi_config` (keys: `send_rate`, `tx_power`) - LED uses GPIO2 (built-in on most ESP32 dev boards) - Command port default: 5501 (configurable via menuconfig)