Commit Graph

515 Commits

Author SHA1 Message Date
Silvano Seva 7b0ff04a2d Graphics: removed 18pt and 24pt fonts
Removing 18pt and 24pt fonts from graphics layer since currently are unused
and take up flash space. On MD-380, removal freed up 12'928 bytes in the
.text section.
2024-02-01 11:07:20 +01:00
Silvano Seva cb7b605251 Removed use of floating points when printing/announcing CTCSS tone frequency 2024-02-01 11:07:20 +01:00
Silvano Seva 5b3929ef44 Moved from float to uint32_t for TX power, substituted dBm with mW in CPS channel struct
General code optimization allowing to reduce the overall binary size, especially
for devices without hardware floating point support. On the MD-380 (which has the
FPU) the .text size has been reduced of 4'928 bytes.
2024-02-01 11:07:20 +01:00
Silvano Seva dc930f4a4b Added CONFIG_M17 macro to enable M17 support on each target 2024-02-01 11:07:20 +01:00
Silvano Seva 24c4a25b2d Made "static" all the variables local to each translation unit 2024-02-01 11:07:20 +01:00
Silvano Seva e54234f968 Renamed UI_NO_KEYBOARD macro to CONFIG_UI_NO_KEYBOARD 2024-02-01 11:07:20 +01:00
Silvano Seva 8bc867beae Using Kconfig-style #defines for GPS, RTC and knob type description 2024-02-01 11:07:20 +01:00
Silvano Seva 0f4290cdfe Using Kconfig-style #defines for display parameters' description. 2024-02-01 11:07:20 +01:00
Silvano Seva 598f1c4523 M17: deeply restructured the demodulator code
Restructured the M17Demodulator class and rewritten the
demodulator logic to have a more solid lock on the
baseband stream. This fixes the long standing bug of the
demodulator causing random losses of lock even when
receiving a solid baseband stream.
2024-01-27 15:15:37 +01:00
Silvano Seva ddf889177c Frame synchronizer class 2024-01-27 15:15:37 +01:00
Silvano Seva 3375d0b5d1 Correlator class 2024-01-27 12:17:07 +01:00
Silvano Seva 90cf0f6f58 Added reset() method to RingBuffer class 2024-01-27 12:17:07 +01:00
Silvano Seva 275ef16977 Added IIR filter implementation 2024-01-20 14:31:39 +01:00
Morgan Diepart 2653ee01aa M17: added callsign-based squelch for incoming transmissions 2024-01-10 19:03:48 +01:00
Morgan Diepart 5ec0587c48 Added macro menu latching setting 2024-01-10 18:08:35 +01:00
Silvano Seva b1fa154ad9 UI: renamed "Voice Prompts" menu to "Accessibility" 2024-01-10 18:06:48 +01:00
Silvano Seva 096da4102d Utility functions to perform read/write/erase operations on NVM areas and partitions 2023-12-03 19:00:55 +01:00
Silvano Seva 070ed3de32 Device driver for file-based nonvolatile memory storage 2023-12-03 19:00:55 +01:00
Silvano Seva d9b22c1d2d Added function to retrieve the list of available NVM areas 2023-12-03 18:34:39 +01:00
Silvano Seva 7174246492 Standard interface for non volatile memory devices 2023-12-03 18:34:39 +01:00
Marco 5a0f92e23d Add a volume bar in the bottom over the other bars
This will fix #190
2023-11-25 19:08:38 +01:00
Silvano Seva 91c0965007 Module17: made M17 baseband output have correct DC bias and amplitude
Removed an old workaround for an hardware bug of Module17 rev 0.1b limiting
the output swing of baseband signal in newer hardware revisions.

Contribution by Mathis Schmieder DB9MAT.
2023-11-21 18:46:03 +01:00
Silvano Seva 7dc2ca5524 Driver for random number generator peripheral 2023-11-02 18:36:07 +01:00
Morgan Diepart f43281e815 Display callsign on splash screen 2023-10-26 06:01:54 +02:00
Morgan Diepart 1124c76b73 Added M17 destination to settings
# callsign in backed-up settings
2023-10-23 00:40:55 +02:00
Niccolò Izzo 17d5be118e Enable frequency offset input from radio menu
Adapted callsign input to create a frequency input menu, that was used
to enable the input of a frequency offset from the Settings->Radio menu.
2023-10-16 21:50:03 +02:00
Niccolò Izzo 5d3c6c825d Add radio settings for frequency offset, direction, and frequency step.
Add customizable frequency_step in radio state.
Offset is not yet selectable from Settings->Radio but only with keypad
from the VFO screen.
2023-10-16 21:49:56 +02:00
tarxvf 7e291fe6fd Implement UI input lockout logic, toggled by macro menu key 9.
Contribution by tarxvf.
2023-10-16 21:46:37 +02:00
marco 20b0c375aa Change M17_orig to link and change callsign handling
This will swap the first extended callsign with the source callsign
if there is extended callsign data.
This allows to always store the true source in the M17_src variable

See #188
2023-10-13 09:58:34 +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 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 fe027c440c ttwrplus: enable volume control
Replaced KEY_F7 and KEY_F8 with KEY_VOLUP and KEY_VOLDOWN.
Remapped the T-TWR Plus volume up and down keys to those, fixing a bug
in the pmu key detection where the wrong active edge was selected.
Adapt soft volume code for the UV3x0 to control code in the T-TWR Plus
by acting on the AT1846s Rx gain.
For target T-TWR Plus bound long press of KEY_VOLDOWN to macro menu open.
Unbound KNOB_LEFT and KNOB_RIGHT to squelch control and bound
instead KEY_VOLUP and KEY_VOLDOWN.

TG-553
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
Marco 1a7d62fb42 Add UI and check for CAN on RX 2023-09-16 19:14:17 +02:00
Silvano Seva 8fe9837035 Implemented rxSquelchOpen() function for M17 opmode handler, returning true in case of valid stream data. 2023-09-12 17:47:49 +02:00
marco 22afe0ecde Port changes for M17 Call Info to module17 2023-09-12 17:47:49 +02:00
Marco a3fbe34b30 Add symbols for M17 stream data display 2023-09-12 17:47:49 +02:00
Marco a0f5d55cc1 Add M17 stream information to rtxStatus struct 2023-09-12 17:47:49 +02:00
Niccolò Izzo 3860894bff
Implement macro menu without keyboard
Adapt UI for radios that do not have a keyboard, add macro menu UI code
that can only use KEY_ENTER and KEY_UP, KEY_DOWN.

TG-553
2023-09-10 12:12:13 +02:00
marco d7578c4441 Refactor ui sizes
This changes line 3 to line 3 large and adds
two new lines, line 3 and line 4, similar to
line 1 and line 2
2023-09-04 15:12:18 +02:00
Wojciech Kaczmarski ffdc04be3e `m17crypto_t` update
m17crypto_t now conforms to M17 spec
2023-09-04 12:24:05 +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 94fdd1090b Refactoring and improvement of codec2 module 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 584dd356e2 Standard interface for drivers managing audio input and output devices 2023-08-30 18:04:24 +02:00
Silvano Seva 1011dd1081 Moved audio_stream.h from interfaces to core headers 2023-08-30 18:04:24 +02:00
marco 278d7850c7 M17: add data structures for GNSS and extended callsign metadata. 2023-08-28 10:25:46 +02:00