micro-ROS / micro-ROS/micro_ros_setup
ensuring agent is acting as agent for all that it should
- Lenguaje dominante
- Shell
- Estrellas
- 509
- Forks
- 183
- Merge medio
- 22 h 26 min
- PR fusionados (30 d)
- 7
Descripción
How to guarantee that agent is representing all publishers, nodes etc as requested?
related to the following issues and PRs:
https://github.com/micro-ROS/micro_ros_arduino/issues/40
https://github.com/micro-ROS/micro_ros_setup/issues/299
https://github.com/micro-ROS/micro_ros_setup/issues/256
https://github.com/micro-ROS/rmw_microxrcedds/pull/86/files
https://github.com/micro-ROS/micro_ros_setup/issues/347
https://github.com/micro-ROS/rmw_microxrcedds/pull/143/files
https://github.com/micro-ROS/micro_ros_arduino/issues/912
it appears the consensus is to use `rmw_uros_ping_agent` to detect the loss of agent communications, `fini*` and reinit all the bits, as exemplified here https://github.com/micro-ROS/micro_ros_arduino/blob/galactic/examples/micro-ros_reconnection_example/micro-ros_reconnection_example.ino
The communications with the agent is often over UDP, so its possible just to miss one of several init packets?
In this case the agent would be operating normally, and perhaps we wouldnt notice our missing service for a while.
Is it possible to periodically get the XRCE protocol to re-announce to the agent the set of nodes, topics etc, so that it would self recover?
Or is it feasible to implement some kind of "Tell me how you are configured, and I'll compare it to my idea of what I think you should be doing" handshaking in the protocol between agent and microros?
Guía de contribución
Línea de trabajo
Comienza con el micro-ros_reconnection_example.ino enlazado y compara su flujo de rmw_uros_ping_agent, fini* y reinicialización con los issues y pull requests relacionados, especialmente los cambios de rmw_microxrcedds. Aclara si es viable realizar un nuevo anuncio periódico de XRCE o un handshake de configuración entre el agente y el cliente, y después define un comportamiento de recuperación acordado y sus casos de validación.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- arduino
- Área
- distributed-systems, embedded-iot, networking
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 15/100