Niccolò Izzo
e939218001
Integrate west manifest to facilitate Zephyr build
...
Add west manifest contributed by edgetriggered to allow automated
cloning of the correst Zephyr revision.
Now codec2 dependency is enabled also for T-TWR build, enabling to build
it from scratch without first building a Miosix target.
Enabled non-cross build to use codec2 compiled sources.
2023-10-09 09:23:45 +02:00
marco
0126efe429
Fixed possible undeflow in battery charge level computation. Fix #192 .
...
We check if the battery is below minimum and, if so, assume that the charge
is 0%. This to prevent an underflow which would result in the function
returing a 100% charge level.
2023-09-22 19:32:29 +02:00
marco
77e0ad27a0
Added support for 1750Hz squelch tone, implemented squelch tone in UV-3x0 radio driver.
...
When pressing the Hash key and the PTT key in FM mode
a 1750 Hz tone is transmitted
2023-09-22 13:58:59 +02:00
Silvano Seva
73bfc2a15d
Set proper thread stack size also when using the Zephyr RTOS
2023-09-22 13:57:33 +02:00
Niccolò Izzo
e11c529807
Bump Zephyr to commit a4de2eb3d1756c
...
TODO: the include fixes can be probably refactored by including the
correct zephyr directories, as include/zephyr/posix/pthread.h should
already bringing in those header files.
TG-553
2023-09-20 21:16:43 +02:00
Niccolò Izzo
21895ae304
ttwrplus: disable Tx in menus
...
As T-TWR Plus reuses the PTT as a back button, thus we need to disable
PTT in menus. Also enforce rx_only logic from CPS.
TG-553
2023-09-20 21:16:40 +02:00
Niccolò Izzo
ad1beffcf3
ttwrplus: implemented PMU interrupts handling
...
TG-553
2023-09-20 21:08:35 +02:00
Niccolò Izzo
024c7ffe3a
ttwrplus: fix sporadic missing TX
...
The bug was due to an uninitialized memory being used to configure the
RTX thread, that disabled Tx in a random way by randomly set the
txDisable field.
TG-553
2023-09-20 21:08:35 +02:00
Niccolò Izzo
0c27c9ce28
Enable Zephyr dynamic stack threads
...
Enable Zephyr dynamic stack posix threading, with stack pool of 4 and
stack size of 4096.
TG-553
2023-09-20 21:08:35 +02:00
Silvano Seva
dd13732343
Fix some compilation warnings generated by xtensa-espressif-gcc
2023-09-20 21:08:35 +02:00
Silvano Seva
ebc5910015
Renamed "bcd2bin" utility to "bcdToBin" to avoid conflicting with Zephyr includes
2023-09-20 21:08:35 +02:00
Silvano Seva
7ce3a8a605
Fix compilation error caused by voiceprompts data section definitions
2023-09-20 21:08:35 +02:00
Marco
1a7d62fb42
Add UI and check for CAN on RX
2023-09-16 19:14:17 +02:00
Silvano Seva
c49ae03d01
Audio stream: fixed missing NULL pointer check in audio device driver selection.
2023-09-13 22:26:41 +02:00
Silvano Seva
c9cd620530
Audio codec: added function returning the codec's current operational status
2023-08-30 18:04:25 +02:00
Silvano Seva
fc5e3b0bce
Audio stream: cleanup dead streams while searching for an empty slot
2023-08-30 18:04:25 +02:00
Silvano Seva
e610979ac7
Codec2: second round of refactoring and implemented proper access contention in codec_startEncode()
2023-08-30 18:04:25 +02:00
Silvano Seva
5b3e136127
Audio codec: using a single condition variable for queue wait management.
2023-08-30 18:04:25 +02:00
Silvano Seva
dd118d0a87
Adapted voice prompt and M17 code to new codec2 API
2023-08-30 18:04:25 +02:00
Silvano Seva
94fdd1090b
Refactoring and improvement of codec2 module
2023-08-30 18:04:25 +02:00
Silvano Seva
7d90d15a5f
Adapt code to the new audio stream API.
2023-08-30 18:04:25 +02:00
Silvano Seva
24208db609
New unified audio stream manager
2023-08-30 18:04:25 +02:00
Silvano Seva
adf88611f4
Changed codec_startEncode() and codec_startDecode() input parameter from an audio source/sink to an audio path
2023-08-30 18:04:25 +02:00
Silvano Seva
60b771b375
Added function to get all the informations of a given audio path
2023-08-30 18:04:25 +02:00
Silvano Seva
1011dd1081
Moved audio_stream.h from interfaces to core headers
2023-08-30 18:04:24 +02:00
Ryan Turner
ec57e74bc6
feat(ui): add tooling to generate symbols, add GPS status icon and macro latch icon to the macro menu
...
Ref https://github.com/OpenRTX/OpenRTX/issues/161
2023-08-24 09:32:01 +02:00
k5jae
c1a9db22b7
Made Brightness setting optional based on HW capabilities
2023-08-16 20:46:25 +02:00
Silvano Seva
28122a3bf3
Moved gps.h to peripherals
2023-07-21 08:32:26 +02:00
Silvano Seva
009930f914
Moved get/set of current time to platform interface API
2023-07-21 07:58:29 +02:00
Silvano Seva
498f959798
Removed CPS flash backup and restore (actually unused) and hidden its UI menu entry
...
CPS flash backup and restore will be implemented via rtxlink/FMP, removed
current implementation which was never actually used. Code for backup and
restore UI menu entry kept for now.
2023-07-20 07:00:54 +02:00
Silvano Seva
8019b29947
Moved the setBacklightLevel() API function from platform.h to display.h
2023-07-14 12:26:47 +02:00
Silvano Seva
e5b3ea1bed
Set default opmode to M17 in cps_getDefaultChannel() when compiling for Module17
2023-06-15 08:21:38 +02:00
Silvano Seva
2f0d56a8e0
Moved M17 destination callsign directly inside radio state data structure
2023-05-29 22:12:40 +02:00
Silvano Seva
423183700c
Moved M17 CAN to settings
2023-05-29 22:12:40 +02:00
Silvano Seva
f42b9d2cda
Implemented transmission of user-configured M17 channel access number
2023-05-29 22:12:40 +02:00
Silvano Seva
76ded06751
Split UI sources in a default one for the radios and the Module17 one.
2023-05-29 22:12:40 +02:00
marco
7ce72d8325
Fix default channel index
...
it should be 0 instead of 1
2023-05-29 08:49:04 +02:00
Silvano Seva
a89a7523cb
Updated year in copyright headers
2023-02-08 16:33:02 +01:00
Silvano Seva
ae8bba88b6
Updated voice prompt for UTC timezone to support also half hour values, thanks to Joe VK7JS.
2022-10-31 18:04:08 +01:00
Silvano Seva
ce1dc202ae
Added support for half-hour timezones, moved datetime_t struct fields from bitfields to full 8-bit variables, added function to adjust the off-range fields of a datetime_t struct.
2022-10-31 11:41:54 +01:00
Silvano Seva
f26afc42e5
Small reorganization and cleanup of splash screen code, fixed bug causing audio path for voice prompts never being released at vp end
2022-10-31 08:41:31 +01:00
vk7js
d5d49fbbb2
Refactored to decouple vp_init from speaking of splash screen.
2022-10-31 08:41:31 +01:00
Silvano Seva
16d750c55c
Excluded announcement of time and date settings for devices without RTC
2022-10-31 08:41:31 +01:00
Silvano Seva
dd30c899df
Added a 50ms startup delay to voiceprompts. This provides a workaround to fix cracking sounds when changing rtx parameters on MD-UV3x0.
2022-10-31 08:41:31 +01:00
Silvano Seva
c6a40a9625
Ensure proper syncronization between codec2 decode thread and output stream when the former is started
2022-10-31 08:41:31 +01:00
Silvano Seva
0692bea269
Partial fix for speaker pop when a voiceprompt begins
2022-10-31 08:41:31 +01:00
Silvano Seva
5ee3a2e9f0
Reorganised codec_pushFrame and codec_popFrame functions for true non-blocking behaviour
2022-10-31 08:41:31 +01:00
vk7js
793a76d1ea
When PTT is pressed, stop any voice prompt or beep in process.
2022-10-31 08:41:13 +01:00
Silvano Seva
f9228ec23c
Halved the additional output gain for MD3x0 radios inside codec2 module to avoid sound distortion when voice prompts are played.
2022-10-28 09:47:47 +02:00
Silvano Seva
71a15c2cfb
Fixed bug in voice prompts audio path management causing no audio output in case of rapid key sequences. Improved managment of audio path release in voice prompts module.
2022-10-28 09:47:47 +02:00
Silvano Seva
2c1401de86
Moved voiceprompts audio management to audio path system
2022-10-28 09:47:47 +02:00
Silvano Seva
25caffde6b
Linked audio path manager with low-level interface API to setup and release the audio paths. Minor refactoring of audio path manager code.
2022-10-28 09:47:47 +02:00
Silvano Seva
6d9ad2b947
Implementation of audio path manager
2022-10-28 09:47:47 +02:00
Silvano Seva
5fb11322ac
Code cleanup and refactoring of voice prompts code
2022-10-28 09:47:47 +02:00
vk7js
c7c9c3afc5
Fixed issue of m17 destination not being spoken in summary (long hold f1) if set to broadcast.
2022-10-28 09:47:47 +02:00
vk7js
7cc287643e
Added Broadcast to string table for use with voice prompts. Cleaned up hash key announcement.
2022-10-28 09:47:43 +02:00
vk7js
c2f349c93d
More improvements to auto GPS screen readout
...
Read fix quality and type changes.
Read satellite count changes.
Reduced minimum time between readouts to 8 seconds.
say km/h instead of kmh for speed.
2022-10-28 08:30:47 +02:00
vk7js
dbc86ea392
Give leeway for nw/ne/sw/se within a few degrees like n/e/s/w.
2022-10-28 08:30:47 +02:00
vk7js
7cc0c6455c
Now better handle directions, and speak prior to other info as most important.
...
Handle 8 cardinal points north, east, south, west, north east, south east, south west and north west.
2022-10-28 08:30:47 +02:00
vk7js
4ba9b3ec34
Fixed memory overrun caused by buffer being too small.
...
Also fixed satellite count which got broken when I changed the GPS info flags to add more.
2022-10-28 08:30:47 +02:00
vk7js
fbc4e380b3
Moved latitude and longitude to after direction in announcement because these are less meaningful than the other parameters.
2022-10-28 08:30:47 +02:00
vk7js
f1639159bf
fixed issue of auto announcement clobbering manual request for summary.
...
Fixed a couple of issues with direction announcement.
2022-10-28 08:30:47 +02:00
vk7js
4edef678c1
fixed south and west.
2022-10-28 08:30:47 +02:00
vk7js
4e1689df51
Cleaned up GPS direction info so we say north, east, south, west when the tmg is within a close enough range.
2022-10-28 08:30:47 +02:00
vk7js
5829df6dd3
Now read speed, altitude and direction changes on the GPS screen automatically with a forced minimum of 10 seconds between readings to avoid a bit of hysterisis .
...
Can still get full summary on long hold f1.
2022-10-28 08:30:47 +02:00
vk7js
3ba094f633
Minor cleanup of beep code.
2022-10-28 08:30:47 +02:00
vk7js
104f18d9e9
Added vp_beepSeries to play a melody.
...
Now play melody on power up if vp level set to Beep.
2022-10-28 08:30:47 +02:00
vk7js
dc285ab023
Moved beep definitions into header beeps.h.
2022-10-28 08:30:47 +02:00
vk7js
da7dfe63b2
Avoid calling beep if we know the voice will announce something since it will be
...
canceled and most likely generate an unwanted click.
2022-10-28 08:30:47 +02:00
vk7js
eb89f5a55a
Now play generic beep on any key press as well as different tones when navigating the menu, when menu item wraps, and when function key latches and unlatches if voice prompt level is set to beep.
2022-10-28 08:30:47 +02:00
vk7js
a1e302b19d
Got beeps working so long as you don't have ctcss set.
...
Reduced durations to sensible values.
2022-10-28 08:30:47 +02:00
vk7js
3c20a5282e
Fixed nasty popping between every voice prompt and after every silence.
...
When retrieving the codec2 data, ensure it is an exact multiple of codec2 frames and always discard the very last frame.
2022-10-28 08:30:47 +02:00
Silvano Seva
80f6fe2289
Stopping audio codec at the and of each voice prompt
2022-10-28 08:30:47 +02:00
vk7js
0298aa897b
Implemented beeps on MD-UV3x0 platform driver.
2022-10-28 08:30:47 +02:00
vk7js
32fd910e64
Fixed warnings.
2022-10-28 08:30:47 +02:00
vk7js
6a56fe3d3a
Fixed satellite count readout.
2022-10-28 08:30:47 +02:00
vk7js
a71a06c57a
1. Renamed beepTick to beep_tick for consistency.
...
2. Made beep_tick static.
3. call beep_tick from top of vp_tick because in its prior location it might
not actually be called.
2022-10-28 08:30:47 +02:00
vk7js
a081964ac8
Fixed Backup and Restore menus as follows:
...
1. Fixed issue of voice not reading backup or restore messages but instead
stuttering indefinitely.
2. Can now press cancel to exit the menu so long as you haven't pressed PTT to
start the process.
2022-10-28 08:30:47 +02:00
vk7js
f8bfc7fb13
Added mechanism for specifying exactly what is read in the summary.
2022-10-28 08:30:47 +02:00
vk7js
495b721231
Fixed setting of CTCSS and tone so that one can rapidly change tone without hearing the word "tone", "receive tone," "transmit tone" etc prior to each tone value.
2022-10-28 08:30:47 +02:00
vk7js
c9ce41a999
Initial beep implementation.
...
Function latch will play high beep when latched and low beep when latch times out.
Menus will play a high beep when you arrow through them and a low beep when you reach the first item.
All keys should play a generic beep sound but this has not been implemented yet.
2022-10-28 08:30:46 +02:00
vk7js
95b7707d87
Implemented speech feedback for setting UTC timezone.
...
Added speaking of negative sign for vp_queueInteger (plus is assumed if not negative).
2022-10-28 08:30:46 +02:00
vk7js
9a250ec994
Added speech feedback to settings/display/timer menu.
2022-10-28 08:30:46 +02:00
Silvano Seva
e5de5b96a3
Fixed announcement of power level both in settings menu and channel summary
2022-10-28 08:30:46 +02:00
vk7js
0452bd0f10
Added voice feedback for setting the time and date.
2022-10-28 08:30:46 +02:00
vk7js
ac7a2b94a9
Adjusted vp_anounceBuffer to distinguish between a callsign buffer and a regular name buffer.
2022-10-28 08:30:46 +02:00
vk7js
c0eba3866e
Added voice feedback for the M17 Settings Menu:
...
1. Added vp_announceBuffer to speak a prompt, edit mode and string buffer.
2. Added logic to the vp_announceScreen for m17Settings read-only mode.
3. Added logic for handling edit mode.
4. Removed vpCaps flag from several places because it is irrelevant when input only supports caps.
2022-10-28 08:30:46 +02:00
vk7js
579ce7baa5
Removed the word "banks" from channel summary since name of bank or "all channels" is sufficient by itself.
2022-10-28 08:30:46 +02:00
vk7js
5ed0121780
Fixed announcement of channel number/name in summary and when changing channel.
2022-10-28 08:30:46 +02:00
vk7js
30e8671044
If there is no GPS fix, do not announce lat, long, ...
2022-10-28 08:30:46 +02:00
vk7js
9f52c98c2f
Removed unnecessary trailing zeros from lat/long announcement.
2022-10-28 08:30:46 +02:00
vk7js
2139f5e391
Refactored to add generic function for speaking int settings. Made brightness and contrast prompt use this.
2022-10-28 08:30:46 +02:00
vk7js
9f5a45954d
When GPS is disabled, and you choose the GPS menu item, announce GPS off rather than nothing.
2022-10-28 08:30:46 +02:00
vk7js
8cb9272881
Added vp_announceScreen to automatically announce informational screens such as VFO, channel, ...
2022-10-28 08:30:46 +02:00
Silvano Seva
158b38d113
Clearing buffer index and length of codec2 data when the reproduction of a voice prompt is completed
2022-10-28 08:30:46 +02:00
Silvano Seva
cad026f902
Renamed vp_clearCurrPrompt() to vp_flush(), added a vp_stop() function allowing to stop an in-progress voice prompt but without flushing the data buffer
2022-10-28 08:30:46 +02:00
Silvano Seva
d81a4220d1
Fixed voice prompt bugs
...
Fixed following voice prompt bugs:
1. Now say OpenRTX when powering on if vp enabled to let user know radio is on.
2. When switching back to VFO or channel mode from menus, now anounce VFO info or channel info.
3. When entering first digit of frequency in VFO input mode, say it.
4. Refixed issue of concatenating menus rather than clearing menu.
2022-10-28 08:30:46 +02:00
Silvano Seva
1383e3d61e
Reset prompt buffer position to zero once VP had finished speaking so that another play would replay the buffer
2022-10-28 08:30:46 +02:00
Silvano Seva
99408a5455
Added function to announce generic on/off toggle settings.
2022-10-28 08:30:46 +02:00
Silvano Seva
33867ec009
Fixed speaking of voice prompt level when changing from the menu.
2022-10-28 08:30:46 +02:00