Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. AlCalzone

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Profile
    • Following 0
    • Followers 13
    • Topics 93
    • Posts 6909
    • Best 533
    • Groups 4

    AlCalzone

    @AlCalzone

    Developer

    627
    Reputation
    1723
    Profile views
    6909
    Posts
    13
    Followers
    0
    Following
    Joined Last Online
    Location Weiterstadt

    AlCalzone Follow
    Forum Testing Developer Pro Most Active

    Best posts made by AlCalzone

    • Wichtige Hinweise bei neueren npm-Versionen und sudo

      Es kursieren überall alte Anleitungen zur Installation und Update von Adaptern, die mit neueren npm-Versionen zu Problem führen können. Speziell bei Kombination von sudo mit npm-Kommandos tritt dabei folgender Fehler (oder Varianten davon) auf:

      Error: EACCES: permission denied, scandir '/root/.npm/_logs'
      

      Daher bitte bei manuellen Installationen folgende Regeln beachten:

      1. Wann immer es zu vermeiden geht, kein sudo vor npm-Befehle setzen.

      2. Wenn es doch unbedingt nötig ist, unbedingt die Option -H angeben. --unsafe-perm vermeidet außerdem Probleme bei Installationsskripten. Also so

      sudo -H npm [Rest des Befehls] --unsafe-perm
      

      3. Ist man als root angemeldet (z.B. weil es keinen nicht-root-User gibt), empfiehlt sich bei der Adapter-Installation die Option --unsafe-perm anzugeben. Also

      npm install [Adaptername] --unsafe-perm
      

      4. Wurde zu früherem Zeitpunkt Regel 1 oder 2 missachtet, dann kann der ioBroker-Fixer Abhilfe schaffen:

      iobroker fix
      

      5. Für die iobroker-Befehle ist übrigens auch kein sudo nötig.

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone
    • RE: Test Javascript-Adapter 5.0.7 - RULES

      @apollon77 sagte in Test Javascript-Adapter 5.0.5 - RULES:

      Die 5.0.0 zeigt in dem Fall ein grösseres Feature und nicht ein breakage an

      Womit wir mal wieder beim emotional versioning wären und nicht semantic versioning 🙂

      posted in Tester
      AlCalzone
      AlCalzone
    • RE: ioBroker unter Windows installieren (ohne Installer)

      Folgende Schritte sind bei einem Update und Neuinstallation zwingend notwendig:

      • data-Ordner sichern (nur bei Update)
      • Alte Instanz stoppen
      • Frische Installation mit dem Installer von der Webseite (2019-11-23) aufsetzen. Dabei (falls Update) den zuvor gesicherten data-Ordner durch den Installer einlesen mit der entsprechenden Option zur Migration.
      • Nichts weiter tun!
      • ioBroker-Konsole der neuen Installation auf
        • iobroker stop
        • npm i iobroker.js-controller@stable --ignore-scripts
      • Zuvor gesicherten Ordner iobroker-data ins Installationsverzeichnis der neuen Instanz kopieren und alle vorhandenen Dateien überschreiben.
      • Wieder Konsole auf:
        • iobroker start
      • ioBroker Admin ist unter der Adresse der alten Installation erreichbar (auch wenn Ports im Installer geändert wurden).

      Edit: Test-Beschreibung gelöscht, weil von der Installer-Seite hierher verlinkt wird.
      Edit2: Update-Vorgang nach Feedback durch @bahnuhr aktualisiert.
      Edit3: Update-Vorgang mit Migration nach erneutem Test aktualisiert (Ordner kopieren, Port)

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone
    • RE: Root-User im Container/Docker-> ja, nein, warum?!

      @oliverio sagte in Root-User im Container/Docker-> ja, nein, warum?!:

      Die Applikation weiß ja eigentlich nicht das sie sich in einem container befindet
      und die rechte-mechanismen (sudo und so) funktionieren da genau gleich wie überall.

      Ein wichtiger Punkt fehlt IMO noch: root/sudo und non-root auch im Container nicht mischen. Wenn ioBroker als normaler User läuft und man dann manuelle Updates per root oder sudo npm install 😱 drüber bügelt, gibt's Rechteprobleme.

      posted in Off Topic
      AlCalzone
      AlCalzone
    • [Neuer Adapter] Z-Wave 2 (Alpha-Test)

      Hallo zusammen!

      Ich habe nach langer Zeit mal wieder etwas neues zu ioBroker beizutragen. Da ich mich vor ca. 2 Jahren über das lahme Entwicklungstempo bei OpenZWave geärgert habe, habe ich begonnen, meinen eigenen Treiber zu schreiben. Zwar geht es dort inzwischen weiter, aber ganz zufrieden mit der Einbindung bin ich immer noch nicht.

      Dieser neue Treiber ist nun in den neuen Adapter ioBroker.zwave2 eingeflossen, den ich gestern in einer frühen Alpha-Version (v0.1.2) veröffentlicht habe. Installiert werden kann er jetzt schon über npm oder von GitHub, ab morgen dann auch aus dem latest-Repo.
      Der Adapter benötigt keine nativen Module außer serialport, welches schon in einigen anderen Adaptern enthalten ist. Das bedeutet, dass die bekannten Z-Wave-Probleme bei der Installation Geschichte sind.

      Ich freue mich über jeden Tester, der Lust hat, hier etwas beizutragen. Bitte erwartet nicht zu viel, ein paar Dinge gehen schon, vieles aber noch nicht bzw. nicht richtig. Mich interessiert vor allem, ob es in bestimmten Fällen Abstürze oder unerwartetes Verhalten gibt.

      Was geht schon?

      • Auswerten (und zum Teil steuern) der folgenden Kommandoklassen (der Fortschritt wird hier getrackt):

        • Basic
        • Battery
        • Binary Sensor
        • Binary Switch
        • Central Scene (ja, direkt zu Beginn!)
        • Manufacturer Specific
        • Multilevel Sensor
        • Multilevel Switch
        • Notification (teilweise)
        • Thermostat Mode
        • Thermostat Operating State (teilweise)
        • Version
        • Wake Up
        • Z-Wave+
      • Netzwerkübersicht im Konfigurations-Dialog:
        3d26fe06-7a34-4370-b6ae-5f4276b87cdc-grafik.png

      Nicht wundern, wenn ich nicht sofort antworte - ab Samstag ist Urlaub angesagt!

      posted in Entwicklung
      AlCalzone
      AlCalzone
    • RE: Blockly Resourcenschonend ?

      @StefanW
      Erstens: Das was du da hast ist lächerlich, was die Ressourcen angeht. Also nicht zu sehr den Kopf zerbrechen.
      Je nach Logik könnte es aber Sinn machen, einen toten Bereich einzustellen. Z.B. > 27 und <25 als Bedingungen.

      Zum Wertevergleich solltest du aber Zahlen verwenden, nicht die Zeichenkette "27":
      8563ee8b-b448-4645-9f15-98dd49aba14e-grafik.png

      Also einfach gesagt DP erstellen wenn es in mehreren Scripten benötigt wird, Variable befüllen wenn es nur in diesem benötigt wird?

      Exakt.

      Und:
      Der blaue Block "Wert von Objekt ID..." fragt den Wert erneut aus der Datenbank ab. Das kann bei schnellen Änderungen dazu führen, dass der Wert, der den Trigger (rot) auslöst, ein anderer ist als der, den du in deiner Bedigung abfragst.
      Ist in deinem Fall nicht (bzw. nur komplizierter) zu vermeiden, da du auf zwei Datenpunkte triggerst. Für einfache gibts diesen Block, der exakt den Wert enthält, mit dem getriggert wurde:
      8d22b3d9-9a2e-4c03-96fd-1361dca5cf08-grafik.png --> musst du nur auf Wert umstellen: 2657f51f-78e1-426d-9e12-e1f86d75ded9-grafik.png

      posted in Skripten / Logik
      AlCalzone
      AlCalzone
    • RE: js-controller 3.0/3.1 jetzt im Latest!

      Irgendwie scheint jeder Thread, in dem ich @Thomas-Braun lese in eine Grundsatzdiskussion über Linux, Root und/oder Systemkonfiguration auszuarten. Bitte bleibt beim Thema.

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone
    • Test: Objektvorlagen und Hilfsfunktionen für Objektbäume

      Hallo Devs!

      Heute möchten @AggroRalf und ich unser neuestes Projekt vorstellen. Die Idee basiert auf den Objekt-Vorlagen aus https://github.com/iobroker-community-adapters/iobroker-adapter-helpers/, erweitert diese aber um ein paar Features:

      • Typdefinitionen, die das "Gehirn" hinter der Syntax-Hilfe und Auto-Vervollständigung sind, und so die Nutzung vereinfachen.
      • Funktionen zum Erstellen von Objekten aus Vorlagen (z.B. für json, Batterie, Licht, ...) oder mit selbst-definierten Rollen
      • Helfer-Funktionen zum Verwalten und Synchronisieren des Objektbaums mit einem "Soll"-Zustand, inklusive Optionen zum Überschreiben von existierenden und Löschen von nicht mehr benötigten Objekten/States.
      • Grundlegende Validierung von Objektdefinitionen

      Ziel dieses Projekts ist es, die Adapter-Entwicklung für Adapter zu beschleunigen, die externe APIs einbinden, und deren Strukturen in ioBroker abbilden wollen. Außerdem soll durch die vordefinierten Strukturen vermieden werden, dass jeder seine eigenen Definitionen bauen muss und möglicherweise Vorgaben nicht beachtet.

      Der Workflow in Adaptern funktioniert dann wie folgt:

      1. Daten aus API lesen
      2. Liste an benötigten Objekten und Werten erzeugen
      3. Diese an die Funktion syncObjects übergeben, fertig!

      Das Projekt und eine Anleitung findet ihr unter https://github.com/gaudes/iobroker-object-helper.
      Wir freuen uns auf eure Tests und vor allem Feedback!

      ACHTUNG: Bitte noch nicht produktiv nutzen. Im ersten Schritt wollen wir Feedback sammeln, um es später im bestmöglichen Zustand in @iobroker/adapter-core zu integrieren. Bis dahin behalten wir uns vor, die API-Schnittstelle zu ändern.

      posted in Entwicklung
      AlCalzone
      AlCalzone
    • RE: Kostenpflichtige iobroker Adapter

      Ich kann beide Seiten irgendwie nachvollziehen, daher ganz wertungsfrei mal eine Schilderung meiner Situation:

      Wie einige sicher wissen, entwickle ich die node-zwave-js Bibliothek und darauf aufbauend den Z-Wave 2 Adapter. Die wenigsten können sich vorstellen, wie viel Arbeit das ist. Alleine die Bibliothek hat (laut TypeScript - nicht sicher wie gut die Schätzung ist) inzwischen über 100k Code-Zeilen.

      Die Entwicklung erfolgt - neben meinem Vollzeit-Job und Familie - komplett in der Freizeit. Die meiste Zeit geht hier in die Bibliothek - Issues lesen, Tech support für End-User, Beratung für Devs, die es nutzen, Probleme suchen und beheben, und nebenher die Roadmap voran treiben. Wenn dann noch ein bisschen Zeit übrig bleibt, komme ich ab und an auch mal dazu, den Adapter selbst zu updaten.
      Ich werde über Github gesponsort - durch die relativ große Anzahl an Usern auch außerhalb ioBroker kommt da mittlerweile ein bisschen was zusammen, aber noch weit entfernt von einer Summe von der man leben kann. Der umgerechnete Stundenlohn dürfte sich langsam dem Mindestlohn nähern. Wenn man nur die Spenden der End-User zählt, wäre Hartz 4 lukrativer. Dazu kommt noch, dass viele Geräte sich unterschiedlich verhalten und man für diverse Features einfach welche zum testen braucht. Die sind auch nicht billig.

      Nicht falsch verstehen - ich mach das gerne und habe keine Pläne, da was kostenpflichtig zu machen. Gerade der aktiven OpenSource Dev-Community würde ich nämlich was ganz anderes unterstellen: Wenn man (sicher) von dieser Arbeit leben kann, bleibt erstens mehr Zeit für genau diese bezahlte OpenSource-Arbeit und zweitens mehr Zeit für zusätzliche, unbezahlte Arbeit.

      In meinem Fall hieße das: nicht nur alle 3-4 Wochen mal die Library im Adapter updaten und hin und wieder ne Kleinigkeit ändern 🙂

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone
    • RE: Warum nutzt IOBroker ACLs?

      @apollon77 sagte in Warum nutzt IOBroker ACLs?:

      Wenn man jetzt aber npm Befehle als zb pi User ausführt entsteht ein bunter User owner mix.

      Noch schlimmer: mit sudo oder als root 😉

      Die ACLs waren der einzige (uns bekannte) Weg sicher zu stellen, dass egal was unbedarfte User da auf der Kommandozeile anstellen oder wie alt die Videotutorials 🙄 sind, denen sie folgen, dass ioBroker trotzdem normal funktionieren kann.

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone

    Latest posts made by AlCalzone

    • RE: Test Adapter Z-Wave 2 v3.0.x

      @flopsi Schau mal in deine Anleitung, welche die richtigen Gruppen (die ohne Basic Set) sind. Ganz ohne bekommst du doch bestimmt keine Bewegungsmeldung?
      In der Konfigurationsdatei für den FGMS wird nicht zwischen den Firmwares unterschieden, d.h. die Beschriftung kann falsch sein. Die Reihenfolge stimmt aber, d.h. Gruppe 2 ist die zweite in der Liste.

      posted in Tester
      AlCalzone
      AlCalzone
    • RE: Javascript Warnung

      @rewenode sagte in Javascript Warnung:

      wenn ich groups[i] in eine Variable packe, wird nicht gemeckert.

      Ja, weil du dann nicht mehr die loop-Variable zu einem Zeitpunkt referenzierst, der ggf. zu spät ist.
      Wie gesagt, bei let sch***egal 🙂

      posted in JavaScript
      AlCalzone
      AlCalzone
    • RE: Javascript Warnung

      @rewenode Joar, die Warnung kannst du getrost ignorieren. Schätze die wurde noch nicht auf let aktualisiert.

      Das eigentliche Problem tritt bei Schleifen mit var auf (hier hat i einen anderen Scope), und Callback-Funktionen die nicht sofort ausgeführt werden (der von .some wird es aber!):

      for (let i = 1; i <= 5; i++) {
        setTimeout(() => console.log(i), 100);
      }
      
      // gibt aus:
      // 1
      // 2
      // 3
      // 4
      // 5
      
      for (var i = 1; i <= 5; i++) {
        setTimeout(() => console.log(i), 100);
      }
      
      // gibt aus:
      // 6
      // 6
      // 6
      // 6
      // 6
      

      Und genau auf letzteres ist diese Warnung abgezielt, weil das ist nämlich wirklich verwirrend. Ich dachte auch erst, da wird 5 ausgegeben...

      posted in JavaScript
      AlCalzone
      AlCalzone
    • RE: Javascript Warnung

      @rewenode Der springende Punkt ist, dass du das in einer Schleife tust, die aber dummerweise durch die Meldung in deinem Screenshot verdeckt ist.

      posted in JavaScript
      AlCalzone
      AlCalzone
    • RE: Alternative zu HS100-Adapter?

      @arteck Naja, forken, selbst fixen und unter eigenem Namen veröffentlichen wäre eine Option 😉

      posted in ioBroker Allgemein
      AlCalzone
      AlCalzone
    • RE: Test Adapter Z-Wave 2 v3.0.x

      @arteck Ich sehe da nichts von einer Konvertierung, d.h. das Backup kann nur auf einen Stick mit gleichem SDK zurück gespielt werden. UZB1 auf Aeotec Gen5 mit der Original-Firmware könnte gehen. Auf die 700er-Serie kommt man so leider nicht.

      Der Kniff bei der von mir genannten Migration ist, dass die Daten im NVM-Backup in das Format des Ziel-Sticks übersetzt werden. Das geht derzeit aber nur für SDKs ab 6.61, für die ich das Format gefunden bzw. reverse-engineered habe.

      posted in Tester
      AlCalzone
      AlCalzone
    • RE: Installation echt nicht möglich...

      @hammer-klaus sagte in Installation echt nicht möglich...:

      Raspi: Raspi3 zum Ausprobieren

      Naja... mein Produktivsystem läuft auch seit Jahren mit Raspi 3 stabil. Man darf ihn halt nicht zu voll packen.

      posted in Installation
      AlCalzone
      AlCalzone
    • RE: Test Adapter Z-Wave 2 v3.0.x

      @gelberlemmy Irgendwann bestimmt. Ich hab noch einige Features auf der TODO-Liste, die die Library zwar schon kann, aber der Adapter noch nicht. Der von mir beschriebene Wechsel per Backup ist aber auch vom Stick abhängig und ich vermute fast, dass deiner nicht unterstützt ist 😞

      Wenn du jetzt was neues kaufst, dann definitiv die 700er-Serie. Die 800er-Serie steht zwar in den Startlöchern, aber da kann es mit dem Support noch ein klein bisschen dauern.

      Empfehlen würde ich derzeit diesen: https://www.thesmartesthouse.com/products/zooz-usb-700-series-z-wave-plus-s2-stick-zst10-700?variant=39493456429119
      Oder diese Platine, aber die ist ein gutes Stück teurer: https://smaart.haus/products/z-wave-me-razberry-7-pro-mit-externer-antenne
      Aeotec Z-Stick 7 kann ich derzeit guten Gewissens NICHT empfehlen, da gibt es Empfangsprobleme.

      posted in Tester
      AlCalzone
      AlCalzone
    • RE: Xiaomi mosquito

      @mooo Könntest du die Information unter https://github.com/AlCalzone/ioBroker.ble als Issue erfassen?
      Ich werde in nächster Zeit nicht dazu kommen, das einzubauen und hier geht es mit Sicherheit vergessen.

      posted in Off Topic
      AlCalzone
      AlCalzone
    • RE: JSON mit Farbe

      @jm3west Und was sollen wir mit diesen zwei Zeilen anfangen?

      posted in Off Topic
      AlCalzone
      AlCalzone
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo