The micro_ros_agent does not relay topic messages

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

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
cpp, docker

Direção de pesquisa

Reproduza os dois cenários de ordem com o comando Docker do galactic micro-ROS Agent, teleop_twist_keyboard e os exemplos micro_ros_subscriber_twist.ino e micro_ros_publisher.ino. Comece comparando o comportamento do agente e os logs quando o programa do MCU é iniciado antes ou depois da publicação; considera-se concluído quando as mensagens esperadas são entregues de forma confiável nos dois cenários documentados ou quando a limitação esperada está claramente documentada.

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

Descrição

Describe the bug

Hi, I tried this example micro-ros_subscriber_twist using UDP on STM32F407 (Ethernet), but the micro_ros_agent only relays the message to MCU if

[Normal]
Step 1: Start the agent
Step 2: Start the program on MCU
Step 3: Publish the twist message (keep publishing)

Twist messages received.

If I exchange step 2 with step 3, I cannot receive the message on MCU:

[BUG]
Step 1: Start the agent
Step 2: Publish the twist message (keep publishing)
Step 3: Start the program on MCU

No Twist messages.

I'm wondering is this an expected behavior or a BUG?

Besides, the micro-ros_publisher.ino example cannot receive the int32 message under both scenarios.

To Reproduce

Scenario 1 (BUG):

$ Step 1: Start the agent
$ docker run -it -p 9999:9999/udp --privileged microros/micro-ros-agent:galactic udp4 -p 9999 -v 6

$ Step 2: Publish the twist message
$ docker container -it sleepy_rubin /bin/bash
$ # Inside the container
$ ros2 run teleop_twist_keyboard teleop_twist_keyboard 

$ Step 3: Start the program on MCU
$ micro_ros_sub twist

# No twist message on MCU

Scenario 1 (Normal):

$ Step 1: Start the agent
$ docker run -it -p 9999:9999/udp --privileged microros/micro-ros-agent:galactic udp4 -p 9999 -v 6

$ Step 2: Start the program on MCU
$ micro_ros_sub twist

$ Step 3: Publish the twist message
$ docker container -it sleepy_rubin /bin/bash
$ # Inside the container
$ ros2 run teleop_twist_keyboard teleop_twist_keyboard 

# Normal twist message on MCU
Linguagem predominante
C++
Estrelas
201
Forks
111
Merge médio
1d 6h
PRs com merge (30d)
10

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.

Mais de micro-ROS/micro-ROS-Agent

Todas as issues de micro-ROS/micro-ROS-Agent

Issues semelhantes

Mais issues de C++

Receba novas issues na sua caixa de entrada

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