ESP32

Wemos ESP32 com OLED onboard

Vamos começar pelos fatos. Esse ESP32 com oled onboard é incrível. Essa board não é uma Wemos. Quem fez, utilizou o logo da Wemos.cc, mas aí eu me perguntei duas coisas ao mesmo tempo:

“E daí?” – Tem importância pra você a “etiqueta”?

“Pra quê?” – Havia necessidade de “pichar” a placa?

Tanto faz se é Wemos ou Wallace, é um ESP32 com display OLED onboard! E na parte de trás ainda tem um conector para pack de bateria. Desse jeito o coração não aguenta! Esse sim vale a pena ir para a árvore de natal com esse projetinho. Daí aposto que você já está se perguntando:

Onde comprar?

Por sorte temos alguém apaixonado por novidades. Esse ESP32 você encontra na CurtoCircuito, clicando aqui. Se você procurar pelo display OLED e um ESP32 à parte (mais os jumpers necessários para fazer o wiring e mais as taxas de entrega) com certeza você terá um custo maior, mas independente disso, você terá exclusividade em primeira mão. Confira por si mesmo!

Pinout do ESP32 com OLED onboard

O acesso aos pinos do ESP32 estão dispostos nas duas laterais (ou em cima e embaixo, dependendo da forma que você o está segurando). Na parte de trás da placa estão as portas USB e a porta de conexão com a bateria. O pinout dessa board é o seguinte:

esp32 com oled onboard - pinout
esp32 com oled onboard – pinout

Display I2C OLED



O display é I2C e os pinos de comunicação utilizados no ESP32 são o pino 5 para SDA e pino 4 para SCL. O endereço do display é 0x3E. Os pinos configurados são pino 5 para SDApino 4 para SCL. A biblioteca utilizada foi a da Adafruit:

 

Biblioteca - esp32 com oled onboard
Biblioteca – esp32 com oled onboard

Para conseguir compilar, a IDE do Arduino deve ficar com os avisos do compilador em Padrão. Para isso, abra Arquivos > Preferências e faça a escolha.

Mas (e muitas vezes tem um “mas”), você precisará dar um “tapinha” na chamada do Wire dentro do arquivo ~/Arduino/libraries/Adafruit_SSD1306/Adafruit_SSD1306.cpp porque precisamos dizer qual pino utilizar, uma vez que está fora do padrão a utilização dos pinos 4 e 5. Mas está mais fácil que fazer um blink. Edite o arquivo e vá até a linha 206, então deixe o begin assim:

Única modificação necessária - esp32 com oled onboard
Única modificação necessária – esp32 com oled onboard

Daí o que vai acontecer é que essa biblioteca funcionará apenas para esse display, exceto removamos a referência dos pinos “ou” adicionemos esses parâmetros à classe. É fácil fazer, mas como não é tão fácil quanto adicionar esses 3 Bytes na chamada do begin, preferí a solução “porca” por enquanto.

Para testar, utilizei o mesmo código do projeto para árvore de natal, só que agora eu não coloquei o buzzer pra tocar Jingle Bell, só queria mesmo testar o display pra ver se realmente eu poderia controlá-lo com essa biblioteca. Uma imagem fala mais que mil palavras:

Teste da modificação - esp32 com oled onboard
Teste da modificação – esp32 com oled onboard

Quando a placa chegou, já estava com um programa pré-carregado, que é justamente um dos exemplos que você encontra na biblioteca, mas se carregar um exemplo sem fazer a modificação supracitada, não vai funcionar!

Bom, agora sempre que escrever um artigo com ESP32, vou utilizar essa board quando precisar de display e a placa de desenvolvimento quando não. Não viu a placa de desenvolvimento ainda? Tá perdendo artigo, hum?

Eis o video desse demo (unha suja de esfregar cola, não repare):

Gostou? Dá uma assinada no canal DobitAoByteBrasil no YouTube. Sempre estarão os videos aqui nos artigos, mas assinando lá você dá uma força pro canal, porque convenhamos, não é todo mundo que se entretem com informação técnica, hum?

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Nossos grupos:

Arduino BR – https://www.facebook.com/groups/microcontroladorarduinobr/
Raspberry Pi BR – https://www.facebook.com/groups/raspberrybr/
Orange Pi BR – https://www.facebook.com/groups/OrangePiBR/
Odroid BR – https://www.facebook.com/groups/odroidBR/
Sistemas Embarcados BR – https://www.facebook.com/groups/SistemasEmbarcadosBR/
MIPS BR – https://www.facebook.com/groups/MIPSBR/
Do Bit ao Byte – https://www.facebook.com/groups/dobitaobyte/

Próximo post a caminho!