A Franzininho foi desenvolvida para as atividades dentro do FAB LAB Livre SP durante o Arduino Day São Paulo. O circuito foi projetado pensando na fabricação usando as CNCs presentes nos LABs ou através de processo de corrosão de PCI caseiros. Mas você também pode mandar fazer a placa em empresas especializadas na produção de PCI, ou até mesmo montar em uma protoboard ou placa padrão.

 



O projetos é open hardware e está disponível no github sob licenças CC-SA-4.0.

Você pode reproduzir, modificar, montar na sua casa, FABLAB, makerspace, etc. A proposta é que todos possam montar o seu Arduino, entender como funciona o circuito e usar a criatividade para aplicar e criar novos circuitos e projetos.

Vamos conhecer os detalhes da Franzininho!

 

O hardware

O circuito da Franzininho não é nada de outro mundo. Ele foi baseado nas placas Arduino GemmaDisgispark, que usam o ATtiny85 como microcontrolador e são programadas na IDE Arduino. O projeto foi desenvolvido no Eagle, veja o seu esquemático:

 

Figura 1 - Esquemático da Franzininho

 

Conforme exibido na figura 1, a Franzininho possui um hardware bem enxuto. Para facilitar a produção, a placa foi desenvolvida em face simples e os componentes são todos PTHs. A seguir é exibido o layout da PCB.

 

Figura 2 - Layout da Franzininho

 

A placa possui dois LEDS, um para indicar a alimentação (ON) e outro para uso geral, ligado ao pino PB1 do ATtiny85 (esse LED que geralmente usado para o blink).

O conector USB foi feito na placa para reduzir custo de fabricação, porém para que tenha um bom encaixe no computador é necessário que a PCB tenha espessura de 2,4 mm.

Também há um botão de RESET para facilitar na hora da gravação.

A tabela a seguir exibe a lista de componentes da placa:

 


Tabela 1 - Lista de materiais da Franzininho

Referência

Descrição

C1

Capacitor Cerâmico 100 nF x 50 V

C2

Capacitor eletrolítico 10 uF x 35 V

D1

Diodo Zener 3,6 V 0,5W

D2

Diodo Zener 3,6 V 0,5W

D3

  1. 1N4148

IC1

microcontrolador ATTINY85 - 20PU

SQ1

Soquete Para CI Torneado 8 pinos

JP3

Barra de pinos estampada 15 mm 1x40 180º

LED

Led 3mm Amarelo Difuso

PWR

Led 3mm Verde Difuso

R1

Resistor 5% de Tolerância 1/4W CR25 68 R

R2

Resistor 5% de Tolerância 1/4W CR25 68 R 1/4 W

R3

Resistor 5% de Tolerância 1/4W CR25 1K5 1/4 W

R4

Resistor 5% de Tolerância 1/4W CR25 1K 1/4 W

R5

Resistor 5% de Tolerância 1/4W CR25 1K 1/4 W

RESET

Chave Tactil 6x6x4 mm

 

A figura a seguir exibe o 3D da placa gerado na ferramenta 3D BRD Viewer:

 

franzininho-696x385
Figura 3 - Visualização 3D da placa

 

Pinagem

Para facilitar a customização e uso do microcontrolador, todos os pinos do ATtiny85 estão disponíveis no header de I/Os. A figura a seguir exibe os pinos e a tabela 1, suas respectivas funções:

Franzininho componentes-696x380
Figura 4 - Pinagem da Franzininho

 


Tabela 2 - Pinagem Franzininho

PINO

ATTINY

Entrada analogica

PWM

I2C

SPI

Alt Função

P0

PB0

 

PWM0

SDA

MOSI

 

P1

PB1

 

PWM1

 

MISO

LED

P2

PB2

A1

 

SCL

SCK

 

P3

PB3

A3

     

USB+

P4

PB4

A2

PWM4

   

USB-

P5

PB5

A0

     

RESET

 

Se você utilizar o bootloader da Arduino Gemma, o pino P5 será usado como pino de RESET. Assim, se este pino for colocado em nível zero, a placa será reiniciada e entrando em modo bootloader. Essa funcionalidade é importante para o upload do código através da IDE Arduino. 

Caso use o bootloader Micronucleus (usado no Digispark), o pino P5 funciona como I/O e pode ser usado para aplicações. A placa só entra em modo bootloader quando é alimentada.

 

 

Software

A Franzininho pode ser programada diretamente na IDE Arduino. Para facilitar o processo de upload do .hex, vamos gravar o bootloader da Arduino Gemma e programar a Franzininho como se faz com ela.

O processo de gravação do bootloader no ATtiny85 exige um Arduino UNO como programador. Confira o excelente tutorial escrito pelo Mauricio Jabur no Fazedores: Attiny85 com V-USB: Como gravar o bootloader usando Arduino

