micro-ROS / micro-ROS/micro_ros_platformio

Can't get topics to show on ROS2 Humble

Ouverte
#132 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Python
Étoiles
334
Forks
111
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Issue template

  • Hardware description: Nucleo-G070RB connected over serial
  • RTOS: none
  • Installation type: compiled code through platformio, using micro_ros_agent with docker
  • Version or commit hash: humble
Steps to reproduce the issue
  • Uploaded this code to the microcontroller board (I have a screen that displays the runnign timer and I see it counting)
  • Connected the board to an ubuntu 20.04 computer over USB, checked that I see serial traffic in the serial monitor.
  • ran the following command in one terminal window (saw prior to that, that ttyACM1 is the correct mapping to the microcontroller board):
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:humble serial --dev /dev/ttyACM1 -b 115200 -v6
  • began to see this type of output:
[1715537445.872814] info     | TermiosAgentLinux.cpp | init                     | running...             | fd: 3
[1715537445.872927] info     | Root.cpp           | set_verbose_level        | logger setup           | verbose_level: 6
[1715537452.552872] info     | Root.cpp           | create_client            | create                 | client_key: 0x782BF2A4, session_id: 0x81
[1715537452.552964] info     | SessionManager.hpp | establish_session        | session established    | client_key: 0x782BF2A4, address: 0
[1715537452.553162] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 19, data: 
0000: 81 00 00 00 04 01 0B 00 00 00 58 52 43 45 01 00 01 0F 00
[1715537452.562499] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 56, data: 
0000: 81 80 00 00 01 07 30 00 00 0A 00 01 01 03 00 00 22 00 00 00 00 01 54 F0 1A 00 00 00 6D 69 63 72
0020: 6F 5F 72 6F 73 5F 70 6C 61 74 66 6F 72 6D 69 6F 5F 6E 6F 64 65 00 01 00
[1715537452.582022] info     | ProxyClient.cpp    | create_participant       | participant created    | client_key: 0x782BF2A4, participant_id: 0x000(1)
[1715537452.582253] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 14, data: 
0000: 81 80 00 00 05 01 06 00 00 0A 00 01 00 00
[1715537452.582291] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1715537452.586427] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1715537452.596360] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 104, data: 
0000: 81 80 01 00 01 07 5E 00 00 0B 00 02 02 03 00 00 50 00 00 00 27 00 00 00 72 74 2F 6D 69 63 72 6F
0020: 5F 72 6F 73 5F 70 6C 61 74 66 6F 72 6D 69 6F 5F 6E 6F 64 65 5F 70 75 62 6C 69 73 68 65 72 00 00
0040: 01 00 00 00 1C 00 00 00 73 74 64 5F 6D 73 67 73 3A 3A 6D 73 67 3A 3A 64 64 73 5F 3A 3A 49 6E 74
0060: 33 32 5F 00 00 01 00 00
[1715537452.596477] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x782BF2A4, topic_id: 0x000(2), participant_id: 0x000(1)
[1715537452.596585] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 14, data: 
0000: 81 80 01 00 05 01 06 00 00 0B 00 02 00 00
[1715537452.596605] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1715537452.601306] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1715537452.603328] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 24, data: 
0000: 81 80 02 00 01 07 10 00 00 0C 00 03 03 03 00 00 02 00 00 00 00 00 00 01
[1715537452.603396] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x782BF2A4, publisher_id: 0x000(3), participant_id: 0x000(1)
[1715537452.603419] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 14, data: 
0000: 81 80 02 00 05 01 06 00 00 0C 00 03 00 00
[1715537452.603427] debug    | SerialAgentLinux.cpp | send_message             | [** <<SER>> **]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1715537452.607308] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1715537452.611312] debug    | SerialAgentLinux.cpp | recv_message             | [==>> SER <<==]        | client_key: 0x782BF2A4, len: 36, data: 
0000: 81 80 03 00 01 07 1C 00 00 0D 00 05 05 03 00 00 0E 00 00 00 00 02 01 FF 03 00 01 00 0A 00 00 00
0020: 00 00 00 03
[1715537452.611728] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x782BF2A4, datawriter_id: 0x000(5), publisher_id: 0x000(3)

  • in another terminal window, launched anther docker container:
docker run -it --rm -v /dev:/dev --privileged --net=host ros:humble
Expected behavior

topics and perhaps nodes appearing in the other docker container

Actual behavior

when trying to look for topics or nodes i get nothing:

$ ros2 topic list
/parameter_events
/rosout
$ ros2 node list
Additional information

Tried to reset the board, the pc, tried using an agent compile from source on a different docker.
Tried setting "export ROS_DOMAIN=1" without any change.
What am I missing?

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par reproduire les deux commandes Docker de l’issue et examinez la sortie de micro-ROS agent avec ros2 topic list et ros2 node list. Examinez la configuration signalée de Humble, du port série et du domaine ROS ; l’issue est résolue lorsque les topics et le nœud du microcontrôleur apparaissent dans le conteneur ROS 2.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
docker
Domaine
devops, embedded-iot, robotics
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.