-
Notifications
You must be signed in to change notification settings - Fork 1k
Mixing core_debug and Serial printing results in slowdown and lost output #1789
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
Comments
I am not so surprised as we mix Serial which make use of U(S)ART in Interrupt mode and core_debug which use U(S)ART in Polling mode. Not sure we tackled this competitive access to U(S)ART. |
Hm, would be good if this would work, since otherwise it is a lot harder for sketches to use the |
By default core debug use the same uart than Serial but it is possible to use an other one. |
The workaround is not perfect, but makes debug output reasonbly workable. See See stm32duino/Arduino_Core_STM32#1789
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Hi @matthijskooijman |
The workaround is not perfect, but makes debug output reasonbly workable. See See stm32duino/Arduino_Core_STM32#1789
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Moreover, it avoid to disable the U(S)ART IRQ which prevent to receive data. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Moreover, it avoid to disable the U(S)ART IRQ which prevent to receive data. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Moreover, it avoid to disable the U(S)ART IRQ which prevent to receive data. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Like state is ready not need to loop on the blocking HAL_UART_Transmit(). If not ok it can be HAL_ERROR or HAL_TIMEOUT. Moreover, it avoid to disable the U(S)ART IRQ which prevent to receive data. Fixes stm32duino#1789 Signed-off-by: Frederic Pillon <[email protected]>
Describe the bug
When using both
core_debug()
andSerial.println()
for writing to the serial port, some conflict occurs.Serial
output becomes slow, andcore_debug()
output gets lost.To Reproduce
Compiled with:
This results in:
Expected behavior
Both messages should be printed directly.
Environment:
The text was updated successfully, but these errors were encountered: