In der Vergangenheit hatte ich für einfache Sachen einen ATmega328P verwendet und zur Programmierung einen "mySmartUSB light" benutzt, der kompatibel zum Protokoll des STK500v2 ist.
Unter Windows war das bislang auch kein Problem. Aber seit einiger Zeit nuztze ich Linux (Ubuntu 25.10 mit KDE 6.5) und da dann avrdude als Tool. avdrude funktioniert grundsätzlich auch, wenn ich ein Arduino-Board über den ISP damit ansteuere.
Ein Testaufbau auf einem Breadboard mit ISP-Adapter, der bisher immer problemlos nutzbar war, klappt damit leider gar nicht mehr. Also ein Test-Aufbau wie dieser:
Das Symptom ist immer gleich: avrdude fängt an, landet dann in einem Timeout und meldet dann, dass die Device-ID 0x000000 sei. Die Versorgungsspannung wird dabei auch für einige Sekunden eingeschaltet und der ATmega328P tut auch was - aber er reagiert nicht auf den Versuch, per ISP programmiert zu werden.
Exakt der gleiche Chip funktioniert eingesetzt in einer Arduino-Platine mit Sockel aber absolut problemlos. Auch auf dem Breadboard tut der ATmega328P was er soll - ich kann ihn nur noch per ISP direkt programmieren. Auch dann nicht, wenn ich außer dem Programmer und externem Takt und Stromversorgung nichts angeschlossen habe.
Und ja, ich habe den Aufbau mehrfach genau kontrolliert und die Verbindungen einzeln durchgemessen von den Stiften des für den ISP bis zu den einzelnen Pins des ATmega328P.
Daher stellt sich für mich die Frage, ob irgendwas mit avrdude anders läuft, was die Nutzung der "fliegenden Verdrahtung" statt einer Platine kritischer macht.
Für das nächste Projekt werde ich deswegen wohl einen D1 mini verwenden. KiCad hat dafür praktischerweise auch schon einen fertigen Footprint drin und über USB lässt sich das auch in Linux mit PlatformIO programmieren.