O flashrom é a ferramenta que lê, apaga e grava memória de BIOS e EEPROM pela linha de comando do Linux — e faz isso com a mesma plaquinha CH341A de 40 reais que você já tem na gaveta, ou direto pelos pinos de um Raspberry Pi, sem plaquinha nenhuma. Baixamos a versão nova, conferimos a assinatura, compilamos e comparamos com o pacote que vem pronto no Ubuntu. Aqui está o download oficial, a instalação, a ligação dos fios e os cinco problemas que mais travam o serviço. Última verificação: 6 de outubro de 2026.

Conteúdo da Página

O que é o flashrom e por que ele importa para a bancada

É um programa livre, mantido pelo mesmo time do projeto coreboot, que conversa com dezenas de gravadores diferentes e conhece o mapa de centenas de chips de memória flash. Você diz qual gravador está usando e o que quer fazer — ler, apagar, gravar, conferir — e ele cuida do resto: identifica o chip pelo código de fabricante, escolhe o comando de apagamento certo e confere o que gravou.

A diferença para os programas de Windows que já cobrimos aqui — o NeoProgrammer e o AsProgrammer — é que o flashrom é aberto, continua sendo atualizado e roda onde não há Windows: no notebook Linux da bancada, no servidor, no Raspberry Pi preso com fita na lateral do armário.

Download oficial do flashrom

Só existe um lugar oficial, e não é página de download com botão verde piscando: é o próprio site do projeto. A versão estável atual é a v1.8.0, de agosto de 2026 — segundo a página de lançamento, foram 100+ alterações de 21 autores nos seis meses desde a versão anterior.

Página oficial de lançamento do flashrom v1.8.0 mostrando os endereços do código-fonte, do pacote e da assinatura
A página oficial de lançamento da v1.8.0, capturada por nós em 6 de outubro de 2026: os dois endereços de download, a assinatura e a impressão digital da chave. Fonte: flashrom.org.
De onde vem O que você recebe Para quem
apt install flashrom (Ubuntu 24.04 LTS) versão 1.3.0, de fevereiro de 2023 quem quer resolver em 10 segundos
flashrom-v1.8.0.tar.xz (oficial) versão 1.8.0, de agosto de 2026 quem precisa de chip novo na lista
git clone https://review.coreboot.org/flashrom.git o que está sendo escrito agora quem vai contribuir ou testar

A diferença entre as duas primeiras linhas não é detalhe. Medimos as duas aqui: o pacote do Ubuntu 24.04 reconhece 576 chips e sequer informa o próprio número de versão (responde um constrangedor flashrom unknown); a 1.8.0 compilada por nós reconhece 692 chips, de 35 fabricantes. São 116 memórias a mais — e, como no caso do banco de chips do NeoProgrammer, “chip não reconhecido” quase sempre é idade do programa, não defeito da placa.

Como conferir que o arquivo é legítimo

O projeto publica a assinatura digital ao lado do pacote, e conferir leva meio minuto. Fizemos o caminho inteiro hoje:

curl -O https://download.flashrom.org/releases/flashrom-v1.8.0.tar.xz
curl -O https://download.flashrom.org/releases/flashrom-v1.8.0.tar.xz.asc
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 6E6EF9A0BA478006E2776E4CC037BB413134D111
gpg --verify flashrom-v1.8.0.tar.xz.asc flashrom-v1.8.0.tar.xz

A resposta tem que conter Good signature. A nossa continha, e o nome por trás da chave é Stefan Reinauer, do coreboot — a mesma impressão digital que o site publica. Duas observações práticas que ninguém avisa: o servidor de chaves mais moderno, o keys.openpgp.org, não tem essa chave (devolve “No data”); use o keyserver.ubuntu.com, como na linha acima. E, para quem só quer comparar o arquivo, o número SHA-256 que medimos do pacote foi 654c9c61…75a2.

Instalar: o caminho curto e o caminho certo

No Debian, Ubuntu e derivados, sudo apt install flashrom resolve e já traz suporte ao CH341A. Se o seu chip não for reconhecido, compile a versão nova — e não tenha medo: não é o pesadelo que costuma ser.

sudo apt install meson ninja-build libusb-1.0-0-dev libpci-dev pkg-config
tar xf flashrom-v1.8.0.tar.xz && cd flashrom-v1.8.0
meson setup build
ninja -C build
sudo ninja -C build install

Na nossa máquina, com as bibliotecas já instaladas, os 245 alvos compilaram em 5,3 segundos. Em um Raspberry Pi leve alguns minutos, mas roda igual.

Usando com a plaquinha CH341A

Com a garra na memória e a plaquinha no USB, são três comandos — e o primeiro é sempre o backup:

flashrom -p ch341a_spi                      # só identifica o chip
flashrom -p ch341a_spi -r backup.bin        # lê e salva
flashrom -p ch341a_spi -w novo.bin          # grava e confere sozinho

Leia duas vezes e compare (sha256sum backup1.bin backup2.bin) antes de apagar qualquer coisa: se os dois arquivos não forem idênticos, o contato da garra está ruim e gravar ali vai destruir a placa. A v1.8.0 automatizou isso com a opção nova --read-repeated, que lê três vezes e decide por maioria — nas palavras da própria documentação, serve para “diagnosticar fiação SPI instável ou gravadores pouco confiáveis”.

Dois avisos de hardware, que valem para qualquer programa com essa plaquinha. O primeiro: a documentação oficial do flashrom registra que a tensão nas saídas do CH341A chega perto de 5 V, acima do que a maioria das memórias de 3,3 V aguenta — o mod do pino 28 está descrito lá, e nós o detalhamos no guia do NeoProgrammer. O segundo: nunca grave com o aparelho ligado na tomada ou com a bateria conectada.

