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

DMA/USART initialization order #39

Open
rikba opened this issue Jun 21, 2022 · 0 comments
Open

DMA/USART initialization order #39

rikba opened this issue Jun 21, 2022 · 0 comments

Comments

@rikba
Copy link

rikba commented Jun 21, 2022

When auto-generating code from .ioc configurations using STM32CubeIDE (1.9.0) the order in which peripherals are created is not fixed. We observed that rosserial_stm32 only works if the DMA is initialized BEFORE the UART connection

MX_DMA_Init();
MX_USART2_UART_Init();

If you have this the other way round, you get connection errors using rosrun rosserial_server serial_node _port:=/dev/ttyACM0 _baud:=115200.

[ INFO] [1655841703.653152322]: Opened /dev/ttyACM0
[ INFO] [1655841705.653483835]: Opened /dev/ttyACM0
[ INFO] [1655841707.653914306]: Opened /dev/ttyACM0
[ INFO] [1655841709.654372123]: Opened /dev/ttyACM0

We don't know how to force the initialization order or how to handle this in rosserial_stm32. But this problem may be related to #33, #22 and other connection problems.

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

No branches or pull requests

1 participant