Arduino

Attiny com o Bootloader do Digispark e Paperduino

Escrito por: ­ 2 de nov de 2016 ­ 2.708 views

Você gostaria de programar um Attiny diretamente pela porta USB do seu computador, assim como ocorre com o Digispark e Paperduino?
Isso é possível graças ao bootloader micronucleus, que foi inicialmente desenvolvido pela Jenna Fox, Blubie, que emula um dispositivo USB virtual, com isso você precisará somente da IDE do Arduino, e um dispositivo plug & play de gravação que pode ser adquirido por menos que US$ 1,oo em sites chineses.

Este artigo está desatualizado acesse o novo aqui

Esses dispositivos são vendidos como Pluggable Development Board For ATtiny13A/ATtiny25 e pode ser adquirido através desse link

Nesse tutorial iremos aprender como programar um Attiny com o bootloader utilizado pelo Digispark.
No tutorial anterior, nós mostramos como programar um Attiny85, porém ele é dependente do Arduino, o que não é problema pra muita gente. Mas se você quiser utilizar 6 pinos do Attiny85 (não recomendado) e utilizar não somente o Attiny, mas também a placa, esse tutorial é pra você.

O Arduino será necessário somente para instalação do bootloader,  e uma vez carregado, não será mais necessário. Há também possibilidade de montar o seu próprio dispositivo, assim como fizeram os desenvolvedores do Paperduino.

3 meses atrás adquirimos 3 plaquinhas para conexão do Attiny85 (Pluggable Development Board For ATtiny13A/ATtiny25)

A decepção foi imensa, quando conectamos o dispositivo na porta USB e nada aconteceu.  Foi justamente nesse momento que iniciamos várias pesquisas em vários sites e o que encontramos foi praticamente nada, mas depois de juntar as peças acho que já temos algo para compartilhar.

Aqui você verá:

O que é o Bootloader Micronucleus
Já tenho o Bootloader, o que faço agora?
O que você vai precisar?
Instalação do Programa Arduino ISP:
Montagem na Breadbord – ISP (In system Programmer)
Incluindo a placa Digispark na IDE do Arduino
Gravando o Bootloader
Solução de Problemas
Extras


O que é o Bootloader Micronucleus

O bootloader é um programa que torna o Attiny apto para receber a programação, como se fosse um sistema operacional. No caso do micronucleus também será possível a comunicação via USB e de acordo com o desenvolvedor esse bootloader é o menor disponível para Attiny, utilizando somente 2Kb .
A instalação foi tranquila em Windows 7, mas tivemos um esforço maior no Windows 10, para isso utilizamos o software Zadig, conforme instrução do programador, inclusive ele também faz parte do pacote de instalação.

Para baixar o micronucleus acesse o seguinte aqui.
Temos a versão utilizada neste tutorial na nossa área de download.


Já tenho o Bootloader, o que faço agora?

Essa é uma excelente pergunta, particularmente, lendo todo o material disponível no programa baixado, não consegui evoluir nessa questão. A razão principal é que cada computador possui uma configuração diferente, fazendo com que o que se lê não seja fácil de reproduzir.
Outro ponto importante é que todos nós temos a mesma necessidade, mas nem todos temos os mesmos conhecimento, por esse motivo nós desenvolvemos uma aplicação muito simples para gravação e verificação do bootloader

Vamos mostrar o processo passo a passo.


O que você vai precisar?

Placa Arduino/Genuino/Uno, Duemilanove, Mega, Nano (1)  – testamos nesses modelos
Pluggable Development Board For ATtiny13A/ATtiny25 (1)
Breadboard (1)
Capacitor de 10µF (1)
Cabos Jumper (alguns)
LEDs (para teste)
Resistores 220 Ω. (para os LEDs)


Instalação do Programa Arduino ISP:

arduino-isp-sketch arduino-isp-sketch_conexao arduino-isp-sketch_run


Montagem na Breadbord – ISP (In system Programmer)

Pino Attiny85 Pino Arduino
8 5v
7 13
6 12
5 11
1 (Reset) 10

 

Capacitor
Reset (+) Gnd (-)

attiny85-esquema_pt

attiny-arduino-ligacao

Montagem no Arduino, já com o Módulo ISP


Incluindo a placa Digispark na IDE do Arduino

Quando esse processo for finalizado você precisará desse passo para gravar o chip , já com o bootloader, através da IDE do Arduino.
Na criação deste post, a versão mais atualizada do Arduino era a 1.6.12, mas testamos em outras e funcionou de maneira igual.

Siga os seguintes passos:

[Arquivo] -> [Preferências]

Copie o endereço abaixo e cole em: [URLs Adicionais de Gerenciadores de Placas]:

http://digistump.com/package_digistump_index.json

Após este processo o Arduino ficará desta maneira:

idewithdigisparkO próximo passo será instalar a placa Digispark:
Passos 1, 2 e 3:

attiny85-arduino-projeto-reduzido-hackeduca-hack3educaPassos 1 e 2:

