Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Benutzeravatar
Gelegenheitsbastler
Beiträge: 586
Registriert: 15.10.2017, 07:29
Hat sich bedankt: 14 Mal
Danksagung erhalten: 41 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von Gelegenheitsbastler » 23.02.2019, 07:37

Der Bootloader (aus der Arduino IDE) sollte bereits vorhanden sein. Aber evtl. ist er bei Deinen Flashversuchen beschädigt worden. Wenn Du den gleichen Bootloader wieder drauf machen möchtest, klemm die Verbindungen korrekt an den ISP-Header, geh in der IDE (die Einstellungen für den AVR müssen natürlich korrekt sein) auf "Werkzeuge - Bootloader brennen". Dann wird er auf den AVR geschrieben.
Das Komplizierteste an der Hausautomatisation ist der WAF.™ ​

Übersicht meiner Projekte


RaspberryMatic 3.47.22.20191026 auf Raspberry Pi 3B mit HomeMatic Funkmodul von ELV und RTC

Etliche selbst gebaute Aktoren und Sender

Jan_von_neben_an
Beiträge: 174
Registriert: 17.11.2018, 18:05
Hat sich bedankt: 27 Mal
Danksagung erhalten: 14 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von Jan_von_neben_an » 23.02.2019, 09:38

Also mit der Arduino IDE und den ISP tut das schon mal nicht.
Also installiere ich mal Atmel Studio

TomMajor
Beiträge: 1793
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von TomMajor » 23.02.2019, 11:53

stan23 hat geschrieben:
23.02.2019, 07:24
ICE ist ein In Circuit Emulator oder Debugger, also ein ziemlich teurer Programmieradapter der noch mehr kann :mrgreen:

Der Screenshot stammt aus Atmel Studio, Unterpunkt Device Programming.

Ich glaube Tom wollte nur zeigen dass FF, D2, FF korrekt ist, und dass du die dort liegende HEX-Datei flashen sollst - mit dem Tool deiner Wahl, z.B. AVRdude.
Hallo Jan,
Marco hat meine Erklärung noch etwas ausgebaut, passt genau. Du brauchst deswegen kein AVR Studio installieren.
Die verlinkten screenshots zeigen die Hex-Werte der Fuse Register. Flashe einfach den verlinkten bootloader (hex Datei) über AVRdude und schaue das die Fuse Werte passen. Das wars, danach sollte das Laden eines sketches seriell über die IDE funktionieren.

rewe0815
Beiträge: 176
Registriert: 30.09.2010, 09:40
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von rewe0815 » 23.02.2019, 12:47

Jan_von_neben_an hat geschrieben:
23.02.2019, 09:38
Also mit der Arduino IDE und den ISP tut das schon mal nicht.
Also installiere ich mal Atmel Studio
Bin mir nicht sicher, ob das eine Gute Idee ist, Den Aufwand musst du sicher nicht treiben. Mit folgender Vorgehensweise hat es bei mir auf Anhieb geklappt (verzichte mal auf Bilder, weil ich auf dem Mac arbeite und da gibt es leichte Unterschiede):

1. ISP in der Arduino IDE konfigurieren - falls nötig.
Ich arbeite mit einem DIAMEX-AVR, da müssen einige Einträge in der programmers.txt gemacht werden

2. Board, Prozessor, Port konfigurieren
DIAMEX Arduino IDE.png
Wenn du den Arduino Pro Mini als Board und den Prozessor wie im Bild einstellst, kannst du dir die Board-Installation sparen, der pro Mini sollte von haus aus drin sein.
Als Programmer natürlich den von dir verwendeten Programmer eintragen.
Und natürlich den Port, an dem der Programmer hängt, bei dir sicher irgend ein Com-Port

3. Programmer an ISP header der Platine anstöpseln
Und den letzen Eintrag "Bootloader brennen" (siehe Bild) wählen.
Der Bootloader ist bereits in der Arduino IDE enthalten, Fuses werden bei dieser Vorgehensweise automatisch nach eingestelltem Board/Prozessor gesetzt (glaube ich jedenfalls).

Ausgabe in Arduino IDE sollte mit:

Code: Alles auswählen

avrdude: verifying ...
avrdude: 928 bytes of flash verified

avrdude done.  Thank you.
enden.

4. Programmer abstöpseln
5. USB to TTL converter anschließen
Das muss ein 3,3V Typ sein, oder er muss sich auf 3,3V einstellen lassen.

Verkabelung:

Code: Alles auswählen

Ventil-Board                   USB-TTL
GND (am ISP_header)              GND
      Tx                         Rx
      Rx                         Tx
6. In Arduino IDE den Port ändern
Weil dein USB-TTl Teil wahrscheinlich einen andern Com Port hat

7. Ventil Board mit 9V versorgen (inks unterhalb des Quarzes)

8. Kleinen Test-sketch hochladen
Lade zu Test mal ein kleines Testscript hoch:

Code: Alles auswählen

#define LED_PIN 4

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_PIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_PIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_PIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}
Hinweis:
Bei Begin des Flashvorgangs (an dieser stelle meckert AVRdude noch), das Board kurz resetten. Dazu
die beiden Pins unterhalb von Rx/Tx kurz Brücken. Danach startet der eigentliche Flashvorgang. Am besten lötet man sich da einen kleinen Taster ein.

Nach erfolgreichem Flash sollte die LED rechts oberhalb des Quarzes munter vor sich hinblinken.
Das hat bei mir genau so funktioniert.
Wenn alles klappt kann es mit dem Originalsketch weitergehen. (hab ich aber noch nicht drauf)

