15 de maio de 2021

Do bit Ao Byte

Embarcados, Linux e programação

Cactus Micro – Atmega32u4 e ESP8266 juntos!

Cactus Micro

Em minha humilde opinião, o “tendão de Aquiles” do ESP8266 ou ESP32 é o conversor AD. Além de ter apenas uma porta, o nível lógico complica um pouco na hora de fazer a integração com periféricos. Mas claro, temos diversas soluções para esse problema, sendo uma delas esse híbrido: Cactus Micro, com Atmega32u4 e ESP8266 na mesma placa!

Especificações da Cactus Micro

O nível lógico é 3v3, com as portas analógicas do Atmega32u4 disponíveis via pinos de GPIO. A alimentação por USB é 5V e na entrada RAW pode ir de 4.3 à 6V, mas claro, deve-se utilizar apenas uma das entradas de alimentação por vez. Isto é, se seu projeto contempla alimentação externa, ela deve estar desligada quando for programar a placa, porque a USB fará também esse papel.

O clock é modesto: 8MHz da Atmega32u4, porém o ESP8266 pode ser o master, como já mostrei nesse outro artigo.

No barramento, temos os já conhecidos recursos, como WiFi, serial, I2C e SPI. A memória flash tem 32KB, sendo 4KB usados pelo bootloader.

A SRAM tem 2.5k e temos 1k de EEPROM.

Tem um total de 18 pinos de GPIO.

Guia de inicialização

O firmware padrão é o ESPduino, com alguns exemplos de uso nesse link. Vou escrever outro artigo dedicado a esse firmware, mas realmente prefiro fazer o meu próprio.

Como gravar o firmware no ESP8266?

Se ambos são integrados e temos apenas a porta USB, qual o caminho para gravar o ESP8266 dessa placa? Bem, a conexão entre as placas segue essa tabela, tirada do site aprbrother, que a produz:

Cactus Micro

Para fazer a gravação, tem um sketch desenvolvido para esse propósito. Como estou fazendo o artigo de introdução, não vou detalhar muito, mas se quiser se adiantar, fiz um Ctrl+Chups no repositório do fabricante e coloquei no git do blog. Só olhei o código, mas o comportamento é similar ao FTDI, foi um projeto de hardware bem bolado.

A posteriori, use o esptool desse link para fazer upload para o ESP8266. “Tem” que ser esse, se estiver usando Linux. Já para Windows, use o NodeMCU-Flasher desse link. As opções devem ser 1M bytes/QIO. Só isso. Se o upload falhar, aperte o botão de reset da Cactus e tente novamente.

No próximo artigo relacionado vou mostrar alguma interação. O propósito inicial dessa placa é fazer outro módulo para simulador de voo, mas pretendo fazer o piloto automático agora. “Acho” que dessa vez não será emulação de teclado, será comunicação por rede, mas antes será necessário pegar intimidade com a placa para projetar o módulo.

Onde comprar a Cactus Micro

A MASUGUX está vendendo agora pelo Shopee. Fiz algumas compras por lá e estou bastante satisfeito, tanto quanto (ou mais) que Mercado Livre. Visite a loja da MASUGUX e faça um teste, esse vendedor é parceiro de longa data e extremamente confiável. Qualquer dúvida na utilização de seus produtos, pode pedir pro Marcelo me contatar que eu ajudo.

Até a próxima!

 

Revisão: Ricardo Amaral de Andrade