Silvano Seva
dd46a48cd1
Improved conversion law in MD-3x0 and MD-UV3x0 platform_getVolumeLevel().
...
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>
2023-09-08 16:02:53 +02:00
Silvano Seva
344aa46da7
Audio devices table for MDx
2023-08-30 18:04:25 +02:00
k5jae
c1a9db22b7
Made Brightness setting optional based on HW capabilities
2023-08-16 20:46:25 +02:00
Silvano Seva
4cd1fdfcf3
Moved gpio.h to peripherals
2023-07-21 19:27:14 +02:00
Silvano Seva
dcafd07085
Created "peripherals" include folder for non-mandatory drivers, moved rtc.h to peripherals folder.
2023-07-21 08:23:41 +02:00
Silvano Seva
009930f914
Moved get/set of current time to platform interface API
2023-07-21 07:58:29 +02:00
Silvano Seva
8019b29947
Moved the setBacklightLevel() API function from platform.h to display.h
2023-07-14 12:26:47 +02:00
Silvano Seva
313e9615a6
Removed platform_getCalibrationData() function because of limited usefulness.
...
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.
2023-07-14 12:26:39 +02:00
Silvano Seva
933d291154
Made hwInfo struct const and statically initialized where dynamic loading is not needed.
...
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.
2023-07-13 08:49:25 +02:00
Silvano Seva
a89a7523cb
Updated year in copyright headers
2023-02-08 16:33:02 +01:00
vk7js
853db877e9
Link beep to volume knob appropriately.
2022-10-28 08:30:47 +02:00
vk7js
94424ce908
Adding beeps to MD380 platform.c.
2022-10-28 08:30:47 +02:00
Silvano Seva
e2137eae23
Implemented CRC of persistent data (settings and VFO state) in MDx devices
2022-08-11 17:02:04 +02:00
Silvano Seva
2fc89bf583
Renamed 'HAS_GPS' and 'HAS_RTC' to, respectively, 'GPS_PRESENT' and 'RTC_PRESENT'
2022-07-02 10:28:28 +02:00
Silvano Seva
316e588bc3
Updated copyright headers
2022-06-02 09:56:05 +02:00
Silvano Seva
fda0fed5e7
Moved constant specifying sample rate for M17 baseband decoding from hwconfig.h files to M17Demodulator class
2022-05-27 21:48:47 +02:00
Niccolò Izzo
2d8c696a09
Complete M17 demodulator implementation
...
Make quantization work also on DC offset signal
Add samples plot code
Fix bug in buffer wrap around
Fix oob memory access in M17 modulator
Update tests with DC offset signal
Switch to 48KHz sample rate for Module17 and MD380
Add DC biasing script
TG-81
2022-05-27 21:48:46 +02:00
Niccolò Izzo
f9c23452bc
Add plotting function to graphics library
...
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
2022-05-27 21:48:46 +02:00
Niccolò Izzo
ae26cca46f
Remove SPS
...
Now M17_SAPLES_PER_SYMBOL is computed dinamically from sample rate.
TG-81
2022-05-27 21:48:46 +02:00
Niccolò Izzo
3163dd49d7
Add M17 demodulator code and tests
...
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
2022-05-27 21:48:46 +02:00
Silvano Seva
624dca2b97
Renamed macro DISABLE_KEEP_ON to RUNNING_TESTSUITE
2022-03-05 09:09:25 +01:00
Silvano Seva
3776b30121
Automatically disabling the power keep switch when running testsuites, as those may never call platform_terminate()
2022-01-03 14:49:25 +01:00
Silvano Seva
4eb4e43cbe
Activated GPIO pull-up resistors on MD3x0 PTT lines, as it seems that RT3 radios lack a physical pull-up resistor on those GPIOs. See #52
2021-12-23 14:52:25 +01:00
Silvano Seva
036f74c69e
Removed call to rtc_terminate inside MDx platform_terminate, as this freezed RTC on radio power off
2021-11-12 22:46:11 +01:00
Silvano Seva
691b388228
Implemented load/save of settings and VFO configuration for MDx devices
2021-11-09 19:28:23 +01:00
Silvano Seva
9650ff5925
Removed macro disabling by default the USB virtual COM port, which is now permanently enabled.
2021-08-26 10:22:55 +02:00
Silvano Seva
a7acc3301b
Modified 'platform_getVbat' API: now it returns an uint16_t value containing the battery voltage in millivolt
2021-08-14 12:47:21 +02:00
Silvano Seva
8e0a5d1c0f
Made 'platform_getVolumeLevel' and 'platform_getMicLevel' API functions return a normalised 8 bit value ranging from 0 to 255 (TG-293 #closed)
2021-08-14 10:18:55 +02:00
Silvano Seva
b80ddc1145
Implemented reading of PTT status from external microphone on MD-3x0 and MD-UV3x0
2021-07-10 21:52:15 +02:00
Federico Amedeo Izzo
1f74c0abb7
Add `VCOM_ENABLED` define to disable VCOM that is currently broken
2021-06-06 10:13:51 +02:00
Federico Amedeo Izzo
c653535e68
Remove old band and limits defines, now replaced by hwInfo_t
2021-06-05 11:27:20 +02:00
Silvano Seva
c0ecf2e13f
Basic audio management module, controlling only speaker PA and microphone preamplifier. TG-61
2021-04-12 19:10:13 +02:00
Silvano Seva
7209414a2b
Fixed error in ADC conversion sequence in MD-3x0 platforms, improved behaviour of 'platform_pwrButtonStatus' in targets having the power switch on the volume knob.
2021-04-11 18:19:08 +02:00
Silvano Seva
4b30a66735
Added 'platform_pwrButtonStatus' API function, which returns the current status of the power button/knob. Implemented power on/off mechanism on MD-9600
2021-04-11 12:38:20 +02:00
Silvano Seva
56c598da7e
Created low-level driver for backlight level management
2021-04-10 14:12:15 +02:00
Silvano Seva
e157fc361d
Restructured ADC1_MDx code and extended its support also to MD-9600
2021-04-10 12:15:28 +02:00
Silvano Seva
a2578ba42d
Propagating change of the return value of platform_getChannelSelector
2021-04-03 09:28:27 +02:00
Silvano Seva
a5120ffddc
Radio driver for MD-UV3x0 targets
2021-03-20 11:51:35 +01:00
Silvano Seva
d69c237255
Fixed misspelled parameter of gpio_clearPin
2021-02-19 11:58:55 +01:00
Silvano Seva
af6c78542a
Added support for power gating gpio
2021-02-19 11:51:05 +01:00
Federico Amedeo Izzo
9255dfb969
Disable GPS functions for radios that don't support a GPS chip
2021-02-14 17:49:23 +01:00
Silvano Seva
9b9c521459
GPS driver for MD-3x0 targets
2021-02-04 09:57:43 +01:00
Silvano Seva
03d5184f86
Merged MD-380 and MD-390 targets into a new MD-3x0 one
2021-02-03 15:09:59 +01:00