Digistump ATtiny85 bootloader entfernen

Der chaotische Hauptfaden

Moderatoren: Heaterman, Finger, Sven, TDI, Marsupilami72, duese

Antworten
Benutzeravatar
Jch
Beiträge: 216
Registriert: Do 2. Jul 2015, 22:14

Digistump ATtiny85 bootloader entfernen

Beitrag von Jch »

hallo zusammen,

ich habe mir ein paar Digistump ATtiny85 boards besorgt. Auf die USB Funktionalität kommt es mir nicht an. Ich benötige nur 4 Eingänge, einen Ausgang, den dazugehörigen Spannungswandler und die Platine.
Für den eBay-Preis kann ich das kaum selber herstellen und habe deswegen die Teile bestellt.

Da ich zuvor schon die Fuse für RSTDISBL (Reset Disable) gesetzt hatte und die 5 Sekunden Bootloaderverzögerung loshaben will, will ich jetzt über meinen AVR Dragon und HVSP den Code ohne Bootloader aufspielen. Somit sollen zumindest die 5 Sekunden Wartezeit beim booten verschwinden.

Aber ich komme nicht wirklich weiter. In der Anleitung vom Dragon ist eine Verdrahtungszeichnung aufgemalt.
"Figure 6-9. High Voltage Serial Programming" (Seite 37 oben)
Dies habe ich aufgebaut und bekomme keine Verbindung über Atmel Studio. Ich kann weder die Spannung noch die Device ID lesen.


Aber diese Verdrahtungsbelegung von Figure 6.9 passt nicht zum DaBla vom ATtiny85 (Figure 1.1 auf Seite 2) und der allgemeinen Belegung des HV-PROG (Figure 4-9. Prototype Area auf Seite 26 und 27 von Dragon DaBla)

Im Netz finde ich keine weiteren Infos zum HVSP vom Attiny über den Dragon. Die meisten Tutorials laufen über andere Arduinos und zusatztransistor für die 12V Resetspannung.

Wie muss ich den Dragon nun mit den Tiny85 verbinden? Oder liegt das an dem merkwürdigen BL vom Digistump? Unter dem letzten Link (Digistump) ist zwar erklärt, wie man die 5 Sekunden Bootdauer loswird (Get rid of 5 second startup delay), aber ich kann durch meinen BCD Schalter keine Rücksicht auf die Belegung des Reset-Pins nehmen und will den Bootloader komplett loswerden.

Ideen?

Grüße
Jan
Benutzeravatar
Jch
Beiträge: 216
Registriert: Do 2. Jul 2015, 22:14

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Jch »

nachdem ich nun den ganzen Nachmittag damit verbracht habe verschiedene Möglichkeiten zu ergooglen, auszuprobieren und den Dragon zum laufen zu bekommen, bin ich immernoch nicht schlauer geworden.

Die Verdrahtung vom Datenblatt stimmt doch, aber die Bezeichnung vom HV-PROG header sind ein bisschen verwirrend, da es beim Tiny85 keine SII,SDI und SDO gibt laut Pinconfiguration.

Das merkwürdige ist, dass mein Problem abhängig von der Verdrahtung ist.
Auf den Dragon habe ich eine Adapterplatine gebaut und darauf den Digistum gesteckt. Am Anfang war das noch schön ordentlich mit hauchdünnem Lackdraht gemacht, aber hat nicht funktioniert. Dann habe ich den Querschnitt auf 0,25mm² erhöht.
Brachte auch keine Besserung. Danach 10µF und 22µF zwischen 5V und GND. Die 10µ haben keine Auswirkungen gehabt. Mit 22µ ging nichts mehr. Anscheinend zu hohe einschaltströme.

Danach noch etliche weitere Versuche mit festen 5V Betriebsspannung (doofe Idee, HVSP funktionert mit dem Timing im Einschaltmoment zwischen VCC und RESET)

