TODO: the include fixes can be probably refactored by including the
correct zephyr directories, as include/zephyr/posix/pthread.h should
already bringing in those header files.
TG-553
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
A proper baseband reset is now issued at each startup. Now OpenRTX check
for SA868 responsiveness before proceeding with radio initialization,
eliminating unstable behaviour at boot.
TG-553
Enabled AT+TURBO command on SA868 that switches the baud rate of the
serial communication from 9600 to 115200 to get a more responsive
baseband. Bumped up the required baseband firmware version to
v1.1.0.r20.
TG-553
Add support for initializing SA868 and querying its firmware version,
created a new instance of the AT1846S class that leverages the SA8x8
serial connection as an i2c implementation.
Rx works! In the sense that the RSSI bar behaves as expected, still no
audio.
This commit was contributed by edgetriggered.
TG-553
Begin implementing PMU, now successfully read and write registers, need
to implement button functionality, battery voltage readout, charge
detection etc.
TG-553
Zephyr already provides button support based on gpios. We are mapping
Zephyr keycodes to OpenRTX therefore future targets will only need to
configure their devicetrees to have button support.
Rotary encoder readout leverages the hardware pulse counter. PTT in
this device is also bound to KEY_ESC, that matched the behaviour
observed in many commercial radios.
TG-553
Rewritten the conversion law from ADC measurement in mV and normalized
0-255 output, adding a linearization if the pseudo-logarithmic output
curve of the potentiometer.
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
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.