Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Duty Cycle anzeigen!

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Duty Cycle anzeigen!

Scheduled Pinned Locked Moved ioBroker Allgemein
17 Posts 11 Posters 4.7k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    K Offline
    knopers1
    wrote on last edited by
    #1

    Hallo Kollegen,

    ich würde gerne in VIS eine Anzeige mit Duty-Cycle einbauen.

    Ich habe eine schöne Beschreibung gefunden.

    https://homematic-forum.de/forum/viewto … 31&t=35097

    Hierbei kann man mit hilfe des Scriptes die Wete auslesen lassen.

        ! DutyCycle CCU mit HM Script und CUxD.exec (c) by Alchy v 0.1
        dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("echo 'load tclrpc.so; puts [xmlrpc http://127.0.0.1:2001/ listBidcosInterfaces ]'|tclsh |grep -o 'DUTY_CYCLE.[0-9]*.'");
        dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
        if (dom.GetObject(ID_SYSTEM_VARIABLES).Get("Status_DutyCycle")){dom.GetObject(ID_SYSTEM_VARIABLES).Get("Status_DutyCycle").State((dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State().StrValueByIndex(" ",1)).ToFloat());}
        WriteLine((dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State().StrValueByIndex(" ",1)).ToFloat());
    
    

    Vorher muß man aber ein Im CUxD unter "Geräte" ein neues "Gerät" vom Typ "(28) System" mit der Funktion "Exec" erzeugen. Dies habe ich auch getan. Beim Script-Test erhalte ich in der CCU ein Wert 15.000000 ???

    ich komme nicht ganz in der Beschreibung weiter….

    Zitat:

    Zum Speichern des Wertes in einer Systemvariablen, einfach jedes Vorkommen im Script von: Status_DutyCycle ersetzen mit dem Namen der Systemvariablen Typ Zahl, welche Ihr vorher angelegt habt.

    Ich würde gerne jetzt diese Zahl 15:000000 (sind es 15%) ??? in einer Systtem variable speichern. Wie soll die Variable heißen? Muß sie zwingend jetzt Status_DutyCycle heißen ??? (siehe Script)
    1526_unbenannt2.jpg

    HP Microserver Gen8, RPI-4, IoBroker,

    1 Reply Last reply
    0
    • L Offline
      L Offline
      looxer01
      wrote on last edited by
      #2

      Hi,

      …oder du machst das ueber das tcl script. Ich mache das schon laenger so - ohne Probleme.

      Falls du Interesse hast, die Kurzbeschreibung.

      Dieses Script auf der CCU unter addons mit Filename dutyccu.tcl ablegen

      ! ````
      #!/bin/tclsh
      #
      # Ermitteln des duty cycle der CCU
      # =================================================
      # Michael Thelen aka Black in Juni 2016
      #
      # Aufruf mit
      # tclsh dutyccu.tcl <sernr><sysvar>oder
      # Wenn nur eine CCU da ist mit
      # tclsh dutyccu.tcl CCU2 <sysvar># =================================================
      ! load tclrpc.so
      load tclrega.so
      ! #Beide Übergabeparameter aus CMD holen
      set item1 [lindex $argv 0]
      set item2 [lindex $argv 1]
      # item1 enthält den Suchbegriff
      # item2 enthält den Namen der Systemvariablen
      # Seriennummer ist item2 eingepackt in 2 ""
      set sernr ""
      append sernr "
      " $item1 ""
      ! set r [xmlrpc http://127.0.0.1:2001/ listBidcosInterfaces ]
      set dutycycle -1
      set lines [split [string map [list "ADDRESS" "\x00"] $r] "\x00"]
      # und nun durch alle teile mal durch
      foreach line $lines {
      set treffer [string match $sernr $line]
      # Seriennummer wurde gefunden
      if {$treffer==1} {
      regexp "DUTY_CYCLE (.
      ?) " $line dummy dutycycle
      break
      #dann aber auch break der schleife
      }
      }
      # Es wurde ein Dutycycle gefunden ()
      if {$dutycycle != -1} {
      set rega_cmd ""
      append rega_cmd "dom.GetObject('$item2').State('$dutycycle');"
      rega_script $rega_cmd
      puts "Success - Duty Cycle: $dutycycle"
      }</sysvar></sysvar></sernr>

      
      Dann die CCU- Variable anlegen - hier sind es die DC_LAN1 und DC_LAN2 und DCLAN3 (also CCU und zwei Lan Adapter)
      
      und dann ein einfaches CCU script anlegen periodisch alle 2 Minuten einplanen:
      
      >! ````
        string stdout;
          string stderr;
          system.Exec("tclsh /usr/local/addons/dutyccu.tcl KEQ102xxxx DC_LAN1", &stdout, &stderr);
      >! ````
      Das Beispiel zeigt nur die Variable DC_LAN1\. Ich habe dann noch zwei scripte fuer DC_LAN2 und DC_LAN3
      
      ueber system.Exec brauchst du dir eh keine Sorgen mehr zu machen. CUXD brauchst du dafuer nicht.
      
      Dann die Variablen in VIS einbauen. Objekt mit sql verbinden. dann gibts eine schöne grafik wie hier:
      
       ![305_dc.jpg](/assets/uploads/files/305_dc.jpg) 
      
      vG Looxer
      1 Reply Last reply
      0
      • K Offline
        K Offline
        knopers1
        wrote on last edited by
        #3

        Ales klar, hab jetzt nur mit dem Script am laufen. Die Variable wird alle 10 min. aktualisiert. Eine Kennlinie kann ich mit Float-Adapter erstellen.

        HP Microserver Gen8, RPI-4, IoBroker,

        1 Reply Last reply
        0
        • P Offline
          P Offline
          pix
          wrote on last edited by
          #4

          Für alle, die nicht so firm im CCU2 Dateisystem sind:

          In der CCU2 ist der Zugriff per SSH ja nicht standardmäßig aktiviert. Daher in der Webui / Systemeinstellungen/ Sicherheit das Kästchen SSH anhaken und ein Passwort vergeben.

          Dann kann man per putty oder terminal auf die CCU2 zugreifen:

          ssh root@IP.DER.CCU.2
          
          ````Man wird nach dem soeben vergebenen Passwort gefragt und befindet sich dann im Dateisystem.
          
          Mit````
          cd /usr/local/addons/
          ````und anschliessend````
          ls
          ````kann man das Verzeichnis schon mal sehen (vermutlich leer)
          
          Jetzt am besten ein neues Putty oder Terminalfenster öffnen und mit````
          scp quellverzeichnis/dutyccu.tcl root@IP.DER.CCU.2:/usr/local/addons
          ````die tcl-Datei kopieren (tcl-Datei mit einem Editor mit dem oben gezeigten Code füllen). Passwort-Eingabe wie oben. Fertig.
          
          Im ersten Fenster kann man nun mit````
           ls
          ````die Datei sehen.
          
          Gruß
          
          Pix

          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

          1 Reply Last reply
          0
          • HomoranH Do not disturb
            HomoranH Do not disturb
            Homoran
            Global Moderator Administrators
            wrote on last edited by
            #5

            @pix:

            Für alle, die nicht so firm im CCU2 Dateisystem sind: `
            Ich glaube mich zu rrinnern, dass alchy genau dafür ein reines HM Skript gemacht hatte um den DC auszulesen.

            Damit brauchte man nicht ins Dateisystem einzugreifen.

            Gruß

            Rainer

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Reply Last reply
            0
            • K Offline
              K Offline
              knopers1
              wrote on last edited by
              #6

              und genau dazu habe ich ein Thread oben im ersten Post verlinkt. ;)

              HP Microserver Gen8, RPI-4, IoBroker,

              1 Reply Last reply
              0
              • P Offline
                P Offline
                pix
                wrote on last edited by
                #7

                :evil: Überlesen und zu spät gesehen. Naja, vielleicht braucht trotzdem jemand die Anleitung (wenn er keinen CUXD hat).

                Pix

                ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                1 Reply Last reply
                0
                • DutchmanD Offline
                  DutchmanD Offline
                  Dutchman
                  Developer Most Active Administrators
                  wrote on last edited by
                  #8

                  @pix:

                  :evil: Überlesen und zu spät gesehen. Naja, vielleicht braucht trotzdem jemand die Anleitung (wenn er keinen CUXD hat).

                  Pix `

                  oder es ohne CUxD loesen moechte, thanks !

                  1 Reply Last reply
                  0
                  • lobomauL Offline
                    lobomauL Offline
                    lobomau
                    wrote on last edited by
                    #9

                    @looxer01:

                    Hi,

                    …oder du machst das ueber das tcl script. Ich mache das schon laenger so - ohne Probleme.

                    Falls du Interesse hast, die Kurzbeschreibung.

                    Dieses Script auf der CCU unter addons mit Filename dutyccu.tcl ablegen

                    ! ````
                    #!/bin/tclsh
                    #
                    # Ermitteln des duty cycle der CCU
                    # =================================================
                    # Michael Thelen aka Black in Juni 2016
                    #
                    # Aufruf mit
                    # tclsh dutyccu.tcl <sernr><sysvar>oder
                    # Wenn nur eine CCU da ist mit
                    # tclsh dutyccu.tcl CCU2 <sysvar># =================================================
                    ! load tclrpc.so
                    load tclrega.so
                    ! #Beide Übergabeparameter aus CMD holen
                    set item1 [lindex $argv 0]
                    set item2 [lindex $argv 1]
                    # item1 enthält den Suchbegriff
                    # item2 enthält den Namen der Systemvariablen
                    # Seriennummer ist item2 eingepackt in 2 ""
                    set sernr ""
                    append sernr "
                    " $item1 ""
                    ! set r [xmlrpc http://127.0.0.1:2001/ listBidcosInterfaces ]
                    set dutycycle -1
                    set lines [split [string map [list "ADDRESS" "\x00"] $r] "\x00"]
                    # und nun durch alle teile mal durch
                    foreach line $lines {
                    set treffer [string match $sernr $line]
                    # Seriennummer wurde gefunden
                    if {$treffer==1} {
                    regexp "DUTY_CYCLE (.
                    ?) " $line dummy dutycycle
                    break
                    #dann aber auch break der schleife
                    }
                    }
                    # Es wurde ein Dutycycle gefunden ()
                    if {$dutycycle != -1} {
                    set rega_cmd ""
                    append rega_cmd "dom.GetObject('$item2').State('$dutycycle');"
                    rega_script $rega_cmd
                    puts "Success - Duty Cycle: $dutycycle"
                    }</sysvar></sysvar></sernr>

                    
                    Dann die CCU- Variable anlegen - hier sind es die DC_LAN1 und DC_LAN2 und DCLAN3 (also CCU und zwei Lan Adapter)
                    
                    und dann ein einfaches CCU script anlegen periodisch alle 2 Minuten einplanen:
                    
                    >! ````
                      string stdout;
                        string stderr;
                        system.Exec("tclsh /usr/local/addons/dutyccu.tcl KEQ102xxxx DC_LAN1", &stdout, &stderr);
                    >! ````
                    Das Beispiel zeigt nur die Variable DC_LAN1\. Ich habe dann noch zwei scripte fuer DC_LAN2 und DC_LAN3
                    
                    ueber system.Exec brauchst du dir eh keine Sorgen mehr zu machen. CUXD brauchst du dafuer nicht.
                    
                    Dann die Variablen in VIS einbauen. Objekt mit sql verbinden. dann gibts eine schöne grafik wie hier:
                    
                    dC.JPG
                    
                    vG Looxer `  
                    

                    Den Duty Cycle möchte ich mir auch gerne auf diese Weise anzeigen lassen. Mir ist nicht klar welches Gerät du mit "KEQ102xxxx" meinst. Hat die CCU2 auch so eine Homematic-Seriennummer?

                    Host: NUC8i3 mit Proxmox:

                    • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                    • Slave: Pi4
                    1 Reply Last reply
                    0
                    • TomTT Offline
                      TomTT Offline
                      TomT
                      wrote on last edited by
                      #10

                      @lobomau:

                      Den Duty Cycle möchte ich mir auch gerne auf diese Weise anzeigen lassen. Mir ist nicht klar welches Gerät du mit "KEQ102xxxx" meinst. Hat die CCU2 auch so eine Homematic-Seriennummer? `

                      Das ist die Seriennummer deiner CCU2.

                      Findest du, wenn du in der WebUI ganz rechts oben auf den Button HILFE klickst.

                      Bei Info erscheint es dann in der Liste SERIENNUMMER :

                      Das ist genau genommen nicht die CCU Seriennummer, sondern die des Funkmoduls in der CCU…

                      Grüße

                      Tom

                      PI3B > Raspimatic / Opi+2 > ioBroker / ESP8266
                      if (System == "running") {finger = "weg";} else {lastAction = "Rückgängig";}

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        mrMuppet
                        wrote on last edited by
                        #11

                        Ich revive das hier gerade mal: Ich hab im CCU2 den Duty-cycle über CuxD und das Wrapper Gerät realisiert. Leider wird mir das Gerät als Datenpunkt im Broker nicht angezeigt. Habe REGA und RPC schon neu gestartet. Oder muss ich noch ein RPC-Adapter für den CuxD anlegen?

                        ioBroker auf NUC (Celeron mit Ubuntu-Server)

                        Homematic, HMIP, Hue, Unifi, Plex, Nest, Roborock, Google Assistant

                        1 Reply Last reply
                        0
                        • R Offline
                          R Offline
                          RappiRN
                          Most Active
                          wrote on last edited by
                          #12

                          Welche hm-rega Version hast du? Ich meine, dass mit dem letzten Update (1.6.6) genau diese Funktion eingarbeitet wurde. Dann erschien bei mir, bei den Ordnern, ein Ordner, wo Daten der CCU angezeigt werden, u.a. DutyCycle und Firmware.

                          Enrico

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            mrMuppet
                            wrote on last edited by
                            #13

                            @RappiRN:

                            Welche hm-rega Version hast du? Ich meine, dass mit dem letzten Update (1.6.6) genau diese Funktion eingarbeitet wurde. Dann erschien bei mir, bei den Ordnern, ein Ordner, wo Daten der CCU angezeigt werden, u.a. DutyCycle und Firmware. `

                            Stimmt, steht auch so im changelog. Kann aber bei mir nicht finden. Wo siehtst du diesn Ordner? Bei den Datenpunkten von REGA oder RPC? Hab jetzt gerade, auf die Schnelle, bei beiden nichts gefunden.

                            Edit: Hallo Suchfunktion! Habs http://forum.iobroker.net/viewtopic.php?t=7927.

                            ioBroker auf NUC (Celeron mit Ubuntu-Server)

                            Homematic, HMIP, Hue, Unifi, Plex, Nest, Roborock, Google Assistant

                            1 Reply Last reply
                            0
                            • moelskiM Offline
                              moelskiM Offline
                              moelski
                              wrote on last edited by
                              #14

                              wollte mich nur mal kurz für das hier bedanken.

                              Kann jetzt auch meine DutyCycles protokollieren 8-)

                              Grüße

                              Grüße Dominik

                              1 Reply Last reply
                              0
                              • ruhr70R Offline
                                ruhr70R Offline
                                ruhr70
                                wrote on last edited by
                                #15

                                Ich muss mal ganz blöd nachfragen…

                                Welche Erkenntnisse ziehe ich denn aus dem Ergebnis?

                                Z.B. aus dem Diagramm hier oben im Post.

                                Sprich, was mache ich dann damit?

                                Adapter: Fritzbox, Unify Circuit
                                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                1 Reply Last reply
                                0
                                • DutchmanD Offline
                                  DutchmanD Offline
                                  Dutchman
                                  Developer Most Active Administrators
                                  wrote on last edited by
                                  #16

                                  @ruhr70:

                                  Ich muss mal ganz blöd nachfragen…

                                  Welche Erkenntnisse ziehe ich denn aus dem Ergebnis?

                                  Z.B. aus dem Diagramm hier oben im Post.

                                  Sprich, was mache ich dann damit? `

                                  Es hilft dir zu ermitteln zu welchen Zeitpunkten dein duty cycle Hohe Werte aufweisen zB zur Fehlersuche :-)

                                  –-----------------------

                                  Send from mobile device

                                  Das schöne ios hat Auto Korrektur zum k****

                                  Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

                                  1 Reply Last reply
                                  0
                                  • moelskiM Offline
                                    moelskiM Offline
                                    moelski
                                    wrote on last edited by
                                    #17

                                    Moin !

                                    Ich würde die Frage mal erweitern wollen … Welche Infos kann man sonst noch aus der CCU abgreifen die einem bei der Fehlersuche ggf. helfen?

                                    Denn wenn ich mir diese Zeile ansehe "xmlrpc http://127.0.0.1:2001/ listBidcosInterfaces" und die folgenden ...

                                    Dann muss da ne Menge mehr Infos raus kommen :?:

                                    Grüße

                                    Grüße Dominik

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    769

                                    Online

                                    32.7k

                                    Users

                                    82.4k

                                    Topics

                                    1.3m

                                    Posts
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                    ioBroker Community 2014-2025
                                    logo
                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Home
                                    • Recent
                                    • Tags
                                    • Unread 0
                                    • Categories
                                    • Unreplied
                                    • Popular
                                    • GitHub
                                    • Docu
                                    • Hilfe