Ich denke/hoffe das das helfen wird den Nachbau zu erstellen.
Anmerkung:
Ich habe die Software nicht erstellt, das waren viele andere fleißige Mitglieder dieses Forums und von Extern.
Der Dank geht daher an alle, die sich die Mühe machen und hier Ihre Freizeit "opfern" um uns den Nachbau zu ermöglichen bzw. zu erleichtern.
Ich habe die Beschreibung bewusst der Beschreibungen von jp112sdl angepasst, so das man sich schnell zurecht findet:
benötigte Hardware:
1x Arduino Pro Mini ATmega328P (3.3V / 8MHz)
1x CC1101 Funkmodul (868 MHz)
1x FTDI Adapter (zum Flashen)
1x Taster
1x LED (optional)
1x Widerstand 330 Ohm (optional)
2-4x Temperatursensor DS18B20
https://de.aliexpress.com/item/Direkten ... 44739.html
Draht
Platine:
Die Universalplatine von deimos habe ich in meinem Fall verwendet, um alles etwas aufgeräumter wirken zu lassen.
https://github.com/alexreinert/PCB
(ich habe auch noch welche übrig, die ich günstig abzugeben habe, einfach per PN anfragen)
Akkulaufzeit:
Um die Batterielebensdauer zu erhöhen, ist es unbedingt notwendig, die grüne LED vom Arduino Pro Mini zu entfernen!
Die LED und den 330R Widerstand kann man ebenfalls weglassen, um noch ein wenig mehr Akku zu sparen, man sieht dann allerdings nicht, das der Arduino "lebt".
Der LDO auf dem Arduino Board kann/sollte ebenfalls entfernt werden.
Je nach Arduino Board (Version) kann man hierfür die Lötbrücke öffnen, oder muss das IC ablöten (wenn keine Lötbrücke vorhanden).
Ich habe die theoretische Batterielaufzeit mit 2xAA Batterien mit 2000mAh und 600 Sekunden Sendeabstand mal in einer Excel Tabelle durchgerechnet.
Arduino mit LED und LDO und 2x DS18B20 - ca. 2,6 Monate (2,5 Monate bei 4 Sensoren)
Arduino ohne LED, mit LDO und 2x DS18B20 - ca. 1,7 Jahre (1,4 Jahre bei 4 Sensoren)
Arduino ohne LED, ohne LDO und 2x DS18B20 - ca. 2,8 Jahre (2,2 Jahre bei 4 Sensoren)
Man sieht also, das es sich durchaus lohnt die "Sparmaßnahmen" auch durchzuführen!
Anschaltung: Code flashen:
AskSinPP Library in der Arduino IDE installieren
Achtung: Die Lib benötigt selbst auch noch weitere Bibliotheken.
Projekt-Datei herunterladen. --> zu finden in den Beispielen von jp112sdl (https://github.com/jp112sdl/Beispiel_As ... T2-DS18B20)
Arduino IDE öffnen
Heruntergeladene Projekt-Datei öffnen
Werkzeuge
- Board: Arduino Pro or Pro Mini einstellen
- Prozessor: ATmega328P (3.3V 8MHz) auswählen
- Port: entsprechend FTDI Adapter einstellen
- Beim HM-WDS30-OT2 ist 180 Sekunden Sendeabstand als Standardwert gesetzt. Dies kann man im Sketch manuel anpassen (#define MSG_INTERVAL 180 - wobei 180 der Abstand in Sekunden bedeutet, ich habe hier 600 Sekunden gewählt, da mir das völlig ausreicht und ich mit den Sensoren die Aussentemperatur messe, diese ändert sich nicht so schnell.)
- Menü "Sketch" -> "Hochladen" auswählen.
Gerät anlernen:
Kann wie jedes HM-Gerät angelernt werden, CCU in den Anlernmodus bringen, Taster kurz drücken.. Fertig.
Optional - Umbau für 4 Temperatursensoren ohne Differnzwerte:
Benötigt man die Differenztemperaturen nicht, oder errechnet diese per CCU Skript, dann kann man den Sketch umschreiben, um 4 statt der 2 Temperatursensoren auszulesen, dadurch entfallen dann aber die Differenztemperaturen.
hierfür muss man die Zeilen:
Code: Alles auswählen
Ds18b20 sensors[2];
tempValues[2] = tempValues[0] - tempValues[1];
tempValues[3] = tempValues[1] - tempValues[0];
sensarray.sensorcount = Ds18b20::init(oneWire, sensarray.sensors, 2);
Code: Alles auswählen
Ds18b20 sensors[4];
tempValues[2] = sensors[2].temperature();
tempValues[3] = sensors[3].temperature();
sensarray.sensorcount = Ds18b20::init(oneWire, sensarray.sensors, 4);
Sollten mir hier Fehler unterlaufen sein, so sagt mir bitte schnell bescheid, damit wir diesen beheben können.
Viel Erfolg
Gruß Carsten