vk7js
d68f01ffbc
Insert voice prompt utility function in UI code
...
Began calling voice prompt utility functions from places such as:
1. arrowing up and down in VFO mode (read new frequencies)
2. up and down in memory mode: read new channel name.
3. up and down in VFO input mode: announce receive or transmit,
4. when starting to enter a frequency: announce receive and the first digit.
2022-10-28 08:30:46 +02:00
vk7js
27d1329ac7
Added a few prompts for M17 and DMR used on the UIMode screen but which do not need strings in the strings table as they are displayed in abbreviated form.
2022-10-28 08:30:46 +02:00
vk7js
2373d8374c
more string extraction. moved prompt_fm and prompt_dmr to string table as they are needed by the UI.
2022-10-28 08:30:46 +02:00
vk7js
fd5c5b4979
Got voice prompts code compiling. (certain blocks are commented out until we get codec2 decode figured out).
2022-10-28 08:30:46 +02:00
vk7js
bc5289453e
Round one of adding strings to string table and wordlists.
2022-10-28 08:30:46 +02:00
vk7js
10ddd88f69
Cleanup code to adhere more to coding standard.
...
Got it compiling.
2022-10-28 08:30:46 +02:00
vk7js
c0a04c5564
Adding voicePromptUtils.h/c which will contain the actual functions which call the building blocks to speak radio functions.
2022-10-28 08:30:46 +02:00
vk7js
cdda2a5b90
Added voice prompt for channel.
2022-10-28 08:30:46 +02:00
vk7js
af76afb521
Added vpQueueFrequency to speak frequency with proper handling of decimal place and addition of MHz.
2022-10-28 08:30:46 +02:00
vk7js
1d7432ae3b
Reworked all symbols so that they can be processes via a lookup rather than by individual tests. Added more flags so we can optionally speak different categories of symbols.
2022-10-28 08:30:46 +02:00
vk7js
d5568b8ab3
Adding voice prompts skeleton.
2022-10-28 08:30:46 +02:00
Silvano Seva
bf8a257c2b
Implemented reference counting inside codec2 management module, allowing for multiple calls of codec_init()
2022-10-28 08:30:46 +02:00
Silvano Seva
91d608cc6b
Small reorganization of threads and tasks
2022-09-08 09:11:00 +02:00
Silvano Seva
94baec6981
Changed the granularity of VFO frequency input mode from tens to hundreds: this reduces the number of digits to be inserted to seven and avoids the line to overflow towards the bottom
2022-09-02 07:54:32 +02:00
Silvano Seva
b5fc9b252d
Moved code of compensating filter for MDx PWM-based DAC to a dedicated class.
2022-08-28 12:17:04 +02:00
Silvano Seva
b26d783429
Small optimisation of UI management: perform an update and render of the graphics only when necessary
2022-08-28 11:49:03 +02:00
Silvano Seva
84d66ca1b3
Changed parameters of ui_pushEvent(): now it accepts event type and payload instead of a single element, this cleans the code up a little bit
2022-08-10 18:05:02 +02:00
Silvano Seva
1bb574c4fa
Reorganised graphics module and moved graphics.h from interfaces to core folder
2022-07-18 21:30:43 +02:00
tarxvf
ac3c8ea711
Renamed sat_t data structure to gpssat_t, changed signedness of point_t coordinates from unsigned to signed.
...
rename sat_t to gpssat_t to avoid future name collisions
allow signed values in point_t to allow relative values
fix crash when attempting to 'draw' negative absolute pixel values (like when zooming a map)
2022-07-10 09:13:47 +02:00
Silvano Seva
54aa794bf8
Changed file extension of all C++ only header files from .h to .hpp
2022-07-09 18:22:36 +02:00
Silvano Seva
34c90c2485
Moved FIR filter class to a dedicated header file
2022-07-09 18:07:42 +02:00
Silvano Seva
5f40ceceb3
Added field to state data structure containing the current operating state of the device. Implemented clean shutdown of all the threads.
2022-07-02 10:47:19 +02:00
Silvano Seva
810daf7599
Reorganised system initialisation sequence, improved reactivity of UI and device threads
2022-07-02 10:47:19 +02:00
Silvano Seva
23a1a38a3a
Moved mutex for concurrent access to radio state inside state.h/.c, minimized the time spent with state mutex locked when updating the GPS data fields
2022-07-02 10:47:19 +02:00
Silvano Seva
101b33ce6b
Merged keyboard and UI threads, merged GPS and device threads.
2022-07-02 10:47:18 +02:00
Silvano Seva
4528e102a2
Moved the UI event queue inside the UI engine itself, UI FSM update now becomes a periodic task
2022-07-02 10:28:28 +02:00
Silvano Seva
2fc89bf583
Renamed 'HAS_GPS' and 'HAS_RTC' to, respectively, 'GPS_PRESENT' and 'RTC_PRESENT'
2022-07-02 10:28:28 +02:00
Silvano Seva
6d10f52b5b
Clean termination of all the threads on device shutdown
2022-07-02 10:28:28 +02:00
Silvano Seva
52ead401bd
Reorganised GPS task to make it a non-blocking task to be called periodically
2022-07-02 10:28:28 +02:00
Silvano Seva
d16eb04696
Reorganised data structures and functions to manage date and time
2022-07-02 10:28:28 +02:00
Silvano Seva
45d919f50f
Reorganised GPS driver to allow for non-blocking acquisition of NMEA sentences
2022-07-02 10:28:28 +02:00
Silvano Seva
3cc5852ef3
Refactored keyboard thread by moving the keypad scan logic to a dedicated function inside input.h
2022-07-02 10:28:28 +02:00
Silvano Seva
8b5b6ed571
Moved OpenRTX startup code from main.c to dedicated openrtx_init() and openrtx_run() functions in a separate source file.
2022-06-02 10:01:34 +02:00
Silvano Seva
316e588bc3
Updated copyright headers
2022-06-02 09:56:05 +02:00
Niccolò Izzo
ae12a2126a
Implement codeplug read and write functions
...
Implemented remaining codeplug functions to read, write and insert
codeplug entries. Fix bugs in ui code. Add unit tests.
TG-428
2022-06-01 16:05:35 +02:00
Niccolò Izzo
dc250a25d6
Implement new codeplug interface
...
The new codeplug interface was implemented for linux and retrofitted to
all the existing OpenRTX platforms. Limited unit testing was also
implemented.
TG-428
2022-06-01 15:59:27 +02:00
Silvano Seva
cbd3922325
Cleanup and reorganisation of state header file, new OpenRTX CPS data structure
2022-06-01 15:04:17 +02:00
Silvano Seva
c3cfaba4b2
Renamed zones into banks to align to M17 codeplug naming convention.
2022-06-01 14:56:22 +02:00
Silvano Seva
ff7a28ff59
RingBuffer class: implemented eraseElement() function, rewritten the pop() function in a cleaner way, fixed a bug in the pop() function causing the not_full condition variable to be never rised.
2022-05-27 21:49:33 +02:00
Silvano Seva
6be567a781
Implementation of a statically allocated ring buffer with blocking and non-blocking push and pop
2022-05-27 21:48:47 +02:00
Silvano Seva
e5b5daba85
Moved state variables of PWM compensator and DC removal filter outside the function bodies to allow keeping their consistency among function calls
2022-05-27 21:48:47 +02:00
Silvano Seva
b144657257
Moved CODEC2 management to a dedicated module
2022-05-27 21:48:47 +02:00
Silvano Seva
5c90c19bea
Data conversion utilities
2022-05-27 21:48:47 +02:00
Silvano Seva
ab3d148449
Implemented activation of external flash backup and restore via menu entries
2022-03-22 15:10:52 +01:00
Silvano Seva
a1c26b2898
Simple utility functions for backup and restore of external flash memory content
2022-03-22 13:39:08 +01:00
Silvano Seva
f513454acf
Implementation of xmodem data reception
2022-03-21 17:36:27 +01:00
Niccolò Izzo
48824accb9
Add flash backup and restore menu
...
Add flash backup and flash restore entries to menu system, to access
these functionalities from the radio itself.
TG-428
2022-03-13 00:21:52 +01:00
Silvano Seva
7e3131d9d1
Implemented xmodem data sending
2022-03-12 23:32:31 +01:00
Silvano Seva
e56cf52f28
Partial implementation of xmodem protocol: function for transmission of xmodem packets and small testsuite for dumping the content of external flash memory via xmodem
2022-03-11 19:28:45 +01:00
Silvano Seva
052580df3a
Implementation of CCITT CRC16
2022-03-05 11:08:31 +01:00