Gruß
rewe0815
Zuletzt geändert von rewe0815 am 23.02.2019, 13:21, insgesamt 1-mal geändert.

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von jp112sdl » 23.02.2019, 13:02

Hi,
rewe0815 hat geschrieben:
23.02.2019, 12:47
Ich arbeite mit einem DIAMEX-AVR, da müssen einige Einträge in der programmers.txt gemacht werden
Was hast du in der Datei verändert?
Ich nutze u.a. auch den Diamex, aber in der programmers.txt habe ich nichts angepasst.
Habe in der Arduino IDE als Programmer den STK500 ausgewählt.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

rewe0815
Beiträge: 176
Registriert: 30.09.2010, 09:40
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von rewe0815 » 23.02.2019, 13:12

@Jérôme

Folgende Zeilen sollten in die programmes.txt rein:

Code: Alles auswählen

diamexavr.name=DIAMEX-AVR
diamexavr.communication=serial
diamexavr.protocol=stk500v2
diamexavr.speed=19200
diamexavr.program.tool=avrdude
diamexavr.program.extra_params=-P{serial.port} -b{program.speed}
diamexavr.program.speed=19200
diamexavr.program.protocol=stk500v2
Falle es einen kompatiblen programmer gibt, der schon drin ist, kann selbstverständlich auch der gewählt werden.

Bei meinem obigen Post Pkt. 8 hab ich vergessen zu erwähnen, dass beim Flash-Begin das Board kurz resettet werden muss. Werde es gleich mal ergänzen.

Jan_von_neben_an
Beiträge: 174
Registriert: 17.11.2018, 18:05
Hat sich bedankt: 27 Mal
Danksagung erhalten: 14 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von Jan_von_neben_an » 23.02.2019, 21:44

Hallo,

besten Danks für die Infos, tut mir leid das ich keine Ahnung habe. Ich dachte nicht das das so schwierig wird.

Also zu der Methode von Rewe 0815 tut bei mir so leider nicht die Arduino IDE erkennt den ISP leider nicht! Es wird keine Schnittstelle erkannt! Mit AVRdude hat das funktioniert da wird der Programmer erkannt!
ideX.jpg
Keine Ahnung an was das wieder liegt. Ich muss wohl oder üble mal die Doku der AVRdude rein ziehen.......Ich habe da leider auch keine Ahnung wie man ein Hex File an den Pro Mini schickt...............

Schlecht wenn man keine Ahnung von dem Zeug hat!

Wenn jemand Vorschläge hat ich bin immer Dankbar.

rewe0815
Beiträge: 176
Registriert: 30.09.2010, 09:40
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von rewe0815 » 23.02.2019, 23:10

Ja, da weis ich auch nicht mehr weiter. Beim Brennen des Bootloader sollte Arduino ja automatisch den ISP-Prommer verwenden;-(
Beim Upload eines Sketches hast du die Wahl, ob du per serieller Schnittstelle (mit USB-TTL Konverter) oder den ISP-programmer verwenden willst (Hochladen mit Programmer)
Damit solltest du ja eigentlich auch ohne Bootloader arbeiten können.
upload.png
Vorausgesetzt natürlich, dass der Arduino den Prommer überhaupt erkennt. Vlt. hat den noch eine andere Anwendung in Beschlag? - Kenn mich mit Windows leider überhaupt nicht aus;-( Der Verdacht liegt nahe, schließlich verwendet Arduino ja auch nur ARVdude und damit geht es ja wie du schreibst.
Ich hab den Bootloader eigentlich nur gebrannt, weil ich die Serielle für Debug-Sachen brauche und dauernd zwischen Prommer und USB-TTL Konverter zu wechseln ist nervig.

rewe0815
Beiträge: 176
Registriert: 30.09.2010, 09:40
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von rewe0815 » 23.02.2019, 23:17

Ach ja, einen "Port" hast du in Arduino beim USBasp wohl nicht, der sollte als reiner USB Programmer keinen benötigen. Sollte aber trotzdem gehen.
Da ich den nicht habe, kann ich das nicht verifizieren.

TomMajor
Beiträge: 1793
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: Projekt Doku GARDENA Bewässerungsventil 9 V Umbau auf HomeMatic

Beitrag von TomMajor » 24.02.2019, 00:08

Jan_von_neben_an hat geschrieben:
23.02.2019, 21:44

Keine Ahnung an was das wieder liegt. Ich muss wohl oder üble mal die Doku der AVRdude rein ziehen.......Ich habe da leider auch keine Ahnung wie man ein Hex File an den Pro Mini schickt...............

Schlecht wenn man keine Ahnung von dem Zeug hat!

Wenn jemand Vorschläge hat ich bin immer Dankbar.

Du warst doch schon ziemlich weit, laut deinem Post hast du mit

Code: Alles auswählen

/avrdude -v -pm328p -cusbasp -Ulfuse:w:0xFF:m -Uhfuse:w:0xD2:m -Uefuse:w:0xFF:m
die Fuses flashen können.

Jetzt mit den gleichen Params das hex file

Code: Alles auswählen

/avrdude -v -pm328p -cusbasp -e -U flash:w:<Pfad zum file>ATmegaBOOT_168_atmega328_pro_8MHz.hex
und danach noch mal die Fuses zur Sicherheit.

<Pfad zum file> musst du natürlich anpassen.

That's it :wink:

avrdude Params:
https://www.nongnu.org/avrdude/user-man ... ude_4.html

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“