Usando o Raspberry Pi como gravador

Essa é a parte que surpreende: o Raspberry Pi não precisa de gravador nenhum. Os pinos de SPI dele falam direto com a memória, em 3,3 V nativos — sem mod, sem plaquinha, sem o risco dos 5 V.

Diagrama dos 40 pinos do conector GPIO do Raspberry Pi com a identificação de cada função, incluindo SPI0
Os 40 pinos do conector do Raspberry Pi. Para gravar memória SPI interessam cinco: 3V3 (1), MOSI (19), MISO (21), SCLK (23), CE0 (24) e o terra (25). Diagrama de Andy Oakley, Wikimedia Commons, domínio público (CC0).

Primeiro, ligue o SPI — ele vem desligado de fábrica. Pelo menu, sudo raspi-config → Interface Options → SPI; ou acrescente dtparam=spi=on ao arquivo de configuração de inicialização e reinicie. A documentação oficial dos overlays é direta: “spi — Set to ‘on’ to enable the spi interfaces (default ‘off’)”. Deu certo quando aparecer o dispositivo /dev/spidev0.0.

A ligação é pino a pino: 3V3 na alimentação do chip, MOSI no DI, MISO no DO, SCLK no clock, CE0 no CS e o terra no terra. O comando então fica:

flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=2000 -r backup.bin

Dois números que lemos no código-fonte e que explicam quase toda reclamação de lentidão: quando você não informa nada, o flashrom usa 2 MHz — e ele avisa isso na tela. E o tamanho do bloco que o Linux aceita por vez vem do arquivo /sys/module/spidev/parameters/bufsiz, que por padrão no núcleo do Linux é de 4096 bytes. Em memória de 16 MB, isso são milhares de idas e vindas. Subir o limite (spidev.bufsiz=65536 na linha de inicialização) e usar spispeed=8000 em fio curto corta o tempo de leitura de forma que dá para sentir no relógio.

Onde comprar: para quem está montando a bancada, a dupla que resolve 90% dos serviços é a plaquinha CH341A com a garra de teste — e, para o caminho do Raspberry Pi, um jogo de fios fêmea-fêmea decentes, porque fio ruim é a causa número um de leitura embaralhada.

Como Associados da Amazon, recebemos por compras qualificadas feitas pelos links acima — você não paga nada a mais por isso, e ajuda o site a continuar gratuito.

Os cinco problemas que mais aparecem

1. “Couldn’t open device 1a86:5512” e “Programmer initialization failed”. É a mensagem exata que o flashrom dá quando não acha a plaquinha — reproduzimos aqui para conferir. Ou ela não está no USB (confira com lsusb, tem que aparecer 1a86:5512), ou falta permissão. Rodar com sudo confirma o diagnóstico; a correção limpa é a regra de sistema que vem no próprio pacote, em util/flashrom_udev.rules, que libera o aparelho para o grupo plugdev.

2. “No EEPROM/flash device found”. Quase sempre contato: garra torta, chip sujo de fluxo, ou a placa ainda alimentada por outro caminho. Limpe o chip com álcool isopropílico, reposicione a garra e observe o pino 1.

3. O chip aparece com dois ou três nomes de uma vez. Normal: memórias diferentes compartilham o mesmo código de identificação. Escolha com -c seguido do nome exato que está escrito no corpo do chip.

4. Leituras diferentes a cada tentativa. Fio longo demais ou clock alto demais. Baixe para spispeed=1000, encurte os fios e repita até duas leituras baterem byte a byte.

5. “No /dev/spidev0.0”. O SPI não foi habilitado, ou foi habilitado e a placa não reiniciou. Volte ao raspi-config.

Perguntas frequentes

O flashrom é gratuito? Sim, é software livre, sem versão paga e sem cadastro para baixar.

Funciona no Windows? Roda, mas sem o acesso direto ao hardware que o Linux dá — e a maioria dos tutoriais em português cobre o caminho do Linux porque é o que funciona bem. No Windows, continua mais prático usar NeoProgrammer ou AsProgrammer.

Dá para gravar a BIOS do próprio computador por dentro, sem gravador? Existe esse modo (-p internal), mas a chance de ficar com a máquina morta é real, porque muita placa trava a escrita pela metade. Para serviço, grave sempre com a máquina desligada e a garra no chip.

O suporte ao CH341A vai acabar? Não. A v1.8.0 anunciou a remoção de 13 gravadores antigos na próxima versão principal, prevista para janeiro de 2027 — e nem o ch341a_spi nem o caminho do Raspberry Pi estão nessa lista. Os que saem são placas de rede e adaptadores PCI dos anos 2000.

Preciso compilar sempre? Não. Comece pelo pacote da distribuição; só compile se o seu chip não for reconhecido.

O resumo que cabe na bancada

O flashrom é a aposta mais segura entre os programas de gravação: aberto, assinado, atualizado a cada seis meses e com a lista de chips mais completa que medimos. Comece pelo pacote da distribuição, confira a assinatura se baixar o pacote oficial, leia duas vezes antes de gravar qualquer coisa — e, se tiver um Raspberry Pi parado na gaveta, saiba que ele é um gravador melhor que a plaquinha de 40 reais, porque trabalha na tensão certa sem precisar de mod nenhum.

No próximo guia da série, o lado de cá do serviço: o que fazer com o arquivo depois de gravado, quando a placa continua sem dar sinal.

Veja também

Se a sua dúvida seguinte for qual chip ler primeiro na placa que está esperando na bancada, o Mapa da Placa é o nosso material de leitura de placa; vale conhecer.