Commit Graph

785 Commits

Author SHA1 Message Date
Jared Boone e85503cd81 Nascent support for OOK TPMS transponders.
Apparently, Subaru and GMC. No CRC or other validation, no attempt to interpret packet contents yet.
2016-04-11 11:53:17 -07:00
Jared Boone dc16aa478f OOK slicer, clock recovery classes. 2016-04-11 11:50:03 -07:00
Jared Boone 5558ca60d7 Enlarge capture buffers -- inter-core FIFO, SDC 2016-04-11 11:00:47 -07:00
Jared Boone 743dc9f542 Rough implementation of capture mode 2016-04-11 10:59:55 -07:00
Jared Boone 9eefd56410 StreamInput: notify other core every fourth of FIFO written. 2016-04-11 10:20:19 -07:00
Jared Boone a5c2143ca8 Signal M0 when stream FIFO has another "chunk". 2016-04-11 10:20:19 -07:00
Jared Boone 0d8971cd7d Use size of provided buffer for stream write. 2016-04-11 10:20:19 -07:00
Jared Boone 56e448d355 Track StreamInput bytes written 2016-04-11 10:20:19 -07:00
Jared Boone f94938db8e De-template FIFO. 2016-04-11 10:20:19 -07:00
Jared Boone 59f1a32566 Semi-naive audio recording to SD card. 2016-04-11 10:20:19 -07:00
Jared Boone c01f2d82e1 Move TPMS taps to dsp_fir_taps.hpp.
Will soon use in proc_record.cpp.
2016-04-11 10:18:31 -07:00
Jared Boone 4ac2c540c9 Disable SDC "nice waiting" for performance.
Quick test indicates 4.5% better average write performance. No change in reads.
2016-04-10 17:24:28 -07:00
Jared Boone b35a8c4501 Add TPMS signal_type. 2016-04-06 17:04:40 -07:00
Jared Boone bf348cf30a Move message handling loops to MessageQueue. 2016-02-27 21:07:11 -08:00
Jared Boone 6101ca36cd Use unique_ptr for baseband_buffer. 2016-02-23 20:21:32 -08:00
Jared Boone 3493b7d1b7 Hide BasebandThread::baseband_processor. 2016-02-23 19:56:55 -08:00
Jared Boone a1b9f4aa1b Simplify, generalize, share int16_t taps copy function.
Also prevents compiler loop unrolling in non-critical code, for code size improvement.
2016-02-23 15:04:20 -08:00
Jared Boone 9c11fdf80c Explicit std::function nullptr checks.
Eliminates std::function check which tries to "_ZSt25__throw_bad_function_callv", along with 816 bytes of extra code, including some locale/wlocale/moneypunct nonsense.
2016-02-23 13:30:41 -08:00
Jared Boone 0c29308eb9 Fix FM squelch.
Forgot to recalibrate when adjusting normalization of float/audio signal path.
2016-02-16 11:32:38 -08:00
Jared Boone ef86848139 Change baseband floats to normalize at +/-1.0. 2016-02-14 12:38:50 -08:00
Jared Boone a5ed3b20b4 Audio compressor makeup gain value was inverted. Oops. 2016-02-14 12:17:04 -08:00
Jared Boone 1cdeb1ca4e Use audio compressor in AM/SSB receiver mode. 2016-02-13 11:19:32 -08:00
Jared Boone 9f4c8929ac Audio compressor implementation. 2016-02-13 11:19:07 -08:00
Jared Boone b0e76191d7 Simplify some silly math. 2016-02-10 11:23:41 -08:00
Jared Boone d125a5c662 Remove "K" parameter from FIFO template. 2016-02-10 10:41:06 -08:00
Jared Boone 096e961c67 Remove ChibiOS registry, thread names.
Only useful for debugging, but even then not very visible or useful. Gained 256 bytes of code RAM.
2016-02-09 11:36:38 -08:00
Jared Boone ae93d8ee58 Simplify RSSI/BB DMA, extract to ThreadWait class.
Also saved 688 bytes of code.
2016-02-09 10:41:19 -08:00
Jared Boone aae1a953fc Init matched filter output variable. 2016-02-06 16:24:14 -08:00
Jared Boone ac2320f0c5 Limit scope of some function variables. 2016-02-06 16:23:55 -08:00
furrtek ba94ce55ef Loadmodule emergency fix 2016-02-06 23:19:28 +01:00
Jared Boone 9430c94dec Move I2S management to application side. 2016-02-05 15:25:08 -08:00
Jared Boone cefab197da Add virtual destructor for ThreadBase.
Oops!
2016-02-05 10:44:27 -08:00
furrtek c81ba5be8e "At least it builds, now" 2016-02-05 17:40:14 +01:00
furrtek 8009a9b543 Merge remote-tracking branch 'upstream/master'
Conflicts:
	firmware/application/Makefile
	firmware/application/analog_audio_app.cpp
	firmware/application/analog_audio_app.hpp
	firmware/application/event.cpp
	firmware/application/irq_ipc.hpp
	firmware/application/portapack.hpp
	firmware/application/receiver_model.cpp
	firmware/application/receiver_model.hpp
	firmware/application/recent_entries.cpp
	firmware/application/string_format.hpp
	firmware/application/ui_debug.cpp
	firmware/application/ui_debug.hpp
	firmware/application/ui_menu.cpp
	firmware/application/ui_navigation.cpp
	firmware/application/ui_navigation.hpp
	firmware/application/ui_receiver.cpp
	firmware/application/ui_receiver.hpp
	firmware/application/ui_sd_card_status_view.cpp
	firmware/application/ui_sd_card_status_view.hpp
	firmware/application/ui_setup.cpp
	firmware/application/ui_setup.hpp
	firmware/application/ui_spectrum.hpp
	firmware/baseband-tx/dsp_fir_taps.cpp
	firmware/baseband-tx/dsp_fir_taps.hpp
	firmware/baseband-tx/irq_ipc_m4.cpp
	firmware/baseband-tx/irq_ipc_m4.hpp
	firmware/baseband-tx/proc_audiotx.cpp
	firmware/baseband/Makefile
	firmware/baseband/audio_output.cpp
	firmware/baseband/audio_output.hpp
	firmware/baseband/block_decimator.hpp
	firmware/baseband/dsp_decimate.cpp
	firmware/baseband/dsp_decimate.hpp
	firmware/baseband/dsp_demodulate.cpp
	firmware/baseband/dsp_demodulate.hpp
	firmware/baseband/dsp_fir_taps.cpp
	firmware/baseband/irq_ipc_m4.cpp
	firmware/baseband/irq_ipc_m4.hpp
	firmware/baseband/proc_am_audio.cpp
	firmware/baseband/proc_am_audio.hpp
	firmware/baseband/proc_nfm_audio.cpp
	firmware/baseband/proc_nfm_audio.hpp
	firmware/baseband/proc_wfm_audio.cpp
	firmware/baseband/proc_wfm_audio.hpp
	firmware/baseband/spectrum_collector.hpp
	firmware/common/dsp_fir_taps.cpp
	firmware/common/dsp_fir_taps.hpp
	firmware/common/event.hpp
	firmware/common/message.hpp
	firmware/common/ui_painter.cpp
	firmware/common/ui_painter.hpp
