Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Geekworm X1202 USV Variable in IObroker übernehmen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.5k

Geekworm X1202 USV Variable in IObroker übernehmen

Geplant Angeheftet Gesperrt Verschoben Hardware
45 Beiträge 5 Kommentatoren 3.8k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • paul53P paul53

    @lieggie sagte: hier ist noch was faul

    Die roten Wellenlinien des Javascript-Editors kann man ignorieren, wenn die beiden NPM-Module in der Konfiguration der Javascript-Instanz eingetragen sind und es bei der Installation der Module keine Fehlermeldungen gab.

    L Offline
    L Offline
    Lieggie
    schrieb am zuletzt editiert von
    #23

    @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

    @lieggie sagte: hier ist noch was faul

    Die roten Wellenlinien des Javascript-Editors kann man ignorieren, wenn die beiden NPM-Module in der Konfiguration der Javascript-Instanz eingetragen sind und es bei der Installation der Module keine Fehlermeldungen gab.

    ich habe die beiden instanzen instaliert da bei gab es keinen Fehler
    sudo npm install onoff
    sudo npm install i2c-bus

    was mir nur aufgefallen ist das onoff nur bis Node 16 unterstützt wird. ich habe aber 20 am laufen

    Thomas BraunT paul53P 2 Antworten Letzte Antwort
    0
    • L Lieggie

      @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

      @lieggie sagte: hier ist noch was faul

      Die roten Wellenlinien des Javascript-Editors kann man ignorieren, wenn die beiden NPM-Module in der Konfiguration der Javascript-Instanz eingetragen sind und es bei der Installation der Module keine Fehlermeldungen gab.

      ich habe die beiden instanzen instaliert da bei gab es keinen Fehler
      sudo npm install onoff
      sudo npm install i2c-bus

      was mir nur aufgefallen ist das onoff nur bis Node 16 unterstützt wird. ich habe aber 20 am laufen

      Thomas BraunT Online
      Thomas BraunT Online
      Thomas Braun
      Most Active
      schrieb am zuletzt editiert von
      #24

      @lieggie

      Knall dir BITTE KEINE npm-Module per root in das System!!!!

      Linux-Werkzeugkasten:
      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
      NodeJS Fixer Skript:
      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

      1 Antwort Letzte Antwort
      0
      • L Lieggie

        @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

        @lieggie sagte: hier ist noch was faul

        Die roten Wellenlinien des Javascript-Editors kann man ignorieren, wenn die beiden NPM-Module in der Konfiguration der Javascript-Instanz eingetragen sind und es bei der Installation der Module keine Fehlermeldungen gab.

        ich habe die beiden instanzen instaliert da bei gab es keinen Fehler
        sudo npm install onoff
        sudo npm install i2c-bus

        was mir nur aufgefallen ist das onoff nur bis Node 16 unterstützt wird. ich habe aber 20 am laufen

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #25

        @lieggie sagte:

        sudo npm install onoff
        sudo npm install i2c-bus

        So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        L 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @lieggie sagte:

          sudo npm install onoff
          sudo npm install i2c-bus

          So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

          L Offline
          L Offline
          Lieggie
          schrieb am zuletzt editiert von Lieggie
          #26

          @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

          @lieggie sagte:

          sudo npm install onoff
          sudo npm install i2c-bus

          So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

          dann müssen sie ja da sein weil eingetragen im Javascript Adapter sind sie ja

          HomoranH paul53P Thomas BraunT 3 Antworten Letzte Antwort
          0
          • L Lieggie

            @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

            @lieggie sagte:

            sudo npm install onoff
            sudo npm install i2c-bus

            So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

            dann müssen sie ja da sein weil eingetragen im Javascript Adapter sind sie ja

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #27

            @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

            dann müssen sie ja da sein weil eingetragen im om adapter sind sie ja

            Was willst du damit sagen?
            Wo müssen sie sein?

            Was ist der om Adapter?

            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 -

            L 1 Antwort Letzte Antwort
            0
            • L Lieggie

              @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

              @lieggie sagte:

              sudo npm install onoff
              sudo npm install i2c-bus

              So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

              dann müssen sie ja da sein weil eingetragen im Javascript Adapter sind sie ja

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #28

              @lieggie sagte: dann müssen sie ja da sein weil eingetragen im om adapter sind sie ja

              Ja, denn die Fehlermeldung

              	2024-09-15 10:34:58.718	error	at exportGpio (/opt/iobroker/node_modules/@iobroker-javascript.0/onoff/onoff.js:18:8)
              

              zeigt das Vorhandensein im richtigen Verzeichnis.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                dann müssen sie ja da sein weil eingetragen im om adapter sind sie ja

                Was willst du damit sagen?
                Wo müssen sie sein?

                Was ist der om Adapter?

                L Offline
                L Offline
                Lieggie
                schrieb am zuletzt editiert von
                #29

                @homoran said in Geekworm X1202 USV Variable in IObroker übernehmen:

                @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                dann müssen sie ja da sein weil eingetragen im om adapter sind sie ja

                Was willst du damit sagen?
                Wo müssen sie sein?

                Was ist der om Adapter?

                sollte natürlich Javascript Adapter sein...... so ist das mit 2 kleinen Kindern neben bei

                HomoranH 1 Antwort Letzte Antwort
                0
                • L Lieggie

                  @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

                  @lieggie sagte:

                  sudo npm install onoff
                  sudo npm install i2c-bus

                  So ist es falsch! Der Javascript-Adapter installiert sie selbst in das richtige Verzeichnis, nachdem sie in der Konfiguration unter "Zusätzliche NPM-Module" eingetragen wurden.

                  dann müssen sie ja da sein weil eingetragen im Javascript Adapter sind sie ja

                  Thomas BraunT Online
                  Thomas BraunT Online
                  Thomas Braun
                  Most Active
                  schrieb am zuletzt editiert von Thomas Braun
                  #30

                  @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                  dann müssen sie ja da sein weil eingetragen im Javascript Adapter sind sie ja

                  Dann schau nach...
                  Und schau auch wo jetzt die per sudo reingeballerten Module liegen und hau die wieder raus.

                  cd /opt/iobroker
                  npm ls onoff
                  npm ls i2c-bus
                  

                  Linux-Werkzeugkasten:
                  https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                  NodeJS Fixer Skript:
                  https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                  iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                  1 Antwort Letzte Antwort
                  0
                  • L Lieggie

                    @homoran said in Geekworm X1202 USV Variable in IObroker übernehmen:

                    @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                    dann müssen sie ja da sein weil eingetragen im om adapter sind sie ja

                    Was willst du damit sagen?
                    Wo müssen sie sein?

                    Was ist der om Adapter?

                    sollte natürlich Javascript Adapter sein...... so ist das mit 2 kleinen Kindern neben bei

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #31

                    @lieggie und wo müssen sie sein?

                    selbst wenn durch den Eintrag im js Adapter

                    @paul53 sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                    das Vorhandensein im richtigen Verzeichnis

                    vorliegt, kann durch

                    @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                    sudo npm install onoff
                    sudo npm install i2c-bus

                    es zusätzlich noch einmal woanders installiert sein

                    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 -

                    L 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @lieggie und wo müssen sie sein?

                      selbst wenn durch den Eintrag im js Adapter

                      @paul53 sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                      das Vorhandensein im richtigen Verzeichnis

                      vorliegt, kann durch

                      @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                      sudo npm install onoff
                      sudo npm install i2c-bus

                      es zusätzlich noch einmal woanders installiert sein

                      L Offline
                      L Offline
                      Lieggie
                      schrieb am zuletzt editiert von
                      #32

                      @homoran

                      Sie lagen im home/pi habe sie nun mit
                      sudo npm uninstall onoff
                      wieder entfernt.

                      ich sollte weiter mit blockly basteln das Script kram liegt mir nicht.

                      Thomas BraunT OliverIOO 2 Antworten Letzte Antwort
                      0
                      • L Lieggie

                        @homoran

                        Sie lagen im home/pi habe sie nun mit
                        sudo npm uninstall onoff
                        wieder entfernt.

                        ich sollte weiter mit blockly basteln das Script kram liegt mir nicht.

                        Thomas BraunT Online
                        Thomas BraunT Online
                        Thomas Braun
                        Most Active
                        schrieb am zuletzt editiert von
                        #33

                        @lieggie

                        Und gewöhn dir den exzessiven Einsatz von sudo ab. Da ist im Kontext vom ioBroker eigentlich nie erforderlich und zu 99% einfach falsch.

                        Linux-Werkzeugkasten:
                        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                        NodeJS Fixer Skript:
                        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                        L 1 Antwort Letzte Antwort
                        0
                        • Thomas BraunT Thomas Braun

                          @lieggie

                          Und gewöhn dir den exzessiven Einsatz von sudo ab. Da ist im Kontext vom ioBroker eigentlich nie erforderlich und zu 99% einfach falsch.

                          L Offline
                          L Offline
                          Lieggie
                          schrieb am zuletzt editiert von
                          #34

                          Kann es vielleicht daran liegen das ich einen Rpi5 nutze mit Bookworm?
                          habe gerade gelesen das einige User probleme mit den GPIO in verbindung mit bookworm haben

                          Thomas BraunT paul53P 2 Antworten Letzte Antwort
                          0
                          • L Lieggie

                            Kann es vielleicht daran liegen das ich einen Rpi5 nutze mit Bookworm?
                            habe gerade gelesen das einige User probleme mit den GPIO in verbindung mit bookworm haben

                            Thomas BraunT Online
                            Thomas BraunT Online
                            Thomas Braun
                            Most Active
                            schrieb am zuletzt editiert von
                            #35

                            @lieggie

                            Die GPIOs werden nun anders angesprochen und Programme müssen dahingehend umgestellt werden.

                            Linux-Werkzeugkasten:
                            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                            NodeJS Fixer Skript:
                            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                            1 Antwort Letzte Antwort
                            0
                            • L Lieggie

                              Kann es vielleicht daran liegen das ich einen Rpi5 nutze mit Bookworm?
                              habe gerade gelesen das einige User probleme mit den GPIO in verbindung mit bookworm haben

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von paul53
                              #36

                              @lieggie sagte: probleme mit den GPIO in verbindung mit bookworm haben

                              Das Python-Skript hat doch funktioniert: Einen String mit den Werten geliefert. Dann nimm das Python-Skript (ohne sudo) und zerlege den String.

                              Blockly_temp.JPG

                              Wenn du das Skript nach /opt/iobroker verschoben hast, dann ersetze "home" durch "opt".

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              L 1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @lieggie sagte: probleme mit den GPIO in verbindung mit bookworm haben

                                Das Python-Skript hat doch funktioniert: Einen String mit den Werten geliefert. Dann nimm das Python-Skript (ohne sudo) und zerlege den String.

                                Blockly_temp.JPG

                                Wenn du das Skript nach /opt/iobroker verschoben hast, dann ersetze "home" durch "opt".

                                L Offline
                                L Offline
                                Lieggie
                                schrieb am zuletzt editiert von
                                #37

                                @paul53

                                es geht nur so mit sudo -Spi4.JPG
                                Es wir aber nichts zurückgegeben

                                Gebe ich nur sudo ein kommt die Meldung

                                script.js.Skript_1: sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper sudo: a password is required 
                                

                                ganz ohne sudo

                                script.js.Skript_1: Traceback (most recent call last): File "/opt/iobroker/merged.py", line 50, in <module> with open(pidfile, 'w') as f: ^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied: '/run/X1200.pid'
                                
                                paul53P 1 Antwort Letzte Antwort
                                0
                                • L Lieggie

                                  @paul53

                                  es geht nur so mit sudo -Spi4.JPG
                                  Es wir aber nichts zurückgegeben

                                  Gebe ich nur sudo ein kommt die Meldung

                                  script.js.Skript_1: sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper sudo: a password is required 
                                  

                                  ganz ohne sudo

                                  script.js.Skript_1: Traceback (most recent call last): File "/opt/iobroker/merged.py", line 50, in <module> with open(pidfile, 'w') as f: ^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied: '/run/X1200.pid'
                                  
                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von paul53
                                  #38

                                  @lieggie sagte: ganz ohne sudo

                                  Das Python-Skript wird abgearbeitet bis zur Zeile 50, wo es offenbar ein Problem mit Zugriffsrechten auf das Verzeichnis /run gibt.
                                  EDIT: Deshalb muss Python3 offenbar mit root-Rechten ausgeführt werden.

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  1 Antwort Letzte Antwort
                                  0
                                  • L Lieggie

                                    @homoran

                                    Sie lagen im home/pi habe sie nun mit
                                    sudo npm uninstall onoff
                                    wieder entfernt.

                                    ich sollte weiter mit blockly basteln das Script kram liegt mir nicht.

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von
                                    #39

                                    @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                                    ich sollte weiter mit blockly basteln das Script kram liegt mir nicht.

                                    Ok
                                    Evtl hilft das Skript ja jemanden anderen weiter

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    L 1 Antwort Letzte Antwort
                                    0
                                    • OliverIOO OliverIO

                                      @lieggie sagte in Geekworm X1202 USV Variable in IObroker übernehmen:

                                      ich sollte weiter mit blockly basteln das Script kram liegt mir nicht.

                                      Ok
                                      Evtl hilft das Skript ja jemanden anderen weiter

                                      L Offline
                                      L Offline
                                      Lieggie
                                      schrieb am zuletzt editiert von
                                      #40

                                      @oliverio

                                      ich versuche grad 2 gleisig zu fahren....ich komme weder mit blockly noch mit deinem Script weiter.

                                      Aus deine script bekomme ich diesen fehler

                                      javascript.0	14:59:52.402	info	Start JavaScript script.js.USV (Javascript/js)
                                      javascript.0	14:59:52.417	error	script.js.USV: Error: EINVAL: invalid argument, write
                                      javascript.0	14:59:52.417	error	at script.js.USV:26:18
                                      javascript.0	14:59:52.417	error	at script.js.USV:169:3
                                      

                                      komme damit auch nicht weiter

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • L Lieggie

                                        @oliverio
                                        ich stehe auf dem schlauch ... gemacht habe ich nun 11.JPG

                                        Variable erstellt
                                        12.JPG

                                        Minutliche ausführung
                                        13.JPG

                                        nu komme ich nicht weiter weil mein merged.py so aussieht.
                                        wo soll ich deine Zeilen einfügen.

                                        #!/usr/bin/python3
                                        
                                        import os
                                        import struct
                                        import smbus
                                        import time
                                        import logging
                                        import subprocess
                                        import gpiod
                                        from subprocess import call
                                        
                                        # User-configurable variables
                                        SHUTDOWN_THRESHOLD = 3  # Number of consecutive failures required for shutdown
                                        SLEEP_TIME = 60  # Time in seconds to wait between failure checks
                                        Loop =  False
                                        
                                        def readVoltage(bus):
                                            read = bus.read_word_data(address, 2)
                                            swapped = struct.unpack("<H", struct.pack(">H", read))[0]
                                            voltage = swapped * 1.25 / 1000 / 16
                                            return voltage
                                        
                                        def readCapacity(bus):
                                            read = bus.read_word_data(address, 4)
                                            swapped = struct.unpack("<H", struct.pack(">H", read))[0]
                                            capacity = swapped / 256
                                            return capacity
                                        
                                        def get_battery_status(voltage):
                                            if 3.87 <= voltage <= 4.2:
                                                return "Full"
                                            elif 3.7 <= voltage < 3.87:
                                                return "High"
                                            elif 3.55 <= voltage < 3.7:
                                                return "Medium"
                                            elif 3.4 <= voltage < 3.55:
                                                return "Low"
                                            elif voltage < 3.4:
                                                return "Critical"
                                            else:
                                                return "Unknown"
                                        
                                        # Ensure only one instance of the script is running
                                        pid = str(os.getpid())
                                        pidfile = "/run/X1200.pid"
                                        if os.path.isfile(pidfile):
                                            print("Script already running")
                                            exit(1)
                                        else:
                                            with open(pidfile, 'w') as f:
                                                f.write(pid)
                                        
                                        try:
                                            bus = smbus.SMBus(1)
                                            address = 0x36
                                            PLD_PIN = 6
                                            chip = gpiod.Chip('gpiochip4')
                                            pld_line = chip.get_line(PLD_PIN)
                                            pld_line.request(consumer="PLD", type=gpiod.LINE_REQ_DIR_IN)
                                        
                                            while True:
                                                failure_counter = 0
                                        
                                                for _ in range(SHUTDOWN_THRESHOLD):
                                                    ac_power_state = pld_line.get_value()
                                                    voltage = readVoltage(bus)
                                                    battery_status = get_battery_status(voltage)
                                                    capacity = readCapacity(bus)
                                                    print(f"Capacity: {capacity:.2f}% ({battery_status}), AC Power State: {'Plugged in' if ac_power_state == 1 else 'Unplugged'}, Voltage: {voltage:.2f}V")
                                                    if capacity < 20:
                                                        print("Battery level critical.")
                                                        failure_counter += 1
                                                    elif voltage < 3.20:
                                                        print("Battery voltage critical.")
                                                        failure_counter += 1
                                                    elif ac_power_state == 0:
                                                        print("UPS is unplugged or AC power loss detected.")
                                                        failure_counter += 1
                                                    else:
                                                        failure_counter = 0
                                                        break
                                        
                                                    if failure_counter < SHUTDOWN_THRESHOLD:
                                                        time.sleep(SLEEP_TIME) 
                                        
                                                if failure_counter >= SHUTDOWN_THRESHOLD:
                                                    shutdown_reason = ""
                                                    if capacity < 20:
                                                        shutdown_reason = "due to critical battery level."
                                                    elif voltage < 3.20:
                                                        shutdown_reason = "due to critical battery voltage."
                                                    elif ac_power_state == 0:
                                                        shutdown_reason = "due to AC power loss or UPS unplugged."
                                        
                                                    shutdown_message = f"Critical condition met {shutdown_reason} Initiating shutdown."
                                                    print(shutdown_message)
                                                    call("sudo nohup shutdown -h now", shell=True)
                                                else:
                                                    #print("System operating within normal parameters. No action required.")
                                                    if Loop:
                                                        time.sleep(SLEEP_TIME)
                                                    else:
                                                        exit(0)
                                        
                                        finally:
                                            if os.path.isfile(pidfile):
                                                os.unlink(pidfile)
                                            exit(0)
                                        
                                        
                                        
                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        schrieb am zuletzt editiert von paul53
                                        #41

                                        @lieggie sagte: wo soll ich deine Zeilen einfügen.

                                        Damit es ohne sudo laufen kann, kommentiere die Zeilen 44 bis 51 und 106, 107 aus und teste es erst einmal auf der Konsole (ohne sudo).

                                        python3 /opt/iobroker/merged.py
                                        

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @lieggie sagte: wo soll ich deine Zeilen einfügen.

                                          Damit es ohne sudo laufen kann, kommentiere die Zeilen 44 bis 51 und 106, 107 aus und teste es erst einmal auf der Konsole (ohne sudo).

                                          python3 /opt/iobroker/merged.py
                                          
                                          L Offline
                                          L Offline
                                          Lieggie
                                          schrieb am zuletzt editiert von
                                          #42

                                          @paul53 said in Geekworm X1202 USV Variable in IObroker übernehmen:

                                          python3 /opt/iobroker/merged.py

                                          Ich bekomme nun den String angezeigt

                                          pi5.JPG

                                          nun kann ich mich an das zerlegen machen . Vielen Dank.

                                          Magst du mir erklären was wir dort nun genau rausgenommen haben ?

                                          paul53P 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          477

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe