YESLY Smart Home

„The next big thing“ Z-Uno – Der Arduino mit Z-Wave Support

danielboe
Geschrieben von danielboe
siio-App

Bastler aufgepasst! Es kommt etwas ganz ganz Großes, der Z-Uno. Ab Juli wird sich die DIY Szene rund um Z-Wave monumental ändern, denn ihr könnt Devices selbst programmieren. 

Was ist dieses Z-Uno

Der Z-Uno ist ein in C(++) programmierbarer Mikrocontroller. Er kann daher auf logischer Ebene erst einmal das Gleiche wie jeder Arduino. Aber fangen wir einmal von Beginn an.

Das Besondere bei Arduino ist, dass auf einem (meist Atmel 328) Mikrocontroller eine Firmware aufgespielt wird/ist. Dies ermöglicht den einfachen Upload von Usercode über Serial (USB) und deren Ausführung. Es wird also kein teurer und früher auch komplizierter Programmer benötigt, sondern der Arduino wird wie ein USB Gerät an den PC angesteckt und es kann los gehen.

Beim Z-Uno kommt eine Besonderheit hinzu, denn abgesehen von der etwas anderen Hardware (Intel Architektur) besitzt der Chip auf dem Z-Uno einen Z-Wave Netzwerk Stack. Dieser ist eine separate „Schicht“ und um die Hardware über den Usercode anzusprechen gibt es eine Menge Klassen bzw. Makros

Zusammengefasst heißt das: Ich kann mir meine eigenen Z-Wave Devices erstellen und definieren, ganz ohne Z-Wave Allianz Mitgliedschaft und ohne Fachwissen über das Z-Wave Netzwerk. Der Fantasie sind (fast) keine Grenzen gesetzt, denn der Z-Uno kann bis zu 10 Z-Wave Klassen aufspannen. (Beispiel: 5 Dimmer, 3 Schalter, 2 Sensoren)

Die Von mir genutzte Boardversion ist eine veraltete. Diese wird nicht mehr verkauft, die Funktion bleibt aber gleich. Die neue Version seht ihr bei den Layouts.  Der Preis wird in etwa 50-60€ betragen, das wissen wir nächsten Monat, denn im Juli ist Verkaufsstart.

Das Board Design und die Spezifikation

Hardware:

  • 28 kB Flash memory for your sketches
  • 2 kB RAM available
  • Z-Wave RF transmitter at 9.6/40/100 kbps
  • 26 GPIO (overlaps with special hardware controllers)
  • 4 ADC
  • 5 PWM
  • 2 UART
  • 1 USB (serial port)
  • 64 kB EEPROM
  • 1 SPI (master or slave)
  • 4 IR controllers, 1 IR learn capability
  • 1 TRIAC/ZEROX to control dimmer
  • 1 Interrupt
  • 2 Timers 16 MHz or external source
  • I2C (software)
  • 1-wire (software)
  • 8×6 Keypad Scanner
  • 2 service LED, 1 service button
  • 1 user test LED
Aktuelles Z-Uno Board Design

Aktuelles Z-Uno Board Design

Kurze Installation und Einführung

Treiber installieren

Unter Windows wird ein neuer Treiber benötigt. Unter OSX läuft es auch ohne Treiber.

  1. Den Z-Uno Treiber Herunterladen und entpacken Z-Uno Treiber
  2. Das Board via USB anstecken
  3. Systemsteuerung -> Gerätemanager öffnen
  4. Das umbekannte Device auswählen
  5. Rechtsklick und „Update Treiber Software klicken
  6. „Den Computer durchsuchen“ auswählen und den Treiberordner selektieren.
  7. In der Arduino IDE dann den passenden COM-Port für das Board auswählen

Arduino IDE Setup

Die Installation gestaltet sich, wie bei Arduino üblich, recht einfach und intuitiv. Wir laden uns als erstes die Arduino IDE (wichtig ist Version 1.6.5) herunter und installieren diese. In den Voreinstellungen tragen wir dann die ZUNO URL bei „Weitere Board Manager“ ein. Die URL lautet:

Z-Uno Board Manager URL Eintragen

Z-Uno Board Manager URL Eintragen

Nun gehen wir zu Tools -> Board -> Board Manager und Scrollen ganz nach unten. Wir installieren das Paket „Z-Uno by Z-WAVE>ME“ und können dann bei „Boards“ das Z-Uno auswählen.

Z-Uno Board auswählen

Z-Uno Board auswählen

Firmware Update des Boards

Als letztes sollten wir noch die Firmware des Z-Unos auf den neusten Stand bringen. Im Menü Tools -> Programmer wählen wir auch wieder den Z-Uno aus und klicken anschließend auf „Bootloader Brennen“. Das dauert einen Moment und ihr solltet in dieser Zeit das Device auf keinen Fall vom USB trennen.

Der erste Sketch

Eine Art „Hallo Welt“ soll es an dieser Stelle natürlich auch geben. Auf dem Board befindet sich, wie beim Arduino, eine Debug LED an Pin 13. Diese verwenden wir im Beispiel-Sketch und können sie dann via Z-Wave ein und aus schalten. Wichtig ist, dass ihr das richtige Board ausgewählt habt und die Schritte oben bereits abgeschlossen sind.

Nachdem wir auf Compilieren und Hochladen gedrückt haben, läuft der Sketch auf dem Device. Passieren wird jetzt noch nichts, denn wie bei einem normalen Z-Wave Controller muss dieser erst einmal inkludiert werden. Wir drücken den Button wie wir es bereits kennen 3x schnell und der Controller befindet sich im Inklusionsmodus. Ich habe es mit dem Razberry getestet, aber vermutlich funktionieren zumindest mit diesem einfachen Beispiel fast alle Z-Wave fähigen Zentralen. Vielleicht kann jemand mal die HC2 testen? Ich habe meine leider gerade nicht.

BinarySwitch Z-Way

BinarySwitch Z-Way

Fazit

Das war nur eine kleine Einführung. Ich werde in ein paar Beispielen detailliert auf die Funktionsweise und Möglichkeiten eingehen. Bis jetzt bin ich vom Z-Uno natürlich begeistert, denn die Varianten und Optionen sind grenzenlos und vor allem recht einfach umzusetzen. Wer noch keine Lust auf Arduino und co. hatte, bekommt diese vielleicht gerade jetzt. Mit eigenen Sensoren kann für wenig Geld fast für jede Anwendung das passende Paket in Form einer funktionsfähigen Z-Wave Komponente geschnürt werden. Der Nutzer braucht sich keine Gedanken um Datenaustausch, Netzwerk und Kompatibilität machen. Einfach cool!

Diesen Blogpost hat geschrieben ...

danielboe

danielboe

Hi, ich bin Daniel, Geschäftsführer bei der "Smarthome Agentur UG" und mein Leben dreht sich rund um Technik seit ich denken kann. Mein Interesse gilt neuen Trends, welche den Alltag erleichtern. Dinge zu verstehen und sie noch besser zu machen ist mein Motto.
Wenn ich gerade nicht der Informatik Nerd bin, höre ich Musik, fahre Fahrrad oder treffe mich mit Freunden.

15 Kommentare

    • Hey,
      Spezifiziert sind die Pins auf 3,3V. Kann gut sein, dass sie 5V abhalten, das ist beim 3,3V Arduino das gleiche Spiel. Arbeiten sollte man mit 3,3V. Punkt. aus. :P

      Grüße Daniel

    • Ich muss mal schauen, wie ich Zeit habe. Meine HC2 steht in Dresden und ich bin in Regensburg :( Wenn alles gut geht, schreibe ich hier auch noch mal. Und bei deinem Wasserstand helfe ich dir auch gern. Bin für jede Idee Dankbar, vielleicht können wir dann eine Art Kompendium mit Quellcodes hier basteln :)

      Grüße

  • Hallo Hoogle, für Deine Zisterne hätte ich schon was auf Basis eines UNO oder Nano Arduino. Pegelstandsmessung, usw. würde das dann auf Z-Wave portieren. Bin auf jeden Fall dabei. Wo kriege ich es beschafft? Würde ein paar kaufen. ;-)

    • Hey,
      das Z-Uno wird es mitte Juli wohl über http://store.zwaveeurope.com/ geben. Freut euch aber nicht zu früh, denn bis jetzt ist in der stable version des Frameworks kein objektorientiertes programmieren möglich. Viele Funktionen der standard Arduino lib sind auch nicht implementiert.
      Was auf jeden Fall gehen (müsste), ist ein weiterer „normaler“ arduino als Bridge, welcher die werte dann aufbereitet an das z-uno schickt. Das probiere ich, wenn ich dann daheim bin.

      Grüße

    • wird dort zwar gelistet — aber

      Die mit *** markierten Artikel sind leider nicht in der von Ihnen gewünschten Menge auf Lager.
      Die bestellte Menge wird kurzfristig von uns geliefert. Wenn Sie es wünschen, nehmen wir auch eine Teillieferung vor.

    • Es ist einfach möglich eine 3,3V Lithium-Ion anzustecken. Das ist ohnehin besser als die teure Knopfzelle. Der Eingang ist glaube ich auf 3-15V Spezifiziert, du hast also freie Wahl bei der Stromversorgung.

  • Hallo,

    Z-Uno ist jetzt verfügbar.
    Die letzte Version, die ich getestet hatte funktionierte auch mit der letzten Beta vom HC2 ;)

    @Hoggle: Wasserstandsmessung mit Ultraschallsensor funktioniert prinzipiell – allerdiings braucht man einen Level-Shifter, da diese Sensoren mit 5V arbeiten und der Z-UNO definitiv nur mit 3,3V Level bedient werden darf.

    Anderes „Problem“ könnte die dazugehörige Z-Wave Klasse sein, ob die schon integriert ist.
    Das sollte man sich vorher ansehen.Verständlicherweise sind noch nicht *alle* Klassen hinterlegt.

    Übrigens der Z-Uno basiert auf dem 8051 (Z-Wave Chip) und die Arduino Oberfläche wurde in C (nicht C++) implementiert.
    Es gibt aber Anpassungen, die eine weitgehende C++ Kompatibilität gewährleisten sollen.
    Dazu muss man dann eine andere Firmware laden (anderer Link in Board Manager URL – ist/war noch in Beta).

    Von der Stromversorgung her ist der Z-UNO sehr interessant, ist definitiv für den Batteriebetrieb geeignet.

Gib deinen Senf dazu!