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

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

Aberta
#83 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
C
Estrelas
101
Forks
35
Merge médio
4d 16h
PRs com merge (30d)
3

Descrição

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

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece pelo tutorial do Zephyr e pela aplicação referenciada de Micro-ROS e Zephyr e, em seguida, compare sua configuração de publisher com duas threads com a demonstração rclc multithread_publisher_subscriber. Reproduza o comportamento no Olimex STM32-E407 e determine se são suportados a publicação independente por threads e o uso de vários apps; documente o comportamento confirmado e as alterações ou limitações necessárias.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
c
Domínio
embedded-iot, operating-systems
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
30/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.