Commit Graph

128 Commits

Author SHA1 Message Date
Silvano Seva eb22e4b4b2 Default VFO channel for Module 17, making it start in M17 operating mode at boot 2022-05-27 21:48:47 +02:00
Niccolò Izzo d22948a096 Fix naming error
Replaced FM with OPMODE_FM and DMR with OPMODE_DMR.
2022-05-27 21:48:46 +02:00
Silvano Seva 19c1b8eff9 Added full chip erase function to W25Qx driver 2022-03-22 11:19:22 +01:00
Silvano Seva 91c9408f32 Removed backwards compatibility with old settings for MDx: in case of version mismatch default values are loaded 2022-02-26 15:47:18 +01:00
Alessio Caiazza ce5ff047ee Add NVM for settings and VFO on linux platform 2022-01-15 14:02:19 +01:00
Silvano Seva f54a0d18a7 Implemented mechanism to allow backwards-compatibility when loading settings from memory, as backlight timer introduced a new data field 2022-01-03 15:42:16 +01:00
Mathis Schmieder e9a6b0261e Fixed compilation for Module17 2021-11-27 08:09:39 +01:00
Silvano Seva 38231e3a53 Driver stubs for keyboard and non volatile memory on Module17 2021-11-24 19:53:48 +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 756812ca31 Created function for writing settings and VFO status to NVM, starting of temporary implementation writing data to the MCU's internal flash 2021-11-08 22:22:26 +01:00
silseva bbf77c4ab0
Simple driver for erase and write of MCU's internal flash 2021-11-08 17:10:00 +01:00
Federico Amedeo Izzo 70a0eeaf29 Fix GD77 codeplug channel mode reading 2021-06-06 10:47:02 +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
Silvano Seva 2d517d5bf8 New radio driver for GDx. Renamed some entries in GDx calibration data structure 2021-05-29 08:20:12 +02:00
Federico Amedeo Izzo a17e50edef Add NVM codeplug support for MD9600 2021-04-10 22:37:32 +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 94d3a8f52b Stub drivers for NVM and radio management on MD-9600 2021-04-10 12:15:29 +02:00
Silvano Seva 86f6d114e2 Applied __attribute__((packed)) to all data structures to reduce memory footprint 2021-03-26 18:11:22 +01:00
Federico Amedeo Izzo d6b54dc655 GD-77 properly terminate codeplug strings with 0x00 instad of 0xFF 2021-03-14 14:33:19 +01:00
Silvano Seva 5d0c7f3d9c Removed I2C initialisation from GDx EEPROM driver, as the I2C bus is already initialised in platform_init() and the double initialisation made some radios freeze on the splash screen 2021-03-14 11:46:00 +01:00
Federico Amedeo Izzo a5b0bc57d1 GD-77: fix bug where last zone was not read from flash 2021-03-14 11:08:52 +01:00
Federico Amedeo Izzo b7795b47c0 Fix swapped FM/DMR channel type on GD-77 2021-03-13 22:25:51 +01:00
Federico Amedeo Izzo f5a2f8c1ce Disable settings write until DFU support is complete 2021-03-01 19:53:06 +01:00
Silvano Seva 4038bf811e Fixed error in 'W25Qx_writePage' causing it skipping the blocks having an odd address 2021-02-26 11:07:32 +01:00
Silvano Seva dc131c3333 Refactored 'W25Qx_writeData' and disabled '-ffunction-sections', which causes printf not printing decimal dots when used with %f 2021-02-23 13:51:49 +01:00
Federico Amedeo Izzo d4981ee288 Add Settings persistence to SPI Flash 2021-02-21 15:58:41 +01:00
Federico Amedeo Izzo 5f187bc76d Fix SPI Flash write function 2021-02-21 14:28:42 +01:00
Federico Amedeo Izzo bf8a5cf87d Add SPI Flash write data implementation and test 2021-02-21 08:30:51 +01:00
Federico Amedeo Izzo a009ffa2d0 Add CPS contact reading for GD-77 (currently not working for SPI flash issues) 2021-02-20 09:27:07 +01:00
Federico Amedeo Izzo 042ec2d5c1 Add GD-77 VFO channel CPS support 2021-02-20 08:55:42 +01:00
Federico Amedeo Izzo a86176dcb8 Add GD-77 zone CPS support 2021-02-20 08:41:47 +01:00
Federico Amedeo Izzo 6755a4a7e5 Fix CPS channel reading on GD-77 2021-02-19 15:08:29 +01:00
Federico Amedeo Izzo 947d071f57 CPS: Fix GD-77 Channel base address 2021-02-18 15:41:59 +01:00
Federico Amedeo Izzo 046fcdb417 CPS: Improved GD-77 channel reading 2021-02-17 20:02:53 +01:00
Silvano Seva 06d75ad606 Implemented sector erase and page write into W25Qx driver 2021-02-17 11:39:52 +01:00
Federico Amedeo Izzo 8f3c46a262 Add GDx CPS channel decoding 2021-02-14 17:34:40 +01:00
Federico Amedeo Izzo 3ddf7f3557 Add comment explaining lack of VFO in MD380 CPS 2021-02-13 11:24:05 +01:00
Federico Amedeo Izzo 19838dbb38 Read VFO channel from flash when initializing state 2021-02-13 11:24:05 +01:00
Federico Amedeo Izzo a9ad22a4c9 NVM: Add function to read VFO channel for MD-UV3x0 2021-02-13 11:24:05 +01:00
Silvano Seva e35870a40f Moved data structures for NVM management into dedicated header files 2021-02-13 11:24:05 +01:00
Silvano Seva 1cd0efdee1 Fixed compilation warnings and code refactoring pass 2021-02-03 14:50:00 +01:00
Silvano Seva 2fee6d0d06 Fixed decoding of CT/DCSS codeplug field in MDx nvmem driver 2021-02-02 22:24:12 +01:00
Federico Amedeo Izzo 61ad0879c5 CPS-UI: Make channels, zones and contacts 1-based to fix zone bound 2021-02-02 20:52:37 +01:00
Federico Amedeo Izzo faf943b02b NVM: Add Linux fake zone members 2021-02-01 22:29:35 +01:00
Silvano Seva 80c7668faa Added a data structure providing some hardware information parameters and the relative platform API function to retrieve them 2021-02-01 21:27:31 +01:00
Niccolò Izzo 09864adf21 Add zones and contact parsing on MD-3x0 2021-02-01 18:51:40 +01:00
Federico Amedeo Izzo 5a37ba3e8a CPS: Add dummy zones and contacts generation on Linux 2021-01-24 19:01:51 +01:00
Federico Amedeo Izzo 302eb572be CPS: Add Zone and Contact reading function stubs 2021-01-24 18:11:09 +01:00
Federico Amedeo Izzo d3796971df NVMEM: Fix compiler warning on linux 2021-01-24 16:29:48 +01:00
Federico Amedeo Izzo 0608176342 CPS: Read contact data from codeplug 2021-01-23 11:28:12 +01:00
Federico Amedeo Izzo 33336ecccc CPS: Return -1 when reading an empty channel or zone 2021-01-23 10:38:18 +01:00
Federico Amedeo Izzo fe35d4017a CPS: Fix zone data reading 2021-01-23 10:05:18 +01:00
Federico Amedeo Izzo 489326f5cd CPS: Fix zone extension reading 2021-01-22 21:23:45 +01:00
Federico Amedeo Izzo 6706a796ad CPS: Add code to read zone data from Codeplug 2021-01-22 21:16:13 +01:00
Silvano Seva 4bbad17012 Refactoring of data structure for GDx calibration data: 'vhfCal' and 'uhfCal' fields merged into a single two-element array field 2021-01-21 12:34:11 +01:00
Federico Amedeo Izzo cb4b55d9a3 NVM: Remove unused duplicate driver 2021-01-13 21:13:14 +01:00
Federico Amedeo Izzo 6b47a32292 UI NVM: Fix base address for UV3x0 radios, and convert from 10*Hz to Hz 2021-01-10 11:50:03 +01:00
Federico Amedeo Izzo 47c20f8cff NVM: Convert freq from tens of Hz to Hz when reading CPS channel 2021-01-10 11:27:01 +01:00
Federico Amedeo Izzo 73c9ab56a6 UI: Channel mode: load channel from cps and do basic validation 2021-01-10 10:18:29 +01:00
Niccolò Izzo adc48efb19 Implement CTCSS available tones array
Now the CTCSS tones are taken from an array and indexed from that array.
A macro that sets the tone has been implemented.
2021-01-05 11:26:22 +01:00
Niccolò Izzo bbcd6483a2 Add tone enable flags into channel data structure 2021-01-05 10:08:18 +01:00
Silvano Seva 403f37844f Fixed compilation error for MD-UV380G target 2021-01-02 19:39:59 +01:00
Silvano Seva 48775a71fd Finalising merge of branch master into GDx-development 2021-01-02 15:17:15 +01:00
Silvano Seva 206daec861 Driver for nonvolatile external memory on GDx devices, by now only supporting retrieval of calibration parameters 2021-01-02 15:07:14 +01:00
Silvano Seva ff7216e9cd Driver for AT24Cx external EEPROM present on GDx devices 2021-01-02 15:07:14 +01:00
Silvano Seva aad19cc41c Driver for external SPI flash memory on Baofeng DM-1801 2021-01-02 15:07:14 +01:00
Silvano Seva d9f6ea31ab Separated code for SPI communication from sources of external flash memory driver. 2021-01-02 15:07:14 +01:00
Federico Amedeo Izzo 89813199d3 Add dummy nvmem Linux driver 2021-01-02 12:10:10 +01:00
Federico Amedeo Izzo b74dba7564 Differentiate MDUV380G target from MDUV380 2021-01-02 12:08:58 +01:00
Niccolò Izzo c77cc46fb6 Fix include syntax
Interface header includes have acquired the interface prefix, to
distinguish them from regular header includes.
2020-12-24 16:30:13 +01:00
Silvano Seva 6e144a7160 Fixed bug in MD3x0 calibration loader, made the input parameters of 'interpCalParameter' const 2020-12-06 19:33:27 +01:00
Silvano Seva d4cdba2243 Moved calibration data structures from 'platform/drivers/NVM' to 'openrtx/include/calibration', since various modules need them 2020-12-04 10:27:04 +01:00
Silvano Seva 4dbdb5ddbb Implemented reading of channel data from external flash memory for MDx targets 2020-11-25 16:40:17 +01:00
Silvano Seva 83f375c675 Merged MD3x0 and MDUV3x0 calibration data structures into a single header file for MDx family 2020-11-25 13:57:36 +01:00
Silvano Seva 8efbfab6e1 Fixed parsing errors in MD-UV3x0 calibration data loader 2020-11-24 12:41:20 +01:00
Silvano Seva e690a36dd1 Implemented NVM interface API also for MD-UV3x0 targets 2020-11-24 12:41:20 +01:00
Silvano Seva 310f19c6b7 API to access external nonvolatile memory, implementation for MD3x0 devices and testsuite for printing calibration values of MD3x0 devices 2020-11-21 09:37:12 +01:00
Silvano Seva 9b14e9fae7 Low-level driver for external SPI flash memory on MDx family devices 2020-11-20 14:47:52 +01:00