Vai al contenuto
ATS Mini Controller
Offline
Radio + appFirmware & recovery6 min di lettura

Firmware backup and recovery

The radio will not start after a flash: what to do, in order. Then how to take a full backup before you write, how to put one back, and what a failed write actually looks like.

If your radio has stopped starting, work down this page from here. The explanations are further down; the steps come first.

The radio will not start after a flash

Start from the least drastic. An ESP32-S3 that cannot run its application still answers a flasher, because the part that talks to the flasher lives in the chip’s own ROM and not in the firmware you just wrote. That is why a failed write is almost always recoverable with the same tool that caused it.

  1. Leave it plugged in and switched on, and write again. A half-finished write leaves incomplete firmware, not a broken chip. If the port is still there, this alone fixes most cases.
  2. Write a complete image rather than the three files. Use the merged image at 0x0, or the backup you took. A complete image replaces everything a partial write may have corrupted, including the bootloader.
  3. If the computer no longer sees a serial port, force the radio into recovery mode by hand — the next section — and then write again.
  4. If the port comes and goes, that is a reboot loop, and it is the case recovery mode exists for. Do not keep retrying into it; force recovery mode first.

Forcing recovery mode by hand

Look at the board first. Some ATS Mini boards have BOOT and RESET buttons soldered on, some have only BOOT, and some have neither. Which of the sequences below applies to you depends on that.

With both buttons: power the receiver on, connect it over USB, press and hold BOOT, press RESET, release BOOT.

With BOOT only: connect it over USB, press and hold BOOT, power the receiver on, release BOOT.

With no BOOT button: if the pads are there, bridging them briefly does the same job the button would. If there are no pads at all, the firmware project’s own answer is to short the ESP32-S3’s pin 27 (GPIO0) to ground to imitate the press. Either way you are opening the case and touching the board while it is powered, which is not a step to take casually — but it is the documented way in.

In recovery mode the radio does nothing of its own: it is not running its firmware at that point, so a blank or frozen display is not a failure. What matters is the computer — it should show a serial port, and the flasher should connect to it as usual.

What BOOT and RESET actually do

RESET restarts the processor. BOOT, held down at the moment it restarts, tells the processor to start the ROM’s download mode instead of the firmware in flash. Neither button repairs anything. What they give you is a guarantee that the chip is listening to the flasher rather than trying to run a broken image.

That guarantee is the reason a board without those buttons is riskier to flash. Without them you depend on the flashing tool talking the chip into download mode over the USB link itself, which works while the chip is behaving. When it is not — an image that crashes before USB is ready, or a reboot loop that keeps dropping the port — there is no button to fall back on, and you are down to shorting a pin inside the case. It is worth knowing which kind of board you own before you flash it, not while you are trying to rescue it.

Taking a backup before you write

A backup here means a byte-for-byte copy of the radio’s whole 8 MB flash: bootloader, partition table, firmware, and everything the radio has stored in between. It is a complete image, which is what makes it a complete way back.

In the firmware installer it is the first half of step 5, Read a backup of the current firmware first, and it is on by default. Reading all 8 MB takes a few minutes; when it finishes you get a file to download. Save it somewhere you will find it again — the file name carries the date, and a backup you cannot locate is not a backup.

By hand, esptool.py reads the same thing with read_flash 0x0 ALL at --baud 921600. The firmware project documents the exact command.

Restoring a backup

A backup is a complete image, so it goes to 0x0, exactly like a merged release image. There is no separate restore procedure and no special tool.

In the installer, tick I have a raw .bin image rather than a release archive in step 4 and load the file. The app reads the image’s own header, recognises a complete image and offers 0x0. It cannot check a bare .bin against your hardware — there is no variant marker in one — so it asks you to confirm you want to write it anyway. Your own backup off this radio is the clearest case there is for saying yes.

By hand, it is write_flash at 0x0 with the backup file, and the firmware project documents that command too.

What a failed write looks like

It looks like a progress bar that stops, and an error. It does not look like an explosion, and the radio does not tell you anything — nothing on the radio knows a write was half-finished. The three outcomes the installer separates are worth knowing apart, because they call for opposite responses:

The write did not finish
The radio may not start until something is flashed successfully, but it is still connected and still listening. Write again, or write your backup. This is the ordinary bad case and it is recoverable.
Written, but the restart failed
The firmware is already in place. Only the automatic reboot failed. Switch the radio off and on by hand. Do not flash it a second time.
The backup failed
Nothing was written at all. The radio is exactly as it was before you started, so there is nothing to recover — just start again.

When it is not the firmware

Several failures that feel like a dead radio are not. Before assuming the worst:

  • A charge-only USB cable powers the radio and shows nothing to the computer. It is the most common cause of “the port disappeared”.
  • A USB hub between the radio and the computer. Try a port on the machine itself, especially if the connection works at the slow rate but will not speed up for the transfer.
  • The wrong port. If a tool reports that the board is not an ESP32-S3, you have picked some other USB serial device — the radio is fine.
  • A sleeping or switched-off radio answers nothing. Wake it before you connect.
  • The chip answers but its flash memory does not. That one is not a cable problem, and changing cables will not help; it points at the radio’s own board.

