Commit Graph

367 Commits

Author SHA1 Message Date
Federico Amedeo Izzo 0e33848d68 gfx_print: use global buffer instead of allocating it to the stack 2021-04-10 11:10:52 +02:00
Federico Amedeo Izzo 341ab84ce9 Converted `gfx_print()` from char * pointer to format string 2021-04-10 11:10:52 +02:00
Federico Amedeo Izzo 9fb7ace303 Fix swapped UP/DOWN keys in Display Settings 2021-04-04 20:36:23 +02:00
Silvano Seva 1d8596e3c8 Renamed 'MD-UV380' folder and 'PLATFORM_MDUV380' define to, respectively, 'MD-UV3x0' and 'PLATFORM_MDUV3x0' to make them consistent with the meson build target 2021-04-01 08:48:56 +02:00
Silvano Seva 9d02ffaea4 Fix for #20, caused by a memory leak when clearing information about GPS satellites in state data structure 2021-03-26 17:50:06 +01:00
Silvano Seva 90122b0c7a Fixed bug in gps task which made it setting time and date even whithout GPS fix. 2021-03-24 12:28:57 +01:00
Fred f4e25a3f8f Fix compilation for gd77 and dm1801 targets 2021-03-24 09:25:57 +01:00
Niccolò Izzo d95e0a1513 Print signed GPS longitude as unsigned+direction 2021-03-24 08:54:46 +01:00
Federico Amedeo Izzo 75df9b7bb8 Set default squelch to S3 2021-03-24 08:54:46 +01:00
Federico Amedeo Izzo 75cd4417c7 Restore squelch functionality after mute fix 2021-03-21 17:51:23 +01:00
Federico Amedeo Izzo e8ae618382 Add ifdef to fix compilation on Linux 2021-03-21 11:59:35 +01:00
Federico Amedeo Izzo 3a92547ef5 UV380: Mute speaker when volume knob is set to minimum 2021-03-21 11:42:47 +01:00
Federico Amedeo Izzo 42153be082 Macro Menu: Change squelch also with UP and DOWN 2021-03-21 09:14:44 +01:00
Silvano Seva 2bde981222 Removed speaker 'POP' on squelch opening and when starting TX with squelch open 2021-03-20 11:51:35 +01:00
Silvano Seva c1abeefd67 Implemented volume control for audio coming from radio stage on MD-UV3x0 and fixed a compilation warning regarding non-const access to a const variable 2021-03-20 11:51:35 +01:00
Silvano Seva a5120ffddc Radio driver for MD-UV3x0 targets 2021-03-20 11:51:35 +01:00
Silvano Seva 01ea1a9b3f Made the main() thread run the UI task, thus removing the need for a dedicated one 2021-03-14 17:17:24 +01:00
Silvano Seva 952f5afc3c Fixed squelch issue on GDx which made it briefly opening whenever an RTX parameter changed 2021-03-14 16:54:07 +01:00
Federico Amedeo Izzo 92e0abafa2 Display: Set default contrast at boot. Improve default contrast for GD-77 2021-03-14 11:35:45 +01:00
Federico Amedeo Izzo 3da311ee38 UI: Change contrast steps to 4 to match GD-77 HW contrast range (0-63) 2021-03-14 11:21:39 +01:00
Federico Amedeo Izzo 1637159329 Completely disable persistence until we have a proper flash backup/restore method 2021-03-13 23:03:37 +01:00
Federico Amedeo Izzo 9720032238 Disable reading VFO and settings from flash until persistence is implemented 2021-03-13 22:52:37 +01:00
Federico Amedeo Izzo 9e7b04c1fa Disable reading VFO channel from flash to fix boot freeze on GD-77 2021-03-13 22:21:23 +01:00
Silvano Seva a02b693843 Made the RTX thread run with the maximum priority on ARM Cortex targets 2021-03-13 09:16:06 +01:00
Silvano Seva 20ad9b7dcf Fixed issue with MDx ADC, rolling back to real battery voltage measurement 2021-03-13 09:16:06 +01:00
Silvano Seva 81e8aae103 Re-enabled all the tasks, temporarily bypassing battery voltage reading since it has to be debugged 2021-03-13 09:16:06 +01:00
Silvano Seva e5316aa8be Minimal refactoring of queue sources 2021-03-13 09:16:06 +01:00
Silvano Seva fb3447b0c6 Moving to miosix kernel: swapped old uC/OS-III task management functions with pthread ones 2021-03-13 09:16:06 +01:00
Silvano Seva cbfb78e19e Fixed bug which made the GPS task re-syncronising the RTC with GPS time once per second. 2021-03-13 09:14:26 +01:00
Federico Amedeo Izzo fb3c055f85 Disable writing settings until DFU support is ready 2021-03-01 20:52:57 +01:00
Niccolò Izzo de85ba90cb Filter out BeiDou NMEA strings 2021-02-25 11:20:31 +01:00
Silvano Seva 056c53b35d Made UI fsm skip low battery check when TX is enabled to avoid spurious triggers of low battery alert caused by the high current absorption from RF PA 2021-02-24 21:00:30 +01:00
Niccolò Izzo 6b24895ef3 Extended GPS support to UV-380 module 2021-02-24 08:07:58 +01:00
Silvano Seva 3438006ef5 Removed moving average filtering from MDx ADC1 driver, added code for proper filtering of ADC samples in platform-independent code 2021-02-23 15:49:55 +01:00
Silvano Seva 416ae13eb1 Fixed linking error when building for linux 2021-02-23 14:01:09 +01:00
Niccolò Izzo eb0a5ee9f0 Fix compass orientation, speed formatting 2021-02-21 20:38:54 +01:00
Silvano Seva d0e8d15389 Added 'packed' attribute to settings data structure. Some refactoring of settings and state code. 2021-02-21 19:25:09 +01:00
Federico Amedeo Izzo 35bde9bccb Add state_terminate() that saves settings to flash 2021-02-21 16:44:31 +01:00
Federico Amedeo Izzo d4981ee288 Add Settings persistence to SPI Flash 2021-02-21 15:58:41 +01:00
Federico Amedeo Izzo 0b14e36bdb Fix About screen on GD-77 2021-02-20 16:25:06 +01:00
Federico Amedeo Izzo 820ac73d08 UI: Add menu_h and menu_font layout parameters 2021-02-20 16:03:37 +01:00
Federico Amedeo Izzo 9c47797ff0 UI: Fixed mismatch between visible and selectable menu elements 2021-02-20 15:47:41 +01:00
Federico Amedeo Izzo c644e8db1d UI: Remove position parameter from menu list 2021-02-20 15:35:19 +01:00
Federico Amedeo Izzo 711d8426c9 Add 10pt font. Reduce frequency line on GD-77 to avoid overlap 2021-02-20 15:14:35 +01:00
Federico Amedeo Izzo 5bb200933b UI: Add missing GPS ifdefs 2021-02-17 20:02:53 +01:00
Niccolò Izzo f49655c44d Better GPS time synchronization 2021-02-17 14:58:20 +01:00
Niccolò Izzo 4d66d8b1af Fix various warnings 2021-02-17 11:21:46 +01:00
Federico Amedeo Izzo f357f476dc GPS: Enable GPS on gps_task start only if enabled in settings 2021-02-16 22:47:38 +01:00
Federico Amedeo Izzo cbe657cd77 UI: Fixed GPS OFF bug caused by ambiguous enable/disable code 2021-02-16 22:22:20 +01:00
Federico Amedeo Izzo 9de0857ff4 UI: Add switch cases default options 2021-02-16 22:09:28 +01:00
Niccolò Izzo fed9912c7d Improved RTC GPS time synchronization 2021-02-16 08:33:34 +01:00
Niccolò Izzo 8d90ee0588 Add Smeter numbers 2021-02-16 07:59:37 +01:00
Federico Amedeo Izzo 75c1f13882 UI: Replaced strcmp with switch case to fix GPS/menu bug 2021-02-15 22:02:09 +01:00
Niccolò Izzo 479eda3d96 Fix altitude print 2021-02-15 13:54:23 +01:00
Niccolò Izzo d230a19623 Adjusted battery thresholds 2021-02-15 09:28:23 +01:00
Niccolò Izzo f850dbdc45 Add GPS RTC time synchronization, remove debug prints 2021-02-15 09:26:13 +01:00
Niccolò Izzo e9f0a46823 Fix speed tracking bug 2021-02-15 07:40:25 +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
Federico Amedeo Izzo 663673b697 UI: Fix compilation warnings 2021-02-14 14:04:01 +01:00
Federico Amedeo Izzo 619cda7aeb Turn off GPS when it's turned off in settings 2021-02-14 13:55:33 +01:00
Federico Amedeo Izzo 31552ff2b2 Consider RTC time UTC instead of local time, applying timezone 2021-02-13 22:11:25 +01:00
Federico Amedeo Izzo ebe87b22e2 UI: Add menu edit mode. Small refactoring 2021-02-13 21:29:25 +01:00
Federico Amedeo Izzo 66af402e83 Move settings from UI to State 2021-02-13 20:32:53 +01:00
Federico Amedeo Izzo d66b59694a UI: Add GPS settings menu 2021-02-13 17:23:16 +01:00
Federico Amedeo Izzo a803958c61 UI: Menu scrolling logic refactoring, add GPS Settings entry 2021-02-13 16:35:03 +01:00
Federico Amedeo Izzo 0a04650d58 UI: Use more compact representation for menu entries 2021-02-13 16:14:44 +01:00
Niccolò Izzo a163bc6998 Fix a bug where only satellites with a low id were marked active 2021-02-13 13:49:03 +01:00
Niccolò Izzo 7577b4d6ae Improved algorithm for keeping track of active satellites 2021-02-13 13:27:06 +01:00
Niccolò Izzo 1f9793d268 Complete GPS compass implementation
Now the GPS screen compass has a needle, which point to the current
movement direction.
2021-02-13 12:43:48 +01:00
Federico Amedeo Izzo b3e0f964a1 State: remove unused variable channelInfoUpdated 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
Niccolò Izzo 3017ff1f3a Reduced smeter width, fix max RSSI representation 2021-02-13 11:24:05 +01:00
Silvano Seva 6578422c9d Main stack size is automatically increased to 4kB when a test suite is compiled 2021-02-13 11:24:05 +01:00
Niccolò Izzo a0814fd5d1 Better rendering when no fix is present 2021-02-13 11:23:40 +01:00
Niccolò Izzo 586b524625 Add GPS compass stub 2021-02-13 11:23:13 +01:00
Niccolò Izzo c7e8a258f3 Add active satellite field in GPS data
Now for each satellite in view we are keeping track if it's part of a
fix or not. This information is represented by a yellow color in the bar
graph screen.
2021-02-13 11:20:06 +01:00
Niccolò Izzo ec06b14618 Add GPS satellites snr bar graph 2021-02-11 21:27:03 +01:00
Niccolò Izzo 0cf86ce6ea Add GPS UI draft 2021-02-11 09:44:41 +01:00
Niccolò Izzo b570f3b690 Add GPS altitude parsing 2021-02-11 09:43:51 +01:00
Niccolò Izzo 0ce92f991c Add GPS NMEA parsing task
Add dedicated task to parse NMEA sentences received by the GPS module.
The parsed data is moved to the radio state, to be read by the user
interface.
2021-02-08 17:25:11 +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
Silvano Seva 1cd0efdee1 Fixed compilation warnings and code refactoring pass 2021-02-03 14:50:00 +01:00
Silvano Seva 6dfbd2419d Improved RX activation mechanism in rtx driver 2021-02-03 14:30:06 +01:00
Silvano Seva 712d65c797 Improved handling of new configuration in rtx module 2021-02-03 14:30:06 +01:00
Silvano Seva d9a55c137a Implementation of all common rtx functionalities and radio driver for MD3x0 2021-02-03 14:30:06 +01:00
Silvano Seva 1840c1aeb5 Moved 'rtx.h' out of 'interfaces' folder, since it now becomes a cross-platform component 2021-02-03 14:30:06 +01:00
Federico Amedeo Izzo 83d91b555d Add hwInfo in Info menu 2021-02-02 21:45:10 +01:00
Federico Amedeo Izzo 65b5c0b002 Info menu: Fixed battery percentage 2021-02-02 21:10:48 +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 08a44375fc UI: Fix macro menu line 2 height 2021-02-02 20:08:15 +01:00
Federico Amedeo Izzo b7ae2ba86d UI: Fix VFO Input line position 2021-02-02 19:55:03 +01:00
Federico Amedeo Izzo 2728dbcce1 UI: Use separate font setting for VFO input and Time to
avoid inheriting asymmetric fonts from the main screen
2021-02-02 12:54:09 +01:00
Niccolò Izzo 6e28fa5b21 Improved Squelch MACRO Menu visual hinting 2021-02-02 11:11:36 +01:00
Niccolò Izzo 7e0500d3a5 Improved Smeter rendering in MACRO menu 2021-02-01 23:33:49 +01:00
Federico Amedeo Izzo 6fdb6b8890 UI: Fix zone elements indexes 2021-02-01 22:30:25 +01:00
Federico Amedeo Izzo 70bce5a5fc UI: Fixed zone menu bug causing last zone to be replicated 2021-02-01 21:47:10 +01:00
Federico Amedeo Izzo 438540290b UI: Add MEM channel filtering per zone 2021-01-31 14:14:54 +01:00
Niccolò Izzo 81461669fe Remove bswap into transparent rendering 2021-01-31 13:30:18 +01:00
Niccolò Izzo d60c75d9e3 Move MACRO menu into super-state 2021-01-31 13:29:23 +01:00
Federico Amedeo Izzo c8b4328450 UI: Change layout to show big digits frequency 2021-01-31 11:37:42 +01:00