Franzininho WiFi – Primeiros passos com ESP-IDF

esp idf franzininhowifi
Este post faz parte da série Franzininho WiFi: ESP-IDF. Leia também os outros posts da série:

A Franzininho WiFi é uma placa baseada no ESP32-S2. Conforme apresentada no Artigo, Franzininho WIFI – A evolução do projeto Franzininho, podemos explorar ela de diversas formas e o principal objetivo é explorar o SoC ESP32-S2.

Nessa série de artigos vamos desenvolver aplicações usando o ESP-IDF. Nesse primeiro artigo vamos configurar o ESP-IDF (Espressif IoT Development Framework) para trabalhar com a Franzininho WiFi.

Ao final, faremos um exemplo simples para compilar, gravar e monitorar usando o ESP-IDF, assim, garantiremos que tudo estará funcionando.

Introdução

Para essa configuração, vamos instalar o ESP-IDF e usá-lo através de linha de comando. Caso você queira usar o IDF integrado a ambientes de desenvolvimento integrado (IDE) como VScode e Eclipse, confira os seguintes links:

Você poderá instalar o ESP-IDF no seu sistema operacional preferido (Linux, Windows, macOS).

Para a experiência completa, você precisará de uma placa Franzininho WiFi, Computador: com Windows, Linux ou macOS.

Todos os passos descritos aqui foram baseados na documentação da Espressif para o ESP32-S2.

Passo 1 – Instalação dos pré-requisitos

Algumas ferramentas precisam ser instaladas no computador antes de prosseguir para as próximas etapas. Siga os links abaixo para obter as instruções para o seu sistema operacional:

É muito importante a instalação de todos os pré-requisitos.

Passo 2 – Instalação do ESP-IDF

Nessa etapa vamos instalar o ESP-IDF e conjunto de ferramentas e bibliotecas. Vamos usar o código mantido pela Espressif no repositório do ESP-IDF

O ESP-IDF é o framework oficial da Espressif para o desenvolvimento de aplicações parar toda a família ESP32. O procedimento apresentado aqui servirá para trabalhar com toda a família ESP32. Porém, vamos dar foco ao ESP32-S2 que é usado na Franzininho WiFi.

Linux e macOS

Abra o terminal e execute:

O ESP-IDF será baixado no seguinte repositório ~/esp/esp-idf.

Windows

Além de instalar as ferramentas, o ESP-IDF Tools Installer para Windows apresentado no passo 1 ele também baixa uma cópia do ESP-IDF. Dessa forma você não precisará baixar o ESP-IDF agora, se já tiver baixado anteriormente junto aos pré-requisitos.

Se desejar fazer o download do ESP-IDF sem a ajuda do ESP-IDF Tools Installer, consulte estas instruções.

Instalando o ESP-IDF e ferramentas

Além do ESP-IDF, você precisa instalar as ferramentas usadas pelo ESP-IDF, como compilador, depurador, pacotes Python, etc.

Windows

O ESP-IDF Tools Installer para Windows apresentado no passo 1 instala todas as ferramentas necessárias.

Se você deseja instalar as ferramentas sem a ajuda do ESP-IDF Tools Installer, abra o Prompt de Comando e siga estas etapas:

Ou no Windows PowerShell

Linux e macOS

No Linux ou macOS há um script para instalação.Abra o terminal e execute:

Configurando as variáveis de ambientes

As ferramentas instaladas ainda não foram adicionadas à variável de ambiente PATH. Para tornar as ferramentas utilizáveis na linha de comando, algumas variáveis de ambiente devem ser definidas. ESP-IDF fornece alguns scripts que ajudam nesse processo.

Windows

O ESP-IDF Tools Installer para Windows cria um atalho “ESP-IDF Command Prompt” no menu Iniciar. Este atalho abre o Prompt de Comando e configura todas as variáveis de ambiente necessárias. Você pode abrir este atalho e prosseguir para a próxima etapa.

Caso não funcione e você precise configurar manualmente, execute os seguintes comandos:

Prompt de Comando:

Windows PowerShell:

Linux e macOS

No terminal execute:

