Tutorial 01

Flashing do PteronautOS

Compila e instala o firmware hermético usando um receptor CYCLONE ELRS 2.4GHz 7CH PWM RX como exemplo.

O PteronautOS também suporta outras placas recetoras. Partilhar um ESP8285 não torna as ligações idênticas: os GPIOs expostos, a atribuição de canais, as ligações de programação e as revisões de PCB podem diferir. A alimentação e a ligação CH2/CH3 abaixo aplicam-se a este exemplo CYCLONE; verifica o pinout da tua placa e a configuração de hardware suportada antes de ligar outro recetor.

Antes de ligar a alimentação, remove as cargas propulsivas do mecanismo da asa e garante que nenhum servo pode ir contra um batente rígido. O flashing é trabalho eléctrico; a estrutura deve permanecer mecanicamente segura durante todo o procedimento.

01 · Compila o firmware

Primeiro compila a WebUI — a interface que é embutida no firmware do recetor. Este passo requer Node.js 20 ou mais recente e npm. A flag I18N_LOCALES escolhe as línguas compiladas; o exemplo abaixo embute a língua deste tutorial mais o inglês. Omite a flag para incluir as 11 línguas.

cd src/html && nvm use 20 && I18N_LOCALES=pt,en npm run build:pteronautos

Clona o repositório, instala o PlatformIO e executa o seguinte comando a partir da raiz do repositório. O projecto PlatformIO está em src; este comando compila o ambiente dedicado do recetor ESP8285 usado neste exemplo.

cd ../.. && pio run -d src -e PteronautOS_ESP8285_2400_RX

02 · Liga o recetor

Para este recetor CYCLONE, usa a saída de 5 V do adaptador FTDI para alimentar o recetor, não a saída de 3,3 V. As ligações UART estão nos pinos de sinal dos canais 2 e 3 — não é preciso localizar pads UART separados.

Adaptador FTDI Ligação do recetor
GND GND (−)
5 V / VCC Alimentação (+)
TX Sinal CH3 — RX do recetor (GPIO3)
RX Sinal CH2 — TX do recetor (GPIO1)

A definição de 5 V refere-se à alimentação do recetor. Verifica a documentação do teu adaptador: TX/RX devem usar lógica de 3,3 V compatível com ESP8285, mesmo quando a saída de alimentação é de 5 V. Não ligues uma segunda fonte de alimentação ao mesmo tempo.

03 · Entra no bootloader

Mantém BOOT (GPIO0) premido, desliga e volta a ligar o cabo USB do FTDI, mantém BOOT premido durante cerca de um segundo e depois solta-o. O script de flashing não faz reset automático, por isso entra no bootloader manualmente antes de o executar.

04 · Escreve a imagem

A partir da raiz do repositório, executa o script de flashing fornecido. Ele compila a WebUI e o firmware com a língua que escolheres, localiza uma ferramenta de flashing incluída no PlatformIO e o firmware compilado, seleciona uma porta série e escreve a imagem com as definições de flash necessárias.

A flag --lang abaixo embute diretamente a língua deste tutorial. Omite-a para escolher interativamente — todas as línguas, uma seleção ou saltar a recompilação.

./scripts/flash.sh --lang pt

A selecção automática de porta procura dispositivos macOS /dev/cu.*. Se houver vários dispositivos série ligados, ou se usares um sistema operativo diferente, seleciona explicitamente a porta do adaptador do recetor. Substitui o exemplo abaixo pelo caminho real do teu dispositivo.

./scripts/flash.sh --lang pt --port /dev/cu.usbserial-XXXX

Para verificar a comunicação com o bootloader sem escrever firmware, usa o modo de verificação opcional. Se falhar, repete o ciclo de alimentação do BOOT antes de tentar novamente.

./scripts/flash.sh --port /dev/cu.usbserial-XXXX --check

05 · Verifica a instalação

Reinicia o recetor sem manter BOOT premido. Confirma que o ponto de acesso WiFi e a WebUI ficam disponíveis (SSID: Pteronaut OS , palavra-passe: flynatural ), depois carrega a configuração e verifica o nome do target antes de voltar a ligar os servos.

Continua com a página de Hardware para mapas de pinos e notas de ligação específicas da revisão.