Garanta que seu Sistema Operacional esteja atualizado.
Iniciar -> Configurações -> Windows Update -> Verificar se há atualizações.
Instale qualquer atualização obrigatória que esteja disponível.
NOTA: Devido a problemas para encontrar executáveis, o Projeto Zephyr atualmente não oferece suporte a flashing de aplicativos usando o Windows Subsystem for Linux (WSL). Portanto, não recomendamos o uso do WSL ao começar.
Ferramenta | Versão mínima |
---|---|
CMake | 3.20.0 |
Python | 3.8.10 |
Chocolatey | --- |
As instruções apresentadas baixo devem ser executadas no cmd.exe
do Windows em sua versão de administrador.
- Instale o CMake.
- Instale o Python.
- Instale o Chocolatey.
-
Abra o
cmd.exe
. -
Desative a confirmação global para evitar ter que confirmar a instalação de programas individuais:
choco feature enable -n allowGlobalConfirmation
-
Use o comando
choco
para instalar as seguintes depêndencias:choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System' choco install ninja gperf python git dtc-msys2 wget unzip
- Feche a janela atual do
cmd.exe
e reabra como administrador para continuar.
Para começar, é recomendado a criação de um diretório em seu local de preferência antes da execução dos próximos passos. Neste tutorial utilizaremos um diretório chamado workspace
.
-
Em seu terminal execute o seguinte comando para instalar o west:
pip3 install -U west
-
Obtenha o código fonte do Zephyr:
cd workspace west init zephyrproject
-
Neste ponto, a seguinte estrutura de diretórios deve está montada:
workspace/ └──zephyrproject/
-
Em seguida, vá para o diretório
zephyrproject
e utilize o seguinte comando:cd zephyrproject west update
-
Exporte o pacote Zephyr-CMake. Isso permite que o CMake carregue automaticamente o código necessário para criar projetos com o Zephyr:
west zephyr-export
-
Instales as depêndencias adicionais do Python:
pip3 install -r workspace\zephyrproject\zephyr\scripts\requirements.txt
Ainda na janela do cmd.exe
.
-
Vá para o diretório raiz:
cd workspace
-
Baixe o pacote Zephyr SDK mais recente:
wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.15.2/zephyr-sdk-0.15.2_windows-x86_64.zip
-
Exexute a extração dos dos arquivos:
unzip zephyr-sdk-0.15.2_windows-x86_64.zip
-
Ao fim do passo 3 a seguinte estrutura de diretórios deve está montada:
workspace/ ├──zephyrproject/ └──zephyr-sdk-0.15.2/
Caso a estrutura não esteja de acordo, garanta que ambas as pastas zephyrproject
e zephyr-sdk-0.15.2
estejam no mesmo espaço de trabalho.
O exemplo utilizado para ser buildado e em seguida flashado na placa de desenvolvimento Nordic - nrf52832 se baseia em utilizar uma UART em conjunto de Threads para interagir com o usuário do programa. Mais detalhes podem ser encontrados na documentação do projeto.
Ferramenta | Motivo |
---|---|
nRF Command Line Tools | Garantir a comunicação entre o computador e a placa |
Tera Term | Garantir a interação entre o Usuário e o Programa |
Aqui cabem algumas observações. A ferramenta Tera Term é apenas uma sujestão, ficando a critério do desenvolvedor escolher qual ferramente utilizar. A instalação da nRF Command Line Tools
se faz nescessário caso não exista nenhum drive de desenvolvimento da Nordic instalado em seu computador.
É o processo de "construção" do projeto que será gravado na placa.
-
Clone o exemplo sample presente na raiz deste repositório.
-
Aloque a pasta do projeto dentro do diretório
zephyrproject
presente em sua pasta de trabalho, no caso deste turoarial:workspace
. Ao fim da execução do ultimo passo, a seguinte estrutura de diretórios deve está montada:workspace/ ├──zephyrproject/ | ├──sample/ | | ├──src/ | | | └───main.c | | ├──CMakeLists.txt | | ├──prj.conf | └───... └──zephyr-sdk-0.15.2/
-
Abra o
cmd.exe
e vá para o diretório do projetocd ..\workspace\zephyrproject\sample
-
Execute o seguinte comando para buildar o projeto utilizando a ferramenta west
west build -b <BOARD>
Como citado anteriormente, estamos utilizando a placa de desenvolvimento Nordic - nrf52832. Dessa forma, o comando em questão seria:
west build -b nrf52dk_nrf52832
Para identificar o comando adequado à sua placa é recomendado consultar a documentação oficial do Zephyr: Supported Boards.
-
Caso todos os passos tenha sido seguidos corretamente até este ponto, deve aparecer em seu terminal após a execução do comando uma mensagem similar à mostrada abaixo:
[162/162] Linking C executable zephyr\zephyr.elf Memory region Used Size Region Size %age Used FLASH: 23496 B 512 KB 4.48% RAM: 8388 B 64 KB 12.80% IDT_LIST: 0 GB 2 KB 0.00%
Essa mensagem indica que o processo de construção do projeto foi executado sem falhas.
-
Caso contrário:
required program nrfjprog not found; install it or add its location to PATH
Essa mensagem acusa a falta do nRF Command Line Tools em seu computador.
É o processo de "gravação" do projeto na placa.
-
Realize a conexão da placa de desenvolvimento em seu computador. Normalmente a conexão é realizada via USB.
-
Uma vez que o processo de build foi realizado, podemos agora utilizar o seguinte comando da ferramenta west para gravar o programa:
west flash
Para mais detalhes sobre o comando é recomendado a leitura da documentação.
-
Caso o processo de flash tenha ocorrido sem erros, deve aparecer em seu terminal após a execução do comando uma mensagem similar a mostrada abaixo:
-- runners.nrfjprog: Board with serial number 682720322 flashed successfully.
Essa mensagem indica que o processo de gravação do projeto foi executado sem falhas.
-
Caso contrário:
FATAL ERROR: "nrfjprog --ids" did not find a board; is the board connected?
Essa mensagem indica que a placa não foi encontrada. Verifique se a mesma se encontra conectada e alimentada.
Figura 1: .Gif com o resultado.