Poodle Toy: mudanças entre as edições

De Caninos Loucos
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
 
(3 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 3: Linha 3:
== Programando ==
== Programando ==


A programação do Poodle Toy é realizada por meio do bootloader Mcuboot, que deve ser previamente gravado na memória da placa.
A programação do Poodle Toy é realizada por meio do bootloader [https://github.com/caninos-loucos/mcuboot-puppy mcuboot] , que deve ser previamente gravado na memória da placa com um ESP32 ou um gravador de BIOS CH340A.


=== Método Manual===
=== Método Manual===


Para programar manualmente a Poodle Toy usando a plataforma Arduino, é necessário compilar o core manualmente a partir do código-fonte localizado no repositório [github.com/caninos-loucos/ArduinoCore-zephyr ArduinoCore-zephyr]. A compilação pode ser feita tanto no Linux quanto em MacOS, mas não foi testada em Windows. Faremos os seguintes comandos, a partir de uma pasta de sua escolha que denominaremos de <code>DIR</code>
Para programar manualmente a Poodle Toy usando a plataforma Arduino, é necessário compilar o core manualmente a partir do código-fonte localizado no repositório [https://github.com/caninos-loucos/ArduinoCore-zephyr ArduinoCore-zephyr] . A compilação pode ser feita tanto no Linux quanto em MacOS, mas não foi testada em Windows. Faremos os seguintes comandos, a partir de uma pasta de sua escolha que denominaremos de <code>DIR</code>


<blockquote>
<pre>
mkdir arduino-puppy
mkdir arduino-puppy
cd arduino-puppy
cd arduino-puppy
git clone https://github.com/caninos-loucos/ArduinoCore-zephyr
git clone https://github.com/caninos-loucos/ArduinoCore-zephyr
cd ArduinoCore-zephyr
cd ArduinoCore-zephyr
extra/boostrap.sh
extra/boostrap.sh
extra/build.sh poodle-toy-v1
extra/build.sh poodle-toy-v1
</blockquote>
</pre>


Isto vai gerar tudo que a IDE do Arduino precisa para identificar e compilar um programa para a placa. Depois disso, é necessário instalar a Arduino IDE a partir do site ou do repositório. Para distrubuições baseadas em Debian, o pacote já está disponível pelo APT e pode ser instalado com <code>sudo apt install arduino</code>.
Isto vai gerar tudo que a IDE do Arduino precisa para identificar e compilar um programa para a placa. Depois disso, é necessário instalar a Arduino IDE a partir do site ou do repositório. Para distrubuições baseadas em Debian, o pacote já está disponível pelo APT e pode ser instalado com <code>sudo apt install arduino</code>.
Linha 22: Linha 22:
Com a IDE instalada, criaremos um link para ela poder utilizar o nosso core
Com a IDE instalada, criaremos um link para ela poder utilizar o nosso core


<blockquote>
<pre>
cd ~/Arduino
cd ~/Arduino
mkdir -p hardware/arduino-git
mkdir -p hardware/arduino-git
ln -s DIR/arduino-puppy/ArduinoCore-zephyr hardware/arduino-git/zephyr
ln -s DIR/arduino-puppy/ArduinoCore-zephyr hardware/arduino-git/zephyr
</blockquote>
</pre>


Depois disso, podemos fechar e abrir a IDE e buscar nas placas disponiveis no menu superior e selecionar a Arduino Zephyr Boards (in sketchbook) e selecionar em Ferramentas->Placa->Arduino Zephyr Boards (BETA)(in sketchbook)->Poodle Toy V1 e compilar o sketch desejado. É necessário exportar os resultados da compilação usando a opção Sketch->Exportar Binário Compilado.
Depois disso, podemos fechar e abrir a IDE e buscar nas placas disponiveis no menu superior e selecionar a Arduino Zephyr Boards (in sketchbook) e selecionar no menu "Ferramentas->Placa->Arduino Zephyr Boards (BETA)(in sketchbook)->Poodle Toy V1" e compilar o sketch desejado. É necessário exportar os resultados da compilação usando a opção "Sketch->Exportar Binário Compilado".


Depois de exportar o binário, rodaremos um script para transformar o binario em um formato que a Poodle Toy aceita.
Depois de exportar o binário, rodaremos um script para transformar o binario em um formato que a Poodle Toy aceita.


<blockquote>
<pre>
source [DIR]/arduino-puppy/ArduinoCore-zephyr/venv/bin/activate
source [DIR]/arduino-puppy/ArduinoCore-zephyr/venv/bin/activate
python [DIR]/arduino-puppy/ArduinoCore-zephyr/extra/binary-concatenate.py -a 0x2e000 -s 0x40000 -v0.0.0 -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin --file1 [DIR]/arduino-puppy/ArduinoCore-zephyr/firmwares/zephyr-poodle --file2 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto].ino.elf-zsk.bin
python [DIR]/arduino-puppy/ArduinoCore-zephyr/extra/binary-concatenate.py -a 0x2e000 -s 0x40000 -v0.0.0 -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin --file1 [DIR]/arduino-puppy/ArduinoCore-zephyr/firmwares/zephyr-poodle --file2 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto].ino.elf-zsk.bin
imgtool -H 0x200 -L 0x1c010000 -S 0x40000 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin
imgtool -H 0x200 -L 0x1c010000 -S 0x40000 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin
</blockquote>
</pre>


Por último, aperte o botão de reset na Poodle Toy. O LED vermelho se acenderá por 2 segundos. Enquanto o LED vermelho estiver aceso, entre o comando seguinte para gravá-la.
Por último, aperte o botão de reset na Poodle Toy. O LED vermelho se acenderá por 2 segundos. Enquanto o LED vermelho estiver aceso, entre o comando seguinte para gravá-la.


<blockquote>
<pre>
mcumgr upload --conntype=serial --connstring="/dev/ttyUSB0,baud=115200" ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin
mcumgr upload --conntype=serial --connstring="/dev/ttyUSB0,baud=115200" ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin
</blockquote>
</pre>


Após o upload ser concluído, aperte o botão de reset novamente e o programa vai se iniciar. Se não der certo, confira se os diretórios e arquivos estão corretos e tente novamente.
Após o upload ser concluído, aperte o botão de reset novamente e o programa vai se iniciar. Se não der certo, confira se os diretórios e arquivos estão corretos e tente novamente.

Edição atual tal como às 19h57min de 5 de março de 2026

A Poodle Toy é uma placa compativel em hardware e software com o Arduino Uno, criada para aplicações de educação e prototipagem.

Programando

A programação do Poodle Toy é realizada por meio do bootloader mcuboot , que deve ser previamente gravado na memória da placa com um ESP32 ou um gravador de BIOS CH340A.

Método Manual

Para programar manualmente a Poodle Toy usando a plataforma Arduino, é necessário compilar o core manualmente a partir do código-fonte localizado no repositório ArduinoCore-zephyr . A compilação pode ser feita tanto no Linux quanto em MacOS, mas não foi testada em Windows. Faremos os seguintes comandos, a partir de uma pasta de sua escolha que denominaremos de DIR

mkdir arduino-puppy
cd arduino-puppy
git clone https://github.com/caninos-loucos/ArduinoCore-zephyr
cd ArduinoCore-zephyr
extra/boostrap.sh
extra/build.sh poodle-toy-v1

Isto vai gerar tudo que a IDE do Arduino precisa para identificar e compilar um programa para a placa. Depois disso, é necessário instalar a Arduino IDE a partir do site ou do repositório. Para distrubuições baseadas em Debian, o pacote já está disponível pelo APT e pode ser instalado com sudo apt install arduino.

Com a IDE instalada, criaremos um link para ela poder utilizar o nosso core

cd ~/Arduino
mkdir -p hardware/arduino-git
ln -s DIR/arduino-puppy/ArduinoCore-zephyr hardware/arduino-git/zephyr

Depois disso, podemos fechar e abrir a IDE e buscar nas placas disponiveis no menu superior e selecionar a Arduino Zephyr Boards (in sketchbook) e selecionar no menu "Ferramentas->Placa->Arduino Zephyr Boards (BETA)(in sketchbook)->Poodle Toy V1" e compilar o sketch desejado. É necessário exportar os resultados da compilação usando a opção "Sketch->Exportar Binário Compilado".

Depois de exportar o binário, rodaremos um script para transformar o binario em um formato que a Poodle Toy aceita.

source [DIR]/arduino-puppy/ArduinoCore-zephyr/venv/bin/activate
python [DIR]/arduino-puppy/ArduinoCore-zephyr/extra/binary-concatenate.py -a 0x2e000 -s 0x40000 -v0.0.0 -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin --file1 [DIR]/arduino-puppy/ArduinoCore-zephyr/firmwares/zephyr-poodle --file2 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto].ino.elf-zsk.bin
imgtool -H 0x200 -L 0x1c010000 -S 0x40000 ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.bin -o ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin

Por último, aperte o botão de reset na Poodle Toy. O LED vermelho se acenderá por 2 segundos. Enquanto o LED vermelho estiver aceso, entre o comando seguinte para gravá-la.

mcumgr upload --conntype=serial --connstring="/dev/ttyUSB0,baud=115200" ~/Arduino/[Nome do Projeto]/build/arduino-git.zephyr.poodle/[Nome do Projeto]-concatenate.signed.bin

Após o upload ser concluído, aperte o botão de reset novamente e o programa vai se iniciar. Se não der certo, confira se os diretórios e arquivos estão corretos e tente novamente.