Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add picoprobe-only EXTRA_UART cmake option #103

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

milipropasm
Copy link

@milipropasm milipropasm commented Oct 2, 2023

bridges 2nd hardware UART over USB-CDC as tty1
New CDC_UARTS count placed in CMakeLists.txt to ensure tusb_config.h and cdc_uart.c can see it.

CMakeLists.txt, picoprobe_config.h, board_pico_config.h, tusb_config.h, main.c, cdc_uart.h, cdc_uart.c, usb_descriptors.c
Extra usb descriptor, interfaces and endpoints when needed. desc_ms_os_20 NOT updated.
cdc_task() gets new tty index param (extant UART always tty0). was_connected and usb rx/tx buffers now module-static arrays with tty index. All tud_cdc_* calls changed to tud_cdc_n_* variants, PICOPROBE_UART_RX/TX_LED remain tty0-only. Basic testing: Pi4B host, THREADED 1, DAP_V2: minicom receives uart output(s), openocd 'program xxx.elf verify reset exit' works.

… over USB-CDC as tty1

New CDC_UARTS count placed in CMakeLists.txt to ensure tusb_config.h and cdc_uart.c can see it.

CMakeLists.txt, picoprobe_config.h, board_pico_config.h, tusb_config.h,
main.c, cdc_uart.h, cdc_uart.c, usb_descriptors.c
Extra usb descriptor, interfaces and endpoints when needed. desc_ms_os_20 NOT updated.
cdc_task() gets new tty index param (extant UART always tty0).
was_connected and usb rx/tx buffers now module-static arrays with tty index.
All tud_cdc_* calls changed to tud_cdc_n_* variants, PICOPROBE_UART_RX/TX_LED remain tty0-only.
Basic testing: Pi4B host, THREADED 1, DAP_V2:
minicom receives uart output(s), openocd 'program xxx.elf verify reset exit' works.
@andrethomas
Copy link

Thanks, this is very useful

@hwmland
Copy link

hwmland commented Mar 7, 2024

Any chance that this PR will be merged any time soon?

@P33M
Copy link
Contributor

P33M commented Mar 18, 2024

Please retest this on top of latest master - there have been changes which will impact this PR.

@P33M
Copy link
Contributor

P33M commented Nov 7, 2024

There's a blocker to merging this - if I have one UART with a high baudrate, then set the other UART to a low baudrate, the cdc thread gets a slow polling interval. This will drop characters. This needs reworking to spawn another RTOS thread for the second CDC interface.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants