micro-ROS / micro-ROS/micro-ROS-demos

Demo similar to multithread_publisher_subscriber from rclc but in Zephyr. Multithreading not working as espected.

Open
#83 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
101
Forks
35
Avg merge
4d 16h
Merged PRs (30d)
3

Description

## Issue template

- Hardware description: Olimex STM32-E407
- RTOS: Zephyr
- Installation type: -
- Version or commit hash: -

#### Steps to reproduce the issue
Install Micro-Ros like in the Tutorial: [Tutorial Micro-ROS and Zephyr](https://micro.ros.org/docs/tutorials/core/first_application_rtos/zephyr/)

Then add this App from this Repository: [Micro-ROS and Zephyr](https://github.com/Johannes-42/microROS_Zephyr-)
If that is run It will publish 2 numbers from 2 threads. The main thread and the second created thread.
But if the publisher in the main thread is commented out. Also, the second thread will not publish anymore.
Is that wanted behavior or am I doing something wrong?

#### Expected behavior
Multithreaded Threads can publish their publishers

#### Actual behavior
Multithreaded Threads only publish if the main thread is publishing.

#### Additional information
I also tried it with a timer, then the second thread will publish only if the timer is used and in the same time interval.

I want to use Micro-ROS multithreaded to give some threads a higher priority than others. One more question to that would be if it is possible to start multiple apps in Zephyr? something like:
ros2 run micro_ros_setup configure_firmware.sh ping_pong ping_pong2 --transport serial-usb
This command would not work but is there a way to run 2 apps?

Contributor guide

Open the contributing guide

Research direction

Start with the Zephyr tutorial and the referenced Micro-ROS and Zephyr application, then compare its two-thread publisher setup with the rclc multithread_publisher_subscriber demo. Reproduce the behavior on the Olimex STM32-E407 and determine whether independent thread publishing and running multiple apps are supported; document the confirmed behavior and required changes or limitations.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.