Es wäre auch interessant welche AVR Familie das ist um einen passenden kompatiblen Bootloader zu empfehlen..
Soll das ganze "On Demand" oder mit Button geflasht werden?
Es gibt Bluetooth Module die auch RTS/CTS liefern, nicht nur TX/RX.
Theoretisch muss man im laufenden Programm auf eine Serielle Zeichenfolge checken.. wenn diese kommt einen SW-Reset ausführen. (oder ein Button)
Der Bootloader wartet nach dem Reset X Sekunden auf die initialisierenden AVR-Dude Befehle.
Es gab mal ein fertiges AVR Board mit BTM222 und Custom Bootloader für den Atmega328p, das hat so ähnlich funktioniert.
Ich meine das var ein "KAVR" Bootloader.
Letzendlich muss man das ganze in einem Script zusammenführen.
Einen Custom Bootloader wählen der auch konfigurierbar 10 Sekunden wartet (Gerät braucht nach Spannung anlegen 10 Sekunden zum Starten.)
Den Reset Befehl senden, 1 Sekunde warten und den Avrdude Befehl hinterher, ich habe die besten Erfahrungen mit Arduino Bootloadern gemacht, meist gibt es schon irgendwie einen fertigen Bootloader der den Anforderungen entspricht ..
Nachtrag: Je nach Funklösung z.B. Bluetooth, 433,868 Mhz muss man auch die richtige Baudrate treffen, das ist die größte Herausforderung denke ich.