94 Commits

Author SHA1 Message Date
Jared Boone
c52de7abe6 Clean up baseband/RSSI streaming control.
Address hang-up of baseband and RSSI when switching modulation modes really fast.
2015-09-01 21:05:32 -07:00
Jared Boone
5d8c636f40 Halt M4 right after sending M0 the shutdown message.
Addresses issue #55.
2015-09-01 13:49:09 -07:00
Jared Boone
b13081696d Simplify MessageQueue pop() usage. 2015-08-27 14:35:17 -07:00
Jared Boone
d8b3b4cb6b Check queue empty only once when reading messages.
There was a second is_empty() call hidden in the pop() call, so the while(condition) was redundant.
2015-08-27 14:27:29 -07:00
Jared Boone
e751e10e45 Add wideband spectrum processor. 2015-08-27 13:57:31 -07:00
Jared Boone
c7907e948c Extract FSKProcessor into separate files. 2015-08-27 13:31:39 -07:00
Jared Boone
ffe829cf67 Extract WidebandFMAudio into separate files. 2015-08-27 13:19:34 -07:00
Jared Boone
7c5db55f8f Extract NarrowbandFMAudio into separate files. 2015-08-27 13:14:45 -07:00
Jared Boone
e246ea2c39 Extract NarrowbandAMAudio class into separate files. 2015-08-27 13:07:07 -07:00
Jared Boone
6bf61cbe88 Extract BasebandProcessor into separate files. 2015-08-27 11:11:08 -07:00
Jared Boone
04d05368c7 Push static variables and spectrum calc into BasebandProcessor. 2015-08-27 10:48:29 -07:00
Jared Boone
de0777f476 Extract FMSquelch into separate files. 2015-08-27 09:59:03 -07:00
Jared Boone
b904971ef2 Extract IIR filter configurations into separate file. 2015-08-27 09:58:37 -07:00
Jared Boone
c92bf12fbd Extract ChannelDecimator into separate files. 2015-08-27 09:49:14 -07:00
Jared Boone
3a96c04aa7 Implement, use configuration for FM demod deviation. 2015-08-21 09:19:08 -07:00
Jared Boone
fa275156ed Move FSKPacketMessage to stack. 2015-08-21 09:18:21 -07:00
Jared Boone
589cb47cc6 Move M4 shutdown() next to init(). 2015-08-20 20:40:46 -07:00
Jared Boone
672284080b Extract M4 IPC IRQ code into separate file. 2015-08-20 20:39:08 -07:00
Jared Boone
690c3c98db Add Shutdown message, plumbing to send and handle. 2015-08-20 18:03:49 -07:00
Jared Boone
15791e345d Make baseband event loop methods private. 2015-08-20 17:57:59 -07:00
Jared Boone
9742a058e9 Move event loop into dispatcher, provide a way to exit. 2015-08-20 17:56:19 -07:00
Jared Boone
4126f1ab1f Change IPC to exchange data, not pointers. 2015-08-20 13:13:12 -07:00
Jared Boone
a7226820d0 Hide implementation of MessageHandlerMap. 2015-08-14 17:31:23 -07:00
Jared Boone
66320c39d4 Restore missing halInit() call during M4 __late_init(). 2015-08-14 12:20:45 -07:00
Jared Boone
14ada9e132 Push channel filter data into BasebandProcessor. 2015-08-04 16:48:15 -07:00
Jared Boone
caef87fe90 Refactor IIRBiquadFilter to separate configuration structure. 2015-08-04 15:00:38 -07:00
Jared Boone
76df4f0369 Extract magnitude_squared to utility. 2015-08-04 14:08:15 -07:00
Jared Boone
de0c884b67 Remove test code. 2015-08-04 13:52:04 -07:00
Jared Boone
eea589bd98 Extract stats collectors into separate files. 2015-08-04 12:03:30 -07:00
Jared Boone
efaf13d2d1 Extract complex16_mag_squared_to_dbv_norm to utility. 2015-08-04 12:03:10 -07:00
Jared Boone
ae62405344 Simplify audio muting.
Zero out the audio buffer instead of muting the codec. The HPF (and other downstream signal processing) can continue running, not produce discontinuities from being effectively halted during mute.
2015-07-21 10:33:40 -07:00
Jared Boone
e51db769e6 Refactor to update audio stats when audio output is muted. 2015-07-20 10:21:01 -07:00
Jared Boone
665f54b410 Reorganize BasebandProcessor method/member visibility.
Also hide feed_audio_stats() inside fill_audio_buffer().
2015-07-20 09:41:56 -07:00
Jared Boone
d7cb2c5da4 Simple FM squelch. 2015-07-20 09:34:24 -07:00
Jared Boone
876a591a66 Add IIR execute_in_place() 2015-07-20 09:33:56 -07:00
Jared Boone
71990b380a Bind pass/stop band info to filter taps.
Created fir_taps_real<N> structure, with pass and stop normalized frequencies.
Removed unused filter taps.
2015-07-18 16:50:59 -07:00
Jared Boone
6f2cbd1ac5 Partial refactor of channel filter frequency code.
Move channel filter frequency determination to baseband side, where the filtering is determined and performed.
Add useful accessor methods to BlockDecimator.
2015-07-18 16:49:40 -07:00
Jared Boone
ffc50785b7 specan: cleared up terminology, accounted for decimation.
Channel spectrum decimation now accounted for when computing filter frequencies.
Renamed a bunch of variables relating to channel spectrum bandwidth and filter frequencies.
2015-07-18 16:48:19 -07:00
Jared Boone
98bd9c54e4 Rework how spectrum and filter bandwidth is represented to UI.
Issue #13.
2015-07-18 16:46:59 -07:00
Jared Boone
e571ca7f1c Change reference initializations errors in GCC 4.8
Resolves issue #12.
2015-07-17 12:07:38 -07:00
Jared Boone
92ba4d7fea Fix line endings.
Addresses #21.
2015-07-17 10:55:54 -07:00
Jared Boone
43d13ab47c Mute audio in FSK mode.
Addresses #17.
2015-07-17 10:05:54 -07:00
Jared Boone
7c9fc62f5e Move halt indication code to common place. 2015-07-08 16:28:57 -07:00
Jared Boone
dc6fee8370 Initial firmware commit. 2015-07-08 08:39:24 -07:00