-
Notifications
You must be signed in to change notification settings - Fork 137
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
How to get microros thread support for freeRTOS #668
Comments
You need to configure in your toolchain the include path for FreeRTOS (required for this), also you need to define |
Sorry to interfere but let me add some hints for generic library generation if you have STM32 Cube IDE build.
into /{YOUR PROJECT NAME}/micro_ros_stm32cubemx_utils/microros_static_library/library_generation/extra_packages/toolchain.cmake Hope it will help. |
Would be nice to have this in the README.md @Sorokonog |
I have a question related to this post: I am new to ROS2, microROS and freeRTOS and I have the following Hardware:
What I want: I want a microRos application that drives my Robot. And I need a way to stop everything when an emergency happens. Therefore I think multithreading is the way to go. I think of one thread with higher priority that checks the whole time if the subscriber has new data. And if the stop command comes (I publish the stop command on the computer) it will change a shared memory value and all other threads will check for that value and stop the robot and everything he is doing until the value is flipped back. I do this to guarantee that my robot will be fast enough. I found the following Examples for multithreading: rclc multithreading example I also found this Example: The problem I have is that when I set up microROS like in the tutorial from the Webpage microROS webpage I do not have cmake files in the app folder. I made a github folder to solve this problem: https://github.com/Johannes-42/microROS-freeRTOS/tree/main |
I updated my repository. Now the threads will start and will publish. But the timer will never call the callback. And if the timer is not used the threads will not publish. (The Board gets stuck after a few seconds but that is a different problem for after the threads are working as expected) Is there a way to see the output of the Olimex board but do not lose the connection to the micro_ros_agent? I saw that there are ways to get the output over USB but then that would interfere with the micro_ros_agent. |
Issue template
I have generated firmware by using "ros2 run micro_ros_setup create_firmware_ws.sh generate_lib". Then I enabled the the option by using "Enable multithread support ON" in the CMakeLists.txt file. When generating the static lib I get the "#error XRCE multithreading not supported for this platform".
Is there a way to get microros thread support for platform generic running on freeRTOS?
The text was updated successfully, but these errors were encountered: