, ,

DIY Gartenbewässerung: 4-fach Aktor zur Ventilansteuerung von 12V oder 24V DC Magnetventilen z.B. Gardena, Hunter usw..

Unseren DIY Feuchtigkeitssensor zur Messung der Bodenfeuchtigkeit an bis zu 7 verschiedenen Messpositionen kennt ihr ja bereits. Diesen könnt Ihr wie gewohnt bei uns im smartkram Shop kaufen. Heute möchten wir euch nun ergänzend unsere DIY Ventilansteuerung vorstellen, mit welcher Ihr bis zu 4 elektrische Ventile zur Gartenbewässerung ansteuern könnt. Die Platine ist so ausgelegt, dass bis zu 4 24V DC Magnetventile darüber angesteuert werden können. Das Gerät wird nativ in der Homematic-Zentrale erkannt. Grundlage dafür ist AskSinPP.

Wer bereits elektrische Bodenventile zur Gartenbewässerung nutzt und den Einsatz selbiger optimieren möchte, sollte ab jetzt mitlesen :) Wir bieten euch ergänzend zu unserem DIY Bodenfeuchtigkeitssensor nun eine DIY Platine zur Ansteuerung eurer Ventile und damit eine Kombination zur optimalen Bewässerung. Die Platine und alle Bauteile sind bereits bei uns im Shop gelistet.

Überblick des Bausatzes

Zunächst sollt ihr natürlich wissen, was beim Aufbau auf euch zukommt. Die Bauteilliste umfasst dabei folgendes:

Aufbau der DIY Platine

Wir beginnen mit dem Auflöten des Funkmoduls. Legt dafür das CC1101 Modul genau auf die entsprechende Markierung auf der DIY Platine. Seid dabei sehr sorgfältig bei der Positionierung. Lötet nun am Besten zunächst nur ein einziges Lötauge von oben fest, legt einen Finger auf das Modul und erhitzt das Lötauge wieder. So könnt ihr die Platine optimal in Position bringen. (Achtung: Bitte nicht wundern, ich hab zunächst die drei PINS auf der rechten Seite zum Testen nicht verlötet… Bitte macht dieses gleich mit)

Im nächsten Schritt verlöten wir die Stiftleisten für die Montage des Arduinos. Hierfür einfach die Stiftleiste in die Lötaugen einlegen und von unten zunächst über ein Lötauge befestigen. Nun könnt ihr auch hier über Fingerauflegen (nicht den Pin berühren, den ihr gerade verlötet!) und gleichzeitigem Erhitzen die Position justieren.

Tipp: Achtet auch unbedingt auf die jeweils 2 Pins, die nicht in in den langen, seitlichen Reihen liegen.

Als nächstes widmen wir uns dem Taster. Diesen einfach in den vorbeschrifteten Bereich einlegen und von unten verlöten.

Da wir gerade in der Nähe sind, löten wir als nächstes den Festspannungsregler ein. Dieser wird auf die Platine auflegt und mit genügend Lötzinn von oben verlötet. Bitte, genau wie auf dem Bild erkennbar, verlöten, da dieser polungsrichtig aufgesetzt werden muss. Der Festspannungsregler sorgt dafür, dass ihr mit einem großen Eingangsspannungsbereich vom 6-24 Volt (bspw. von eurer vorhanden Ventilsteuerung) die DIY Platine und die darauf vorhanden Bauteile mit einer notwendigen Spannung von 5V betreiben könnt.

Nun löten wir den mitgelieferten Kondensator ein… Hier müsst ihr ebenfalls auf die Polung achten. Die „weiß“ markierte Seite auf der Platine muss mit der weißen Markierung auf dem Kondensator korrespondieren.

Widerstand R1 einlöten… 

… sowie die mitgelieferte Sicherung (4A/250V). Widerstand und Sicherung besitzen keine Polung und können nicht verkehrt herum eingelötet werden.

In Nähe der Sicherung findet ihr zudem die Vorbereitung für den Anschluss der 868 MHz Antenne. Hier einfach alle 5 Lötaugen (4x Masse, 1x Signal) auf der Unterseite verlöten. Um Sicherzustellen, dass es am Ende keinen Kurzschluss zwischen Signal und Masse gibt, könnt ihr mit einem handelsüblichen Multimeter einmal zwischen dem mittleren Kontakt und den äußeren Kontakten auf Durchgang prüfen. Es darf dabei keine Kontaktierung feststellbar sein.

Jetzt löten wir noch eine 6-polige Stiftleiste sowie die LED1 auf. 

Auch die Anschlussklemmen (5x) können nun aufgesetzt werden. An diesen hier sichtbaren Anschlüssen GND werden später die Massen der Bewässerungsventile angeschlossen. Die VCC Klemmen bleiben vorerst noch frei; es erfolgt hier zudem NICHT der „+“-Anschluss der Versorgungsspannung der Bewässerungsventile!

Zum Schluß wird der Arduino auf die zuvor angebrachten Stiftleisten aufgelötet. Die PINS A4,A5 und A7 werden dabei gerne vergessen, müssen aber natürlich ebenfalls verlötet werden. Auch die Antenne könnt ihr nun an der Antennenbuchse befestigen.

Einbau in die Hensel-Dose

Die Hensel-Dose müsst ihr mit einer Kabeleinführung vorbereiten. Schneidet dafür die Dichtung an der rechten, unteren Seite der Hensel-Box heraus. Nutzt unbedingt diese Seite, da die Platine eine entsprechende Aussparung an dieser Montageseite besitzt.

Nun setzt ihr die Kabeleinführung ein und verschraubt diese in der Hensel-Dose. Am Besten positioniert und fixiert ihr hierfür im inneren Bereich der Hensel-Dose die Mutter und verschraubt von Außen die Kabeleinführung in die innenliegende Mutter.

Abschließend können wir die vorbereitete Platine in die Hesel-Dose einbauen und mit 2 Schrauben befestigen.

Jetzt geht es „Huckepack“ weiter! Das bereits fertig aufgebaute Relaismodul wird über 4 Abstandshalter direkt auf der DIY Platine befestigt und über eine 6 polige Leitung miteinander verbunden. Bitte die Anschlüsse dabei nicht vertauschen! Info: Damit ihr es besser erkennen könnt, habe ich ein Bild ausserhalb der Hensel-Dose gemacht.

Ebenso müssen die Ausgänge (VCC) auf der DIY Platine mit den jeweiligen Relais-Eingängen verbunden werden. Bereitet ruhig alle 4 Ausgänge vor, auch wenn ihr weniger Ausgänge zur Ventilsteuerung nutzen solltet.

Elektrischer Anschluss eurer Ventile

Schließt nun eure Spannungsversorgung der elektrischen Ventile (6V-26V) an die vorbereite Buchse V(in) der DIY Platine an. 

Auch die elektrischen Ventile können nun an die Buchsen angeschlossen werden. Hierfür schließt ihr die Masse (GND) an den Buchsen der DIY Platine (GND) an.

Die „+“-Seite der Ventilversorgung wird an die Relaisausgänge des Relaisboards angeschlossen.

Führt die Leitungen über den mitgelieferten Einsatz der Kabeldurchführung von Innen nach Außen, damit keine Feuchtigkeit eindringen kann.

Welche Magnetventile können verwendet werden?

Es kann jedes Magnetventil verwendet werden, das mit 24V DC arbeitet. Es gibt auch Magnetventiule von Gardena die mit 24V AC arbeiten. Diese können auch verwendet werden, hier wird die Lebensdauer der Spule aber deutlich verkürzt, dazu gibt es bereits einige Einträge im Netz. Schaut einfach mal bei Amazon vorbei. Hier gibt es günstige Ventile von Solid und von Hunter.

Programmierung Arduino

Nachdem wir den Aufbau abgeschlossen haben. müssen wir noch einen Sketch auf den Arduino laden. Wir nutzen hierfür den Sketch HB-UNI-SenAct-4-4 von Jérôme Pech.

Ihr könnt diesen hier in der jeweils aktuellen Version herunterladen: Link („Clone or Download“ anklicken)

Wie dieser Sketch auf den Arduino zu übertragen und was dabei zu beachten ist (bspw. Installation von Bibliotheken) könnt ihr in unserem Bericht zum DIY-Bodenfeuchtesensor nachlesen.

Anlernen an eine CCU

Da es sich hierbei um ein AskSinPP Projekt handelt, benötigt ihr auf der CCU ein entsprechendes Add-On, durch welches das Anlernen von Selbstbausensoren und -aktoren ermöglicht wird. Hierfür bietet Jérôme Pech ebenfalls das passende Add-On zum Download an. Genauere Infos zur Installation könnt ihr erneut unserem Bericht zum DIY Bodenfeuchtesensor entnehmen.

Klickt nach der Installation einfach auf „Homematic Gerät anlernen“ in der CCU und drückt danach einmal den Taster auf eurem soeben fertiggestellten Aktor zur Ventilansteuerung. Das Gerät wird danach in der Zentrale angelernt und meldet sich mit den folgenden Kanälen:

Ihr könnt nun, wie bereits erwähnt, über die Kanäle 1-4 die Relais unseres fertiggestellten Bausatzes zur Ventilansteuerung eurer Gartenbewässerung nutzen.

Fazit

Demnächst möchten wir euch in einem weiteren Bericht zeigen, wie ihr den Bodenfeuchtesensor sowie die Ventilansteuerung kombinieren könnt, um eine optimale Gartenbewässerung sicherzustellen.

Ihr könnt den hier vorgestellten Bausatz wie üblich bei Smartkram.de im DIY-Bausatz-Bereich bestellen.

50 Kommentare
  1. Andreas Arthur Plötz
    Andreas Arthur Plötz sagte:

    Hallo,

    ich habe die Platine zusammengebaut und den Schaltplan überprüft. Ich kann auch den Sketch hochladen erhalte aber im seriellen Monitor immer nur kryptische Zeichen und kann das Gerät nicht als HM-Gerät anlernen bzw. finden

    11:10:46.270 -> ⸮tab⸮⸮ ⸮h⸮⸮⸮n⸮⸮⸮cdc`c⸮⸮!`(`b`cd⸮“c*b`g`e⸮!`(`c`cd⸮⸮⸮⸮⸮⸮ `⸮c`el⸮⸮g⸮`fe

    Jemand eine Idee?

    Gruß Andreas

    Antworten
  2. Thorsten
    Thorsten sagte:

    Hallo zusammen,

    ich möchte hier den Kommentar von Thomas nochmal etwas höher anpinnen. Ich hatte exakt dasselbe Problem. Die Kanäle/Relais sind beim einschalten bereits aktiv geschaltet, trotzdem lassen sich die Ventile nicht schalten.:

    Hallo,

    nachdem ich den Bausatz in betrieb nahm, waren alle vier Relais beim Einschalten eingeschaltet und die vier LEDs leuchteten. In der Homematic waren diese aber auf AUS und bei EIN waren die Relais aus.
    Nach Studium des Sketches habe ich in der Setup-Routine die vier Kanäle von false auf true verändert:

    void setup () {
    DINIT(57600, ASKSIN_PLUS_PLUS_IDENTIFIER);
    bool first = sdev.init(hal);
    sdev.switchChannel(1).init(RELAY_PIN_1, true);<-
    sdev.switchChannel(2).init(RELAY_PIN_2, true);<-
    sdev.switchChannel(3).init(RELAY_PIN_3, true);<-
    sdev.switchChannel(4).init(RELAY_PIN_4, true);<-

    Mit dieser Änderung funktionieren die Relais wie geplant.
    Außerdem muss die Versorgungsspannung (Vcc) für die Ventile am mittleren Pin (COM) und nicht am rechten Pin (NC) werden.
    Mit diesen beiden Änderungen funktioniert dieser tolle Bausatz perfekt.

    Mit besten Grüßen
    Thomas

    Antworten
    • 123
      123 sagte:

      da hab ich auch schon mal irgendwo geschrieben, aber denkst du das wird mal geändert, ne.
      es werden sich noch viele den kopf zerbrechen müssen.

      Antworten
  3. Lars
    Lars sagte:

    Guten Morgen zusammen,

    ich versuche gerade die Aktorsteuerung mit dem HB-UNI-SinAct-4-4-Sc vom Jérôme einzubinden.
    Aktor wird von Homegear/OpenHab erkannt.
    Ändere ich jetzt über den Switch den Status, passiert nichts, erst, wenn ich den Pairing Knopf drücke, zieht das Relais an. Dann wiederum alle, was aber auch daran liegt, das alle Switche synchrone ihren Status ändern, sobald ich einen von Hand ändere.

    Die .xml habe ich bereits von Homematic zu Homegear konvertiert, diese taucht dann auch unter Devices auf.

    Hat jemand eine Idee, woran das liegt?

    Muss ich an der .xml noch etwas manuell anpassen?

    Antworten
  4. Patt
    Patt sagte:

    Hallo, schönes Projekt, aber mir ist nicht ganz klar, wieso man sich diesen Aktor bauen sollte?
    Es gibt doch von Homematic den Bausatz 4-Kanal-Schaltaktor HM-LC-Sw4-PCB für 34,95 Euro. Der funktioniert 100% und ist direkt vom Hersteller!?? Sorry.

    Antworten
  5. Thorsten
    Thorsten sagte:

    Hi, welches Netzteil habt ihr verwendet? Ich möchte drei U.S. Solid Ventile verwenden die jeweils 2A haben möchten. Habt ihr da Empfehlungen für Netzteile die auch entsprechend für den Außenbereich geeignet sind?

    Antworten
  6. Frank
    Frank sagte:

    Hallo zusammen,

    ich stehe vor der Anschaffung eines Bewässerungssystems von Rain Bird, welches ich in meine Homematic-Konfiguration einbinden möchte. Rain Bird bietet allerdings nur Magnetventile mit 24V/AC oder aber 9V/DC an.

    Wenn ich den Artikel und die Kommentare richtig verstanden habe, können 24V/AC – Magnetventile mit dieser DIY-Steuerung zwar gesteuert werden, allerdings auf Kosten der Haltbarkeit der Ventile.
    Ventilmodelle mit 9V/DC hingegen können nicht gesteuert werden – oder wäre dies doch möglich?

    Ich freue mich sehr über hilfreiche Antworten.

    Vielen Dank und beste Grüße
    Frank

    Antworten
  7. Kramykram
    Kramykram sagte:

    Hallo Sebastian, Hallo an alle Anderen,

    Euer Relaismodul zur Ventilansteuerung habe ich bereits seit der letzten Gartensaison erfolgreich im Einsatz.
    Jetzt habe ich gesehen, dass im Sketch von Jerome die Möglichkeit vorgesehen ist noch 4 Taster anzuschließen. Ist die mit Eurer Platine möglich, wenn ja, wo können diese angeschlossen werden und könnten auch Kontroll-LED mit eingebunden werden?

    Danke im Voraus und viele Grüße

    Antworten
  8. Achim
    Achim sagte:

    Wenn ich das richtig sehe, schalten die Relais auch 24VAC. Also sollten mit leicht abgeänderter Verdrahtung (einmal 24V an IN aller Relais, 4 Kabel OUT „Zuleitung“ beim Schalten der Relais.
    Das 2’te Kabel, das die Ventile benötigen, nennen wir es „Common“, wird nicht in die Schaltung geführt sondern direkt an alle Ventile als „Rückleitung“) auch 24VAC Ventile ansteuerbar sein.

    Oder spricht irgendwas dagegen ?

    Antworten
  9. Alexander
    Alexander sagte:

    Hallo ich kriege es nicht hin eine Verbindung zur CCU2 aufzubauen. Habe bereits alles durchgemessen schein in Ordnung zu sein. Sobald ich den Button betätige blinkt die LED aber das gerät wird nicht gefunden.
    Hier mal ein Ausschnitt aus dem Serial Monitor der Button wird 2 mal betätigt.

    AskSin++ v5.0.0 (Mar 16 2021 19:25:05)
    Address Space: 32 – 818
    CC init1
    CC Version: 14
    – ready
    Activate Cycle Msg
    <- 0E 01 86 10 F33101 000000 06 01 00 00 00 – 83
    <- 0E 02 86 10 F33101 000000 06 02 00 00 00 – 184
    <- 0E 03 86 10 F33101 000000 06 03 00 00 00 – 284
    <- 0E 04 86 10 F33101 000000 06 04 00 00 00 – 385
    debounce
    pressed
    released
    <- 1A 05 84 00 F33101 000000 10 F3 31 4A 50 53 45 4E 41 43 54 30 31 10 08 01 00 – 477

    debounce
    pressed
    released
    <- 1A 06 84 00 F33101 000000 10 F3 31 4A 50 53 45 4E 41 43 54 30 31 10 08 01 00 – 7530

    Hoffe jemand kann mir da weiter Helfen.

    Gruß Alex

    Antworten
  10. Michael Meyer
    Michael Meyer sagte:

    Hallo,
    ich habe eueren Bausatz geordert und freu mich total auf das Basteln.

    Jetzt habe ich noch eine Frage:

    Kann ich das Relais auch überbrücken mit einem direkten Schalter, wenn ich mal manuell schalten will?

    12/24 paralell zur Platine oder grille ich da etwas beim Einschalten?

    Antworten
    • Rene
      Rene sagte:

      so großartig überrannt scheint das hier auch nicht zu sein,bist du schon weiter?
      ob das relais intern den kontakt zumacht oder du mit deinem schalter ist egal, kommt aufs selbe raus. allerdings wird die statusmeldug der ccu nicht stimmen.

      Antworten
  11. Michael Meyer
    Michael Meyer sagte:

    Hallo,
    welche Spannungsversorgung wird empfohlen?

    Ich möchte ein Netzteil 24V AC benutzen und später 1-2 Hunterventile.

    Geht das?

    Antworten
  12. Martin
    Martin sagte:

    Hallo
    Unsere Bewässerung lässt sich nicht in Homematic anlernen.
    Auf dem Arduino ist der Sketch aufgespielt und die Bibliotheken sind angelegt.
    Beim Start schalten die Relais ein.
    Was nicht leuchtet ist die LED die nach Tastendruck zum anlernen leuchten sollte.
    Wie gehe ich weiter vor zur Analyse ?
    Lötfehler oder welch anderer Fehler ist möglich.
    Ich habe in der Beschreibung keinen Hinweis gefunden in welcher Lage die LED eingebaut werden muß.
    Gibt es einen Schaltplan zu dem Projekt.
    Gruß Martin

    Antworten
    • Christian
      Christian sagte:

      Hallo Martin,

      ich gehe mal davon aus du weißt dass du das Gerät als Homematic-Gerät anlernen musst und nicht als Homematic-IP-Gerät.
      Schau mal ein paar Kommentare weiter unten. Dort habe ich einen Link zum Grundschaltplan gepostet.
      Hatte das Gleiche Problem. Bei mir war es eine Fehlerhafte Masse am Funkmodul. Einfach mit dem Multimeter mal den kompletten Schaltplan durchtesten.

      Gruß Christian

      Antworten
    • Christian
      Christian sagte:

      Sollte direkt neben dem Festspannungsregler auf der Platine stehen.
      Glaube zwischen 6V – 26V (Gleichspannung) kannst du anlegen.

      Gruß Christian

      Antworten
  13. Christian
    Christian sagte:

    Hallo,

    ich habe mir vor kurzem auch den Bausatz aus dem smartkram Webshop bestellt und letztes Wochenende alles laut Anleitung zusammen gelötet.
    Das Gerät schaltet sich auf jeden Fall schon mal ein und ließ sich auch via Arduino App auf dem Mac mit dem Sketch (HB-UNI-SenAct-4-4) bespielen.
    Ich bekomme das Gerät aber nicht in der CCU3 angelernt.

    Was habe ich bereits versucht…
    > Lötstellen überprüft und durchgemessen
    > Masse und Signal von Antenne überprüft
    > Frequenz des C1101 via AskSinPP -> FreqTest ermitteln und einstellen lassen
    > Das Gerät scheint auch von anderen HM-Geräten Funksignale zu empfangen (siehe unten)
    > AskSinPP Add-on V2.6 & V2.23 getestet

    Beim drücken auf den Taster blinkt die LED einmal kurz und dann noch einmal etwas länger.

    Ausgabe Serieller Monitor:
    14:21:50.398 -> AskSin++ V4.1.3 (Apr 14 2020 14:16:49)
    14:21:50.398 -> Address Space: 32 – 866
    14:21:50.398 -> CC init1
    14:21:50.434 -> CC Version: 14
    14:21:50.434 -> – ready
    14:21:50.434 -> Config Freq: 0x2165DA
    14:21:50.434 -> Activate Cycle Msg
    14:21:52.540 -> ignore 21 10 00 8E 5FE9EE B5E891 00 04 5F 7E FD 65 B3 5C 5A 03 25 3B 04 89 65 97 F4 AB 62 F4 EF 02 23 C5 – 7284
    14:22:58.041 -> debounce
    14:22:58.115 -> pressed
    14:22:58.522 -> released
    14:22:58.591 ->
    14:23:01.842 -> ignore 13 12 00 83 5C571B F00001 00 01 3C 84 22 5B 02 E4 BC 37 – 10657

    Wäre über jeden Tipp dankbar, wo ich evtl. weiter suchen kann. Danke!

    Antworten
    • Michael
      Michael sagte:

      Hallo Christian,

      sieht eigentlich ganz gut aus! Hast du das Gerät auch als „Homematic“ Gerät versucht anzulernen oder den „Homematic IP“ Button benutzt?

      Gruß
      Michael

      Antworten
      • Christian
        Christian sagte:

        Hallo,
        ich habe es als Homematic Gerät versucht!
        HmIP habe ich auch probiert weil Homematic nicht ging.
        Zur Info evtl. noch…ich habe keine Originale CCU sondern einen auch hier erstandenen Raspi mit pivccu. Denke aber das macht keinen Unterschied.
        Gibt es irgendwo einen kompletten Schaltplan der Steuerung? Damit ich alle Wege auf dem Board noch mal nachvollziehen & durchmessen kann?

        Gruß
        Christian

        Antworten
  14. Thorsten
    Thorsten sagte:

    HB-UNI-SenAct-4-4 von Jérôme Pech konnte ich nicht fehlerfrei auf einer CCU2 installieren. Ich habe deshalb HM-LC-SWX-SM wie folgt modfiziert und verwendet. Dann ich ist auch keine Add-On Installation notwendig. Berücksichtigt ist auch die von Thomas benannte Relaisumkehr:

    //- ———————————————————————————————————————–
    // AskSin++
    // 2016-10-31 papa Creative Commons – http://creativecommons.org/licenses/by-nc-sa/3.0/de/
    //- ———————————————————————————————————————–

    // define this to read the device id, serial and device type from bootloader section
    // #define USE_OTA_BOOTLOADER

    // modified for DIY Gartenbewaesserung: 4-fach see cr012020

    // number of relays by defining the device
    #define HM_LC_SW1_SM 0x00,0x02
    #define HM_LC_SW2_SM 0x00,0x0a
    #define HM_LC_SW4_SM 0x00,0x03

    #define CFG_LOWACTIVE_BYTE 0x00
    #define CFG_LOWACTIVE_ON 0x01
    #define CFG_LOWACTIVE_OFF 0x00

    #define DEVICE_CONFIG CFG_LOWACTIVE_OFF

    //#define HM_SENSOR_RELAY

    #define EI_NOTEXTERNAL
    #include
    #include
    #include

    #include

    // we use a Pro Mini
    // Arduino pin for the LED
    // D4 == PIN 4 on Pro Mini
    #define LED_PIN 4
    // Arduino pin for the config button
    // B0 == PIN 8 on Pro Mini
    #define CONFIG_BUTTON_PIN 8

    #ifdef HM_SENSOR_RELAY
    // relay pins for the HMSensor Relay Board
    #define RELAY1_PIN 17
    #define RELAY2_PIN 16
    #define RELAY3_PIN 15
    #define RELAY4_PIN 14
    #define BUTTON1_PIN 6
    #define BUTTON2_PIN 3
    #define BUTTON3_PIN 19
    #define BUTTON4_PIN 18
    #else
    // relay output pins compatible to the HM_Relay project
    // cr012020
    #define RELAY1_PIN 14
    #define RELAY2_PIN 15
    #define RELAY3_PIN 16
    #define RELAY4_PIN 17
    #endif

    // number of available peers per channel
    #define PEERS_PER_CHANNEL 8

    // all library classes are placed in the namespace ‚as‘
    using namespace as;

    // define all device properties
    const struct DeviceInfo PROGMEM devinfo = {
    {0x12,0x34,0x56}, // Device ID
    „HM_0020001“, // Device Serial
    {HM_LC_SW4_SM}, // Device Model
    0x16, // Firmware Version
    as::DeviceType::Switch, // Device Type
    {0x01,0x00} // Info Bytes
    };

    /**
    * Configure the used hardware
    */
    typedef AvrSPI RadioSPI;
    typedef AskSin<StatusLed,NoBattery,Radio > Hal;

    // setup the device with channel type and number of channels
    typedef MultiChannelDevice<Hal,SwitchChannel,4> SwitchType;

    Hal hal;
    SwitchType sdev(devinfo,0x20);
    #ifdef HM_SENSOR_RELAY
    ConfigButton cfgBtn(sdev);
    InternalButton btn1(sdev,1);
    InternalButton btn2(sdev,2);
    InternalButton btn3(sdev,3);
    InternalButton btn4(sdev,4);
    #else
    // cr012020
    ConfigButton cfgBtn(sdev);
    #endif

    // if A0 and A1 connected
    // we use LOW for ON and HIGH for OFF
    bool checkLowActive () {
    pinMode(14,OUTPUT); // A0
    pinMode(15,INPUT_PULLUP); // A1
    digitalWrite(15,HIGH);
    digitalWrite(14,LOW);
    bool result = digitalRead(15) == LOW;
    digitalWrite(14,HIGH);
    return result;
    }

    void initPeerings (bool first) {
    // create internal peerings – CCU2 needs this
    if( first == true ) {
    HMID devid;
    sdev.getDeviceID(devid);
    for( uint8_t i=1; i<=sdev.channels(); ++i ) {
    Peer ipeer(devid,i);
    sdev.channel(i).peer(ipeer);
    }
    }
    }

    void initModelType () {
    uint8_t model[2];
    sdev.getDeviceModel(model);
    if( model[1] == 0x02 ) {
    sdev.channels(1);
    DPRINTLN(F("HM-LC-SW1-SM"));
    }
    else if( model[1] == 0x0a ) {
    sdev.channels(2);
    DPRINTLN(F("HM-LC-SW2-SM"));
    }
    else {
    DPRINTLN(F("HM-LC-SW4-SM"));
    }
    }

    void setup () {
    DINIT(57600,ASKSIN_PLUS_PLUS_IDENTIFIER);
    bool first = sdev.init(hal);
    #ifdef HM_SENSOR_RELAY
    bool low = false;
    #else
    // cr012020
    bool low = (sdev.getConfigByte(CFG_LOWACTIVE_BYTE) == CFG_LOWACTIVE_OFF);
    #endif
    DPRINT("Invert ");low ? DPRINTLN("active") : DPRINTLN("disabled");
    sdev.channel(1).init(RELAY1_PIN,low);
    sdev.channel(2).init(RELAY2_PIN,low);
    sdev.channel(3).init(RELAY3_PIN,low);
    sdev.channel(4).init(RELAY4_PIN,low);

    buttonISR(cfgBtn,CONFIG_BUTTON_PIN);
    #ifdef HM_SENSOR_RELAY
    buttonISR(btn1,BUTTON1_PIN);
    buttonISR(btn2,BUTTON2_PIN);
    buttonISR(btn3,BUTTON3_PIN);
    buttonISR(btn4,BUTTON4_PIN);
    #endif
    initModelType();
    initPeerings(first);
    sdev.initDone();
    }

    void loop() {
    bool worked = hal.runready();
    bool poll = sdev.pollRadio();
    if( worked == false && poll == false ) {
    hal.activity.savePower<Idle >(hal);
    }
    }

    Antworten
    • Andre
      Andre sagte:

      Hi thorsten,

      wenn ich deine Zeilen oben in Arduino. kopiere kommt immer folgende Fehlermeldung.
      Arduino: 1.8.11 (Mac OS X), Board: „Arduino Pro or Pro Mini, ATmega328P (3.3V, 8 MHz)“

      sketch_feb13e:34:9: error: #include expects „FILENAME“ or
      #include
      ^
      sketch_feb13e:35:9: error: #include expects „FILENAME“ or
      #include
      ^
      sketch_feb13e:36:9: error: #include expects „FILENAME“ or
      #include
      ^
      sketch_feb13e:38:9: error: #include expects „FILENAME“ or
      #include
      ^
      exit status 1
      #include expects „FILENAME“ or

      Ach, ich absoluter Anfänger auf dem Gebiet….

      Kannst du evtl die fertige Datei irgendwo hochladen? Ich bekomme es auch nicht an die CCU angemeldet.

      Danke

      Gruß

      André

      Antworten
  15. Martin
    Martin sagte:

    Hallo,
    ich habe eine Frage zum verwendeten Antennenanschluss.
    Auf den Fotos wird ein RP-SMA Winkel gezeigt, welcher dann auf SMA adaptiert wird.
    Ist dies aus platzgründen (in Bezug auf die 2 pol. V(in) Anschlussklemme neben dem Antennenanschluss) von Nöten oder kann ich mir gleich einen SMA-Winkel kaufen?

    Gruß,
    Martin

    Antworten
  16. Martin
    Martin sagte:

    Hallo
    Habe mir den Bausatz beschafft, nun hätte ich noch eine Frage zum Arduino.
    Durch was unterscheiden sich die die Projekte.
    Welches Projekt ist für die Magnetventilsteuerung das Richtige.
    Projekt-Datei HB-UNI-SenAct-4-4-RC herunterladen.
    Projekt-Datei HB-UNI-SenAct-4-4-SC herunterladen.

    Vorab besten Dank für eine Rückmeldung.

    Antworten
    • Manfred
      Manfred sagte:

      Hallo Martin,

      soweit ich das verstehe, ist das glaube ich egal. Bei einem sind es vier Schalter und bei dem anderen sind es vier Taster. Da sie aber nicht benötigt werden ist es egal.

      Ich habe diesen Sketch genommen. HM-LC-SWX-SM. Das sind vier Schaltaktoren und fertig. Ich habe nicht so gerne Schalter und Taster usw. auf meiner CCU die dann doch nicht benötigt werden. Aber daran denken, das bei dem HM-LC-SWX-SM der Setup-Taster ca. 3 Sekunden gedrückt werden muß, damit er angelernt wird.

      Grüße
      Manfred

      Antworten
  17. Tobias
    Tobias sagte:

    Hallo Michael,

    du schreibst in der Überschrift von 12 bzw. 24 Volt Gardena Ventilen. Ich habe jetzt intensiv danach gesucht und habe nur 9 bzw. 24 Volt Ventile von Gardena gefunden. Was mich aber noch viel mehr verunsichert ist die Tatsache das alle gefundenen Gardena Ventile AC und nicht DC tauglich sind.
    Hast du dich vertan oder habe ich irgend etwas übersehen?

    Danke
    Tobias

    Antworten
    • Sebastian
      Sebastian sagte:

      ..es geht nicht nur um Gardena Ventile – es können auch alle anderen Fabrikate verwendet werden, die 12V oder 24V DC sind. AC Ventile gehen auch, die Lebensdauer der Spule wird aber vermindert, wenn diese mit DC anstatt AC betrieben werden.

      Antworten
  18. Thomas
    Thomas sagte:

    Hallo,

    nachdem ich den Bausatz in betrieb nahm, waren alle vier Relais beim Einschalten eingeschaltet und die vier LEDs leuchteten. In der Homematic waren diese aber auf AUS und bei EIN waren die Relais aus.
    Nach Studium des Sketches habe ich in der Setup-Routine die vier Kanäle von false auf true verändert:

    void setup () {
    DINIT(57600, ASKSIN_PLUS_PLUS_IDENTIFIER);
    bool first = sdev.init(hal);
    sdev.switchChannel(1).init(RELAY_PIN_1, true);<-
    sdev.switchChannel(2).init(RELAY_PIN_2, true);<-
    sdev.switchChannel(3).init(RELAY_PIN_3, true);<-
    sdev.switchChannel(4).init(RELAY_PIN_4, true);<-

    Mit dieser Änderung funktionieren die Relais wie geplant.
    Außerdem muss die Versorgungsspannung (Vcc) für die Ventile am mittleren Pin (COM) und nicht am rechten Pin (NC) werden.
    Mit diesen beiden Änderungen funktioniert dieser tolle Bausatz perfekt.

    Mit besten Grüßen
    Thomas

    Antworten
  19. J
    J sagte:

    Was ist Arduino Pin A8?
    Reicht für dieses Projekt nicht der HM-LC-SWX-SM als einfacher 4fach Schaltaktor? Oder werden die 4 Schließerkontakte benötigt?

    Antworten
    • Michael
      Michael sagte:

      Hallo J,

      entschuldige, PIN A8 gibt es natürlich nicht… Hat sich beim Schreiben ein Fehler eingeschlichen und wurde soeben korrigiert.

      Danke und Gruß Michael

      Antworten
    • Sebastian
      Sebastian sagte:

      Moin,

      ja, würde auch reichen, ich hatte mal überlegt, auch die Rückmeldung der MAVs abzufragen, habe bisher aber noch keinen gut gangbaren Weg dafür gefunden, die Pins hatte ich erstmal mit auf die Platine geplant. Das Layout stelle ich in den nächsten Tage auch wieder zur Verfügung.

      Antworten
      • Manfred
        Manfred sagte:

        Hallo,
        eine Frage zum „HM-LC-SWX-SM“. Wenn ich das so wie es bei github liegt auf den Arduino lade, bekomme ich es nicht angelernt.
        Muß im Sketch noch etwas eingestellt werden?

        Grüße
        Manfred

        Antworten
    • Sebastian
      Sebastian sagte:

      …sorry ganz vergessen! Klar! Die Eingangsspannung kann 12V oder 24V sein. Der Festspannungsregler macht dann 5V für den Arduino daraus. Ihr könnt also 12/24V DC MAVs nutzen

      Antworten
  20. Heiko
    Heiko sagte:

    Hallo !
    Prima Projekt, den Feuchtesensor hab ich bereits gekauft, er wartet auf meine Zeit zum Zusammenbau, irgendwann nach dem Urlaub :-)

    Ich habe schon lange die Gardena Steuerung mit 6 Ventilen am Laufen und plane für deren Anbindung an die homematic eigentlich, die Magnetventile schlicht über ein potentialfreies Relais wie HM-LC-Sw4-DR (den dann zweimal) anzusteuern.
    Was ist der Grund dafür, dass ihr für diesen Zweck eine eigene Platine entwickelt ? Beste Grüße Heiko

    Antworten
    • Sebastian
      Sebastian sagte:

      …nicht jeder hat Hm-wired ;-) Außerdem ist die Variante ja auch günstiger und kann direkt per Funk angebunden werden. Auch ist das ganze ine iner Dose von Hensel verpackt, sodass es IP67 geschützt ist.

      Antworten
      • Heiko
        Heiko sagte:

        ok, danke ! Der von mir geplante Aktor ist nicht wired, den hab ich schon für Garagentor, Velux-Jalousien etc im Einsatz.
        Spritzschutz und Kosten sind natürlich gutes Argument :-)

        Antworten

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar zu J Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert