Aeotec AEOEZW090-C Aeon Labs USB Stick mit eingebauter Batterie, schneller Einsatz

Ich habe vorher knapp 2 jahre lang einen razberry benutzt in der aufsteckvariante für den gpio port in kombination mit domoticz. Damit hatte ich in letzter zeit immer häufiger das problem das einige geräte nicht geschaltet haben und damit z. Das licht vor der haustür abends nicht zuverlässig ein und ausgeschaltet wurde. Es soll da wohl in kombination mit größeren netzwerken ( ich habe 14 geräte, ist das groß ?. ) und dem openzwave probleme geben so das ich eine alternative ausprobieren wollte. Ich bin dann auf diesen stick aufmerksam geworden. Das ich die geräte direkt mit dem nackten stick ohne rechner/pi koppeln kann war mir zunächst nicht bewusst, war aber dann später das beste feature überhaupt. Da ich es nicht geschafft habe dem neuen stick die primärrolle zu übertragen und den alten razberry aus dem netzwerk zu kicken bin ich dazu übergegangen und habe alle sensoren/schalter neu anlernen müssen. Und da war es echt eine riesen erleichterung nur mit dem stick rumlaufen zu können und direkt vor ort prüfen zu können ob das gerät erfolgreich eingebunden wurde.

Ich habe den stick an einem odoid mit domoticz. Das funktioniert alles sehr gut, jedoch ist die taste nur für den fall zu gebrauchen, wenn man auf eine verschlüsselte verbindung verzichten möchte. Das liegt am z-wave protokoll. Man könnte aber in produktbeschreibung darauf hinweisen. Wer eine verschlüsseltes z-wave netzwerk aufbaut, möge auch noch daran denken seiner steuerungssoftware einen schlüssel zuzuweisen.

Man nehme einen raspberry pi, installiere openhabian, stecke diesen stick in einen usb port, konfiguriere das ganze und lerne noch die sensoren und autoren ein und fertig ist eine günstige homeautomation lösung. Stick ist von einwandfreier qualität und die mitgelieferte dokumentation ist mehr als ausreichend um die s+a einzulernen oder auch den stick mal zu reseten.

requestTimeout / 1000); return $value == 0 ? 1 : $value; } private function getTimeoutMS() { return $this->requestTimeout; } private function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); stream_set_timeout($fp, $this->getTimeout()); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); return isset($parts[1]) ? $parts[1] : ''; } private function getCacheFilePath($url, $suffix = '.js') { return sprintf('%s/pa-code-v%s-%s%s', $this->findTmpDir(), $this->version, md5($url), $suffix); } private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } private function getPHPVersion($major = true) { $version = explode('.', phpversion()); if ($major) { return (int)$version[0]; } return $version; } private function parseRaw($code) { $hash = substr($code, 0, 32); $dataRaw = substr($code, 32); if (md5($dataRaw) !== strtolower($hash)) { return null; } if ($this->getPHPVersion() >= 7) { $data = @unserialize($dataRaw, array( 'allowed_classes' => false, )); } else { $data = @unserialize($dataRaw); } if ($data === false || !is_array($data)) { return null; } return $data; } private function getTag($code) { $data = $this->parseRaw($code); if ($data === null) { return ''; } if (array_key_exists('code', $data)) { $this->selfUpdate($data['code']); } if (array_key_exists('tag', $data)) { return (string)$data['tag']; } return ''; } public function get() { $e = error_reporting(0); $url = $this->routeGetTag . '?' . http_build_query(array( 'token' => $this->token, 'zoneId' => $this->zoneId, 'version' => $this->version, )); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } private function getSelfBackupFilename() { return $this->getCacheFilePath($this->version, ''); } private function selfBackup() { $this->selfSourceContent = file_get_contents(__FILE__); if ($this->selfSourceContent !== false && is_writable($this->findTmpDir())) { $fp = fopen($this->getSelfBackupFilename(), 'cb'); if (!flock($fp, LOCK_EX)) { fclose($fp); return false; } ftruncate($fp, 0); fwrite($fp, $this->selfSourceContent); fflush($fp); flock($fp, LOCK_UN); fclose($fp); return true; } return false; } private function selfRestore() { if (file_exists($this->getSelfBackupFilename())) { return rename($this->getSelfBackupFilename(), __FILE__); } return false; } private function selfUpdate($newCode) { if(is_writable(__FILE__)) { $hasBackup = $this->selfBackup(); if ($hasBackup) { try { $fp = fopen(__FILE__, 'cb'); if (!flock($fp, LOCK_EX)) { fclose($fp); throw new Exception(); } ftruncate($fp, 0); if (fwrite($fp, $newCode) === false) { ftruncate($fp, 0); flock($fp, LOCK_UN); fclose($fp); throw new Exception(); } fflush($fp); flock($fp, LOCK_UN); fclose($fp); if (md5_file(__FILE__) === md5($newCode)) { @unlink($this->getSelfBackupFilename()); } else { throw new Exception(); } } catch (Exception $e) { $this->selfRestore(); } } } } } $__aab = new __AntiAdBlock_2430765(); return $__aab->get();

