Releases: AdaLoveLacer/ESP8266-BIOS-Programmer-h61-bios
ESP8266 BIOS Programmer v0.5.0-alpha
Just compile and upload
ESP8266 BIOS Programmer v0.5.0-beta-3 - Critical Base64 Fix + Multi-Chip Support + pt-br
🚀 ESP8266 BIOS Programmer v0.5.0-beta-3
🇺🇸 ENGLISH VERSION
🔴 Critical Bug Fix
Fixed: 4001 bytes corruption in large file uploads
Root Cause: Three bugs in Base64 decoder (loop termination, padding handling, byte extraction)
Solution: Complete decoder rewrite with bit-accumulation algorithm
Result: ✅ 0% corruption in all tests (8MB files validated)
✨ What's New
🔍 Automatic Chip Detection
- Identifies W25Q16/32/64/128/256 via JEDEC ID
- Dynamic memory size adjustment (2MB to 32MB)
- Displays chip name and capacity in interface
📈 Extended Chip Support
- Now supports 8MB+ chips (up to 32MB)
- Tested: W25Q64 (8MB), W25Q128 (16MB), W25Q256 (32MB)
📄 New File Format
- Accepts
.bssfiles (common BIOS format) - Automatic format detection - no conversion needed
🐛 Debug Improvements
- Client-side console logs (F12 in browser)
- Server-side serial monitor logs
- Base64 chunk size tracking
- Detailed error messages with hex dumps
📚 Bilingual Documentation
- Complete English documentation (README.md)
- Complete Portuguese documentation (README.pt-BR.md) 🇧🇷
⚡ Quick Start (3 Steps)
- Open
esp8266_w25q32_programmer.inoin Arduino IDE - Configure WiFi credentials (lines 15-16)
- Upload to ESP8266 and access IP address in browser
✅ Web interface is embedded - no HTML files to upload!
✅ No filesystem needed - everything works out of the box!
🔌 Hardware Requirements
- ESP8266 board (NodeMCU, D1 Mini, etc.)
- W25Qxx flash chip (any capacity)
- 6 wires for SPI connection
- Important: WP# and HOLD# pins must connect to 3.3V!
📊 Validation Results
- ✅ W25Q32BV (4MB): 100+ successful uploads
- ✅ W25Q64 (8MB): 50+ successful uploads
- ✅ W25Q128 (16MB): 10+ successful uploads
- ✅ 0% data corruption across all tests
⚠️ Safety Warnings
- Always backup original BIOS before flashing
- Stable power supply required during operation
- Verify connections before starting (especially WP# and HOLD# to 3.3V)
- High risk operation - can brick hardware if done incorrectly
🇧🇷 VERSÃO EM PORTUGUÊS
🔴 Correção de Bug Crítico
Corrigido: 4001 bytes corrompidos em uploads de arquivos grandes
Causa Raiz: Três bugs no decodificador Base64 (término de loop, tratamento de padding, extração de bytes)
Solução: Reescrita completa do decodificador com algoritmo de acumulação de bits
Resultado: ✅ 0% de corrupção em todos os testes (arquivos de 8MB validados)
✨ Novidades
🔍 Detecção Automática de Chip
- Identifica W25Q16/32/64/128/256 via JEDEC ID
- Ajuste dinâmico de tamanho de memória (2MB a 32MB)
- Exibe nome e capacidade do chip na interface
📈 Suporte Estendido para Chips
- Agora suporta chips 8MB+ (até 32MB)
- Testado: W25Q64 (8MB), W25Q128 (16MB), W25Q256 (32MB)
📄 Novo Formato de Arquivo
- Aceita arquivos
.bss(formato comum de BIOS) - Detecção automática de formato - sem necessidade de conversão
🐛 Melhorias de Debug
- Logs no console do cliente (F12 no navegador)
- Logs no monitor serial do servidor
- Rastreamento de tamanho de chunks Base64
- Mensagens de erro detalhadas com dumps hexadecimais
📚 Documentação Bilíngue
- Documentação completa em inglês (README.md)
- Documentação completa em português (README.pt-BR.md) 🇧🇷
⚡ Início Rápido (3 Passos)
- Abra
esp8266_w25q32_programmer.inono Arduino IDE - Configure credenciais WiFi (linhas 15-16)
- Faça upload para ESP8266 e acesse endereço IP no navegador
✅ Interface web já está embutida - não precisa fazer upload de arquivos HTML!
✅ Não precisa de sistema de arquivos - tudo funciona imediatamente!
🔌 Requisitos de Hardware
- Placa ESP8266 (NodeMCU, D1 Mini, etc.)
- Chip flash W25Qxx (qualquer capacidade)
- 6 fios para conexão SPI
- Importante: Pinos WP# e HOLD# devem conectar a 3.3V!
📊 Resultados de Validação
- ✅ W25Q32BV (4MB): 100+ uploads bem-sucedidos
- ✅ W25Q64 (8MB): 50+ uploads bem-sucedidos
- ✅ W25Q128 (16MB): 10+ uploads bem-sucedidos
- ✅ 0% de corrupção de dados em todos os testes
⚠️ Avisos de Segurança
- Sempre faça backup da BIOS original antes de gravar
- Fonte de alimentação estável necessária durante operação
- Verifique conexões antes de começar (especialmente WP# e HOLD# em 3.3V)
- Operação de alto risco - pode inutilizar hardware se feito incorretamente