micro-ROS / micro-ROS/micro_ros_espidf_component

Add custom ros message to micro_ros_espidf_component help

Ouverte
#310 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
C
Étoiles
419
Forks
124
Merge moyen
21 h 35 min
PR mergées (30 j)
3

Description

Hi, my project uses micro_ros_espidf_component which works fine with standard int32 messages, but we would like to use a custom message. To be fair I am not an expert in either cmake build system or esp-idf framework.

Our project looks like this:
```
- ourProject/
- CMakeLists.txt
- sdkconfig
- components/
- micro_ros_espidf_component // copy of repo, revision jazzy
- main/
- CMakeLists.txt
- main.c
- idf_component.yml // micro_ros_espidf_component listed as repo dependency
- build/
```
As far as my troubleshooting goes, my attempts to add a `components/msgs` subdirectory have failed and I have since realised that the custom message(s) need to be part of the `micro_ros_espidf_component` itself so they are compiled into `libmicroros.a`.

* My approach is to copy `micro_ros_espidf_component` into a new `components` directory. Then `main/idf_component.yml` lists this as a local directory dependency rather than previously a repo dependency
* the msgs components are not part of `micro_ros_espidf_component` instead `micro_ros_espidf_component/libmicroros.mk` does `git clone https://github.com/micro-ROS/micro_ros_msgs`.
* THE BIG QUESTION What do I need to do here to add a custom message directory which is then picked up and compiled into `libmicroros.a`?
* Ideally I would like to add a MyCustomMessage in a `myrepo/components/msgs/MyCustomMessage.msg` file along the pattern of [this video](https://www.youtube.com/watch?v=E_xBPI8SQig)

Any help is appreciated.

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 libmicroros.mk et les fichiers de composant et main CMakeLists.txt mentionnés dans l’issue ; suivez la manière dont micro_ros_msgs est cloné et dont les packages de messages sont intégrés à libmicroros.a. Reproduisez la configuration locale du composant avec un répertoire .msg personnalisé, documentez ensuite l’organisation de projet prise en charge et vérifiez que le message généré est inclus dans le build ESP-IDF.

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

Évaluation

Stack technique
c, cmake
Domaine
build-system, documentation, embedded-iot
Type d'issue
Documentation
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.