ESP-IDF ( Framework de Desenvolvimento de IoT )
ESSE TUTORIAL É UMA CÓPIA DO MEU BLOG :
https://jgamblog.wordpress.com/2018/02/09/conhecendo-o-esp32-usando...
Como já citei em outro tutorial , as principais plataformas de desenvolvimento de aplicações para o ESP32 são :
- ESP-IDF – Framework de desenvolvimento IoT oficial da ESPRESSIF para o ESP32. Ele é o mais completo, mas é complicado de usar. Link do ESP-IDF
- Arduino-IDE : é o Ambiente de desenvolvimento mais conhecido de todos e bem mais fácil de usar. ESP32 – Arduino IDE
- PlatformIO : é um ambiente similar ao do Arduino. Ainda não posso afirmar se é melhor. ESP32 – PlatformIO
Sobre o uso do ESP32 com a IDE Arduino , sugiro que veja nesse tutorial :
ESP32 – usando Arduino IDE (3)
A ESP-IDF é um Framework , isto é, um conjunto de programas, compiladores, bibliotecas e tudo mais que for preciso para o desenvolvimento de uma aplicação. Essa IDF foi criada pela ESPRESSIF e esta sendo continuamente melhorada e aumentada, com inúmeros exemplos de aplicações, aproveitando praticamente todos os recursos de hardware e software do ESP32. A linguagem usada é a C.
Por usar uma filosofia menos evoluída na implementação (meu ponto de vista) , ela é mais complexa e mais trabalhosa. Mas se pretende criar uma aplicação profissional para o ESP32, recomendo o uso dessa IDF. Uma vantagem é que no GIT-HUB dessa IDF, você poderá encontrar um suporte para problemas de HW ou SW (claro que não é um suporte para iniciantes).
Para a pesquisa durante a implementação de uma aplicação, sugiro esses sites :
Para poder usar o ESP-IDF, é necessário a instalação de alguns programas e repositórios. Dependendo do modelo da sua placa ESP32 (DevKitC, PICO-Kit ou Wrover-Kit), o procedimento poderá um pouco diferente.
O procedimento desse Tutorial é baseado na Placa ESP32 DEVKIT, para Windows 10. Todo o procedimento foi baseado no próprio tutorial da ESPRESSIF .
ESP-IDF Get started
Instalação do Toolchain para Windows
Vamos começar instalando e configurando a ToolChain (conjunto de ferramentas). Baixe o pacote de programas zipados do link abaixo ( 560MB aproximadamente).
Windows all-in-one toolchain & MSYS2 zip
Descompacte o arquivo zipado em um diretório que achar melhor. Recomendo que seja em um subdiretório do raiz (para não ficar com um caminho muito grande e complexo). Ao descompactá-lo será criado um diretório / msys32 . No meu caso escolhi o diretório C:/Gustavo . Portanto o meu toolchain ficou no C:/Gustavo/msys32 .
Na pasta / msys32 , abra o aplicativo mingw32.exe .
Crie uma pasta para a instalação da IDF com os comandos abaixo :
pwd => para identificar o diretório
mkdir esp => para criar o diretório esp
cd esp => para acessar o diretório esp
Baixando o ESP-IDF
O ESP-IDF compreende Aplicações e Bibliotecas, que devem ser baixadas do site da ESPRESSIF.
Usando o aplicativo mingw32, dê os comandos abaixo, para baixar o IDF, na pasta ~/esp
( a pasta /esp-idf será criada automaticamente) :
ESP-IDF será baixada na pasta ~/esp/esp-idf
git clone --recursive https://github.com/espressif/esp-idf.git
Configurando o caminho para ESP-IDF
Após o download da ESP-IDF na pasta ~/esp/esp-idf , será necessário configurar o caminho (path). Os programas do toolchain acessam o ESP-IDF usando a variável de ambiente IDF_PATH.
Os scripts do perfil de usuário estão contidos na pasta
~/msys32/etc/profile.d/
Eles são executados toda vez que você abre uma janela MSYS2.
- Crie um novo arquivo de script na pasta
~/msys32/etc/profile.d/
. O arquivo deverá se chamar export_idf_path.sh
.
- Identifique (com o Gerenciador de arquivos) o caminho para o diretório ESP-IDF. É específico para a configuração do seu sistema e pode parecer algo como por exemplo :
C:\Gustavo\msys32\home\jgust\esp\esp-idf
Usando qualquer editor (no meu caso, usei NotePad), digite o comando export no arquivo de script , por exemplo:
export IDF_PATH="C:/gustavo/msys32/home/jgust/esp/esp-idf"
- Lembre-se de substituir por barras normais no Path do Windows. Salve o arquivo de script sem a extensão .TXT, como
export_idf_path.sh
Printenv IDF_PATH
- O caminho previamente inserido no arquivo de script deverá ser impresso.
Testando um Projeto de exemplo
O ambiente no seu PC, esta pronto para testar uma aplicação para o ESP32.
O Programa get-started/hello_world da pasta de examples da ESP-IDF, será usado para teste.
Copie a pasta do exemplo hello_word para a pasta ~/esp, com o comando abaixo usando a janela do mingw32.
( não se esqueça do ponto no final do comando)
cd esp
cp -r $IDF_PATH/examples/get-started/hello_world .
Configurando a porta COM na ESP-IDF
Conecte o seu ESP32 na porta USB do seu PC . Identifique a porta COM usada.
O procedimento é o mesmo deste tutorial : Configurando a ARDUINO IDE p/ o ESP32 :
Abra a janela do programa mingw32, e dê os seguintes comandos para configurar a porta COM na ESP-IDF:
cd ~/esp/hello_world
make menuconfig
Uma outra janela de configuração deverá aparecer .
Usando as teclas de cursor e a tecla Enter , selecione Serial flasher config :
Configure a porta COM do seu PC para a interface serial-USB do seu ESP32 : (edite o campo).
Depois selecione
Exit duas vezes e
Salve a configuração .
Compilando e Gravando na Flash do ESP32
Mantenha a placa ESP32 conectada no seu PC. Abra a janela do mingw32.
Para compilar o aplicativo e todos os componentes do ESP-IDF, gerar o bootloader, a tabela de partição e os binários do aplicativo, e gravar esses arquivos na memória Flash da placa ESP32, dê os comandos abaixo:
cd ~/esp/hello_world
make flash
Após alguns minutos (demora mesmo) e se tudo correr bem , deverá aparecer essas mensagens abaixo.
A placa será resetada e a aplicação
hello_world começará.
Pronto, a aplicação já esta gravada na Flash do ESP32. Agora vamos acessar a porta serial-USB , através de uma console (pode usar um outro programa – velocidade 115200 Bps).
Na janela do mingw32, dê o comando para abrir a console da IDF :
make monitor
Essa aplicação Hello_world, fica em loop enviando a mensagem Hello world ! e depois dá um reboot.
Somente isso . Parabéns ! Você conseguiu usar a ESP-IDF com o ESP32 !
Aguardem mais tutoriais !
Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!
Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)