HFSDR: host software, firmware, and hardware design for the HFSDR USB device.
Portable Mode (not connected to a PC)
- Press the Rotary Encoder to
- Enable/ Disable FM Audio Out mode (on disabled, it plays a constant tone)
- Cycle through different LED modes
Connected to a PC
- Go to the web ui
- Connect & Pair a device
- Set the frequency & gain
- Pair the device again
- Waterfall of the wireless world should start. If it doesn't look like this, unplug the device and try again
- User manual (slides): HFSDR User Manual
- Lain Themed Web UI lain-sdr-ui
- Host testing (Python probe, GNU Radio
.grcexamples, drivers, protocol): docs/host-guide.md
- USB / stream flaky: Unplug the board or reset it a few times. The host stack sometimes needs a power cycle before enumeration, WinUSB binding, or streaming stabilizes.
- Using with GNURadio/ Python Scripting: See the driver and probe sections in docs/host-guide.md.
- Reset: Do not hold the reset button for too long
| Path | Contents |
|---|---|
ch32v305/ |
Firmware (CH32V305). Build, flash, toolchain: ch32v305/README.md. |
client-sw/ |
Host Python (hfsdr_probe, PyUSB helpers), GNU Radio blocks and examples (gr-hfsdr-lib, .grc). |
docs/ |
host-guide.md — primary host-side documentation. |
hardware/ |
KiCad project and related hardware files. (Will be published in a while) |
scripts/ |
Helper scripts (e.g. udev 99-hfsdr.rules, Windows USB checks). |
ui/ |
WebUSB Web UI (Svelte/Vite). Deployed build: homepage in ui/package.json. |
- rhgndf - hard carry schematic & everything inside actually
- Hackin7 - Art, PCB rough layout & routing & some embedded
- Hack & Roll Cursor Credits + Codex - allow us to do this while being overseas/ having full time jobs
- https://github.com/ttrftech/CentSDR - Useful reference
