Niccolò Izzo
2fdbf0f236
Initial support for I2C soft pots on Module17
...
Initial support for I2C soft pots on Module17, ADC1 driver for input voltage
reading. Cherry-picked from Mathis DB9MAT repo.
TG-398
2021-12-23 14:52:25 +01:00
Silvano Seva
d4ba8a5b9c
Moved new display driver for Module_17 to 'SH110x_Mod17.c', restored and kept old one
2021-11-27 10:10:12 +01:00
Silvano Seva
6aece95e98
Fixed license header
2021-11-27 08:23:59 +01:00
Wojciech Kaczmarski
5d63c0fe63
display fix for 0.1c
2021-11-27 08:09:39 +01:00
Mathis Schmieder
e9a6b0261e
Fixed compilation for Module17
2021-11-27 08:09:39 +01:00
Mathis Schmieder
3d987a8ae8
Fixed reversed Enter and ESC keys for Module17
2021-11-27 08:09:39 +01:00
Mathis Schmieder
22a0d73fbc
Initial fix for Module17 r0.1c display
2021-11-27 08:09:39 +01:00
Mathis Schmieder
55c0b0d868
Module17 platform changes for revision 0.1c
2021-11-27 08:09:39 +01:00
Mathis Schmieder
4811838cb8
Module17: implemented keyboard driver, updated display, output audio stream and platform drivers
2021-11-24 19:53:48 +01:00
Silvano Seva
83b0182057
Implementation of audio output stream driver for Module 17
2021-11-24 19:53:48 +01:00
Silvano Seva
cc00cce982
Driver for input audio stream on Module17
2021-11-24 19:53:48 +01:00
Silvano Seva
38231e3a53
Driver stubs for keyboard and non volatile memory on Module17
2021-11-24 19:53:48 +01:00
Mathis Schmieder
7bfa2336d7
Driver for SSD1306 SPI display driver on Module17
2021-11-24 19:53:48 +01:00
Silvano Seva
a0d9161e1d
Very preliminary support for Module17, providing only the files and configurations essential for a minimal bootstrap of the OpenRTX firmware
2021-11-24 19:53:48 +01:00
Silvano Seva
036f74c69e
Removed call to rtc_terminate inside MDx platform_terminate, as this freezed RTC on radio power off
2021-11-12 22:46:11 +01:00
Silvano Seva
38c6a7fee6
Fixed bug in MD3x keyboard driver causing the generation of an UP keypress at boot ( #48 )
2021-11-10 19:29:34 +01:00
Silvano Seva
691b388228
Implemented load/save of settings and VFO configuration for MDx devices
2021-11-09 19:28:23 +01:00
Silvano Seva
756812ca31
Created function for writing settings and VFO status to NVM, starting of temporary implementation writing data to the MCU's internal flash
2021-11-08 22:22:26 +01:00
silseva
bbf77c4ab0
Simple driver for erase and write of MCU's internal flash
2021-11-08 17:10:00 +01:00
tarxvf
2ec8a3c264
bracing style and attribute unused to void cast in libSDL display driver
2021-11-03 19:20:42 +01:00
tarxvf
588265fa3d
astyle applied to try and match current OpenRTX style - just doesn't work on the header block
2021-11-03 19:20:42 +01:00
tarxvf
f451ff8aae
unused args cast to void instead of __attribute__
2021-11-03 19:20:42 +01:00
tarxvf
3ded05a6dc
update the linux emulator scriptability for the knob values
2021-11-03 19:20:42 +01:00
tarxvf
45228e226e
just the emulator shell broken out
2021-11-03 19:20:42 +01:00
Niccolò Izzo
156f31cde4
Fix typo in license header
2021-10-12 12:36:52 +02:00
Silvano Seva
b58fbd6760
Fixed syntax error in MD3x0 and UV3x0 radio drivers
2021-10-08 19:34:08 +02:00
Niccolò Izzo
65a632054a
Disable CTCSS tones in M17 mode
...
Removed CTCSS modulation for M17 mode, removed FM analog specific
settings in macro menu such as tone selection, tone enable and tx
bandwidth.
2021-10-08 16:02:03 +02:00
Silvano Seva
42e7521205
Fixed compilation error with GDx targets
...
Added codec2 as a dependency also for GD77, DM1801 and MD9600 targets to allow compilation of OpMode_17.cpp file
Stub input audio stream driver for GDx targets
2021-10-06 21:43:07 +02:00
Silvano Seva
952ce4b38f
Added codec2 as meson run time dependency when compiling for linux target, substituting the static library compiled from sources.
...
Stub input audio stream driver for linux x86/x64 platform.
2021-10-06 19:35:46 +02:00
Silvano Seva
5113a39f2a
Enabled M17 support also in MD-UV3x0 radio driver
2021-09-21 12:02:32 +02:00
Silvano Seva
431ba17b26
Modified HR_Cx000::setInputGain() function to accept a value expressed in dB instead of a raw binary value to be written directly inside the chip's register
2021-09-21 12:01:31 +02:00
Silvano Seva
bc775e2358
Fixed bug in MDx implementation of input stream API: inputStream_stop function turned off DMA clock gating and, consequently, stomped DMA transfers towards the LCD
2021-09-19 15:15:03 +02:00
Federico Amedeo Izzo
118c514081
UI: Add digital mode screen
...
Use main screen bottom bar in mode screen
mode screen: Move frequency and channel name to center
Show S-meter without squelch bar for digital modes
Change S-meter for digital modes, add audio level meter
Print FM information in mode screen
Add mode screen fonts
2021-09-03 16:44:57 +02:00
Silvano Seva
92ea1535ff
Moved definition of 'PLATFORM_LINUX' macro from hwconfig to meson.build, added '-std=c++14' compilation flag to compile arguments for linux platform, added missing includes to M17Utils.h
2021-09-03 16:44:57 +02:00
Silvano Seva
be21364b30
Made 'toneGen_playAudioStream' a non-blocking function, added 'toneGen_waitForStreamEnd' API function to allow blocking execution flow until a currently playing audio stream terminates or is stopped
2021-09-03 16:39:06 +02:00
Silvano Seva
db3efb21be
Added to MDx tone generator driver a function to interrupt an audio stream before its natural completion
2021-09-03 16:39:06 +02:00
Silvano Seva
943838c263
Fixed bug affecting management of data buffers inside MDx implementation of inputStream API
2021-08-27 14:26:16 +02:00
Silvano Seva
9650ff5925
Removed macro disabling by default the USB virtual COM port, which is now permanently enabled.
2021-08-26 10:22:55 +02:00
Silvano Seva
f3c6e92911
Driver for input audio stream on MDx
2021-08-25 18:34:41 +02:00
Silvano Seva
d329e141ed
Fixed wrong conversion in GDx ADC driver
2021-08-15 18:05:23 +02:00
Silvano Seva
4d3eacc144
Switched 'v_bat' and 'charge' fields of state struct from float to, respectively, uint16_t and uint8_t and updated UI functions accordingly. Rationale for this change is providing better support for future platforms without hardware floating point unit.
2021-08-14 12:56:45 +02:00
Silvano Seva
a7acc3301b
Modified 'platform_getVbat' API: now it returns an uint16_t value containing the battery voltage in millivolt
2021-08-14 12:47:21 +02:00
Silvano Seva
8e0a5d1c0f
Made 'platform_getVolumeLevel' and 'platform_getMicLevel' API functions return a normalised 8 bit value ranging from 0 to 255 (TG-293 #closed)
2021-08-14 10:18:55 +02:00
Silvano Seva
379f5aa71b
Refactoring of GDx ADC1 driver: added function allowing to retrieve the raw conversion value, changed return value of 'adc1_getMeasurement' from float to uint16_t
2021-08-14 10:18:55 +02:00
Silvano Seva
5dc2ba25d8
Refactoring of MDx ADC1 driver: removed DMA, added function allowing to retrieve the raw conversion value, changed return value of 'adc1_getMeasurement' from float to uint16_t (TG-276 #closed)
2021-08-14 10:18:55 +02:00
Federico Amedeo Izzo
c69c2be478
Fixed external microphone sticky PTT button on MD-UV380
2021-08-14 10:02:34 +02:00
Silvano Seva
f286245f4f
Fixed USART ISR handler in MDx GPS driver to prevent it from exiting without clearing the interrupt flags when no thread is registered for wakeup (TG-271 #closed)
2021-08-13 17:01:32 +02:00
Silvano Seva
379b487f64
Added macro allowing to enable the SWD debugging interface on MDx devices (TG-272 #closed)
2021-08-12 19:46:41 +02:00
Federico Amedeo Izzo
07e1f28f79
Fix sticky PTT button on MD-UV380 by removing double initialization of PTT_SW gpio.
2021-08-11 20:53:54 +02:00
Silvano Seva
b80ddc1145
Implemented reading of PTT status from external microphone on MD-3x0 and MD-UV3x0
2021-07-10 21:52:15 +02:00
Silvano Seva
466b405bba
Fixed compiler warning generated by unused parameters in STM32F4xx USART3 diver
2021-07-10 21:39:47 +02:00
Silvano Seva
c48405659b
Added initialisation of MD3x0 debug USART to miosix bsp init function
2021-07-09 08:53:12 +02:00
Silvano Seva
eb474d6bee
Driver for STM32F4 USART3, can be used as a debug serial interface on MD3x0 devices without GPS and is enabled by defining the macro MD3x0_ENABLE_DBG
2021-07-09 08:53:12 +02:00
Federico Amedeo Izzo
a8b838bd47
On Linux target emulate PTT button with P key
2021-07-08 20:24:27 +02:00
Silvano Seva
fdd50c114c
Fixed wrong mic gain value in MD3x0 radio driver
2021-06-09 11:48:25 +02:00
Federico Amedeo Izzo
70a0eeaf29
Fix GD77 codeplug channel mode reading
2021-06-06 10:47:02 +02:00
Federico Amedeo Izzo
1f74c0abb7
Add `VCOM_ENABLED` define to disable VCOM that is currently broken
2021-06-06 10:13:51 +02:00
Silvano Seva
96abae4bad
Temporary workaround to fix compilation error with MD-9600 due to not yet defined GPIOs for audio control, still to be identified.
2021-06-05 21:43:10 +02:00
Silvano Seva
6995230d8f
Extended 'mode' field in CPS data structure to 8 bits, to align its size to the one contained in rtxStatus_t. Modified code for channel data loading in NVM drivers to align it to the new opMode enum values.
2021-06-05 21:21:12 +02:00
Federico Amedeo Izzo
57b66652b7
Use channel knob to change frequency and navigate menus (TG-238)
2021-06-05 18:11:30 +02:00
Federico Amedeo Izzo
c653535e68
Remove old band and limits defines, now replaced by hwInfo_t
2021-06-05 11:27:20 +02:00
Federico Amedeo Izzo
f5c9d97e49
Check frequency limits against hwInfo_t, not hardcoded defines
2021-06-05 10:47:52 +02:00
Silvano Seva
35de41c505
Reduced printf verbosity of linux radio driver
2021-06-03 14:59:59 +02:00
Silvano Seva
66552be403
Added function to radio API allowing to fine tune the radio's VCXO polarisation voltage. Currently, this functionality is effective only on MD-3x0 devices. (TG-195 #ready-for-test)
2021-06-03 14:50:47 +02:00
Silvano Seva
b29b24fdc0
Implemented RX tone squelch on MD-UV3x0 and GDx (TG-43)
2021-06-02 12:44:46 +02:00
Silvano Seva
fdba408831
Improved registers documentation in HR_C5000 and HR_C6000 drivers
2021-05-29 08:20:12 +02:00
Silvano Seva
4d68f02ab4
Updated documetation for radio.h API, removed old baseband C source files.
2021-05-29 08:20:12 +02:00
Silvano Seva
bbdfdd1068
Added support for MD-380 VHF devices. (TG-188)
2021-05-29 08:20:12 +02:00
Silvano Seva
2d517d5bf8
New radio driver for GDx. Renamed some entries in GDx calibration data structure
2021-05-29 08:20:12 +02:00
Silvano Seva
87d9b733e6
Fixed wrong bitmask in AT1846S::setRxAudioGain. Moved getBandFromFrequency function to a dedicated file, in common for all dual-band radio drivers.
2021-05-29 08:20:12 +02:00
Silvano Seva
e7b48b14a5
Updated radio driver stub for linux platform
2021-05-29 08:20:12 +02:00
Silvano Seva
4a080d881a
Finalised MD-UV3x0 radio driver, now supporting also cross-band operation (TG-186)
2021-05-29 08:20:12 +02:00
Silvano Seva
f1a01d7613
New radio driver for MD-UV3x0, testing required
2021-05-29 08:20:12 +02:00
Silvano Seva
f0dfd7036f
Fixed bug in OpMode_FM.cpp which prevented entering in RX mode, removed code for setting input gain in HR_C5000 driver, modified meson.build to make it compile the new sources
2021-05-29 08:20:12 +02:00
Silvano Seva
850e3580ed
New radio driver for MD-3x0 platform, still requiring a bit of debugging
2021-05-29 08:20:12 +02:00
Silvano Seva
529b108771
Added to HR_Cx000 driver a function for setting the gain of the audio input stage.
2021-05-29 08:20:12 +02:00
Silvano Seva
887d95ec58
Created 'wrappers' subfolder in platform/drivers/baseband containing the C wrappers for the AT1846S, HR_C5000 and HR_C6000 drivers
2021-05-29 08:20:12 +02:00
Silvano Seva
11161fa64a
Moved to C++ and refactored HR_C5000/HR_C6000 drivers, grouping common code. A C-callable wrapper is also provided. TG-37
2021-05-29 08:20:07 +02:00
Silvano Seva
d95e36f43b
Moved to C++ and refactored AT1846S driver, grouping common code. A C-callable wrapper is also provided. TG-37
2021-05-29 08:19:47 +02:00
Silvano Seva
a6c638b063
Updated code attributions and informations about licensing of part of the codebase
2021-04-21 10:07:34 +02:00
Silvano Seva
63e68b642a
Audio management module for x86/64 target, only providing empty stubs since there is no hardware to control
2021-04-12 19:16:47 +02:00
Silvano Seva
c070060b0a
Fix error in ADC conversion sequence when compiling for MD-3x0
2021-04-12 19:10:45 +02:00
Silvano Seva
c0ecf2e13f
Basic audio management module, controlling only speaker PA and microphone preamplifier. TG-61
2021-04-12 19:10:13 +02:00
Silvano Seva
7209414a2b
Fixed error in ADC conversion sequence in MD-3x0 platforms, improved behaviour of 'platform_pwrButtonStatus' in targets having the power switch on the volume knob.
2021-04-11 18:19:08 +02:00
Silvano Seva
1e7c2ceac3
Fixed missing ';' in GD-77 and DM-1801 implementations of 'platform_pwrButtonStatus'
2021-04-11 12:47:22 +02:00
Silvano Seva
1dfcf1b75f
Added missing implementation of 'platform_pwrButtonStatus' in linux platform.c
2021-04-11 12:43:17 +02:00
Silvano Seva
4b30a66735
Added 'platform_pwrButtonStatus' API function, which returns the current status of the power button/knob. Implemented power on/off mechanism on MD-9600
2021-04-11 12:38:20 +02:00
Federico Amedeo Izzo
93d2ede113
Add default contrast setting define
2021-04-11 09:10:08 +02:00
Federico Amedeo Izzo
a17e50edef
Add NVM codeplug support for MD9600
2021-04-10 22:37:32 +02:00
Silvano Seva
944a597d33
Created low-level driver for management of channel selector knobs with quadrature encoder
2021-04-10 19:29:35 +02:00
Silvano Seva
56c598da7e
Created low-level driver for backlight level management
2021-04-10 14:12:15 +02:00
Silvano Seva
cdaf3f38dd
Renamed MDx display, keyboard and spiFlash drivers to MD3x to adapt the changes made to meson.build also to MD-9600. Fixed missing API change in ui_main.
2021-04-10 12:37:45 +02:00
Silvano Seva
c77aebebad
Mapped 'C' and 'D' palmtop keys to, respectively, 'ENTER' and 'ESC' functions in MD9600 keyboard driver
2021-04-10 12:16:21 +02:00
Silvano Seva
db6b427513
Support for palmtop mic keys in MD9600 keyboard driver
2021-04-10 12:16:21 +02:00
Silvano Seva
795d8d4451
Implemented input voltage measurement on MD-9600
2021-04-10 12:16:21 +02:00
Silvano Seva
f9570f3636
Temporary hand-filled hwInfo for MD-9600
2021-04-10 12:16:20 +02:00
Silvano Seva
a15159e7ce
Driver for ST7567 display controller
2021-04-10 12:15:29 +02:00
Silvano Seva
94d3a8f52b
Stub drivers for NVM and radio management on MD-9600
2021-04-10 12:15:29 +02:00
Silvano Seva
e46c77a300
Enabled ADC and NVM manager on MD-9600
2021-04-10 12:15:29 +02:00
Silvano Seva
10e9ac9057
Driver for STM32F4 SPI2, with locking mechanism for concurrent access
2021-04-10 12:15:29 +02:00