Java software radio based on FUNcube Dongle
For those who don't already know.. I'm part of the FUNcube satellite software team, and this is a port of our original telemetry decoder logic, including software-defined radio techniques for demodulating raw IQ input from a FUNcube Dongle (or other IQ receiver) to baseband bits, then the decoding of AO-40 data packets with error correction bits, courtesy of James Miller and Phil Karn's original C code, as used in the official Dashboard software.
It's all very experimental.. and unofficial.
Phil.
Time to clean up my act :)
- done: Break up jsdr.java, introduce some interfaces for:
- Configuration I/O
- Audio I/O
- Logging
- UI setup (menus, hot keys)
- done: Introduce dynamic config (menu/dialogs) for audio input.
- done(ish): Improve UI design through use of menus + put hotkey list in a help popup (hotkeys prb, dead)
- plan change: Remove unused audio I/O from FCD.java, add other FCD controls.
- eventually abandoned direct tuning of FCD, now calling out to fcdctl
- done: Waterfall display (in recovered space from hotkey list)!
- todo: Break up FUNcubeBPSKdemod.java, display/debug & actual demod
- todo: Move auto-tuning into a separate module (cf: Linux decoder)
In the process of poking about for inspiration and performance improvements, I came across a couple of other pure Java SDR projects, which are both much more mature than this - do please take a look at:
- Denny Sheirer's sdrtrunk
- Dennis Mantz's RF Analyzer for Android
I am now indebted to these folks for going before me and learning how to code for Java such that it's usable for DSP - thanks y'all!