|
|
11 timmar sedan | |
|---|---|---|
| cmd/sdrd | 14 timmar sedan | |
| docs | 2 dagar sedan | |
| internal | 14 timmar sedan | |
| tools | 2 dagar sedan | |
| web | 11 timmar sedan | |
| .gitignore | 14 timmar sedan | |
| README.md | 14 timmar sedan | |
| TODO.md | 16 timmar sedan | |
| build-cuda-linux.sh | 2 dagar sedan | |
| build-cuda-windows.ps1 | 2 dagar sedan | |
| build-gpudemod-dll.ps1 | 2 dagar sedan | |
| build-sdrplay.ps1 | 1 dag sedan | |
| config.yaml | 3 dagar sedan | |
| go.mod | 4 dagar sedan | |
| go.sum | 4 dagar sedan | |
| start-sdr.ps1 | 4 dagar sedan | |
Go-based SDRplay RSP1b live spectrum + waterfall visualizer with event tracking, classifier, and demod/recording pipeline.
/api/gpuCore
go.mod)Optional (real device)
sdrplay_api.h + library)Optional (GPU)
nvcc for kernel build (Linux) or build-gpudemod-dll.ps1 (Windows)Windows build prerequisites (real device + GPU)
C:\msys64\mingw64\bin\gcc.exe / g++.exe) for CGO# From repo root
go run ./cmd/sdrd --mock
Open http://localhost:8080.
Edit config.yaml (autosave goes to config.autosave.yaml).
Common fields:
center_hz, sample_rate, fft_size, gain_db, tuner_bw_khzuse_gpu_fft, agc, dc_block, iq_balancedetector.* (e.g. threshold_db, cfar_mode, cfar_guard_hz, cfar_train_hz, min_duration_ms, hold_ms, ...)recorder.* (enable IQ/audio recording, output path, ring buffer, etc.)decoder.* (external decoder commands)CFAR modes: OFF, CA, OS, GOSCA, CASO
go build ./cmd/sdrd
.\sdrd.exe --mock
$env:CGO_CFLAGS='-IC:\Program Files\SDRplay\API\inc'
$env:CGO_LDFLAGS='-LC:\Program Files\SDRplay\API\x64 -lsdrplay_api'
go build -tags sdrplay ./cmd/sdrd
.\sdrd.exe -config config.yaml
powershell -ExecutionPolicy Bypass -File .\build-cuda-windows.ps1
powershell -ExecutionPolicy Bypass -File .\build-sdrplay.ps1
This path:
gpudemod_kernels.dll (MSVC/nvcc)sdrplay,cufftsdrd.exeNotes:
build-sdrplay.ps1 expects MinGW at C:\msys64\mingw64\binGPUMOD_DLL=C:\path\to\gpudemod_kernels.dllexport CGO_CFLAGS='-I/opt/sdrplay_api/include'
export CGO_LDFLAGS='-L/opt/sdrplay_api/lib -lsdrplay_api'
go build -tags sdrplay ./cmd/sdrd
./cmd/sdrd/sdrd -config config.yaml
./build-cuda-linux.sh
GET /api/configPOST /api/configPOST /api/sdr/settingsGET /api/gpuGET /api/signals → current live signalsGET /api/events?limit=&since= → recent eventsGET /api/recordingsGET /api/recordings/:id (meta.json)GET /api/recordings/:id/iqGET /api/recordings/:id/audioGET /api/recordings/:id/decode?mode=FT8|WSPR|DMR|D-STAR|FSK|PSKGET /api/demod?freq=...&bw=...&mode=...&sec=... → audio/wavWS /ws/audio?freq=...&bw=...&mode=... → live PCM audio streamPut external decoder binaries/scripts under tools/ and configure decoder.* in config.yaml.
Placeholders: {iq}, {audio}, {sr}.
See tools/README.md for examples.
go test ./...
sdrplay support not built → rebuild with -tags sdrplay.CGO_CFLAGS / CGO_LDFLAGS.gpudemod_kernels.dll / cudart64_13.dll next to sdrd.exe (Windows).--mock to run without hardware.