micro-ROS / micro-ROS/micro-ROS-Agent
Deserializing error for string type
Personne n'a encore pris cette issue.
- Langage dominant
- C++
- Étoiles
- 201
- Forks
- 111
- Merge moyen
- 1 j 6 h
- PR mergées (30 j)
- 10
Description
**Describe the bug**
String types in service types cause microROS on the MCU side to fail in the executor due to a deserializing error. Running it through a debugger it fails in ucdr_deserialize_sequence_header when parsing the nested message type.
Service calls with non-string types work as expected. I've verified it's not a buffer overflow since the buffer size >> bytes received. There is also no packet corruption in UDP traffic, the dest packet and src packet match 1:1.
**To Reproduce**
Steps to reproduce the behaviour:
1. On MCU, init service with service type that has a string type
2. On host side, call service
**Expected behaviour**
The MCU accepts the service call and handles accordingly.
**Actual behaviour**
Executor fails due to deserialization error.
**System information (please complete the following information):**
- OS: Ubuntu 22.04
- ROS 2 Humble
- MCU: STM32F767ZI
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Reproduisez l’appel de service sur le STM32F767ZI avec un champ de type string en utilisant ROS 2 Humble, puis examinez l’échec de l’exécuteur au niveau de ucdr_deserialize_sequence_header lors de l’analyse du type de message imbriqué. L’issue est terminée lorsque le MCU accepte et traite l’appel de service sans erreur de désérialisation, tandis que les appels de service sans string continuent de fonctionner.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- cpp
- Domaine
- embedded-iot, robotics
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100