Você precisa fazer isso toda vez que iniciar o terminal para usar o ESP-IDF.

Passo 3 – Criando um novo projeto

Agora que já temos as ferramentas instaladas, vamos fazer um exemplo para validar o funcionamento das mesmas. Vamos executar o exemplo blink que já vem no IDF.

Copiando um projeto exemplo

Vamos copiar o projeto blink para preservarmos o exemplo presente na pasta do IDF:

Windows

Linux e macOS

Fique a vontade para testar os outros exemplos também.

O sistema de compilação ESP-IDF não oferece suporte a espaços nos caminhos para o ESP-IDF ou para projetos.

Configuração

Agora vamos configurar o target para qual será compilado e já fazer uma configuração no menuconfig. No nosso caso vamos trabalhar com o ESP32-S2:

Windows

Linux e macOS

Será aberto o menuconfig:

menuconfig

Acesse a opção Component config —>

menuconfig

Em seguida ESP System Settings —>

menuconfig

Agora selecione Channel for console output (Default: UART0) —>

menuconfig

E por fim, selecione (X) USB CDC:

menuconfig

Salve(S), Enter, enter, Saia do menu(ESC)

Essa configuração permitirá que usemos a USB no próximo upload.

Sempre que iniciar um projeto novo faça essa configuração para que continue usando a USB como interface de programação.

Para mais sobre essa configuração, veja o video abaixo:

Compilando o projeto em modo DFU

A primeira compilação, nós vamos fazer usando o modo DFU, que já vem por padrão no ESP32-S2 permitindo o upload através da USB:

Para crie a imagem DFU:

A primeira compilação pode demorar um pouco. Da até para ir pegar um café 😉

Após a compilação, conecte a Franzininho WiFi no computador. Antes de fazermos o upload é necessário entrar no modo DFU. Para entrar no modo DFU pressione as teclas na seguinte sequencia:

  1. pressione e segure a tecla BOOT
  2. pressione rapidamente e solte a tecla presente
  3. solte a tecla BOOT

Dessa forma a placa entrará no modo DFU e poderá receber o firmware através da USB.

Para fazer a gravação, digite:

Caso tenha permissão de acesso à porta USB, acesse esse link com as instruções de configurações

Após alguns segundos a placa estará gravada.

Compilação, gravação e monitor em modo normal

Agora você poderá compilar, gravar e monitorar usando a porta USB. Esse processo é idêntico ao que fazemos para desenvolver com outros SoCs ESP32:

Compilar:

Gravar:

Monitorar:

Maravilha, você configurou o ambiente para trabalhar com o ESP-IDF.

Caso queira trabalhar com a extensão para VSCODE, confira o video abaixo:

Repositórios e materiais de apoio

Todos os exemplos serão hospedados no github do projeto Franzininho, assim como os textos originais desenvolvidos pela comunidade. É importante que você acompanhe os artigos com os seguintes materiais de apoio:

Aproveite essa jornada.

Saiba Mais

Primeiros passos com ESP-IDF

Franzininho WIFI – A evolução do projeto Franzininho

Maia ESP32-S2 Dev Board

ESP32-S2 – Analisando o novo e melhor ADC

Outros artigos da série

Franzininho WiFi – Hello World no ESP-IDF >>
Website | Veja + conteúdo

Engenheiro, especialista em sistemas embarcados. Hoje é diretor de operações do portal Embarcados, onde trabalha para levar conteúdos de eletrônica, sistemas embarcados e IoT para o Brasil.

Também atua no ensino eletrônica e programação. É entusiastas do movimento maker, da cultura DIY e do compartilhamento de conhecimento, publica diversos artigos sobre eletrônica e projetos open hardware.

Com iniciativas como o projeto Franzininho e projetos na área de educação, leva a cultura maker para o Brasil capacitando e incentivando professores e alunos a usarem tecnologia em suas vidas. Participou da residência hacker 2018 no Red Bull Basement.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Comentários:
Notificações
Notificar
guest
0 Comentários
Inline Feedbacks
View all comments
Talvez você goste:

Nenhum resultado encontrado.

Séries



Outros da Série

Menu