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
Alessio Caiazza
351cab1f44
Don't waste extra memory for the brightness timer
2022-01-03 14:51:22 +01:00
Alessio Caiazza
d742d027b7
Display timer UI
2022-01-03 14:51:22 +01:00
Alessio Caiazza
269420c2be
Load standby timer from settings
2022-01-03 14:51:22 +01:00
Silvano Seva
3c6ad9802c
Added API function allowing to query the current status of the RX audio squelch
2021-12-23 14:52:25 +01:00
Alessio Caiazza
e2baf5a833
Document functions with Doxygen format
2021-12-23 14:52:25 +01:00
Alessio Caiazza
82699f3d07
Implement an SDL main loop inside the Main Thread
2021-12-23 14:52:25 +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
Silvano Seva
c91e306026
Reorganised settings data structure
2021-11-08 21:44:33 +01:00
Federico Amedeo Izzo
1e19574fd6
Add destination callsign input for M17, Add -/ to keypad input
2021-10-09 18:53:28 +02:00
Silvano Seva
42e7521205
Fixed compilation error with GDx targets
...
Added codec2 as a dependency also for GD77, DM1801 and MD9600 targets to allow compilation of OpMode_17.cpp file
Stub input audio stream driver for GDx targets
2021-10-06 21:43:07 +02:00
Silvano Seva
a9e1e68709
Implemented function for inverse code puncturing in M17 protocol
2021-10-03 12:09:00 +02:00
Silvano Seva
d018dbb4a0
Implementation of M17 polynomial deinterleaver
2021-09-20 21:34:59 +02:00
Silvano Seva
0b276b2b64
Experimental implementation of voice transmission in M17 protocol handler
2021-09-07 12:22:35 +02:00
Silvano Seva
e954f3fda2
Moved sleep regulating update rate of rtx task from rtx thread to OpMode implementations, as each operating mode may require a custom update rate
2021-09-03 16:44:57 +02:00
Silvano Seva
bad5a50d7d
Updated code puncturing pattern for M17 link setup frame to follow new specifications
2021-09-03 16:44:57 +02:00
Silvano Seva
2f3db118fc
Changed streamType_t from bitfield struct to union of anonymous bitfield struct and uint16_t to facilitate endianness conversion. Change also fixed a bug in endianness conversion inside M17LinkSetupFrame class due to unaligned memory access.
2021-09-03 16:44:57 +02:00
Federico Amedeo Izzo
c23eaf8e98
Add M17 src/dst addresses to rtxStatus_t
2021-09-03 16:44:57 +02:00
Niccolò Izzo
eea9be3349
Add M17 codeplug data structures
2021-09-03 16:44:57 +02:00
Niccolò Izzo
f43f54117c
Fix M17 callsign setting
...
Fix M17 callsign disappearing in M17 settings.
The generic callsign (currently not used) was being shown instead of M17 callsign.
2021-09-03 16:44:57 +02:00
Federico Amedeo Izzo
229a81b2ad
Add text input draft
...
Fix text input position not being reset when entering edit mode
2021-09-03 16:44:57 +02:00
Federico Amedeo Izzo
87703a76e6
Add M17 Settings
2021-09-03 16:44:57 +02:00
Federico Amedeo Izzo
882a657359
* Combine S-meter and Level meter
...
* Make squelch bar always yellow
* Include font height in s-meter total height
Correct bottom bar printing position
Increase bottom bar size on GD-77
2021-09-03 16:44:57 +02:00
Federico Amedeo Izzo
118c514081
UI: Add digital mode screen
...
Use main screen bottom bar in mode screen
mode screen: Move frequency and channel name to center
Show S-meter without squelch bar for digital modes
Change S-meter for digital modes, add audio level meter
Print FM information in mode screen
Add mode screen fonts
2021-09-03 16:44:57 +02:00
Silvano Seva
92ea1535ff
Moved definition of 'PLATFORM_LINUX' macro from hwconfig to meson.build, added '-std=c++14' compilation flag to compile arguments for linux platform, added missing includes to M17Utils.h
2021-09-03 16:44:57 +02:00
Silvano Seva
c8d62ff47f
Initial implementation of M17 operating mode handler
2021-09-03 16:44:57 +02:00
Silvano Seva
98e4164f54
M17 transmitter class
2021-09-03 16:44:57 +02:00
Silvano Seva
39e41ee470
M17 4FSK modulator class
2021-09-03 16:44:57 +02:00
Silvano Seva
f7bec2358b
Class for implementation of FIR filters
2021-09-03 16:44:56 +02:00
Niccolò Izzo
3439f3a497
Add invert phase DSP filter
2021-09-03 16:40:41 +02:00
Silvano Seva
7b5e98bbca
Implemented generation of Golay(24,12) LICH blocks inside M17LinkSetupFrame class
2021-09-03 16:39:06 +02:00
Silvano Seva
93af26ef13
Implementation of M17 decorrelator, polynomial interleaver and Golay(24,12) encoder
2021-09-03 16:39:06 +02:00
Silvano Seva
ee1b111fb7
Implementation of M17 code puncturing scheme
2021-09-03 16:39:06 +02:00
Silvano Seva
d545071df6
Implementation of M17 convolutional encoder
2021-09-03 16:39:06 +02:00
Silvano Seva
9e5c689bf3
M17 protocol data structures
2021-09-03 16:39:06 +02:00
Silvano Seva
222ba690a5
Improved implementation of DSP function for DC removal
2021-09-03 15:46:13 +02:00
Silvano Seva
c2b6bd545f
API interfaces for audio path and audio stream management
2021-08-25 18:30:28 +02:00
Silvano Seva
4d3eacc144
Switched 'v_bat' and 'charge' fields of state struct from float to, respectively, uint16_t and uint8_t and updated UI functions accordingly. Rationale for this change is providing better support for future platforms without hardware floating point unit.
2021-08-14 12:56:45 +02:00
Silvano Seva
46819ba993
Modified 'battery_getCharge': now it takes as input the battery voltage in mV and returns charge percentage as an integer ranging from 0 to 100. Function body is implemented using fixed point math instead of floats for improved platform compatibility when hardware floating point support is not present.
2021-08-14 12:52: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
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
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
4d68f02ab4
Updated documetation for radio.h API, removed old baseband C source files.
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
850e3580ed
New radio driver for MD-3x0 platform, still requiring a bit of debugging
2021-05-29 08:20:12 +02:00
Silvano Seva
5b0bec8c5f
Created OpMode class for modular OOP-based management of operating modes. Created OpMode_FM class for analog FM management. Refactored and moved to C++ the content of openrtx/src/rtx.c. (TG-38, TG-41)
2021-05-29 08:20:12 +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