feat(firmware): add experimental RTL-SDR USB-host module (Workstream J)
Self-contained ESP-IDF component (firmware/esp32p4-sensor-node/components/ rtlsdr_experimental/) exploring RTL2832U-over-USB-host on the ESP32-P4, ported from frontend/src/lib/sdr.ts's researched WebUSB protocol sequence (vendor commands, I2C-repeater tuner init) to the ESP-IDF USB Host Library. Implements: USB Host Library install/client lifecycle, RTL2832U/Terratec vendor-ID device matching, the demod+R820T init vendor-command sequence over control transfers, a pipelined bulk-IN read loop for raw IQ, and an inert-by-default upstream IQ-forwarding stub targeting a proposed separate binary endpoint (not the JSON telemetry shape — reasoning documented in the README) since no such backend endpoint exists yet. Off by default (RTLSDR_EXP_ENABLE Kconfig, default n). Unverified against real hardware and never compiled (no ESP-IDF toolchain in this environment) — marked as such in every source file and in a dedicated "Workstream J" section of firmware/esp32p4-sensor-node/README.md, which this commit also creates since Workstream I's core skeleton (owned by a separate, unmerged worktree) hadn't created one yet. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
# rtlsdr_experimental — EXPERIMENTAL, UNVERIFIED AGAINST REAL HARDWARE.
|
||||
# See include/rtlsdr_experimental.h and ../../README.md ("Workstream J")
|
||||
# for the full honesty write-up.
|
||||
#
|
||||
# This is a self-contained ESP-IDF component so it can be dropped into
|
||||
# Workstream I's core firmware project (firmware/esp32p4-sensor-node/) via
|
||||
# EXTRA_COMPONENT_DIRS, or by copying this directory under that project's
|
||||
# own components/, without editing any file that workstream owns.
|
||||
#
|
||||
# `usb` = ESP-IDF's USB Host Library (usb_host.h) — native to ESP32-P4's
|
||||
# USB-OTG host controller. `esp_http_client` = the upstream IQ-forwarding
|
||||
# stub's transport (see rtlsdr_experimental.c "Upstream IQ forwarding").
|
||||
idf_component_register(
|
||||
SRCS "rtlsdr_experimental.c"
|
||||
INCLUDE_DIRS "include"
|
||||
REQUIRES usb esp_http_client
|
||||
)
|
||||
Reference in New Issue
Block a user