Placa ESP32 DEV KIT V1

 

Informações sobre a placa

Pinagem: https://mischianti.org/wp-content/uploads/2020/11/ESP32-DOIT-DEV-KIT-v1-pinout-mischianti.png

ESP32-DOIT-DEV-KIT-v1-pinout-mischianti

Introdução sobre esta placa (ID:2AC7Z) no site do fabricante Espressif ou aqui.

Este fabricante disponibiliza várias versões diferentes de "ESP32":

👉 Esta versão parece ser a "id:2AC7Z-ESPWROOM32": https://fcc.report/FCC-ID/2AC7Z-ESPWROOM32/3212970 (de 2016), também chamada de "ESP-WROVER-KIT" pelo fabricante Espressif, apesar da versão atual (versão 4.1 ser totalmente diferente e contar com leitor de cartões microSD). Mas também não se trata da versão "ESP32-DevKitM-1". Não corresponde à nenhuma placa oficial e atual do fabricante, mas é algo similar à ESP32-DevKitC 🤔.

Segue figura com diagrama de blocos funcional:

ESP32_Function_Block_Diagram

Alguma características principais:

Notamos:

Conversores D/A (bits) nos pinos:

Conversores A/D (2 12-bits SAR) nos pinos:

Possui ainda:

Mais características introdutórias ver: http://esp32.net

Programação

Guia de programação da Espressif: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/

Software

Ref.: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html

Para começar a usar o ESP-IDF no ESP32, instale o seguinte software:

Instalação

Para instalar todo o software necessário, oferecemos algumas maneiras diferentes de facilitar essa tarefa. Escolha entre uma das opções disponíveis.

IDE

Outros:

 

Instalação Manual

Para o procedimento manual, compilando e transferindo coódigos para placas ESP32 diretamente do terminal no seiu computador, selecione de acordo com o seu sistema operacional:

Obs.: Falta um "curso" sobre uso de "cmake" para iniciantes... Nada documentado à respeito!

Obs.: No MacOS, a instalação da biblioteca completa para placas ESP32 consumiu 1,89 Gbytes de espaço no disco (na pasta /Users/fernandopassold/esp/esp-idf/) ⚠️.

Mas é criada também outra pasta em ˜/.espressif/ ocupando + 3,05 GBytes ⚠️.

Depois dos pacotes instalados e conectando-se a placa ESP32 no MacOS, aparece:

Obs.: para sair do "screen" aperte a combinação de teclas: CTRL-A+ K. Eventualmente será necessário pressionar o botão "EN" ou "BOOT" na placa para que seja estabelecida a comunicação com a placa ESP32.

👋 E antes de tentar programar a placa usando o Terminal, não esquecer de dar o comando:

Atenção: o arquivo export.sh não deve ser do tipo executável.

Este comando atualiza o $PATH de seu sistema. No caso do MacOS, por exemplo:

Este comando executa algumas tarefas. Por exemplo:

 

Atenção: usuários Windows (e Linux), provavelmente será necessário instalar o PuTTY SSH Client para estabelecer a comunicação com a placa. E depois será necessário configurar a comunicação serial para:


✏️ Primeiro Projeto

Se você já tiver o ESP-IDF instalado e não estiver usando uma IDE, poderá criar seu primeiro projeto a partir da linha de comando após Iniciar um Projeto no Windows ou Iniciar um Projeto no Linux e macOS.

1. Iniciando trabalhos com placas ESP32

Obs.: o último comando acima, deve ser excecutado nesta forma, incluindo o ".". Note: o arquivo export.sh não deveria ser um arquivo executável, por isto é acionado desta forma.

2. Iniciando o projeto

Obs.: não esqueça o "." final no comando acima, senão não será criada uma nova pasta chamada hello_world.

Um novo diretório ~/esp/hello_world deve ter sido criado contendo uma estrutura contendo pastas como:

O código que se deseja compilar é o ~/esp/hello_world/main/hello_world_man.c que contêm algo como:

Obs.; Note que este código exemplo já implementa uma task usando a biblioteca do FreeRTOS.

3. Configurando placa com projeto

Associa placa com o projeto:

Este último permite configurar vários detalhes especiais mais específicos (não altere nada se não souber o que alterar). Mas permite configurar o SSID da sua rede WiFi, incluindo a senha. Neste caso, na janela inicial que se abre selecionar "Componet config":

Selecione "Component config" e devem aparecer uma longa lista de novas opções:

🤦‍♂️ Ops.... A Espressif não mostra como configurar o SSID e senha do seu WiFi... 😞

Mas note que podemos configurar detalhes da biblioteca FreeRTOS. Abaixo aparecem as opções para: FreeRTOS → Kernel):

e as opções para: FreeRTOS → Port:

Atenção: se não souber o que configurar de maneira diferente do default recomenda-se não alterar nenhuma opção.

4. Compilando

Obs.: este comando pode levar um certo tempo para terminar de ser exceutado. Neste caso, a primeira vez em que foi compilado, exigiu 1 min 35 segundos:

 

5. Transferindo código (compilado) para a placa

onde <PORT> deve ser o "caminho" que indica a conexão/porta serial do seu computador com a placa ESP32. Você pode seguir as dicas passadas pela Espressif em: Establish Serial Connection with ESP32.

No caso do Windows ficaria algo como:

Neste caso:

Esta transferência é rápida. Neste casou durou apenas uns 25 segundos.

Obs. por padrão, o baud rate de placas RESP32 é de 115200 bps.

6. Monitorando a saída serial (saída do programa)

Antes: de executar o comando acima, a própria Espressif recomenda, na placa ESP32, pressionar o botão "BOOT" (para forçar carga da nova versão do firmware) e depois "EN" (para resetar a placa).

Obs.: Em máquinas Windows, será necessário instalar o PuTTY SSH Client. E depois configurar a comunicação serial para:

Se tudo estiver correto, devem ter surgido as seguintes informações na tela do monitor serial:

Note que esta aplicação teste fica repetidamente exibindo a mensagem "Hello world!" e rebootando o dispositivo à cada 10 segundos.

Para interromper a monitoramento, pressionar a combinação de teclas CTRL+].

Neste caso específico, na janela de terminal apareceu algo como:

Mais Info

Mais info sobre compilar este projeto (no Terminal!) ver [aqui].