Simon Kueppers
e93be6926f
Doubled CDC serial buffer size, due to instability issues with firmware updates on certain models
2024-07-14 16:40:18 +02:00
Simon Kueppers
92d70d3ec5
Renamed registers
2024-07-14 16:40:18 +02:00
Simon Kueppers
68e1e46ea1
Added debug hooks into audio and PTT system
2024-01-01 17:03:52 +01:00
Simon Kueppers
2fd3f70917
Added various read-only debug registers to register map
2024-01-01 17:03:30 +01:00
Simon Kueppers
e853047a2c
Moved flash definitions into linker file and added explicit invalidation into the programming file. This way the user configuration is lost on each firmware upgrade. Although inconvenient, it's required for now since settings might not be compatible between versions
2023-12-31 16:08:20 +01:00
Simon Kueppers
c0fbd8c746
Made Virtual COS/PTT configurable via new configuration interface
2023-12-31 16:06:35 +01:00
Simon Kueppers
af0ddf9714
Added new settings registers for IO routing and made interaction between UART and PTT configurable
2023-12-31 13:38:32 +01:00
Simon Kueppers
e839f4a119
Added COS abstraction layer
2023-12-30 15:12:26 +01:00
Simon Kueppers
4d08129d49
Modified the CM108 HID report descriptor and set all button presses to unassigned function so as to not interfere with the host system
2023-12-30 15:12:26 +01:00
Simon Kueppers
cd47d69fe1
Implemented first preview of automatic PTT and COS assertion
2023-12-30 15:12:26 +01:00
Simon Kueppers
122c8dd21b
Added functionality to send back linestate reports to host. This is currently not working correctly
2023-12-30 15:12:26 +01:00
Simon Kueppers
43cd92f3bb
Added functionality to send back HID button presses to host
2023-12-30 15:12:26 +01:00
Simon Kueppers
8345f991ec
Added configurability of USB VID:PID (issue #46 )
2023-12-30 15:07:49 +01:00
Simon Kueppers
6c9cfed30a
Adjusted PTT/serial collision code to only examine PTT1 status
2023-12-30 15:07:49 +01:00
Simon Kueppers
3c2e4d7849
Implemented settings module for storing AIOC settings in a register map format
2023-12-30 15:07:49 +01:00
Simon Kueppers
ae56bc7af4
Switched from our own tinyusb bugfix branch to official 0.16.0 release
...
https://github.com/hathach/tinyusb/pull/1828
2023-12-30 15:07:49 +01:00
Simon Kueppers
09bb15d94a
Added additional newlib stubs due to failing build (issue #36 )
2023-09-10 18:52:43 +02:00
Simon Kueppers
036085944b
Improved automatic USB reset feature so that dfu-util does not report an error while detaching the device
2023-03-12 21:44:55 +01:00
Simon Kueppers
b58c847763
Fixed wrong interrupt in NVIC_SetPriority call
2023-03-12 12:34:39 +01:00
Simon Kueppers
8c076abc7e
Reverted to using DTR=HIGH && RTS=LOW for asserting the PTT, since PTT would otherwise interfere during CHIRP programming with some radios (issue #11 )
2023-03-12 12:15:40 +01:00
Simon Kueppers
b5814223f3
Cleaned up USB CDC class and PTT handling. Now the UART transmitter is only enabled during transmission and Hi-Z otherwise
2023-03-12 12:13:50 +01:00
Simon Kueppers
454467fb29
Fixed logic bug in pre-processor clause in watchdog reset with unsupported MCU
2023-03-11 12:38:47 +01:00
Simon Kueppers
9f5cbb7d62
Added post-build script to add dfu-suffix to the firmware binary. This removes the error about missing DFU suffix when running dfu-util.
2023-03-11 12:19:40 +01:00
Aaron Griffith
18e4ad7a13
Added DFU runtime implementation to reboot into on-board DFU bootloader, thus new software can be flashed without the BOOT0 jumper over USB.
2023-03-11 10:45:57 +01:00
Simon Kueppers
7e7c8af252
Added automatic USB-reset when coming out of non-POR reset and added a handler for rebooting into the built-in DFU bootloader
2023-03-11 10:45:57 +01:00
Simon Kueppers
737d6b884d
Implemented CM108-like feedback on interrupt endpoint, whenever a GPIO state changes (which currently happens only if the GPIO output register is being written)
2023-02-26 14:58:16 +01:00
Simon Kueppers
cd458b49bb
Modeled descriptor exactly after CM108 instead of generic 4 bytes unassigned input/output so that the USB hid host driver will actually start polling the interrupt endpoint
2023-02-26 14:58:16 +01:00
Simon Kueppers
786cfc12ba
Fixed wrong usage of write-only BSRR and BRR GPIO registers
2023-02-26 14:58:16 +01:00
Simon Kueppers
b374bc6adf
Added Support for 16 kHz sample rate as well, specifically for direwolf on ARM computers (divides sample rate by 3 by default)
2023-02-24 15:54:06 +01:00
Simon Kueppers
53ec569372
HID input report cleanup
2023-02-24 15:54:06 +01:00
Simon Kueppers
6e77ea22ae
Initial commit for CM108 style HID endpoint PTT support
2023-02-23 16:12:03 +01:00
Simon Kueppers
ae24f73803
Separated PTT control into separate header file
2023-02-23 16:09:39 +01:00
Simon Kueppers
a500d865b4
Fixed typo in USB string
2023-02-21 13:10:08 +01:00
Simon Kueppers
d22d8c0ef7
Added additional sample rates of 12000 Hz, 11025 Hz (with 90 ppm error) and 8000 Hz as required by some applications (such as SoundModem).
2023-02-21 13:02:13 +01:00
Simon Kueppers
e85eb2f287
Changed PTT behaviour from RTS&-DTR to just DTR to enable use of certain applications.
...
For unwanted assertion of the PTT (e.g. in CHIRP), an additional safeguard has been implemented that disables all PTT action whenever a character is sent to the radio. For a lengthy discussion see #11 .
2023-02-21 12:56:37 +01:00
Simon Kueppers
74cedb33e0
Switched to new VID:PID from https://pid.codes . Big thanks!
2023-01-15 15:22:47 +01:00
Simon Kueppers
417b167c28
Switched from usb-stack assisted SOF measurement to pure software solution to keep API compatibility to the original tinyusb
2023-01-08 15:33:26 +01:00
Simon Kueppers
0baac1e155
Fixed return type mismatch in descriptor function
2023-01-08 15:33:26 +01:00
Simon Kueppers
c9cf9b86ed
Cleaned up various files
2023-01-05 19:47:27 +01:00
Simon Kueppers
a0b3e0c968
Implemented USB serial number derived from STM32 unique ID and added several string descriptors for the audio device
2023-01-05 19:23:54 +01:00
Simon Kueppers
76e3a2e48f
Added small fix to workaround errata for USART1 clock to make it performing as accurate as possible
2023-01-05 15:12:14 +01:00
Simon Kueppers
6552f4c9ac
Updated tinyusb submodule due to serious memory corruption bug
2023-01-05 15:07:48 +01:00
Simon Kueppers
bc1ae6a5c0
Clean up tusb_config.h and hard-selecting full-speed USB
2023-01-04 12:06:12 +01:00
Simon Kueppers
08db9ae5cd
Divided single sample rate clock into two individual clocks for microphone / speaker
2023-01-04 12:05:21 +01:00
Simon Kueppers
b44eb5da4c
Added support for multiple samplerates (48000, 24000, 22050)
2023-01-03 12:44:01 +01:00
Simon Kueppers
2c65b98b70
Cleaned up linker file
2023-01-03 12:44:01 +01:00
Simon Kueppers
09a7a002c1
Disabled buffer reporting by default
2023-01-03 12:44:01 +01:00
Simon Kueppers
a2d428d26f
Fixed missing refactored name
2022-12-14 20:36:25 +01:00
Simon Kueppers
32c86dcae5
Changed flags to state variable for microphone/speaker and changed buffer level coupling to run only after buffer is intially at target value
2022-12-14 20:05:26 +01:00
Simon Kueppers
f8fd443000
Enabled .bin file creation for use with dfu-util
2022-12-11 19:43:17 +01:00