Update meson and cmake config to only include openrtx and platform paths.
Update files to use <..> for system and external libraries, ".." for
project files and new relative paths as necessary.
Did not attempt to fix areas where includes that should be <..> were
previously ".."
Inspired by #96, closes#359.
Acked-by: Silvano Seva <silseva@fastwebnet.it>
Declared the "mod17CalData" variable inside linux platform.c to make the symbol available
to the linker when building the linux emulator with the Module17 UI.
Replaced KEY_F7 and KEY_F8 with KEY_VOLUP and KEY_VOLDOWN.
Remapped the T-TWR Plus volume up and down keys to those, fixing a bug
in the pmu key detection where the wrong active edge was selected.
Adapt soft volume code for the UV3x0 to control code in the T-TWR Plus
by acting on the AT1846s Rx gain.
For target T-TWR Plus bound long press of KEY_VOLDOWN to macro menu open.
Unbound KNOB_LEFT and KNOB_RIGHT to squelch control and bound
instead KEY_VOLUP and KEY_VOLDOWN.
TG-553
Given that each radio driver loads its calibration data when initializing
and that the radio driver is strongly platform-specific, there is no strong
need for an intermediate redirection layer through the platform API.
Changed the hwInfo variable to static const in all the platformw where
the information are not loaded from NVM. Doing so puts the variable in
.rodata section and spares a tiny amount of RAM and FLASH.
Added plotting function to graphics library which is native C++, so
refactored the graphics source file to allow that, consequently adapted
the hwconfig header files to be included also in C++ sources.
Propagated compile flags also to C++ sources, including asan what was
previously disabled for C++ compilation units.
TG-81
Added implementation of the M17 4FSK demodulator, including clock
recovery, phase detection, and quantization algorithms.
A testsuite is also included to do regression testing against a
reference baseband pre-generated and the corresponding reference
bitstream.
A 1% BER is still present due to a fault likely in the RRC filtering,
since the eye diagram of the filtered stream is bad.
TG-81