When the radio is running again, Installing firmware covers the variants, the addresses and the choice between a three-file and a merged write, and the installer does the identification for you.

Accessori consigliati

  • Short USB-C data cableAccessoryBefore you blame the firmware: a charge-only lead is the single most common reason a radio stops appearing as a serial port.

Domande frequenti

My ATS Mini will not start after flashing — is it bricked?
Almost certainly not. The part of the chip that talks to a flasher lives in the ESP32-S3’s own ROM, not in the firmware that was just written, so a radio that cannot run its firmware can still be written to. Try writing again, and write a complete image — the merged file or your backup — rather than the three separate files.
How do I put an ATS Mini into recovery mode?
If the board has both buttons: power it on, connect it over USB, press and hold BOOT, press RESET, then release BOOT. If it has only BOOT: connect it over USB, press and hold BOOT, power it on, then release BOOT. The screen stays dark in recovery mode, which is normal — the radio is not running its own firmware at that point.
What if my ATS Mini board has no BOOT button?
The firmware project’s documented answer is to short the ESP32-S3’s pin 27, which is GPIO0, to ground to imitate the button press. That needs the case open. It is also why a board without those buttons is riskier to flash: you lose the guaranteed way of making the chip listen to a flasher.
How large is an ATS Mini firmware backup?
8 MB, because it is a byte-for-byte copy of the entire flash chip rather than just the firmware. Reading it takes a few minutes over USB.
Can I restore a backup with the installer on this site?
Yes. A backup is a complete image, so it is loaded through the raw .bin option in step 4 and written at 0x0. The app reads the image’s header to work that out. It cannot verify a bare .bin against your hardware, because a loose image carries no variant marker, so it asks you to confirm before writing.

Altro

Dispositivo

Esplora

Impostazioni

Tema

Benvenuto in ATS Mini Controller

Questa web app si connette alla tua radio ATS Mini via USB o Bluetooth LE e ti permette di controllarla direttamente da un computer o da un telefono. Aggiunge sintonia remota, gestione degli slot di memoria, cattura di screenshot, streaming audio, scansione dello spettro, modifica dei temi e altre funzioni in aggiunta al firmware integrato del dispositivo.

Firmware 2.34+: scegli un metodo di connessione

A partire dal firmware 2.34 la radio accetta il controllo remoto via USB o Bluetooth LE. Scegli in base a cosa conta di più per te: screenshot veloci (USB) o audio pulito dall’uscita da 3,5 mm della radio (Bluetooth) — i due trasporti hanno pregi opposti.

  • USB Serial

    Settings USB Port cambia Off in Ad hoc

    Funziona in qualsiasi browser basato su Chromium. Richiede un cavo USB-C con linee dati (si apre in una nuova scheda).

    Ideale per screenshot e lavoro sui temi. I trasferimenti si completano in uno o due secondi. La cattura audio è rumorosa mentre il cavo è collegato — alla radio manca il filtraggio necessario per isolare l’uscita da 3,5 mm dalla linea di alimentazione USB, quindi ronzio e rumore di commutazione finiscono nel percorso audio.

  • Bluetooth LE

    Settings Bluetooth imposta la modalità su Ad hoc

    Chrome / Edge / Opera su desktop o Android. Il BLE è sperimentale nel firmware 2.34.

    Ideale per un audio pulito. Il Bluetooth LE trasporta solo il controllo remoto, mai l’audio: il suono passa comunque via cavo dall’uscita da 3,5 mm della radio al computer. Senza cavo USB collegato la radio funziona a batteria, quindi quell’uscita resta libera dal rumore della linea di alimentazione USB che filtra nella connessione via cavo. Gli screenshot sono molto più lenti (~30 s) a causa del limite di throughput BLE del firmware.

Più di un firmware

Oltre al firmware ufficiale, l’app include profili per il fork Monster e per il firmware di H. J. Berndt. Capisce da sola quale sia installato dalle risposte della radio, quindi non c’è nulla da scegliere. Quando non corrisponde a nessuno, lo dice invece di tirare a indovinare.

  • Il firmware Berndt non viene mai dato per scontato. Riusa alcuni tasti del firmware ufficiale e non è stabilito cosa facciano lì, quindi l’app chiede prima di passare a quel profilo.
  • I controlli mancanti sono voluti. Ciò che un firmware non sa fare non compare nella pagina, invece di restare disattivato, e sul firmware Berndt i comandi partono uno alla volta, a qualche secondo di distanza.
Come l’app gestisce gli altri firmware (si apre in una nuova scheda)

Scorciatoie da tastiera

I singoli tasti controllano la radio nella pagina Controller, tranne mentre scrivi in un campo.

←→
Sintonizza di un passo
↑↓
Volume su / giù
Enter
OK
BN
Banda successiva / precedente
MV
Modo successivo / precedente
SA
Passo successivo / precedente
WQ
Larghezza di banda successiva / precedente
GF
AGC su / giù
LK
Retroilluminazione su / giù
IU
Calibrazione su / giù
OP
Sospensione on / off
T
Attiva/disattiva log di stato
C
Screenshot
H
Registra ascolto
D
Vista cockpit
⌘K
Cerca pagine e stazioni