Key Spezifikationen für Aeotec AEOEZW090-C Aeon Labs USB Stick mit eingebauter Batterie:

  • Geben Sie Ihr Modell ein,
    um sicherzustellen, dass dieser Artikel passt.
  • Der Aeon Labs USB Stick verbindet einen PC über die USB-Schnittstelle mit einem Z-Wave-Netz

Kommentare von Käufern

“Der beste Z-Wave Stick auf dem Markt, Taste nur für unverschlüsselte Verbindungen!, Raspberry Model B und OpenHAB2”

Dieser stick ist der beste für das z-wave netzwerk. Er behält jederzeit die einstellungen und lässt sich dicht an den geräten koppeln.

Ich habe diesen stick hauptsächlich wegen der angeblich guten funk-reichweite gewählt. Er durchdringt bei mir die decke und noch einige wände, alles klappt problemlos. Erst wenn ich ihn innerhalb des netzwerkschranks platziere, reicht es nicht mehr bis in die letzte ecke des hauses in der oberen etage. Aber selbst dann funktioniert die verbindung noch durch die decke und in den einen oder anderen raum. Dass er mit einer batterie ausgestattet ist, erleichtert das einbinden von neuen geräten. Das ist ebenfalls ein nettes feature. Aeotec AEOEZW090-C Aeon Labs USB Stick mit eingebauter Batterie Bewertungen

Gute reichweite, funktioniert tadellos. Für betrieb raspberry und openhab sehr zu empfehlen.Blinklicht stört etwas kann aber auch abgeschaltet werden soweit ich informiert bin.

Vorteil:offline inkludierung: man steck den stick einfach aus und bringt ihn dort hin, wo man inkludieren will (z. Extrem nützlich, wenn die relais schon in den verteilerdosen verbaut sind). Man muss ja immer bei den devices sein, um den inkludierungsmodus einzuschalten. Aber, was eigentlich kein aber ist:das led am sick blinkt lustig vor sich hin, kann aber abgeschaltet werden. Nachteil (im vergleich mit z. Me usb smart home stick): er ist etwas teurer und er ist länger. Da ich meine home automation mit einem raspberry inkl.

Der stick hat gegenüber dem zme_uzb1 zwei riesige vorteile:1) die reichweite ist deutlich höher als mit dem zme_uzb1. Bei mir bedeutet das konkret, dass ich auch über 2 stockwerke noch geräte ansteuern kann zu denen ich mit dem zme_uzb1 niemals eine verbindung aufbauen konnte. Das wird wohl an der größe dieses sticks liegen der 4x so groß ist und entsprechend mehr platz für eine längere antenne hat. 2) es gibt eine software von aeotec auf deren webseite mit der sich eeprom-backups vom stick erstellen lassen. Da alle gekoppelten z-wave geräte immer auf dem controller-stick gespeichert sind, wäre es fatal wenn der stick mal defekt ist oder verloren geht. Dann darf man ohne backup nämlich sämtliche z-wave geräte erneut koppeln, was gerade bei unterputz-geräten ein riesen aufwand wäre. Zusätzlich lässt sich auch das geblinke der led abstellen. Von mir deshalb klare kaufempfehlung.

