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
Linha 9: Linha 9:
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 [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   
Linha 16: Linha 16:
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 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.
Linha 32: Linha 32:
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 das 19h52min 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.

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 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 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 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.