Navigation

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

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Profile
    • Following 2
    • Followers 2
    • Topics 40
    • Posts 1621
    • Best 45
    • Groups 3

    smartboart

    @smartboart

    Meister Elektrotechnik Software - Elektrotechnik in der Druckindustrie

    48
    Reputation
    530
    Profile views
    1621
    Posts
    2
    Followers
    2
    Following
    Joined Last Online

    smartboart Follow
    Pro Starter Most Active

    Best posts made by smartboart

    • RE: [Vorlage] Variable Zeitsteuerung mit VIS Editor

      @GiuseppeS
      Klappt mit den Bedingungen prima...hab mal 6 stück also 3 zusätzlich angelegt.
      Wenn du möchtest kann ich dir das Skript mit 3 zusätzlichen Bedingungen und Umschaltung des Editor auf view zukommen lassen...Hat nicht lange gedauert, für dich sicher ein klacks, aber müsstest es nicht nochmal machen falls du es umsetzen möchtest...
      Allerdings müsste so wie es ist, die json gelöscht werden und alle programmierungen neu erfolgen...

      Mein Test mal als Bild...

      Unbenannt1.JPG Unbenannt.JPG

      posted in Visualisierung
      smartboart
      smartboart
    • [Vorlage] Tasmota One Click Firmware Update Vis Javascript.

      Hallo liebe Forengemeinde.
      Skript um per Knopfdruck meine Tasmota Aktoren / Sensoren abzudaten und ein Konfig Backup zu erstellen.
      Dazu werden die Firmware auf das filesystem geladen und dann über einen simple http Server zur Verfügung gestellt, um sie der otaurl von Tasmota anzubieten.
      Warum der Umweg?
      Nun mein Smarthome bzw. sämtliche Geräte sind aus Sicherheitsgründen für das Internet gesperrt. weshalb ein firmwareupgrade über umwege erfolgen muss.

      changelog:

      31.10.2020

      Tasmota One Click Firmware Update Vis.extra auch für Geräte die für das internet gesperrt sind.
      automatischer Download der firmware / minimal , sensors, tasmota und speichern auf dem file system.
      Starten eines lokalen http: Servers (python) per ssh und einleiten des OTA download der Tasmota Firmware.
      für selektierbare Geräte über Vis.

      Nötige Addons im javascript adapter: node-ssh und fs

      inspiriert durch das script um auf neue Tasmota Version zu prüfen von forummitglied Machinima..
      https://forum.iobroker.net/topic/22389/skript-um-auf-neue-tasmota-version-zu-prüfen/11

      31.10.2020 Beta release
      V0.0.1 Automatisches Tasmota Firmwaredownload bei Update Benachrichtigung:
      onclickupdate mit http Server Start (python) über ssh inkl Vorwahl des abzudatenden Teilnehmers.

      31.10.2020
      V0.0.2 Konfigurationsteil überarbeitet http source.

      03.11.2020
      V0.0.3 Kommentare ergänzt um mölichen Missverständnissen entgegen zu wirken.
      Beim Scriptstart immer die bins runterladen, auch wenn kein Update verfügbar um sicher zu stellen, dass immer was im Download Ordner liegt.

      06.11.2020
      V0.0.4 Implementierung der Funktion Update All
      Im Bereich der Device Zuordnung mussten anpassungen vorgenommen werden umd diese beim Updat All der Reihe nach abarbeiten zu können.
      Dazu wurde auch der Userconfig Bereich angepasst.
      Anzahl Geräte wird Automatisch ermittelt und gesetzt. Device 1 - n / AnzahlSensors ist für Sensor reserviert.
      AnzahlSensors muss im Konfigbereich eingetragen werden. Standart Tasmota Firmware Geräte sind dann automatisch gesetzt von Anzahl Sensors bis automatisch ermittelte Geräte. Damit nicht während des Update Prozess durch Eingabe in Vis beim derDevice Auswahl die Schrittkette durcheinander gebract wird, sollte das Widget für die DeviceAuswahl nur Sichtbar sein wenn der neue State javascript.0.Status.Tasmota.Tasmota_Firmware.UpdateAll false ist.
      Um alle Geräte upzudaten muss nun einfach der State UpdateAll auf true gesetzt werden und dann mit dem State UpdateStart das Update eingeleitet
      werden. Das einzeln Update der Geräte bleibt natürlich erhalten und ist aktiv wenn UpdateAll false ist.
      Nach Update All wird automatisch die Funktion funcVersion gestartet um alle Geräte nach der installierten Version zu befragen. Im Log kann nun
      alles nachvollzogen werden.

      17.12.2020
      V0.0.4 kleine Fehlerkorrekturen

      24.02.2021
      V0.0.5 State UpdateAll kann entfallen Auswahl Update all erfolgt nun über den State Auswahl
      Bei Update All Nach Ende Update sicher beenden if (count >= AnzahlDevice)

      01.03.2021
      V0.0.6 Tasmota Statebezeichner haben sich geändert, dies habe ich nun berücksichtigt.
      Anzahl Device wieder manuell in der Konfig angeben. Autozählung Hat unter bestimmten umständen zu Fehlern geführt.

      16.07.2021
      V0.0.7 Optimierungen von cruzix (iobroker-forum) integriert.
      Danke @ cruzix
      Komplett Test noch offen. Testversion.

      01.11.2021
      V0.0.8 Anregungen von cruzix in das script eingearbeitet und getestet. Hier und da noch diverse Bugfixe.
      18.02.2022
      V0.0.9 Link in Telegramnachrichten hinzugefügt / Changelog - Releaseinfo

      24.02.2022
      V0.1.0 manuelles Konfig Backup für einzelne eingebaut.
      automatisches Konfig Backup bei Firmwareupdate implementiert
      Schreibrechte der Download files / Ordner inklusive Unterordner automatisch rekursiv setzen
      bei server start sudo chmod -R 777 /home/pi/Tasmota
      14.04.2022
      V0.1.1 Statusabfrage Versionsabfrage per vis Button anfordern

      24.10.2022
      V0.1.2 Remote entfernt. Abhängigkeit Linux Remote Adapter hinzugefügt

      25.05.2023
      V0.1.3 Anzahl Geräte mit veralteter Firmware hinzugefügt // mike-hellracer

      To do....Wenn es die Zeit zulässt..
      zusätzlich den Changelog in den Versionsinfostate schreiben.
      */

      Script

      Tasmota_one_click_update-.js

      Screenshot_20201031_202139_com.huawei.himovie.overseas.jpg Screenshot_20201031_202131_com.huawei.himovie.overseas.jpg
      Screenshot_20201031_203012_de.ozerov.fully.jpg

      Widgets:
      widgets.txt

      icon:
      Download.zip

      posted in JavaScript
      smartboart
      smartboart
    • RE: [Vorlage] Variable Zeitsteuerung mit VIS Editor

      @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

      Hi, kannst du gern als zip hochladen. Würde mir das Thema View Umschaltung mal anschauen. Evtl haben auch andere User Interesse an der Erhöhung der Bedingungen.

      Ok hier die kleine Ergänzung um weitere 3 Bedingungen inkl. Umschaltung View mittels State...
      welcher bei mir so aussieht...Jede Nummer steht für eine view...
      in meinem Fall steht die 42 für die Zeitsteuerung und die 43 für das zugehörige Setup view..
      Aufbau in vis...
      eine main view mit material design Top App Bar with Navigation Drawer und view in widget widget...

      createState('Vis.ViewWechsel', 0 , fc , { def: '0', type: 'number', name:'Viewechsel', min: 0, max: 50, role: 'value', 
      states: { 
      0: 'Alarmanlage', 
      1: 'Backup', 
      2: 'Tablets', 
      3: 'EGRollo', 
      4: 'Erdgeschoss', 
      5: 'Heizung', 
      6: 'Anrufmonitor', 
      7: 'Garten', 
      8: 'Keller', 
      9: 'Obergeschoss',
      10:'Zeitsteuerung',
      11:'Info',
      12:'OGRollo',
      13:'Reserve',
      14:'Power2',
      15:'Power3',
      16:'HeizungBad',
      17:'PowerPV',
      18:'PVChart',
      19:'Slave',
      20:'KlimaEG',
      21:'KlimaOG',
      22:'Reserve',
      23:'Systemadapter',
      24:'Systemsteuerung',
      25:'Wetter',
      26:'Auslastung',
      27:'Wetterstation',
      28:'Weichwasseranlage',
      29:'Wasserverbrauch',
      30:'Reserve',
      31:'KameraEingang',
      32:'Reserve',
      33:'Reserve',
      34:'Bad',
      35:'MotionGarten',
      36:'MotionInnen',
      37:'Batterieladekurve',
      38:'Batterietabelle',
      39:'Verbrauchstabelle',
      40:'KlimaTabelle',
      41:'WasserTabelle',
      42:'Zeitsteuerung',
      43:'ZeitsteuerungSetup',
      44:'E3DC-Überblick',
      45:'E3DC-Prognose',
      46:'E3DC-Control',
      47:'Reserve',
      48:'Reserve',
      49:'',
      50:'',
      }});
      

      Verknüpfung im view in widget widget innerhalb der mainview würde so aussehen..
      Unbenannt.JPG

      Top App Bar Navigation drawer so...

      Unbenannt.JPG

      Achtung, json table müssen gelöscht werden sonst gibts Fehlermeldungen...
      Nachteil , sämtliche timer müssen dann neu eingestellt werden.

      +3 Bedingungen_Umschaltung View mittels state.zip

      posted in Visualisierung
      smartboart
      smartboart
    • RE: E3DC Hauskraftwerk steuern

      @arnod
      Hi Arno ich habe das Script Autonomiezeitberchnung aktualisiert und an die neuen Bedingungen / RSCP Adapter und deinem aktuellen Sript angepasst. Falls du oder andere es noch benutzten kann es hier kopiert werden.

      /*
      E3DC dynamische Autonomiezeitberechnung bis zur eingestellten Reserve
      von Smartboard 
      28.09.2020
      V0.0.1  -Dynamische Berechnung der Batterie  Autonomiezeit bei Entladung anhand der Modbusinformationen 
              BatSoc und Batterie_Leistung unter Berücksichtigung der Notstromreserve.   
              Für anzeige in Vis..
              Autonomiezeit in Vis auf Sichtbarkeit bei != 0 einstellen damit Diese nur bei Entnahme angezeigt wird.
              BatSoc in kwh   
      29.09.2020
      V0.0.2 -Berechnung auf Durchschnittswert der Autonomiezeit erweitert,  dadurch wird die Zeitanzeige ruhiger und gibt einen gemittelten 
             Wert wieder, welcher auch aussagekräftiger ist.
             - Notstromreserve wird nun aus Sript E3DC Control von ArnoD eingelesen. Sowie unterscheidung zur manuellen Eingabe  falls in E3DC eine 
             Notstromreserve hinterlegt wurde. Somit bleibt die Autonomie Berechnung automatisch aktuell sollte in E3DC Control etwas angepasst werden.        
      30.09.2020
      V0.0.3- Autonomiezeit Anzeige in Minuten wenn < 1 Stunde . State Autonomiezeit geändert von type numnber zu string.
      03.10.2020
      V0.0.4- debug überarbeitet für Anzeige im Log Adapter
      07.10.2020
      V0.0.6 - Berechnungsfehler, welche -Werte erzeugten wurden behoben.
               Ausgabe der 1. Autonomiezeitberechnung sofort anzeigen dann wird auf Durchschnittswert umgeschalte
      20.10.2020
      V0.0.7 - Hinweis stevie77 Wirkungsgrad in Berechnung einbeziehen. laut Datenblatt: max. Systemwirkungsgrad inkl. Batterie (%) > 88
      Bei 13 KW 13 / 100 * 88 = 11.44 Bemerkung .Vermutlich kann hier 1 eingetragen werden, da im Verbrauchswert Watt schon die die Verluste inkludiert sind.
      21.10.2020
      V0.0.7 - Hinweis stevie77 Tiefenentladeschutz bei 10 % mit  in Berechnung einbeziehen. 
      V0.0.8 - Berücksichtung Notstrombetrieb: Im Normalbetrieb erfolgt die Autonomierzeitberechnung
               bis zur Notstromreserve . Im Notstrombetrieb wird die Autonomiezeit nun weiter berechnet 
               und die Berechnung erfolgt dann bis zur Nettokapazitätsgrenze (Entladeschutz).
               Die Anzeige in kWh zeigt immer die Nettokapazität bis zum Entladeschutz.
      13.11.2022
      V0.0.9 - Notstromreserve nun aus E3DC-Charge-Control importiert. Lastabwurf ist entfallen
      13.11.2022
      v0.1.0 - Wirkungsgrad und Entladetiefe bei Autonomieberechnung entfernt, da dies zu Fehlberechnungen führt. Die Entnommene Leistung beinhaltet 
              ja schon die Verluste, somit kann mit dem Brutto gerechnet werden. SOH einbezogen. 
      11.01.2023
      v0.1.1 - Berechnungsformel Autonomiteit geändert. Anderer Rechenweg. 
      */        
      
      //Konfiguration
      var debug = false;
      var SpeicherNetto = 18.525; // kw/h hier die Speichergröße in kwh abzügl der Sicherheitsreserve 5 %
      var cron1 = 6; // hier die Schedulezeit - Triggerhäufigkeit alle x Sekunden für Zeitberechnung eintragen
      var Counter = 10; // Hier die Anzahl der Zeitberechnungen eintragen um einen Durchschnitswert zu ermitteln
      
      const fC = false;
      const Statepfad = 'javascript.' + instance + '.PVAnlage.Autonomie.';
      
      //Variable für Cronjob start stop
      var Timer = null;
      //Variable Hilfsmerker
      var Merker = true;
      //Variablen zur Berechnung der Zeiten
      var Autonomiezeit = 0;// bis Notstromreserve
      // Variablen für Durchschnittsberechnung
      var Count = 0;
      var Summe = 0;
      // Wert gleich anzeigen
      var Anzeige = false;
      // Variable für Bat Soc in kwh abzüglich Notstromreserve
      var BatSockWh = 0;
      var Entnahme = 0;
      var BatSoc = 0;
      var Speicher = 0;
      var Asoc1 = 0;
      var Asoc2 = 0;
      var Asoc = 0;
      
      
      //states to create Ergebnisse
      const idAutonomiezeit = Statepfad + 'Autonomiezeit';   
      const idBatSockWh = Statepfad + 'Batteriekapazitaet';  
      
      //Berechnungsgrundlagen
      
      const idAsoc1 = 'e3dc-rscp.0.BAT.BAT_0.ASOC'/*Alterungszustand*/
      const idAsoc2 = 'e3dc-rscp.0.BAT.BAT_1.ASOC'/*Alterungszustand*/
      
      const idBatEntnahme = 'modbus.1.holdingRegisters.40070_Batterie_Leistung'/*Batterie-Leistung in Watt*/;
      const idBatSoc = 'modbus.1.holdingRegisters.40083_Batterie_SOC'/*Batterie-SOC in Prozent*/;
      const idNotstrombetrieb = 'modbus.1.holdingRegisters.40084_Emergency_Power_Status'/*Emergency-Power Status*/;
      const idE3DCReserve = 'javascript.1.PVAnlage.E3DC-Control.Allgemein.Notstrom_akt'/*aktuell berechnete Notstromreserve*/;
      
      
      //states create
      // Autonomiezeit in Vis auf Sichtbarkeit bei != 0 einstellen damit nur Sichtbar bei Entnahme
      createState(idAutonomiezeit, 0, fC, { type: 'string', name: 'Autonomiezeit',role:'text'});
      createState(idBatSockWh, 0, fC, { type: 'number', name: 'Batteriekapazität',role:'value', unit: ' kWh'});
      if(fC && debug)log('force Creation Aktiv States angelegt oder überschrieben');
      
      //Scriptstart
      setState(idAutonomiezeit, '0' ,true);  
      setTimeout( function(){
      Berechnung();
      },500);
      
      // Trigger Berechnung Aktueller Bat Soc in kwh
      on(idBatSoc, function(dp) { 
      if(debug)log('Batterie E3DC: Trigger BatSoc aktiv. BatSoc beträgt: '+ dp.state.val +' %'); 
      Berechnung();
      });
      
      
      
      //Berechnung Aktueller Bat Soc in kwh und Wert in State schreiben
      function Berechnung(){    
      BatSoc = getState(idBatSoc).val;
      Asoc1 = getState(idAsoc1).val;
      Asoc2 = getState(idAsoc2).val;
      Asoc = (Asoc1+Asoc2)/2;
      Speicher = SpeicherNetto/100*Asoc;
      setState(idBatSockWh,Math.round(((Speicher/100) * BatSoc)*100)/100,true);  
      if(debug)log('Batterie E3DC: Die Aktuell verfügbare Speicherkapazität ist: '+ getState(idBatSockWh).val+' kWh'); 
      }
      
      // Schedule Berechnung Autonomiezeit starten bei Entnahme
      on(idBatEntnahme, function(dp) {
          if(dp.state.val < 0 ){
          if(Merker)schedulestart();
          Merker = false;
          if(debug)log('Batterie E3DC: Aktuelle Entnahmeleistung: ' + dp.state.val +' Watt');
          }
      });
      
      //Berechnung Autonomiezeit
      function schedulestart(){
      if(debug)log('Batterie E3DC: Funktion Schedulestart aktiv');  
      var cronjob = "*/"+cron1+" * * * * *";  
      Timer = schedule(cronjob, function(){   
      if(debug)log('Batterie E3DC: Schedule cronjob aktiv');       
      Entnahme = getState (idBatEntnahme).val;
      BatSockWh = getState (idBatSockWh).val;
      BatSoc = getState(idBatSoc).val;
      var Reserve = getState(idE3DCReserve).val;
      var Notstrombetrieb = getState(idNotstrombetrieb).val;
      if  (Notstrombetrieb !=2){
      Reserve = 0;
      }
      setTimeout(function(){
      if(Entnahme<0){
      //BatSockWh = Math.round(BatSockWh - (Speicher/100*Reserve*100)/100);
      BatSockWh = BatSockWh/BatSoc*(BatSoc-Reserve);
      if(debug)log('Batterie E3DC: aktuelle Netto Gesamtkapazität abzüglich der Notstromreserve ist:  '+ BatSockWh + ' kWh.');
      setTimeout(function(){
      Autonomiezeit = Math.round(BatSockWh*1000/Entnahme*-1*100)/100;    
      Durchschnitt();
      if(Anzeige === false && Autonomiezeit >0){
      setState(idAutonomiezeit, Autonomiezeit +' h',true);
      Anzeige = true;
      }
      if(debug)log('Batterie E3DC: Autonomiezeit neu berechnet auf:  '+ Autonomiezeit + ' h.');
      },100);
      }else{
      //Berechnung stoppen bei Entnahme 0 und Autonomiezeit auf 0 setzen
              if(Entnahme >=0){
              clearSchedule(Timer);
              Merker = true;
              if(debug)log('Batterie E3DC: Schedule cronjob gestoppt weil keine Entnahme');
              setState(idAutonomiezeit,'0',true);
              Anzeige = false;
                      }
                  }
              },100);   
          });
      }
      
      // Zaehlem für Durchschnittsberechnung
      
      function Durchschnitt(){
      Count ++
      Summe = Summe + Autonomiezeit;
      if(debug)log ('Summe: ' + Summe + ' Zaehler: '+Count+ ' Addition: + ' + Autonomiezeit);
      if(Count===Counter){
      var Zeit= Summe/Count;
      setTimeout(function(){
      if(debug)log('Batterie E3DC: Aktuelle Netto Speicherkapazität beträgt: '+ getState(idBatSockWh).val+' kWh, abzüglich der Notstromreserve '+BatSockWh+ ' kWh' );     
      if(Zeit>=1){    
      setState(idAutonomiezeit,+ Math.round(Zeit*100)/100 +' h',true);  
      if(debug)log('Batterie E3DC: Autonomiezeit beträgt: '+ Math.round(Zeit*10)/10 + ' h');
          }
      if(Zeit<1 && Zeit >0){       
      setState(idAutonomiezeit, + Math.round((Zeit*60)*100/100)+' min',true);
      if(debug)log('Batterie E3DC: Autonomiezeit bis Notstromreserve beträgt: '+Math.round((Zeit*60)*100/100) +' min.');
          }
      if(Zeit < 0){
      setState(idAutonomiezeit, '0' ,true);
      if(debug)log('Batterie E3DC: Autonomiezeit beträgt: 0 min.');
          }
      Count=0;
      Summe=0;
      if(debug)log('Batterie E3DC: Reset: Count =  '+ Count+ ' Summe = ' + Summe);
              },100);  
          }
      }
      
      
      
      posted in JavaScript
      smartboart
      smartboart
    • RE: Test Adapter shuttercontrol v2.0.x

      @Homoran
      ja hatte den threat auch nur kurz überflogen. Bin darauf aufmerksam geworden, weil ich die Idee echt super finde. Der Adapter hätte mir vor einem Jahr ein haufen Stunden an javascript programmierung erspart...
      Wollte nur ein paar ideen aufzählen. Falls was noch nicht umgesetzt ist und ihr es sinnvoll findet könnt ihr sie ja aufgreifen. Tolle Arbeit aber auf jedenfall...

      posted in Tester
      smartboart
      smartboart
    • Homematic CCU3 neustarten und herunterfahren durch ioBroker

      Hallo Leute, hat das schon jemand realisiert? CCU3 neustarten oder herunterfahren über Iobroker mittels Script.

      Möchte das gerne Umsetzen. Wenn das jemand schon realisiert hat, wäre die Umsetzung interessant…

      Ansonsten werde ich eine Lösung selbst erarbeiten...

      posted in Skripten / Logik
      smartboart
      smartboart
    • RE: Status von Fensterkontakten anzeigen

      Bin nicht zu Hause… Aber unter iobroker.net Rubrik Downloads scripte mal schauen

      Gesendet von meinem CLT-L09 mit Tapatalk

      posted in Visualisierung
      smartboart
      smartboart
    • RE: Grohe Sense Guard Intelligente Wassersteuerung in Iobroker einlesen...

      @arteck ok, fällt eh raus , scheint nur über cloud zu gehen...Das entspricht nicht meiner Philosophi von einem sicheren smart home...
      https://github.com/openhab/openhab2-addons/tree/master/addons/binding/org.openhab.binding.groheondus

      posted in JavaScript
      smartboart
      smartboart
    • RE: Test js-controller v2.0.x (GitHub)

      @apollon77 sagte in [Aufruf] js-controller 2.0 Beta Test:

      ohne da jetzt mega tief rein zu schauen klinge das doch mal interessant das irgendwas mit power war und damit kann es exakt das sein das die Netzwerk Hardware mal kurz weg war.

      Danke für die Unterstützung, Messungen haben ergeben, dass die Versorgung stabil ist...Aber Ursache in dem Fall war schon die Spannung, aber eben die Boardspannung selbst..Hatte einen aktiven Lüfter am Rock64 betrieben, welcher so langsam dem Ende nah ist...Nachdem ich Diesen Entfernt habe, läufts nun wieder stabil...Nur der Vollständigkeit halber...hat nichts mit dem Controller zu tun..Zufall, dass es zeitlich gepasst hat...

      posted in Tester
      smartboart
      smartboart
    • RE: Homematic CCU3 neustarten und herunterfahren durch ioBroker

      super danke! reboot funktioniert prima!!!!

      Aber ein shutdown geht auf diesen Weg nicht…oder?

      posted in Skripten / Logik
      smartboart
      smartboart

    Latest posts made by smartboart

    • RE: Test Adapter rpi2 2.x

      vlt. als Hinweis...
      An meinem Wallmount Raspi verarbeite ich die GPIO mittels Pythonm Script und übertrage / empfange Befehle mittels MQTT.
      Hierbei verwende ich gpiozero welches mit dem neuen OS funktioniert.
      Import wie gehabt als BCM Nummer..
      Wenn der Adapter nicht mehr ans laufen kommt, bleibt mir wohl nix anderes übrig als die Poolsteuerung ebenfalls so umzustricken.
      Der Adapter wäre mir aber lieber weil ich sonst auch meine Logic Scripte und die Vis umbauen müsste.

      Hier ein kleiner Auszug..

      # -*- coding: utf-8 -*-
      import sys
      import logging
      import time
      import threading
      import subprocess
      from gpiozero import Button, LED
      import paho.mqtt.client as mqtt
      import psutil
      import json
      import os
      
      # Konfiguration
      SHUTOFF_DELAY = 180  # Sekunden
      long_press_threshold = 0.5  # Schwellenwert für langen Tastendruck in Sekunden
      long_press_active = False   # Variable, um den Status des langen Tastendrucks zu verfolgen
      press_start_time = 0        # Zeitstempel, um die Startzeit des Tastendrucks zu speichern
      turned_off = False
      last_motion_time = time.time()
      mqtt_broker_host = "192.168.xx.xx"  # MQTT-Broker-Host eintragen
      mqtt_port = 1883  # MQTT-Port eintragen
      mqtt_username = "adi"  # MQTT-Benutzername eintragen (falls erforderlich)
      mqtt_password = "gti"  # MQTT-Passwort eintragen (falls erforderlich)
      mqtt_topic_status = "Raspi-Wall.Wohnzimmer_Kamin.GPIO.Licht"  # MQTT-Topic fuer den Status eintragen
      mqtt_topic_status2 = "Raspi-Wall.Wohnzimmer_Kamin.GPIO.Netzteil"  # MQTT-Topic fuer den Status Netzteil eintragen
      mqtt_topic_motion = "Raspi-Wall.Wohnzimmer_Kamin.GPIO.Pir"  # MQTT-Topic fuer Bewegungserkennung
      mqtt_topic_taster = "Raspi-Wall.Wohnzimmer_Kamin.GPIO.Taster"  # MQTT-Topic fuer den Taster
      mqtt_topic_CPUTEMP = "Raspi-Wall.Wohnzimmer_Kamin.CPU.Temperatur"  # MQTT-Topic fuer den CPU Temp
      mqtt_topic_CPULAST = "Raspi-Wall.Wohnzimmer_Kamin.CPU.Auslastung"  # MQTT-Topic fuer den CPU Last
      
      # GPIO-Pin-Konfiguration
      TASTER_PIN = 18  # GPIO-Pin BCM 18 fuer den Taster - Licht
      RELAIS_PIN = 17  # GPIO-Pin BCM 17 fuer das Relais - Licht
      RELAIS_PIN2 = 26  # GPIO-Pin BCM 26 fuer das Relais - Netzteil Touchscreen
      PIR_PIN = 6  # GPIO-Pin BCM 6 fuer den Bewegungsmelder
      
      # GPIO-Initialisierung
      taster = Button(TASTER_PIN, pull_up=False)
      relais = LED(RELAIS_PIN)
      Display = LED(RELAIS_PIN2)
      pir = Button(PIR_PIN, pull_up=False)
      
      # Pfad zur Logdatei
      log_file_path = '/home/pi/Scripte/MQTT_Motion.log'
      
      posted in Tester
      smartboart
      smartboart
    • RE: Test Adapter rpi2 2.x

      ich schliesse mich da an. hier mein log... Meine Poolsteuerung ist seit dem System Update ebnefalls tod. Auch nach update auf Version 2.0.0. Aber die Saison ist auch rum also noch bissi zeit...

      Outputs werden garnicht angezeigt im Log.

      /usr/bin/nodejs
      /usr/bin/node
      /usr/bin/npm
      v20.17.0
      v20.17.0
      10.8.2
      
      
      rpi2.0
      	2024-10-04 02:41:06.492	error	Cannot initialize/setMode GPIO: TypeError: Cannot read properties of undefined (reading 'output')
      rpi2.0
      	2024-10-04 02:41:06.491	debug	Port 5 direction: outhigh
      rpi2.0
      	2024-10-04 02:41:06.491	debug	GPIO chip undefined initialized
      rpi2.0
      	2024-10-04 02:41:06.490	debug	Got chip: undefined
      rpi2.0
      	2024-10-04 02:41:06.490	debug	Buttons are pull down.
      rpi2.0
      	2024-10-04 02:41:06.490	debug	Inputs are pull down.
      rpi2.0
      	2024-10-04 02:41:06.489	debug	Got 4 from Raspberry Pi 4 Model B Rev 1.2
      pi2.0
      	2024-10-04 02:49:35.908	debug	STDERR:
      rpi2.0
      	2024-10-04 02:49:35.907	debug	CPU Info: Raspberry Pi 4 Model B Rev 1.2
      rpi2.0
      	2024-10-04 02:49:35.653	debug	Creating gpio.26.isInput
      rpi2.0
      	2024-10-04 02:49:35.633	debug	Creating gpio.25.isInput
      rpi2.0
      	2024-10-04 02:49:35.612	debug	Creating gpio.24.isInput
      rpi2.0
      	2024-10-04 02:49:35.592	debug	Creating gpio.23.isInput
      rpi2.0
      	2024-10-04 02:49:35.368	debug	Creating gpio.21.isInput
      rpi2.0
      	2024-10-04 02:49:35.345	debug	Creating gpio.20.isInput
      rpi2.0
      	2024-10-04 02:49:35.326	debug	Creating gpio.19.isInput
      rpi2.0
      	2024-10-04 02:49:35.306	debug	Creating gpio.18.isInput
      rpi2.0
      	2024-10-04 02:49:35.078	debug	Creating gpio.16.isInput
      rpi2.0
      	2024-10-04 02:49:35.059	debug	Creating gpio.15.isInput
      rpi2.0
      	2024-10-04 02:49:35.037	debug	Creating gpio.14.isInput
      rpi2.0
      	2024-10-04 02:49:35.016	debug	Creating gpio.13.isInput
      rpi2.0
      	2024-10-04 02:49:34.994	debug	Creating gpio.12.isInput
      rpi2.0
      	2024-10-04 02:49:34.971	debug	Creating gpio.11.isInput
      rpi2.0
      	2024-10-04 02:49:34.950	debug	Creating gpio.10.isInput
      rpi2.0
      	2024-10-04 02:49:34.919	debug	Creating gpio.9.isInput
      rpi2.0
      	2024-10-04 02:49:34.609	debug	Creating gpio.7.isInput
      rpi2.0
      	2024-10-04 02:49:34.581	debug	Creating gpio.6.isInput
      rpi2.0
      	2024-10-04 02:49:34.547	debug	Creating gpio.5.isInput
      
      posted in Tester
      smartboart
      smartboart
    • RE: E3DC Hauskraftwerk steuern

      @arnod

      hat sich ne Kleinigkeit eingeschlichen...
      bei Autonomiezeit in h und m
      ist

      await setStateAsync(sID_Autonomiezeit, `${currentHours}:${currentMinutes.toString().padStart(2,"0")} h / ${totalHours}:${totalMinutes.toString().padStart(2,"0")} h` );
      

      soll:

      await setStateAsync(sID_Autonomiezeit, `${currentHours}:${currentMinutes.toString().padStart(2,"0")} h / ${totalHours}:${totalMinutes.toString().padStart(2,"0")} m` );
      

      Das Format ist auch noch nicht so ganz passend.. siehe Bild... 16 h / 32 m würde mir besser gefallen..

      f7b68ffb-6906-4d6e-bfa4-e728334ae5c1-grafik.png

      posted in JavaScript
      smartboart
      smartboart
    • RE: E3DC Hauskraftwerk steuern

      @arnod Hi Arno, habe heute mal dein Scrip Chargecontrol upgedatet. Von 1.4.0 auf 1.5.5

      Hat sich erledigt...Danke

      posted in JavaScript
      smartboart
      smartboart
    • RE: [Neuer Adapter] Reolink Kamera

      @oelison Eins noch.. Kannst du das logging noch erweitern? Also das z.B
      im log noch der Ausgeführte Befehl steht welcher mit Fehler zurück gemeldet wurde?

      reolink.0
         2024-08-04 16:50:57.002	error	AxiosError: timeout of 4000ms exceeded
      reolink.1
         2024-08-04 16:50:54.390	error	AxiosError: Request failed with status code 502
      reolink.1
         2024-08-04 16:49:07.913	error	AxiosError: timeout of 4000ms exceeded
      reolink.1
         2024-08-04 16:47:14.116	error	AxiosError: Request failed with status code 502
      reolink.1
         2024-08-04 16:43:33.492	error	AxiosError: Request failed with status code 502
      reolink.1
         2024-08-04 16:41:43.733	error	AxiosError: Request failed with status code 502
      reolink.1
         2024-08-04 16:39:53.233	error	AxiosError: Request failed with status code 502
      reolink.1
         2024-08-04 16:38:03.447	error	AxiosError: Request failed with status code 502
      
      posted in Entwicklung
      smartboart
      smartboart
    • RE: [Neuer Adapter] Reolink Kamera

      @oelison Danke für die Rückmeldung. Habe eben bisschen weiter getestet. Die Trackmix wurde heute beim Testen nicht gestört. Die RLC840A hat damit bei mir Probleme. Und das obwohl sie am Kabel hängt. Die Trackmix teste ich gerade ....Infos werden Größtenteil eingelesen. Die Befehle funktionieren zum größten Teil aber nicht.

      Reboot geht nich
      Sensor geht keiner / personen auto tier alle
      AutoFocus not supported als Rückmeldung
      setZoomFocus
      focus level passiert nix
      led mode keine veränderung
      ptzPatrol keine veränderung wahrscheinlich nicht unterstützt
      setZoomFocus keine Änderung
      ir keine Funktion

      Würde benötigen---

      • Reboot
      • Motion Sensor

      und zusätzlich

      • scheduledRecording für FTP
      • PTZ hoch runter links rechts
      • PTZ return to monitor point
      • PTZ Speed

      Aktuell habe ich noch eine Foscam im Einsatz bei welcher ich das über ein eigenes Script mache. Diese möchte ich aber gegen die Reolink ersetzen.

      Besteht eine chance das zu implementieren?

      Achs so.. Ich gehe davon aus das die Motion Sensor dann nur alle x Sekunden übermittelt werden. Entsprechend der Einstellung in der Konfig, oder?

      posted in Entwicklung
      smartboart
      smartboart
    • RE: [Neuer Adapter] Reolink Kamera

      @aspitze Das hier meine ich mit beeinflussen. Sobal der Adapter läuft passiert das in der WebGui. e6be7602-1278-4fb9-a3b0-1fded4d0b543-grafik.png

      posted in Entwicklung
      smartboart
      smartboart
    • RE: [Neuer Adapter] Reolink Kamera

      Hallo, was kann ich dazu beitragen,
      damit meine Reolink RLC 840A und die Reolink Trackmix Wifi unterstützt werden?
      Infos werden schonmal richtig eingelesen und als Objekte angelegt. Was ich aber bemerkt habe bei beiden Cams ist, dass die Verbindung über die WebGui der Cams durch den Adapter beeinflusst werden.
      Ist das bei euch auch so?
      Mit dem Onvif gibt es diese Beeinträchtigungen nicht. Der Onvif gibt abaer auch nicht alles her was ich benötige.
      Habe für jede Kamera eine Instanz angelegt, ich gehe davon aus, ( aufgrund der Config ) das nur eine Cam pro instanz möglich ist...

      posted in Entwicklung
      smartboart
      smartboart
    • RE: Material Design Widgets: Adapter Status

      @bommel_030 sagte in Material Design Widgets: Adapter Status:

      momentDurationFormatSetup(moment);

      Super Danke! Klappt...

      posted in Praktische Anwendungen (Showcase)
      smartboart
      smartboart
    • RE: Klingel Defekt! brauche ideen !

      Ai thinker ipcam mit tasmota..

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