Caso tenha dúvida para a gravação do bootloader, deixe seu comentário na seção de comentários abaixo.

Após a gravação do bootloader, vamos testar a programação da placa na IDE do Arduino.

O primeiro passo é configurar a IDE para a correta gravação da placa. Selecione a placa Arduino Gemma:

Franzininho-04-459x418
Figura 4 - Selecionando a placa Arduino Gemma

 

Agora selecione o Programador Arduino Gemma:

Franzininho-05-536x418
Figura 5 - Selecionando o programador da Arduino Gemma

 

Pronto, a IDE está preparada para programação da Franzininho. Vamos ao nosso exemplo.

 

 

Hello World, blink led

Para nosso exemplos vamos fazer o famoso blink LED, com algumas alterações:

 

/*
Hello World, Franzininho!
primeiro programa para a Franzininho

Por: Fábio Souza
*/

const byte LED = 1; //pino do LED

void setup() {
   pinMode(LED,OUTPUT);
}

void loop() {

for(int i = 0;i<5;i++) //pisca o LED 5 vezes com instervalos de 100 ms
  {
    digitalWrite(LED, HIGH); // liga o led
    delay(100); // espera 100 ms
    digitalWrite(LED, LOW); // apaga led
    delay(100); // espera 100 ms
  }

for(int i = 0;i<2;i++) //pisca o LED 2 vezes com instervalos de 1000 ms
  {
    digitalWrite(LED, HIGH); // liga o led
    delay(1000); // espera 1000 ms
    digitalWrite(LED, LOW); // apaga led
    delay(1000); // espera 1000 ms
  }
}

 

Para fazer o upload para a Franzininho é necessário seguir os passos abaixo:

1 - Compilar o código. Se a compilação for realizada com sucesso, passar para o próximo passo. Caso contrário, corrigir o código e compilar novamente:

Franzininho-06-421x418
Figura 6 - Compilando o código

 

2 - Iniciar o upload para a placa. Após pressionar o botão de upload, inserir a Franzininho na porta USB do computador:

Franzininho-07-344x418
Figura 7 - Iniaciando o upload

 

Se tudo ocorrer bem, o upload será feito com sucesso:

 

Franzininho-08-696x398
Figura 8 - Upload realizado com sucesso

 

O LED da Franzininho começará a piscar, conforme as instruções do código. O video que você encontra neste link exibe o processo de gravação do sketch.

 

Materiais de Suporte

Drivers para Windows: https://learn.adafruit.com/adafruit-arduino-ide-setup/windows-setup

Setup no Linux: https://learn.adafruit.com/adafruit-arduino-ide-setup/linux-setup

Setup Mac OSX: https://learn.adafruit.com/adafruit-arduino-ide-setup/mac-osx-setup

 

 

Montagem da placa e material para oficinas

Está disponível um material para facilitar as atividades com a Franzininho. Esse material foi elaborado de forma colaborativa e sempre será atualizado: Material para oficinas com a Franzininho

O Video neste link exibe a montagem da placa.

 

Conclusão

A placa Franzininho nasceu com o propósito de facilitar a criação de placas Arduino, assim como a sua antecessora, Franzino. Ambas são projetos baseados em placas já existentes, porém com placa de fácil fabricação e componentes fáceis de comprar e montar. É um projeto simples e acessível.

Ainda tem muito o que melhorar no circuito e outros recursos podem ser acrescentados à placa. Por ser um projeto open hardware e estar disponíveis os arquivos tanto para fabricação quanto para modificação, acredito que virão muitas contribuições, tanto no hardware quanto no software. Fique à vontade para usar, modificar e contribuir.

Se tiver alguma sugestão, crítica ou dificuldade, deixe seus comentários abaixo. Caso tenha interesse, participe do grupo de discussão sobre o projeto Franzininho no Facebook.

 

Agradecimentos e colaborações

  • Ao Thalis Antunes pelo apoio inicial ao projeto no Arduino Day;
  • Ao Embarcados pela divulgação;
  • A Rede Fab Lab Livre SP que fizeram as primeiras placas durante o Arduino Day;
  • A todos que participaram do pedido em forma colaborativa, que viabilizou a fabricação das primeiras PCI com acabamento profissional;
  • Ao Giovanni Bauermeister pela versão do projeto no Kicad (Já está no repositório do github);
  • Ao Felipe Neves pelo FranzininhoOS (está em desenvolvimento)
  • Ao Pedro Bertoleti pelo port do tickAttack para a Franzininho (confira o projeto:TickAttack e Franzininho - controlando um robô sob rodas)
  • Ao Daniel Quadros pela colaboração no tutorial para montagem da placa
  • A todos que de alguma forma colaboraram e colaboram  para o projeto Franzininho.