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

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

Offen
#83 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
C
Sterne
101
Forks
35
Ø Merge
4 T. 16 Std.
Gemergte PRs (30 T.)
3

Beschreibung

## 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?

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem Zephyr tutorial und der referenzierten Micro-ROS- und Zephyr-Anwendung und vergleiche anschließend deren Publisher-Konfiguration mit zwei Threads mit der Demo rclc multithread_publisher_subscriber. Reproduziere das Verhalten auf dem Olimex STM32-E407 und ermittle, ob unabhängiges Publizieren durch Threads und das Ausführen mehrerer Apps unterstützt werden; dokumentiere das bestätigte Verhalten sowie erforderliche Änderungen oder Einschränkungen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
c
Bereich
embedded-iot, operating-systems
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.