Fluxo recomendado para “virar seu projeto” sem quebrar o template
- Faça um build/flash do exemplo como está (pra garantir ambiente ok). O README mostra
west build -b $BOARD appewest flash. (GitHub) - Edite só:
app/src/main.c(coloque seu hello/loop)app/prj.conf(habilite console/log)app/CMakeLists.txt(garanta que está referenciando seumain.c)
- Se usar uma board oficial e precisar de ajustes, crie
app/boards/<sua_board>.overlay.
west.yml na prática (manifesto do workspace) + zephyr/module.yml (faz o Zephyr “enxergar” seu repo)
Agora vamos no “núcleo” do template: como o repositório vira um workspace application (T2) e, ao mesmo tempo, pode atuar como módulo (para trazer drivers/libs/bindings out-of-tree para dentro do build do Zephyr).
west.yml: o que ele é e por que ele manda em tudo
O west é o gerenciador de múltiplos repositórios do ecossistema Zephyr. O arquivo west.yml é o manifest em YAML que define:
remotes: “apelidos” para bases de URL (ex.: GitHub do Zephyr)projects: os repositórios que serão clonados/atualizadosdefaults: valores padrão (ex.: remote padrão)self: metadados do próprio repositório-manifesto (sua aplicação) (Documentação Zephyr)
No modelo T2 (workspace application / star topology), o seu repositório (a aplicação) é o centro; nele fica o west.yml, e ele puxa zephyr e os módulos necessários. A documentação oficial mostra esse modelo e dá exemplos de west.yml “T2”, inclusive com import: true para importar automaticamente os módulos declarados pelo Zephyr. (Documentação Zephyr)
Exemplo mental (simplificado) do que você verá/terá no seu west.yml
A documentação de workspaces mostra um west.yml típico no estilo T2 assim (vou explicar o significado, não é para copiar “cego”): você declara o remote do Zephyr, adiciona o projeto zephyr com uma revision (tag/branch/SHA) e marca import: true para que os módulos “oficiais” do Zephyr venham junto. (Documentação Zephyr)
Por que isso é melhor do que “git clone zephyr e pronto”?
Porque você passa a ter reprodutibilidade: a versão do Zephyr e dos módulos não fica “na sua cabeça”; fica formalmente no manifesto.