idewithdigispark_choose
Se tudo correu bem, você verá o nome do Digispark, logo abaixo: (Passos 1, 2 e 3)
idewithdigispark2Logo após esse processo selecione o chip que você possui:

idewithdigispark_correct

O Clock é automático para 16,5mhz – Sem opção de escolha.


Gravando o Bootloader

Baixe em nossa área de download o aplicativo FlashBootloaderAttiny_with_Reset (Pasta Arduino)
Com esse aplicativo será possível gravar o Bootloader do Micronucleus.

Não é necessário IDE do Arduino.
É necessário que o Arduino esteja com o programa ArduinoISP
É necessário que o Arduino esteja conectado ao microcontrolador (conexão ISP)

flash_bootloader_1

Escolha seu idioma

flash_bootloader_2

Selecione o seu microcontrolador

flash_bootloader_3

Nosso programa irá mostrar em que porta seu Arduino está conectado. Selecione uma porta.

flash_bootloader_4

Essa mensagem indica que o bootloader foi gravado com sucesso

flash_bootloader_5

Como é sempre bom ter certeza, verifique se deu tudo certo, opção 1

flash_bootloader_8

Muita atenção ao lado correto de colocar o chip na placa. Se inverter, a placa irá queimar

Pegue a sua placa de desenvolvimento, cabo e o chip gravado

flash_bootloader_6

O sistema está aguardando a conexão do dispositivo gravado na USB (qualquer uma)

flash_bootloader_7

Assim que você conectar o sistema identificará sua placa e se você tiver essa mensagem é porque deu tudo certo.


Solução de Problemas

  • Porta COM não encontrada
    • Tente um novo cabo, troque a porta USB do seu Arduino
  • Falta dll libusb0.dll
    • Neste caso você terá duas opções:
      • Instale a IDE do Arduino
      • Instale o aplicativo WinAVR neste link:
  • Windows não reconhece a placa
    • Instale o Driver que está na pasta do Micronucleus
  • Windows é possível instalar o drivers do Micronucleus
    • Instale o driver através do ZADIG
      • Escolha o dispositivo não instalado (1)
      • Escolha libusb (2)
      • Instale (3)
      • zadig-hackeduca
  • Windows não reconhece a placa com o bootloader gravado.
    • Troque o seu cabo USB
      • O cabo deve ser bom, de preferência apto para USB 2.0 (tivemos problema com nosso cabo)

Extras

  • Clock

    • O clock do seu chip depois da gravação é de 16mhz
    • Caso queira mudar para 1 mhz, ou 8 mhz, use o método descrito no tutorial (link aqui), após fazer a montagem, acesse a IDE do Arduino [Ferramentas] ->Selecione a sua Placa (Chip) –>Escolha o Internal Clock –> [Gravar Bootloader].
  • Digispark possui 6 pinos como I/O

    • Esse método considera somente 5 pinos + 1 reset, 1 ground e 1 Vcc
    • É possível, mas não recomendado, converter o pino reset em I/O, porém após essa mudando, o métodos de gravação ISP não é mais possível.
    • Caso você realmente queira converter o pino resent em I/O, utilize nosso software chamado FlashBootloaderAttiny_without_Reset, na nossa área de download, na Pasta do Arduino

 

Deixe seus comentários

print
Previous Post Next Post

Você também pode gostar / You Might Also Like

5 Comments

  • Reply JAIRO LUZ DE SOUZA 27 de jan de 2017 at 20:20

    Ao rodar o programa dá erro…. o sistema não pode achar o caminho especificado.Comoresolver?

    • Reply Edson Sobreira 28 de jan de 2017 at 07:56

      Olá Jairo,
      Qual é o tipo de erro que você está recebendo.
      Qual arquivo você está utilizando?
      Você consegue nos enviar um “printscreen” do erro?

      Hackeduca
      Se inscreva em nosso website para receber as novidades

  • Reply gpsgui 21 de abr de 2017 at 11:21

    Oi, tive um erro no momento da gravação do bootloader, segue print: http://imgur.com/a/JOERJ
    Acho que devo executar o avrdude com a opção -F, porque aparentemente a conexão com o programador funcionou, mas a autenticação, não. Se vc puder me passar a instrução completa do avrdude , implementada dentro deste programa .exe usado nesse post, agradeço. Seu site é realmente muito bom

    • Reply gpsgui 21 de abr de 2017 at 12:09

      Consegui!! era so uma falha de conexão.

      • Reply Edson Sobreira 21 de abr de 2017 at 12:28

        Que bom que você conseguiu.
        As duas possibilidades que conheço são:
        * Erro na conexão com o Arduino
        * Se o Attiny85 já tiver utilizado o pino 5 (Reset) como I/O (neste caso vc terá que usar um HVP para habilitar o reset novamente)

        Abraço,

        Aproveite e se inscreva também em nosso canal Canal do Youtube

    Leave a Reply

    Show Buttons
    Siga-nos no Facebook
    Siga-nos no Twitter
    Siga-nos no Google Plus
    Siga-nos no Pintrest
    Siga-nos no Youtube
    Siga-nos no Scratch
    Hide Buttons
    Top
    HackEduca