Navigation

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

    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

    L
    • Profile
    • Following 0
    • Followers 0
    • Topics 11
    • Posts 55
    • Best 1
    • Groups 1

    Lieggie

    @Lieggie

    Starter

    1
    Reputation
    10
    Profile views
    55
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Lieggie Follow
    Starter

    Best posts made by Lieggie

    • RE: IObrocker > Homematic Datenübertragung geht nicht...Erledigt

      @homoran ich nutze jetzt den HMIP Cloud Adapter und hatte voher den MaxCube V1.0.1...alle andere Versionen haben bei mir Probleme verursacht ...welche mir vielleicht grad einleuchtend werden woher sie hätten kommen können. Da die Steller dann das ähnliche problem hatten

      posted in Hardware
      L
      Lieggie

    Latest posts made by Lieggie

    • RE: Suche Funk Dimm möglichkeit für Shelly Dimmer 2

      @mickemup
      ja die habe ich auch im Einsatz 4 Tasten übereinander. Wenn du da ein Blockly hättest wäre ich dir dankbar.
      Ichabe sogar noch einen über. über welche schnittstelle arbeitest du ? Hue oder Deconz?

      posted in Einsteigerfragen
      L
      Lieggie
    • Suche Funk Dimm möglichkeit für Shelly Dimmer 2

      Hallo Zusammen

      Meine Frau hat für das Esszimmer eine schöne Deckenleuchte gebaut. Darin haben wir 2 Shelly Dimmer2 untergebracht.

      Funktion über App, Alexa und Vis ist gegeben. Nun suche ich nach einer/zwei Fernedinungen mit der ich ohne langes Scripten auch dimmen kann. Ich habe Hue Trädfri Dekonz und Wlan im Einsatz. (nicht fragen ist einfach so gewachsen).

      Ich habe mal versucht ober eine vorhandene Trädfri zu dimmen. ja es ging , aber nicht zuverlässig. hat jemand eine Einfache Idee?

      Gruß Thomas

      posted in Einsteigerfragen
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @paul53 danke an alle die geholfen haben, nun läuft alles
      anbei noch mal das Blockly
      pi6.JPG

      und das merged Skript ohne die Zeilen 44 bis 51 und 106, 107

      co#!/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
      
      
      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:
         
          exit(0)de_text
      
      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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 ?

      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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

      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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'
      
      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      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

      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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.

      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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

      posted in Hardware
      L
      Lieggie
    • RE: Geekworm X1202 USV Variable in IObroker übernehmen

      @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

      posted in Hardware
      L
      Lieggie
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo