31 de julho de 2021

Do bit Ao Byte

Embarcados, Linux e programação

Device reports version as 2.2

MH-Tiny - Device reports version as 2.2

Tenho um dom de atração para problemas que “eventualmente” podem acontecer. É o caso agora, que recém-formatei o laptop e até chegar no estado de excelência que outrora desfrutava, leva tempo. Bem, o que para uns é problema, para outros é oportunidade – como essa, de poder escrever um artigo de solução, caso tenha se deparado com a mensagem “Device reports version as 2.2”, ao tentar gravar o MH-ET Live. A solução é simples, mas para Windows eu só não sei dizer como compilar a versão mais atual.

Essa placa custa 2/3 de um Arduino Nano (que já é barato) e vale muito ter uma. Eis o link para o produto.

Versão do micronucleous

O problema de “Device reports version as 2.2” ocorreu porque essa é a versão do bootloader contido na placa MH-ET Live. A versão utilizada (no momento desse artigo) por ambas as versões da IDE do Arduino (1.8.5 e 2.0) é a 2.0.

Para corrigir o problema pegue os fontes no repositório oficial do micronucleous e compile uma nova versão. É fácil no Linux:

sudo su
apt-get update
apt-get install binutils
apt-get install libusb-dev
apt-get install libusb-0.1-4

Esses pacotes são necessários para a compilação e para o funcionamento, senão haverá outro tipo de erro, que mostro no vídeo. Se inscreva em nosso canal DobitaobyteBrasil no Youtube para não perder nada. Os vídeos tem em média 3 minutos, pra não ocupar seu tempo com obviedades e futilidades, além de contar com uma agradável (mas não perfeita) edição.

Tendo instalado os pacotes, hora de baixar os fontes. No link acima você encontra o pacote. Baixe como quiser, depois descomprima e, através de um terminal, entre no diretório micronucleus/commandline. Estando nesse diretório, simplesmente digite:

make

Ao término da compilação deverá existir o programa micronucleous ou micronucleous.exe para Windows. Copie-o para o diretório oculto ~/.arduino15/packages/mhetlive/tools/micronucleus/2.0a4 . No Windows o caminho deve semelhante.

cp micronucleus /home/djames/.arduino15/packages/mhetlive/tools/micronucleus/2.0a4/

Algo assim:

Device reports version as 2.2

Isso poderá ocorrer com outras placas em versões futuras, basta seguir esse mesmo procedimento, atentando-se à versão.

Feito isso, hora de subir o sketch. Clique em Upload, então aperte e solte o botão de reset da placa. Essa placa não aparecerá porta serial para se conectar, basta fazer esse processo e o bootloader aguardará um tempo antes de entrar no programa principal. Como a placa vem sem programa, fica piscando direto, porque entra o tempo inteiro no bootloader devido à falta de um programa.

A última dica em relação ao programa – O LED builtin está no GPIO 0. Um sketch de blink para exemplo:

void setup() {
  pinMode(0,OUTPUT);

}

void loop() {
  digitalWrite(0,HIGH);
  delay(200);
  digitalWrite(0,LOW);
  delay(600);

}

Instalar suporte à placa MH-ET Live

Se ainda não instalou as dependências na IDE do Arduino, adicione essa URL em File > Preferences e Boards Manager:

https://raw.githubusercontent.com/MHEtLive/arduino-boards-index/master/package_mhetlive_index.json

Cuidado para não quebrar linha, tive sse problema aqui ao incluir a URL.

Agora é só ir em Boards Manager e procurar por Attiny T88 ou algo similar e deverá aparecer o pacote da placa. Aí comece sua saga lá da primeira linha desse artigo.