Federico Amedeo Izzo
4d35ddfa3d
UI: Improve previous commit
2021-01-26 20:18:55 +01:00
Federico Amedeo Izzo
c498b3d337
UI: Unified FSM code of Zone, Channel and Contacts menu
2021-01-26 20:10:31 +01:00
Silvano Seva
92870f477f
Added display API function to set LCD contrast
2021-01-26 08:53:42 +01:00
Federico Amedeo Izzo
2057374fac
UI: Merge Zone, Channel and Contacts menu in a single function
2021-01-24 19:36:21 +01:00
Federico Amedeo Izzo
1a1e39fcc0
UI: Add Zone and Contacts menu
2021-01-24 18:53:43 +01:00
Federico Amedeo Izzo
bc88247809
UI: Fix compiler warning
...
uint32_t is unsigned long on 32-bit ARM and unsigned on 64-bit x64.
Add type specifier to avoid having warnings when compiling on Linux
2021-01-24 16:27:50 +01:00
Federico Amedeo Izzo
bec69dc440
Graphics.h: Fix compiler warning
2021-01-24 15:57:02 +01:00
Federico Amedeo Izzo
c9c1e2312f
UI: Fix compiler warnings
2021-01-24 15:51:11 +01:00
Federico Amedeo Izzo
0608176342
CPS: Read contact data from codeplug
2021-01-23 11:28:12 +01:00
Federico Amedeo Izzo
6706a796ad
CPS: Add code to read zone data from Codeplug
2021-01-22 21:16:13 +01:00
Federico Amedeo Izzo
463e5bf6fb
Graphics: Add error box printing
2021-01-21 22:01:25 +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
Niccolò Izzo
827bc45794
Fix deadlock issue on linux target
...
The keyboard thread was causing a deadlock with the ui thread,
now the keyboard thread is non-blocking.
2021-01-15 22:09:11 +01:00
Federico Amedeo Izzo
0e1e9469ea
UI: Fixed bug in channel menu resulting in a pinned first channel
2021-01-13 21:10:31 +01:00
Federico Amedeo Izzo
ad78fe41e8
UI: Add channel menu lower bound
2021-01-13 21:03:51 +01:00
Federico Amedeo Izzo
3b0c9ecb49
UI refactoring: Move macro menu logic to a separate function
2021-01-13 20:50:35 +01:00
Federico Amedeo Izzo
ab44bb90e7
UI refactoring: Move VFO input logic to separate functions
2021-01-13 20:43:39 +01:00
Federico Amedeo Izzo
b60100a1f9
UI: Move load channel from CPS to separate function
2021-01-13 20:27:39 +01:00
Federico Amedeo Izzo
6039bbb42e
UI: Pass curtime_t per pointer, not per copy
2021-01-13 20:04:12 +01:00
Federico Amedeo Izzo
5a0a4886ee
UI: Add macro menu to MEM mode. Fix main_state save and restore
2021-01-12 20:03:45 +01:00
Federico Amedeo Izzo
1a894c67df
UI: Save and restore VFO channel when switching to MEM mode
2021-01-12 19:25:47 +01:00
Niccolò Izzo
daeeee64dd
Fix battery glitch
...
Battery charge was mistakenly being computed because values used in
computation were defined in a function which was not included as a
header file.
2021-01-12 08:01:34 +01:00
Federico Amedeo Izzo
e690009171
UI: Reduce channel name font size
2021-01-10 11:25:05 +01:00
Federico Amedeo Izzo
b7088686f5
UI: Channel: Implemented channel switching
2021-01-10 10:23:56 +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
Federico Amedeo Izzo
3365fe4d2f
UI: Move VFO/MEM indicator to the left of the bottom bar
2021-01-10 09:27:55 +01:00
Federico Amedeo Izzo
571adfaabf
UI: Move ui_*.c files to ui subfolder
2021-01-10 09:04:53 +01:00
Federico Amedeo Izzo
e23b9bcea6
UI: Move main screen functions to ui_main.c
2021-01-10 09:03:07 +01:00
Federico Amedeo Izzo
feb7e7ef7e
UI: Initial MEM implementation
2021-01-09 19:37:51 +01:00
Federico Amedeo Izzo
aef0eb30b1
UI: Move ui_menu.c function prototypes from ui_menu.h to ui.c as extern
2021-01-09 18:33:40 +01:00
Federico Amedeo Izzo
e34674151b
UI: Move menu related functions to ui_menu.c
2021-01-09 10:47:18 +01:00
Federico Amedeo Izzo
6c9d1834ad
ui.c: Fixed format string warnings
2021-01-09 09:36:17 +01:00
Federico Amedeo Izzo
4101597ae5
ui.c: Move ui state global variables to struct ui_state_t
2021-01-09 09:25:24 +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
29e4e35199
Fix layout, implement tone enable disable macro
2021-01-05 10:08:18 +01:00
Niccolò Izzo
bbcd6483a2
Add tone enable flags into channel data structure
2021-01-05 10:08:18 +01:00
Federico Amedeo Izzo
04a8e2025e
Keyboard: Do not send event bursts after long press
2021-01-05 10:08:18 +01:00
Niccolò Izzo
2dcefb7c0e
Add backlight into state, macro functionality
...
Now the current backlight level is part of the radio state, and the
first few macros have been implemented although the rate limiting of
presses has still to be fixed.
2021-01-05 10:08:18 +01:00
Niccolò Izzo
09c94a943a
Fix Macro Menu printing
2021-01-05 10:08:18 +01:00
Federico Amedeo Izzo
07707ccae5
Keyboard: Send release key events
2021-01-05 10:08:18 +01:00
Niccolò Izzo
a007eb206c
Implemented Macro Menu information print
2021-01-05 10:08:18 +01:00
Niccolò Izzo
5784adab50
Updated macro menu layout
2021-01-05 10:08:18 +01:00
Niccolò Izzo
1e28ebbb4e
Fix right aligned printing padding
...
Now right aligned printing starts writing backwards from the start
point, layout anchors have been suitably adapted and detailed.
2021-01-05 10:08:18 +01:00
Niccolò Izzo
95e00c2eff
Fix transparency
2021-01-05 10:08:18 +01:00
Niccolò Izzo
2fe6cd1cb6
Implement draft of the macro menu feature
2021-01-05 10:08:18 +01:00
Silvano Seva
41e6c1d1e6
Added flags to enable TX and RX tones in rtxStatus_t
2021-01-04 08:58:17 +01:00
Federico Amedeo Izzo
868a0df892
UI: Fix GD77 font sizes
2021-01-03 11:22:24 +01:00
Federico Amedeo Izzo
bcb4f5ccfc
UI: Remove unneeded frequency position
2021-01-03 11:17:15 +01:00
Federico Amedeo Izzo
4029bcf90e
UI: Removed unnecessary layout fix
2021-01-03 09:52:56 +01:00
Federico Amedeo Izzo
a5a9750fc3
UI: Recalculate layout and padding sizes for all radios
2021-01-03 09:38:54 +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
Federico Amedeo Izzo
83ab86e955
UI: Add channel menu implementation
2021-01-02 12:10:10 +01:00
Federico Amedeo Izzo
89567cce85
UI: remove screen refresh flag
...
screen refresh is not needed anymore since GUI refresh is already done on demand
2021-01-01 21:11:22 +01:00
Federico Amedeo Izzo
dba2b27310
UI: small refactoring, replace snprintf without placeholders with strcpy
2021-01-01 20:30:21 +01:00
Federico Amedeo Izzo
94b7be826a
Disable RTC related code on platforms without a functional RTC
2021-01-01 18:58:35 +01:00
Federico Amedeo Izzo
8163eba67b
Add MD-9600 support, boot and USB serial working
2021-01-01 18:32:50 +01:00
Silvano Seva
7cc4b36907
Suppressed some compiler warnings
2021-01-01 17:31:42 +01:00
Federico Amedeo Izzo
50b93904c1
UI: Fix bug where frequency set with number keys wouldn't apply
2021-01-01 10:49:12 +01:00
Federico Amedeo Izzo
f4c4a72584
RTC: Bugfix, add missing bit in the date field
2020-12-31 19:11:35 +01:00
Federico Amedeo Izzo
b3bf54adcf
UI: Complete timedate menu
2020-12-31 19:05:29 +01:00
Silvano Seva
8b6f4e3056
Renamed rtc_shutdown() and toneGen_shutdown() to rtc_terminate() and toneGen_terminate()
2020-12-31 18:31:00 +01:00
Federico Amedeo Izzo
641dcc13e9
UI: Add Time&Date settings, not functional yet
2020-12-31 16:36:32 +01:00
Federico Amedeo Izzo
4cfc7d2131
UI: Fix frequency input bug causing incorrect frenquency set
2020-12-31 14:59:21 +01:00
Federico Amedeo Izzo
7a9135d746
Platform: Add frequency limit check
2020-12-31 14:51:19 +01:00
Federico Amedeo Izzo
c2f331467c
UI: Fix bug where key 9 did not work in frequency input
2020-12-31 13:58:49 +01:00
Federico Amedeo Izzo
0769701ccc
UI: Remove unused function
2020-12-31 13:55:12 +01:00
Federico Amedeo Izzo
fc38fe8ed4
UI: replace pow with multiplication in frequency input
2020-12-31 13:51:27 +01:00
Federico Amedeo Izzo
13a8ff9e40
UI: Frequency set minor fix
2020-12-30 22:55:17 +01:00
Federico Amedeo Izzo
3f21c60471
UI: Change frequency input behaviour
2020-12-30 22:48:46 +01:00
Federico Amedeo Izzo
ac0f906257
UI: Implement RX/TX frequency input
2020-12-30 22:23:21 +01:00
Federico Amedeo Izzo
58876ec4f2
UI: Set TX frequency together with RX frequency keeping previous offset
2020-12-30 20:11:05 +01:00
Federico Amedeo Izzo
3309fe6fa1
UI: Add RX frequency input. (WARNING: no frequency bound check present)
2020-12-30 19:55:51 +01:00
Niccolò Izzo
73c7b74a3a
Add input parsing functions
...
Input parsing functions are moved into input.c/input.h, and currently
contain functions to determine if a number is pressed and to extract the
pressed number.
2020-12-30 15:46:43 +01:00
Federico Amedeo Izzo
3ecf27392e
UI: Calculate menu entries num instead of using a define
2020-12-28 09:31:33 +01:00
Federico Amedeo Izzo
ce768c3c8a
UI: Add menu scroll to fit more menu entries on small screens
2020-12-27 20:45:49 +01:00
Federico Amedeo Izzo
e5ac363081
UI: Fix menu list position on GDx family
2020-12-27 17:42:27 +01:00
Federico Amedeo Izzo
f9b9f7ecf6
UI: Add menu selection wrap-around
2020-12-27 15:26:50 +01:00
Federico Amedeo Izzo
aca804c738
KBD: Fix double events generated from long + short press.
...
The problem was caused by kbd_task() sending an old copy
of the keyboard map.
This was necessary when the events were triggered on key lift
but since now events are sent on key press, this is no more necessary.
2020-12-24 17:29:24 +01:00
Niccolò Izzo
aeea305228
Switch to angular brackets include notation
2020-12-24 16:30:45 +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
Federico Amedeo Izzo
1f4fba958b
KBD: Add function to tell if number keys are pressed
2020-12-23 11:05:59 +01:00
Federico Amedeo Izzo
7888a7e398
UI: Add time and date settings, cannot be set right now
2020-12-22 17:49:00 +01:00
Federico Amedeo Izzo
7b9e3eaff2
UI: Reset menu selection when moving between submenus
2020-12-20 11:00:59 +01:00
Federico Amedeo Izzo
ec60dc8273
UI: Add Settings submenu, small refactoring
2020-12-20 10:47:07 +01:00
Federico Amedeo Izzo
a9d4aa08a8
UI: Add menu selection
2020-12-20 09:24:57 +01:00
Federico Amedeo Izzo
423c3f04d3
UI: Add menu list drawing function, small refactoring.
2020-12-20 09:07:48 +01:00
Federico Amedeo Izzo
ce09f2c208
kbd_task: Get timestamp after mutex to avoid getting incorrect timestamp
...
on mutex blocking
2020-12-19 15:45:42 +01:00
Niccolò Izzo
8d55a3e702
Implement alpha channel in graphics library
...
Alpha channel can be used to draw transparent objects.
2020-12-19 15:03:00 +01:00
Niccolò Izzo
d56fafe1a2
Merge graphics_* into a single compilation unit
...
The specialized graphics libraries ended up sharing the majority of the
code, now they have been merged into a single library so that the
graphics development can be done quicker without leaving any of the
platforms behind.
2020-12-19 12:49:30 +01:00
Niccolò Izzo
d74bece14e
Sane default values for the channel struct
2020-12-18 22:42:39 +01:00
Silvano Seva
fc67d89abd
Increased rtx task stack size to 512 bytes
2020-12-18 21:52:45 +01:00
Niccolò Izzo
5949a481fa
Add synchronization between radio state and RTX
...
Now the FSM update function takes an additional parameter, which
determines if the radio state has to be synchronized with the RTX state.
If so, the ui_task does the job.
2020-12-18 21:44:59 +01:00
Niccolò Izzo
85b1fb08e6
Fix printing horizontal start coordinates
2020-12-18 19:21:23 +01:00
Niccolò Izzo
c7e928666c
Move low battery screen into main FSM
2020-12-18 19:03:57 +01:00
Federico Amedeo Izzo
2c792c13a2
kbd_task: Increase long-press threshold to 0.7
2020-12-18 18:42:17 +01:00
Federico Amedeo Izzo
95a8e99605
kbd_task: Send keyboard event when the key is pressed, not when it's lifted
2020-12-18 18:42:17 +01:00
Niccolò Izzo
98cd741c88
Adjust voltage thresholds
2020-12-18 17:46:15 +01:00
Niccolò Izzo
9df60008a2
Change long press interval to half a second
2020-12-18 10:27:29 +01:00
Federico Amedeo Izzo
400a766f54
kbd_task: improve long-press behaviour
2020-12-17 23:15:56 +01:00
Federico Amedeo Izzo
e59085a85e
Increase keyboard stack size on ARM targets
2020-12-17 22:36:36 +01:00