Irgendwann hatte ich die langen Jumper-Wires zwischen GND und 5V Einspeisung. Und es ging :?: :?:
Nicht gut, aber zu 30% konnte ich die Spannung und Devie ID über Atmel Studio auslesen. Auch flashen ging. Mit mehrern Fehlermeldungen (Vcc < 4,5V und Communnication Errors) aber es ging.
Dann habe ich das Jumperwire zwischen GND entfernt und jetzt geht es zu 50%. Zwar immernoch mit VCC- und Comm.- Fehlermeldungen, aber es geht irgendwie.
gelbe Wunderleitung
gelbe Wunderleitung

Hier die gelbe Wunderleitung :?:


Was könnte das Problem sein? Vorwiderstände 0,6 Ohm, 10Ohm, 57 Ohm brachten weder Besserung noch eine starke Verschlimmbesserung.

Grüße
Jan
Benutzeravatar
Finger
Administrator
Beiträge: 7465
Registriert: Di 12. Jun 2012, 20:16
Kontaktdaten:

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Finger »

Kannst du den Takt zum programmieren einstellen? Atmels sind nach meiner Erfahrung da manchmal etwas zickig... Und hast du dir die Pegel mal auf dem Scooe angeschaut?
Benutzeravatar
Jch
Beiträge: 216
Registriert: Do 2. Jul 2015, 22:14

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Jch »

Hallo,

ich habe mal alle Datenleitungen durchgemessen. Außer VCC und eine DAtenleitung ist mir nix aufgefallen.
VCC ohne gelbe Wunderleitung.jpg
VCC ohne gelbe Wunderleitung.jpg
sehr häufige Fehlermeldungen
VCC mit Wunderleitung.jpg
VCC mit Wunderleitung.jpg
häufige Fehlermeldungen. Meistens "Vcc zu klein"
Reset 12V.jpg
Reset 12V.jpg
mMn OK
Takt 885khz.jpg
Takt 885khz.jpg
Takt kann man nicht einstellen. Aber 885kHz ist ein komischer Wert, aber die Flanken sind OK
Daten.jpg
Daten.jpg
irgedneine Datenleitung, wie die anderen 3 auch. Nix auffällig
Daten Übertragung oK.jpg
Daten Übertragung oK.jpg
Wenn die Übertragung nicht OK, dann dauert die letzte LOW-Periode viel länger.

Kommt mir immernoch komisch vor

Grüße
Jan
Benutzeravatar
ferdimh
Beiträge: 9420
Registriert: Fr 16. Aug 2013, 15:19

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von ferdimh »

Häng mal - wenn möglich - 100 Ohm in Reihe zu den Datenleitungen. Evtl auch an beiden Enden. Manchmal treten da lustige Reflexionen auf, die dann manchmal irgendein Register doppelt takten lassen - und dann kommt alles durcheinander.
Zumindest beim klassischen Nicht-Tiny-ISP wird nie nachsynchronisiert.
Name vergessen
Beiträge: 3261
Registriert: Mo 12. Aug 2013, 19:47

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Name vergessen »

Kann ich bestätigen, das sieht man, insbesondere auf einem DSO, nur, wenn man gaanz nah an die steigende Flanke ranzoomt. Da ist dann gern mal ein kleiner Nadelimpuls vor der Flanke, der reicht dann ab und zu schon als zusätzlicher Takt. Außerdem sind an den Flanken Überschwinger von 1V, vielleicht triggert das Fehlverhalten, weil jenseits VCC usw...? Das mit der Leitungslänge könnte in dem Zusammenhang ja über das geänderte Timing der Störpulse der Grund für das (nicht) Funktionieren sein. In dem Fall evtl. mal einen Klappferrit über die VCC und GND stülpen und auf der Empfängerseite noch 100n zum Puffern, falls nicht vorhanden?
Benutzeravatar
Jch
Beiträge: 216
Registriert: Do 2. Jul 2015, 22:14

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Jch »

Ich habe jetzt mal 150 Ohm in Serie zu den Datenleitungen gelötet.

Irgendwie geht's jetzt noch schlechter als vorher. (Die gelbe Wunderleitung habe ich entfernt)
Die 10 bzw 100nF haben nix gebracht. Ich werde morgen mal 2 Kondensatoren auf dem Digispark rauslöten. Ich weiss nicht wie groß dass die sind, aber die mit einen 47 Ohm Widerstand zu "entladen" hat auch nix gebracht.

