Anderer Kram:
Problem: Vermeintliches AVR-Programmiergerät „AVR-ISP-mkII“ aus China erweist als (zu teurer) Klon, der überhaupt nicht funktioniert. Zumindest nicht mit avrdude, dem Arbeitspferd von Arduino und WinAVR.
Besser: Beim nächsten Mal nicht in China kaufen. Eines können die Chinesen: Täuschend echt aussehende Gehäuse herstellen! Es unterscheidet sich vom Original nur durch die fehlenden Schriftzüge „AVR“ und „Atmel“. Alternativen:
Untersuchung: Durch die Universität kommt mir auch mal ein Original-Programmiergerät in die Pfoten, und dieses funktionierte sofort. Na gut, ebenfalls erst nach Treiberinstallation. Lästig ist dabei, dass es nicht ohne (externe) Speisung des Controllers funktioniert; der UCC ist datenblattgemäß ein Eingang, der die Programmierspannungspegel (5 V, 3,3 V oder auch weniger) nachführt.
Frisur am Original: Um den Controller auch mal speisen zu können habe ich den allfälligen Schalter zwischen USB-Busspannung und UCC gelegt. Das geht aber nur für ATtiny und ATmega, nicht für xMega! Da der Programmer nicht mir gehört, ohne Modifikation am Gehäuse.
Frisur am Clone: Netterweise ist zur Speisung des Targets ein Jumper vorgesehen, wenn auch nicht bestückt. Hier habe ich nun eine „zweipolige Stiftleiste“ zur UCC-Speisung (roter Jumper) bestückt. Die bereits vorhandene ist für Reset und Urlader des STC-Controllers. Der bekommt seine Firmware über die dreipolige serielle Schnittstelle mit R-T-G. Auch das zehnpolige Kabel ist für mich unbrauchbar, ich habe es durch ein sechspoliges ersetzt.
Fehlersuche: Mit einem Oszilloskop, aber auch nur
mit einem Oszilloskop ist der Fehler schnell gefunden:
Es findet ein Kommunikationsversuch mit dem (bereits programmierten)
Mikrocontroller statt, aber die Antwort ist wirr:
Der Programmer „vergisst“
Vergleich: Der Aufwand, den Atmel fĂĽr ihr
Programmiergerät betreibt, ist schlicht gigantisch!
Andererseits gibt es keinen Atmel-Controller,
der das USB-Interface mit EP2IN
und EP2OUT nachbilden kann,
und so gesellt sich neben dem ATmega128 ein extra USB-Chip
aus den Anfangstagen von USB, nicht von Atmel,
sondern PDIUSBD12 von Philips.
Bei so viel Aufwand verwundert es, dass es nicht gleich HVSP
und TPI-HV beherrscht.
Der China-Clon erscheint minimalistisch, und ihr STC-Controller
kann EP2IN und EP2OUT feilbieten.
Warum bei immer noch freien Pins keine Speisespannungs-Zuschaltung
realisiert, keinen Taktausgang anbietet und kein TPI-HV anbietet
erscheint unverständlich.
Mit der Nicht-Funktion hat das nichts zu tun!
FĂĽr xMegas ist der Clon offiziell nicht geeignet,
weil Pegelumsetzer fĂĽr 3,3 V fehlen.
Funktionieren wird bzw. könnte es trotzdem, habe keinen zum Testen.
Siehe auch:
Symptom: Geht mal und geht mal nicht. Genaueres Probieren ergab Kabelbruch in der Nähe des Handgriffs. Ersatzteil „Elektroschlauch“ für 70 € bedeutet hier wirtschaftlichen Totalschaden, da ohnehin mit einem Akkustaubsauger geliebäugelt wird, der billiger ist. Etwa der gestern bei Lidl gesehene.
Analyse: Ein YouTube-Video zeigt das Auseinandernehmen des Elektroschlauchs auf beiden Seiten mit dem Ziel des Putzens der Schleifringe, geht aber nicht bis zur Kontaktierung, insbesondere nicht die in der Nähe des Handgriffs. Keine sichtbare Chance an den Kabelbruch selbst heranzukommen, die Alternative ist das Ziehen einer zusätzlichen eindrähtigen Litze durch den Saugschlauch als Bypass für die gebrochene Ader.
Elektrische Verschaltung: Sehr verwunderlich ist dass es bodenseitig drei und griffseitig vier Schleifringe sind. Vom Freund habe ich mir die Schleifringe griffseitig abziehen lassen: „Das geht nur mit Gewalt!“ Das schlauchinnere Kabel ist vierpolig. Gebrochen ist die schwarze Ader, und die beiden blauen sind faktisch parallel geschaltet. Damit lässt sich der Bypass auch ohne zusätzliche Litze lösen, indem eine blaue Ader als Bypass dient.
Reparatur: Eine blaue Ader wurde beidseitig freigeschnitten und parallel zur schwarzen verlötet. Die dabei fehlende Verbindung zwischen den beiden „blauen“ Schleifringen griffseitig wurde mit einem kurzen Stück Litze hergestellt. Der beim Zerlegen des Griffstücks zerstörte Stöpsel wurde durch eine Plast-Madenschraube M6 ersetzt, dazu vorher in das Loch M6-Gewinde geschnitten. Die Madenschraube entstand kurzerhand im Schraubstock durch Ablängen einer langen Nylonschraube und Einsägen eines Schlitzes.
Resümee: Wenn man schon eine Fernbedienung zum Energiesparen in das Griffstück einbaut, dann löst man das Problem bittesehr ohne neue Schwachstellen einzubauen! Ich hätte es eher per Funk und einer Hilfsbatterie gelöst. Mit einer — für meine Bastellösungen typischen — Batterielebensdauer von 5 Jahren. Oder noch besser mit Energy Harvesting per Piezoaktor als Taster. So ähnlich wie beim Gasanzünder oder Feuerzeug. Und auch die elende Reaktionsverzögerung hätte ich auf unter 100 ms gedrückt.