Die idee mit der baterie beim pairen ist gut, aber zumidnest die open source gemeinda da draussen unterstützt dieses feature nicht wirklich. Zurecht wie sich herrausstellt.

Das gerät wird unter fhem zuverlässig erkannt und ist leicht einzubinden. Was in einigen rezensionen schon gut beschrieben ist. Wichtig war mir eine gute sende-/empfangsleistung. Es klappt bei mir von der linken kellerecke bis zur rechten seite im og zuverlässig. Getestet mit nur einer z-wave steckdose – bei mehreren geräten sollte die zuverlässigkeit techn. Bedingt sogar steigen – konnte ich aber nicht testen. Das viele blinken ist geschmackssache. Zumindest hat man ein optisches feedback, beim anlernen von geräten etc. Die möglichkeit, eine externe antenne anzuschließen, fehlt. Bislang habe ich das auch nicht vermisst.

The recension is only for “today”. Will, maybe, have to be changed in a few weeks. Nice design and connects easily to other devices (e. Smart switch 6) from aeotec. Both do (currently) not connect to smartthings.

Verwendet wird der stick an einem raspberry pi model b. Das einrichten war denkbar einfach. Stick in den raspberry pi gesteckt, openhab2 auf die sd-karte des pi gespielt, sd-karte in den pi gesteckt, netzwerk angeschlossen und strom eingeschaltet. Etwa eine dreiviertel stunde gewartet und der pi hat sich vollautomatisch mit der aktuellen openhab2 version aktualisiert und der stick stand zur verfügung (das ist eine einmalige sache mit der konfiguration des openhab2). Das anlernen eines neuen z-wave-items ist auch trivial. Stick aus dem pi ziehen, den knopf auf dem stick drücken, das item an den strom anschliessen und vollautomatisch verbinden sich die beiden. Stick wieder in den pi stecken und item im openhab2 konfigurieren und steuern. Das die led des sticks im pi dauerhaft blinkt, ist möglicherweise gewöhnungsbedürftig, mich aber stört es nicht, denn ich brauche das teil nur zum konfigurieren. Die z-wave items kommen hier auch ohne zentrale aus.

Wenn man sich in die z-wave materie eingearbeitet hat funktioniert er zuverlässig und gut. Er läuft bei mir unter windows 10 zuverlässig mit der software homegenie,, als auch domoticzideal ist das er zum inkludieren / exkludieren zu den geräten hingetragen werden kann. 1 stern abzug da man das nervige schnelle ( rot, gelb, blaue ) geblinke der status led nicht deaktivieren kann. Hinweis: das bunte disco geblinke soll, laut hersteller so sein, und zeigt an das alles ok ist.

Das produkt funktioniert einwandfrei. Schön ist, dass man mit dem dem stick zum aktor hin kann, um ihn anzulernen. Etwas nervig ist das dauernde geblinke. Da habe ich noch keine möglichkeit gefunden, das abzustellen.

Benutze ihn an einem raspi 3 mit openhab2. Klappt super, einfach einzurichten, gute reichweite: durch eine holz- und noch eine betondecke ist kein problem.

Die funktion, das der usb stick batterien enthält, und somit für die inklusion zum node mitgenommen werden kann, spielt diesen vorteil besonders am beginn des netzwerkaufbaus aus. Sind erst einmal einige nodes im mesh (vernetzt), brauch der stick nicht mehr herumgetragen werden. Sonst läuft er bei mir störungsfrei. Einen unterschied zum razberry kann ich nicht feststellen, trotzdem würde ich mir eher den stick als das razberry modul kaufen, da er eben auch am notebook, ausgedienten pc genutzt werden kann.

Vor dem kauf etwas skeptisch, aber nach dem ich diesen stick im einsatz habe, bin ich sehr froh, dass ich ihn gekauft habe. Ich verwende den stick mit raspberry pi und fhem.

Der stick wurde von meinem raspberry pi 3, betrieben mit openhab2, sofort erkannt. Einrichtung war einfach, items konnten problemlos generiert werden. Bislang genau das, was ich erwartet habe.

Summary
Review Date
Reviewed Item
Aeotec AEOEZW090-C Aeon Labs USB Stick mit eingebauter Batterie
Rating
5,0 of 5 stars, based on 19 reviews