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>


<code>
<blockquote>
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
</code>
</blockquote>


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


<code>
<blockquote>
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
</code>
</blockquote>


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.


<code>
<blockquote>
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
</code>
</blockquote>


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.


<code>
<blockquote>
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
</code>
</blockquote>


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