Modifications to run microROS on NuttX RTOS

Aberta
#31 5 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
38/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
c
Domínio
embedded-iot

Direção de pesquisa

Comece reproduzindo a compilação da aplicação NuttX e inspecione micro_ros_src/src/rcutils/src/filesystem.c juntamente com a definição de DIR em dirent.h do NuttX. Verifique o tratamento condicional em torno de RCUTILS_NO_FILESYSTEM e confirme que o exemplo compila sem redefinir DIR; a issue também menciona alterações em microros/example_app/microros_main.c, que talvez precisem ser revisadas.

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

Descrição

Issue template

microROS on NuttX target runs correctly again, but there are some corrections required to correctly compile the example.

  • Hardware description: nucelo-144 board
  • RTOS: NuttX
  • Installation type: microROS for NuttX (this example)
  • Version or commit hash: galactic
Steps to reproduce the issue

The file micro_ros_src/src/rcutils/src/filesystem.c contains a redefinition of "DIR" (which is already defined in the dirent.h" file in NuTTX).

A test is required such

#ifdef DIR or #ifndef DIR....

Expected behavior

the nuttx application compile again

Actual behavior

There is the error about redefining DIR. To get the compilaton correctly I've commented the line

#ifdef RCUTILS_NO_FILESYSTEM
//typedef int DIR; <=======
#endif // _RCUTILS_NO_FILESYSTEM
typedef struct rcutils_dir_iter_state_t
{
#ifdef _WIN32
HANDLE handle;
WIN32_FIND_DATA data;
#else
DIR * dir;
#endif
} rcutils_dir_iter_state_t;

but it is not the correct solution.

Additional information

I've modified also the microros_main.c file in the microros/example_app

Linguagem predominante
Makefile
Estrelas
15
Forks
9
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

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_nuttx_app

Todas as issues de micro-ROS/micro_ros_nuttx_app

Issues semelhantes

Mais issues de Embedded & IoT

Receba novas issues na sua caixa de entrada

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