2016-02-04 11:35:55 +01:00
furrtek 6e496e2b26 Merge fixing, commit to catch up on recent files 2016-02-04 10:27:53 +01:00
Jared Boone 20137db8d0 Move code into .cpp for tiny code size improvement. 2016-02-03 22:47:44 -08:00
Jared Boone af8c9609a8 Little code size tweak using std::move in constructors. 2016-02-03 22:47:22 -08:00
Jared Boone cff314cbc8 Convince compiler to not inline member constructors. 2016-02-03 19:59:41 -08:00
Jared Boone ceef8d32d3 Use more accurate arctan for NBFM demodulation. 2016-02-02 16:15:14 -08:00
Jared Boone ab2c5b256f Reinstate and slightly tweak NBFM squelch. 2016-02-02 16:08:18 -08:00
furrtek 44638e504b SYNC 2016-01-31 09:34:24 +01:00
Jared Boone faf0fd6b91 Remove some spurious comments. 2016-01-30 21:11:59 -08:00
Jared Boone e778be6472 Selection of AM/SSB from application side. 2016-01-30 18:02:28 -08:00
Jared Boone f2dff16820 Use complex channel filter taps for AM/SSB. 2016-01-30 17:30:54 -08:00
Jared Boone ad4d7a2e8a Add SSB demodulator, switch between AM and SSB. 2016-01-30 17:30:03 -08:00
Jared Boone 1915ff980f Add AM processor decim_2. 2016-01-30 17:28:11 -08:00
Jared Boone b029bacd8c Remove channel decimation from AMConfigureMessage. 2016-01-30 17:21:48 -08:00
Jared Boone 220b7b0a6a Add SSB demodulator. 2016-01-29 22:27:18 -08:00
Jared Boone a558565886 Further template BlockDecimator by element type, use for audio buffer.
Appropriating for use as a buffer accumulator that will save up enough audio samples to put into an audio DMA buffer.
2016-01-29 19:25:08 -08:00
Jared Boone aead1d8798 Change NBFM audio fs->24k, AM ->12k.
Send channel decimation factor from application to baseband.
2016-01-29 19:23:30 -08:00