Im Anhang nun die Bilder und diesmal weiter reingezoomt.

Grüße
Jan
Dateianhänge
photo_2020-02-19_20-51-36.jpg
photo_2020-02-19_20-51-52.jpg
photo_2020-02-19_20-51-55.jpg
photo_2020-02-19_20-51-57.jpg
photo_2020-02-19_20-52-00.jpg
photo_2020-02-19_20-52-04.jpg
photo_2020-02-19_20-52-06.jpg
photo_2020-02-19_20-52-07.jpg
photo_2020-02-19_20-52-10.jpg
photo_2020-02-19_20-52-13.jpg
photo_2020-02-19_20-52-16.jpg
photo_2020-02-19_20-52-19.jpg
ch_ris
Beiträge: 3041
Registriert: Mo 30. Nov 2015, 10:08

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von ch_ris »

ich hatte jetzt diverse Probleme mit Digisparks. Ich habe:
Digispark original.
Digispark , Usb Bauteile entfernt.
Tiny85 blank.
Programmer mit Nano gebastelt:
ISP, nach mehrfacher verpolung hab ich außer Gnd alles nachträglich mit 1k bestückt.
HVSP, auch hier nachträglich 1k, VCC kommt direkt von einem Pin.
damit ließ sich nur noch der blanke T85 ansprechen.

hab dann beim ISP den VCC Widerstand entfernt. damit lässt sich alles ansprechen.
soweit gut, fehlt nur der Deppen-Schutz.

beim HVSP hab ich VCC, statt direkt, über einen Transistor geschaltet, auch ohne Vorwiderstand/Deppen-Schutz.
der Originale geht nicht, die anderen schon. (Das Timing ändern hat auch nix gebracht)

Also eigentlich geht jetzt alles was ich will.
Aber wer weiß was kommt...
ob 100Ω an Vcc und 200 an den Übrigen ein guter Wert sind?
Benutzeravatar
Später Gast
Beiträge: 1697
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Digistump ATtiny85 bootloader entfernen

Beitrag von Später Gast »

Ich habe jetzt auch meine "liebe Freude" mit den Digisparks gehabt. :roll:
Zum Anfang hätte es schonmal sehr geholfen, wenn ich die Wikiseite bei DigiStump zu dem Thema gelesen hätte. ;)

Dinge, die Probleme verursacht haben:

-weak PullUp an einem Pin, der auch ne Led auf dem Brett hatte
-> LED entfernt, externe PullUp Widerstände verbaut

-Beschaltung an den USB-Pins stört
->erst SMD-Widerling ausgelötet, dann aber wieder via USB programmieren wollen, wiederhergestellt und mit Jumper versehen

-Portmanipulation für FastPWM tut nur mit dem Bootloader, der ab Werk drauf ist, neu aufgespielte haben dann kein Zeitgefühl mehr
-> deaktiviert, es piepst jetzt im Netzteil, je nach Tastgrad. :(
-Bootloader hat sich selbst gelöscht -> USBASP tut das zuverlässig und ohne weitere Mods, nur den USBASP auf aktuelle Firmware zu bringen klappte erst nicht.

Programmiere über die Arduino IDE. Da hab ich jetzt drei Varianten, das Board zu proggen, nämlich attiny von David A. Mellis, DigiStump und ATTinyCore von Spence Konde. Wirklich laufen tut nur letztere, der Digistump will nur via ArduinoISP bootloader schreiben und das is mir zu viel Gedöns da jedesmal Jumperkabel zu stöpseln, also nehme ich ATTinyCore und kann dann auch auf den Bootloader verzichten, da ich ja sowieso extern programmiere. Nur dass die schnelle PWM nicht mehr tun will wurmt mich, aber habe im Moment keine Zeit, mich da in die Portmanipulation und wie ich das richtig machen müsste reinzufuchsen, und Kopierpaste hat nur mit dem orschinool Bootloader getan, den ich grad nicht mehr drauf bekomme.
Antworten