> For the complete documentation index, see [llms.txt](https://franzininho.gitbook.io/franzininho-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://franzininho.gitbook.io/franzininho-docs/franzininho-diy/upload-do-sketch.md).

# Upload do Sketch

## Upload do sketch

Dependendo do bootloader gravado na placa, há duas formas de fazer upload do sketch:

## Arduino Gemma

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

1 - Certifique que a placa está conectada ao computador:

![](/files/-LJZ-QSsj3uMe6pdCjhd)

2 - Pressione o botão de Reset:

![](/files/-LJZ-TDteyfv6U53-p95)

3 - Imediatamente em seguida clique no botão de upload na IDE:

![](/files/-LGNPY1ZF7PtXKbLHtKf)

4 - É iniciada a programação:

![](/files/-LGNPY1aOKx1m9dwhFVL)

5 - Após alguns instantes a sua Franzininho estará programada:

![](/files/-LGNPY1cNG90YcqFXKiv)

Maravilha, sua Franzininho foi programada. Repita o procedimento acima, toda vez que for fazer o upload de código para sua placa.

## Micronucleus - Disgispark

O processo de gravação para o Micronucleus é um pouco diferente.

1 - Certifique que a placa está conectada ao computador:

![](/files/-LGNPY1eTROIJ1zZ9Ewu)

2 - Clique no botão de upload na IDE:

![](/files/-LGNPY1g2dYeqU9jeumG)

3 - Após a compilação será exibidada seguinte mensagem:

![](/files/-LGNPY1i36y5DYB3z1s_)

Você tem até 60 segundos para inserir a placa na USB do computador.

4 - Plugue a Franzininho na porta USB do seu computador

Após plugar a placa será iniciado o upload do código:

![](/files/-LGNPY1kdGoVligu81in)

Pronto, a sua Franzininho está programada. Repita o procedimento acima toda vez que for fazer upload de código para a placa.

### Solução de problemas:

#### (Micronucleus) Erro ao fazer upload (Contribuição de [caioau](https://github.com/caioau) )

Caso o erro abaixo (ou parecido) apareça:

```
Warning: device with unknown new version of Micronucleus detected.
This tool doesn't know how to upload to this new device. Updates may be available.
Device reports version as: 2.4
```

Significa que a ferramenta que faz o upload do computador para a placa com o Micronucleus está desatualizada.

Caso não tenha instalado gcc e make, instale-os:

> sudo apt install build-essential git

Clone o repositório do micronucleus:

> git clone <git@github.com>:micronucleus/micronucleus.git

Compile e substitua o binário antigo pelo atualizado:

```
cd micronucleus/commandline/
make
cp micronucleus /home/<SEU_USUARIO>/.arduino15/packages/digistump/tools/micronucleus/2.0a4/micronucleus
```

Tudo pronto! Deve estar funcionando agora. Tente compilar e fazer o upload novamente.

Caso retorne o seguinte erro após o make:

```
Building library: micronucleus_lib...
gcc   -Ilibrary -O -g -D LINUX -c library/micronucleus_lib.c
In file included from library/micronucleus_lib.c:30:0:
library/micronucleus_lib.h:35:80: fatal error: usb.h: No such file or directory
   #include <usb.h>        // this is libusb, see http://libusb.sourceforge.net/
                                                                                ^
compilation terminated.
Makefile:49: recipe for target 'micronucleus_lib' failed
make: *** [micronucleus_lib] Error 1
--- End code ---
```

Instale:

```
sudo apt-get install libusb-dev
```

E compile novamente.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://franzininho.gitbook.io/franzininho-docs/franzininho-diy/upload-do-sketch.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
