⇩ Baixar este guia em PDF Para imprimir e deixar na bancada. Sai em preto e branco.
Se é a sua primeira vez, comece por aqui.
Três coisas — e nenhuma delas é sobre o robô.
A gravação em si leva menos de um minuto. Só a primeira vez demora mais, por causa do driver.
A gravação devolve o robô ao estado de fábrica. Isso é esperado, faz parte:
http://192.168.4.1Não. É só ligar o cabo. O robô entra sozinho no modo de gravação.
Menos de um minuto. Enquanto a barra estiver andando, não desligue o cabo nem feche a aba.
Pode. Desligue o cabo de um, ligue no outro e clique em CONECTAR E GRAVAR de novo. A cada robô o navegador pede para escolher a porta outra vez.
Isso é esperado, faz parte da gravação. As configurações de roteador e a velocidade voltam ao padrão.
A senha da rede do robô precisa ser definida de novo, na própria página do gravador, logo depois de gravar. Cada robô tem a sua: não existe senha de fábrica igual para todos, justamente para um adversário não conseguir entrar na rede do seu robô.
Dois motores nunca são iguais, então quase todo robô puxa um pouco para
um lado. Isso se corrige por software, no bloco Motores
desta página — ou pela página /config do próprio robô,
que é mais prático porque dá para testar e ajustar sem cabo.
Escolha o lado para onde o robô desvia quando você manda ele andar reto. Não é o motor que você quer mexer: é o que dá para ver de fora. Comece em 30 e suba de 10 em 10 até ele andar reto.
Se precisar passar de 100, provavelmente o problema não é elétrico: confira se uma roda está frouxa, torta ou raspando na estrutura. O teto é 200 porque acima disso o robô gira em vez de andar reto.
A correção é simétrica — um motor ganha o que o outro perde — então o robô não fica mais lento. E ela é própria de cada robô: o gravador não repete a calibração no robô seguinte, de propósito.
Calibre observando o robô indo para a frente. A ré e os giros se acertam sozinhos.
Uma vez por computador, não a cada robô.
No Linux não é preciso instalar nada.
Cada sistema tem sua própria seção, com uma cor. Siga apenas a do seu computador.
SETUP.EXE e escolha Executar como administrador.
No Linux não é preciso instalar driver — já vem pronto. Duas coisas costumam atrapalhar, e cada uma se resolve com um comando.
Abra o terminal com Ctrl + Alt + T.
Copie o comando exatamente como está e pressione Enter.
sudo usermod -aG dialout $USER
Ele vai pedir sua senha — ela não aparece enquanto você digita, é normal.
Depois saia da sua conta e entre de novo (fazer logout e login),
ou reinicie o computador. Só depois desse relogin a permissão do grupo
dialout passa a valer — sem sair e entrar, o robô continua dando
“Failed to open serial port” mesmo com o comando já rodado.
sudo apt remove brltty
Depois desligue e ligue o cabo de novo.
Só faça isso se ninguém usar leitor de tela braile nesse computador.
A explicação está na parte técnica.
Quase sempre é o cabo, o driver ou outro programa segurando a porta.
Quase sempre é uma destas três coisas. Confira nesta ordem:
O gravador só funciona no Chrome, Edge ou Opera, e no computador. No Firefox, no Safari e no celular ele não funciona — e não é problema seu, esses navegadores não têm esse recurso.
Não. O robô não fica danificado nem "travado". Ligue o cabo de novo e repita a gravação.
Se der erro sempre no mesmo ponto, troque o cabo e ligue o robô direto no computador, sem aqueles adaptadores que multiplicam entradas USB. Eles costumam não dar energia suficiente e a gravação cai no meio.
Esse aviso vem do gravador quando ele não consegue ler o identificador do chip de memória da placa. Não significa que a gravação falhou — ela costuma completar normalmente logo em seguida.
Como ter certeza: use CONSULTAR ROBÔ. Se o quadro mostrar a versão e a rede, o firmware está gravado e rodando. É a confirmação que importa, não o aviso.
Se o robô não responder, regrave. Persistindo, troque o cabo USB e ligue direto no computador, sem adaptadores. Em último caso, grave pelo PlatformIO, que usa outra ferramenta e costuma passar por esse problema.
Acontece no Linux, e é normal: o navegador lista todas
as /dev/ttyS0 a /dev/ttyS31 do chipset da
placa-mãe. Elas existem mesmo sem nada ligado e nunca respondem.
O robô é o CH340. A página filtra pelo identificador USB e ignora as portas nativas, então a escolha costuma ser automática. Se ainda assim errar, use "Porta errada? Escolher outra" no gravador — o seletor passa a mostrar só conversores USB.
Para limpar permissões antigas: Configurações → Privacidade e segurança → Configurações do site → Portas seriais.
Se você abriu o console (F12), vai ver bastante coisa que não é erro de verdade:
"blocked by the Serial blocklist" — o navegador escondendo portas Bluetooth pareadas no computador. Ele faz isso sozinho, por segurança.
"Improv Wi-Fi Serial not detected" e "Error fetching current state: TIMEOUT" — o gravador procura um protocolo de configuração que este firmware não usa. Ele tenta, não encontra e segue normalmente.
Daqui para baixo é para quem cuida da informática.
Não é preciso ler nada disto para usar o gravador.
Placas de baixo custo às vezes trazem um CH340 clonado. O Windows Update
distribui um driver mais novo (versão 3.8.2023.2, em abril/2023 e de
novo em novembro/2024 pelas atualizações KB5046613 e KB5046542) que faz esses
clones pararem de funcionar. É a explicação clássica para uma placa que
funcionava e parou do nada depois de uma atualização do Windows.
Como identificar:
USB2.0-Ser, sem o "CH340".Como resolver:
O driver ch341 faz parte do kernel desde sempre; não há nada para
instalar. Os problemas são de permissão ou de outro processo tomando o
dispositivo.
Conferir se o kernel enxergou a placa:
lsusb | grep 1a86 # deve listar 1a86:7523 (QinHeng CH340)
ls -l /dev/ttyUSB* # deve existir /dev/ttyUSB0
dmesg | tail -20 # mostra o que aconteceu ao ligar o cabo
Aparece no lsusb mas o /dev/ttyUSB0 some:
É o brltty, o serviço de suporte a terminais braile, instalado por
padrão no Ubuntu 22.04 e derivados. A regra de udev dele
(90-brltty-device.rules) reivindica o mesmo ID USB do CH340,
1a86:7523, e sequestra o dispositivo poucos segundos depois de
conectado. Como o lsusb continua mostrando a placa, o diagnóstico
engana.
Remover o pacote resolve:
sudo apt remove brltty
Se o braile for necessário na máquina, dá para desativar só a regra conflitante.
Copie o arquivo para /etc/, onde a alteração sobrevive a
atualizações do sistema, e comente a linha do 1a86:7523:
sudo cp /usr/lib/udev/rules.d/90-brltty-device.rules /etc/udev/rules.d/
sudo nano /etc/udev/rules.d/90-brltty-device.rules # comente a linha 1a86:7523
sudo udevadm control --reload-rules
sudo udevadm trigger
sudo systemctl restart brltty-udev.service
Permissão negada:
A porta pertence ao grupo dialout. Adicionar o usuário exige nova
sessão para valer — newgrp resolve só no terminal atual, e o
navegador continuaria sem acesso, então reiniciar é mais confiável.
sudo usermod -aG dialout $USER
id -nG # confira se 'dialout' aparece depois de reiniciar
Descobrir quem está segurando a porta:
fuser -v /dev/ttyUSB0
O gravador usa a Web Serial API, que permite a uma página falar com a porta serial. Ela existe apenas em navegadores baseados em Chromium, a partir da versão 89. Firefox e Safari não implementam, e não há previsão de implementarem.
O suporte no Chrome para Android entrou em beta em abril de 2026, mas exige cabo OTG e não é confiável o suficiente para uso em sala.
A API também exige contexto seguro: a página precisa estar em
HTTPS ou em http://localhost. Abrir o arquivo direto pelo
file:// não funciona. É por isso que a página do gravador é servida
por um servidor local, e não aberta com dois cliques.