Commit Graph

245 Commits

Author SHA1 Message Date
Silvano Seva f286245f4f Fixed USART ISR handler in MDx GPS driver to prevent it from exiting without clearing the interrupt flags when no thread is registered for wakeup (TG-271 #closed) 2021-08-13 17:01:32 +02:00
Silvano Seva 379b487f64 Added macro allowing to enable the SWD debugging interface on MDx devices (TG-272 #closed) 2021-08-12 19:46:41 +02:00
Silvano Seva eb474d6bee Driver for STM32F4 USART3, can be used as a debug serial interface on MD3x0 devices without GPS and is enabled by defining the macro MD3x0_ENABLE_DBG 2021-07-09 08:53:12 +02:00
Silvano Seva fdd50c114c Fixed wrong mic gain value in MD3x0 radio driver 2021-06-09 11:48:25 +02:00
Federico Amedeo Izzo 70a0eeaf29 Fix GD77 codeplug channel mode reading 2021-06-06 10:47:02 +02:00
Silvano Seva 96abae4bad Temporary workaround to fix compilation error with MD-9600 due to not yet defined GPIOs for audio control, still to be identified. 2021-06-05 21:43:10 +02:00
Silvano Seva 6995230d8f Extended 'mode' field in CPS data structure to 8 bits, to align its size to the one contained in rtxStatus_t. Modified code for channel data loading in NVM drivers to align it to the new opMode enum values. 2021-06-05 21:21:12 +02:00
Federico Amedeo Izzo 57b66652b7 Use channel knob to change frequency and navigate menus (TG-238) 2021-06-05 18:11:30 +02:00
Silvano Seva 35de41c505 Reduced printf verbosity of linux radio driver 2021-06-03 14:59:59 +02:00
Silvano Seva 66552be403 Added function to radio API allowing to fine tune the radio's VCXO polarisation voltage. Currently, this functionality is effective only on MD-3x0 devices. (TG-195 #ready-for-test) 2021-06-03 14:50:47 +02:00
Silvano Seva b29b24fdc0 Implemented RX tone squelch on MD-UV3x0 and GDx (TG-43) 2021-06-02 12:44:46 +02:00
Silvano Seva fdba408831 Improved registers documentation in HR_C5000 and HR_C6000 drivers 2021-05-29 08:20:12 +02:00
Silvano Seva 4d68f02ab4 Updated documetation for radio.h API, removed old baseband C source files. 2021-05-29 08:20:12 +02:00
Silvano Seva bbdfdd1068 Added support for MD-380 VHF devices. (TG-188) 2021-05-29 08:20:12 +02:00
Silvano Seva 2d517d5bf8 New radio driver for GDx. Renamed some entries in GDx calibration data structure 2021-05-29 08:20:12 +02:00
Silvano Seva 87d9b733e6 Fixed wrong bitmask in AT1846S::setRxAudioGain. Moved getBandFromFrequency function to a dedicated file, in common for all dual-band radio drivers. 2021-05-29 08:20:12 +02:00
Silvano Seva e7b48b14a5 Updated radio driver stub for linux platform 2021-05-29 08:20:12 +02:00
Silvano Seva 4a080d881a Finalised MD-UV3x0 radio driver, now supporting also cross-band operation (TG-186) 2021-05-29 08:20:12 +02:00
Silvano Seva f1a01d7613 New radio driver for MD-UV3x0, testing required 2021-05-29 08:20:12 +02:00
Silvano Seva f0dfd7036f Fixed bug in OpMode_FM.cpp which prevented entering in RX mode, removed code for setting input gain in HR_C5000 driver, modified meson.build to make it compile the new sources 2021-05-29 08:20:12 +02:00
Silvano Seva 850e3580ed New radio driver for MD-3x0 platform, still requiring a bit of debugging 2021-05-29 08:20:12 +02:00
Silvano Seva 529b108771 Added to HR_Cx000 driver a function for setting the gain of the audio input stage. 2021-05-29 08:20:12 +02:00
Silvano Seva 887d95ec58 Created 'wrappers' subfolder in platform/drivers/baseband containing the C wrappers for the AT1846S, HR_C5000 and HR_C6000 drivers 2021-05-29 08:20:12 +02:00
Silvano Seva 11161fa64a Moved to C++ and refactored HR_C5000/HR_C6000 drivers, grouping common code. A C-callable wrapper is also provided. TG-37 2021-05-29 08:20:07 +02:00
Silvano Seva d95e36f43b Moved to C++ and refactored AT1846S driver, grouping common code. A C-callable wrapper is also provided. TG-37 2021-05-29 08:19:47 +02:00
Silvano Seva a6c638b063 Updated code attributions and informations about licensing of part of the codebase 2021-04-21 10:07:34 +02:00
Silvano Seva 63e68b642a Audio management module for x86/64 target, only providing empty stubs since there is no hardware to control 2021-04-12 19:16:47 +02:00
Silvano Seva c070060b0a Fix error in ADC conversion sequence when compiling for MD-3x0 2021-04-12 19:10:45 +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
Federico Amedeo Izzo a17e50edef Add NVM codeplug support for MD9600 2021-04-10 22:37:32 +02:00
Silvano Seva 944a597d33 Created low-level driver for management of channel selector knobs with quadrature encoder 2021-04-10 19:29:35 +02:00
Silvano Seva 56c598da7e Created low-level driver for backlight level management 2021-04-10 14:12:15 +02:00
Silvano Seva cdaf3f38dd Renamed MDx display, keyboard and spiFlash drivers to MD3x to adapt the changes made to meson.build also to MD-9600. Fixed missing API change in ui_main. 2021-04-10 12:37:45 +02:00
Silvano Seva c77aebebad Mapped 'C' and 'D' palmtop keys to, respectively, 'ENTER' and 'ESC' functions in MD9600 keyboard driver 2021-04-10 12:16:21 +02:00
Silvano Seva db6b427513 Support for palmtop mic keys in MD9600 keyboard driver 2021-04-10 12:16:21 +02:00
Silvano Seva a15159e7ce Driver for ST7567 display controller 2021-04-10 12:15:29 +02:00
Silvano Seva 94d3a8f52b Stub drivers for NVM and radio management on MD-9600 2021-04-10 12:15:29 +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 6b541a8ba1 Platform interface and initial keyboard driver for MD-9600 2021-04-10 12:13:34 +02:00
Silvano Seva 0772f1924b Renamed GDx display and keyboard driver from 'xxx_GD77' to 'xxx_GDx' for consistency with naming scheme 2021-04-10 12:00:36 +02:00
Silvano Seva 311a89ac0f Refactoring of MDx tone generator, adding support for AFSK encoding (not yet implemented) and reproduction of arbitrary audio streams. 2021-04-10 11:24:33 +02:00
Silvano Seva 0ca7258f03 MD3x0 bugfixes: fixed wrong ADC conversion sequence preventing squelch opening and corrected control of W/N switch in radio driver 2021-04-09 12:54:53 +02:00
Caleb Jamison e5c5ee90f2 Add support for encoder knob on MD-UV380
Added: qdec, a header only quadrature encoder library

Added: EXTI15_10_IRQHandler to handle the encoder knob

Changed: platform_init() for the MD-UV380 now configures the EXTI15_10
interrupt.

Changed: platform_getChSelector now returns signed int8

Changed: size of settings_t.valid went from 6 to 7
Without this change, pressing the macro button crashes the radio, I
haven't investigated and I don't remember how I found that solution.

Changed: meson.build includes the qdec library
2021-04-03 09:21:47 +02:00
Silvano Seva 3f9d46dc2a Fixed C6000_setModOffset in MD-UV3x0 HR_C6000 driver, now behaves in the same way as TYT firmware does. Provides a fix for #21, although it still have to be sharpened a bit. 2021-03-31 16:57:35 +02:00
Silvano Seva c13bc94e91 Fixed bug in MD-UV3x0 radio driver making it transmit with 1W output power even when 5W is selected 2021-03-31 15:05:40 +02:00
Silvano Seva 86f6d114e2 Applied __attribute__((packed)) to all data structures to reduce memory footprint 2021-03-26 18:11:22 +01:00
Silvano Seva 7f9600cdb7 Moved MDx tone generator sine table to FLASH 2021-03-26 16:33:08 +01:00
Fred f4e25a3f8f Fix compilation for gd77 and dm1801 targets 2021-03-24 09:25:57 +01:00
Silvano Seva 32e6eb7029 Applied bugfix to MD-UV3x0 radio driver also to GDx one 2021-03-24 08:54:46 +01:00