-
Notifications
You must be signed in to change notification settings - Fork 258
Description
I try to write an easy-to-read description on how to restore an UNO R3 after a debugging session. It essentially involves closing the open solder bridge (or re-soldering a removed cap) and then flashing the bootloader.
If the user is happy with MiniCore and urboot, everything is easy. I am wondering whether it would be possible to make things even smoother. Avrdude can now send a pulse over the DTR line, right? Couldn't that be used to reset the board when one does not have a reset capacitor? This would require some modifications to avrdude.conf, right? Do you think this is feasible, or could that interfere with other things in the Arduino IDE, such as the monitor? If one could implement it, it would be a huge incentive to move to MiniCore, as the RESET cap would then be superfluous.
If the user wants to switch back to Optiboot for whatever reason, then things become a bit messy. The problem is that the standard "Arduino AVR Boards" package does not know all the debuggers (Power debugger, PICkit4, and SNAP are missing). And since they are using avrdude 6.3, one gets an (inconsequential) error message when the lock bits are written with Atmel-ICE. So the only general advice I can give is to use any ordinary ISP programmer or Arduino as ISP to burn the bootloader. And I guess, this is what I will do.
Two alternatives to the previous solution are:
- Setting up a fork of the Arduino AVR Boards as "Arduino AVR Boards (Debug enabled)", which has all the relevant debuggers in the programmer list and uses avrdude 8.0
- Permitting to flash optiboot again in MiniCore
I guess both of these solutions are a bit too much, and you probably dislike the second solution.
What is your take of all of this?