What you see
Connection diagnostics say “Upload handshake failed”; the uploader can also report “The Uno bootloader did not respond in time.”
Likely causes
- The selected profile, protocol or bootloader baud does not match the device.
- Another program owns the port or external wiring interferes with serial/reset.
- An adapter lacks a usable reset signal, or the bootloader has not entered its listening window.
Diagnostic steps
Confirm target identity
Use the board marking and processor, not only the USB bridge name. Uno R4 and newer Nano families are not covered by classic AVR profiles.
Check profile-specific behavior
For classic Nano, try the profile matching the installed old or new bootloader. Leonardo/Micro use native USB and a 1200-baud reset sequence; Pro Mini uses a matching-voltage serial adapter and DTR or a timed manual reset.
Release the connection cleanly
Close other monitors and let Circuitera finish the current handoff before retrying. Unplug power before changing circuit wiring around RX/TX.
Retest Blink
Verify a minimal Blink sketch for the exact target. An open port alone is not bootloader validation, and a successful compile cannot repair a missing bootloader.
Board-specific notes
Uno/Nano use their USB-to-serial bridge. Mega’s extra UARTs are not separate browser ports. Leonardo/Micro native USB may re-enumerate during reset. Pro Mini requires an external adapter with the correct logic voltage.
Safe recovery
Do not burn or replace a bootloader as the first response. Check the cable, profile and reset path first; use the official board instructions for hardware servicing.
Evidence and references
Reviewed 2026-10-23 against Circuitera’s actual behavior. An editorial review is separate from a physical board test.
Circuitera implementation evidence
src/connectionDiagnostics.js; src/serial.js: Stk500Transport.readByte