Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Tester
  4. ...nicht in offiziellem Repo
  5. LaundryLens

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    763

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.4k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.5k

LaundryLens

Geplant Angeheftet Gesperrt Verschoben ...nicht in offiziellem Repo
62 Beiträge 8 Kommentatoren 711 Aufrufe 14 Beobachtet
  • Ä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.
  • icebearI icebear

    @sigi234

    @backfisch88

    Aha, Problem erkannt! Bei mir fehlt in der Adresse die aufgerufen wird, das _m in der html Adresse.

    Lt. Browser F12 wird bei mir die Adresse:

    http://192.168.178.3:8081/adapter/laundrylens/tab.html?newReact=true&react=dark 
    

    aufgerufen, da fehlt bei ....../laundrylens/tab.html?..... das _m

    Wenn ich die Adresse kopiere und das _m ergänze im Browser eingebe :

    http://192.168.178.3:8081/adapter/laundrylens/tab_m.html?newReact=true&react=dark
    

    Dann geht auch die Seite auf:

    laundry-lens1.png

    B Online
    B Online
    backfisch88
    schrieb zuletzt editiert von
    #49

    @icebear
    Kümmere mich drum

    1 Antwort Letzte Antwort
    0
    • sigi234S sigi234

      @backfisch88

      Aber bei mir kommen auch diese Meldungen bei F12

      Screenshot (3042).png

      B Online
      B Online
      backfisch88
      schrieb zuletzt editiert von
      #50

      @sigi234

      Kannst du alle Meldungen mal hier posten? Bei mir kommen nämlich gar keine 🤣

      sigi234S 1 Antwort Letzte Antwort
      0
      • B backfisch88

        @sigi234

        Kannst du alle Meldungen mal hier posten? Bei mir kommen nämlich gar keine 🤣

        sigi234S Online
        sigi234S Online
        sigi234
        Forum Testing Most Active
        schrieb zuletzt editiert von
        #51

        @backfisch88 sagte:

        @sigi234

        Kannst du alle Meldungen mal hier posten? Bei mir kommen nämlich gar keine 🤣

        Die von F12?

        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
        Immer Daten sichern!

        B 1 Antwort Letzte Antwort
        0
        • sigi234S sigi234

          @backfisch88 sagte:

          @sigi234

          Kannst du alle Meldungen mal hier posten? Bei mir kommen nämlich gar keine 🤣

          Die von F12?

          B Online
          B Online
          backfisch88
          schrieb zuletzt editiert von
          #52

          @sigi234 genau die

          Bei mir läuft das vollkommen fehlerfrei 🤌🏻

          sigi234S 1 Antwort Letzte Antwort
          0
          • B backfisch88

            @sigi234 genau die

            Bei mir läuft das vollkommen fehlerfrei 🤌🏻

            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb zuletzt editiert von
            #53

            @backfisch88 sagte:

            @sigi234 genau die

            Bei mir läuft das vollkommen fehlerfrei 🤌🏻

            tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                at tab_m.html?newReact=…ue&react=dark:911:9
            (anonym)	@	tab_m.html?newReact=true&react=dark:911
            Promise.then		
            refreshOverview	@	tab_m.html?newReact=true&react=dark:800
            finish	@	tab_m.html?newReact=true&react=dark:779
            (anonym)	@	tab_m.html?newReact=true&react=dark:746
            setTimeout		
            (anonym)	@	tab_m.html?newReact=true&react=dark:745
            init	@	tab_m.html?newReact=true&react=dark:759
            (anonym)	@	tab_m.html?newReact=true&react=dark:2450
            (anonym)	@	socket.io.js:7
            socket.socket.onmessage	@	socket.io.js:7
            6
            tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                at tab_m.html?newReact=…ue&react=dark:911:9
            (anonym)	@	tab_m.html?newReact=true&react=dark:911
            Promise.then		
            refreshOverview	@	tab_m.html?newReact=true&react=dark:800
            (anonym)	@	tab_m.html?newReact=true&react=dark:954
            setInterval		
            startAutoRefresh	@	tab_m.html?newReact=true&react=dark:953
            finish	@	tab_m.html?newReact=true&react=dark:784
            (anonym)	@	tab_m.html?newReact=true&react=dark:746
            setTimeout		
            (anonym)	@	tab_m.html?newReact=true&react=dark:745
            init	@	tab_m.html?newReact=true&react=dark:759
            (anonym)	@	tab_m.html?newReact=true&react=dark:2450
            (anonym)	@	socket.io.js:7
            socket.socket.onmessage	@	socket.io.js:7
            
            tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                at tab_m.html?newReact=…ue&react=dark:911:9
            2
            tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                at tab_m.html?newReact=…ue&react=dark:911:9
            
            
            

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            sigi234S 1 Antwort Letzte Antwort
            1
            • sigi234S sigi234

              @backfisch88 sagte:

              @sigi234 genau die

              Bei mir läuft das vollkommen fehlerfrei 🤌🏻

              tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                  at tab_m.html?newReact=…ue&react=dark:911:9
              (anonym)	@	tab_m.html?newReact=true&react=dark:911
              Promise.then		
              refreshOverview	@	tab_m.html?newReact=true&react=dark:800
              finish	@	tab_m.html?newReact=true&react=dark:779
              (anonym)	@	tab_m.html?newReact=true&react=dark:746
              setTimeout		
              (anonym)	@	tab_m.html?newReact=true&react=dark:745
              init	@	tab_m.html?newReact=true&react=dark:759
              (anonym)	@	tab_m.html?newReact=true&react=dark:2450
              (anonym)	@	socket.io.js:7
              socket.socket.onmessage	@	socket.io.js:7
              6
              tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                  at tab_m.html?newReact=…ue&react=dark:911:9
              (anonym)	@	tab_m.html?newReact=true&react=dark:911
              Promise.then		
              refreshOverview	@	tab_m.html?newReact=true&react=dark:800
              (anonym)	@	tab_m.html?newReact=true&react=dark:954
              setInterval		
              startAutoRefresh	@	tab_m.html?newReact=true&react=dark:953
              finish	@	tab_m.html?newReact=true&react=dark:784
              (anonym)	@	tab_m.html?newReact=true&react=dark:746
              setTimeout		
              (anonym)	@	tab_m.html?newReact=true&react=dark:745
              init	@	tab_m.html?newReact=true&react=dark:759
              (anonym)	@	tab_m.html?newReact=true&react=dark:2450
              (anonym)	@	socket.io.js:7
              socket.socket.onmessage	@	socket.io.js:7
              
              tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                  at tab_m.html?newReact=…ue&react=dark:911:9
              2
              tab_m.html?newReact=true&react=dark:911 Uncaught (in promise) ReferenceError: _suggestedApplied is not defined
                  at tab_m.html?newReact=…ue&react=dark:911:9
              
              
              
              sigi234S Online
              sigi234S Online
              sigi234
              Forum Testing Most Active
              schrieb zuletzt editiert von sigi234
              #54

              Was die KI alles so weis...

              Das ist ein Volltreffer! Die Fehlermeldung hängt direkt mit dem brandneuen Update des Adapters ioBroker.laundrylens zusammen, das heute (am 30. Juli 2026) in der Version 0.4.0 veröffentlicht wurde.Warum tritt der Fehler genau jetzt auf?In der Version 0.4.0 wurden große Änderungen an der Übersetzung und dem Admin-UI vorgenommen:Der Entwickler hat eine vollautomatische, mehrsprachige Übersetzung für das Admin-UI und die Benachrichtigungen integriert.Gleichzeitig wurden die internen Code-Strukturen an die aktuellen, strengen Vorgaben von ioBroker angepasst (@iobroker/eslint-config).Bei einem solchen UI-Umbau passiert es schnell, dass im React-Code der Einstellungsseite eine Variable (wie eben _suggestedApplied) aufgerufen wird, die durch die neuen Übersetzungsskripte oder veränderten JSDoc-/Linting-Regeln nicht mehr korrekt definiert oder exportiert wird.Da der ioBroker-Admin-Kontext versucht, die Seite im Dark Mode zu laden, stürzt das React-Skript an dieser fehlenden Variable ab.So lösen Sie das ProblemDa es sich hierbei um einen Code-Fehler (Bug) im frisch veröffentlichten Adapter-Update handelt, können Sie das Problem wie folgt angehen:1. Den Fehler auf GitHub melden (Wichtig)Da der Fehler in der ganz neuen Version 0.4.0 aufgetaucht ist, weiß der Entwickler vermutlich noch nichts von diesem speziellen React-Absturz im Dark Mode.Gehen Sie auf die GitHub-Seite des Adapters: backfisch88/ioBroker.laundrylens.Erstellen Sie unter "Issues" ein neues Ticket.Kopieren Sie exakt die Fehlermeldung aus Ihrem vorherigen Post hinein:tab_m.html?newReact=true&react=dark: Uncaught (in promise) ReferenceError: _suggestedApplied is not definedErwähnen Sie dazu, dass Sie den Admin-Adapter im Dark Mode nutzen und der Fehler beim Öffnen der LaundryLens-Instanzkonfiguration auftritt. Der Entwickler fixiert das meistens innerhalb weniger Stunden oder Tage.2. Sofortiger Workaround: Downgrade auf Version 0.3.0Bis der Entwickler den Bug behoben hat, können Sie die vorherige, stabile Version installieren, bei der das Admin-UI noch ohne diesen Fehler lief.Öffnen Sie die ioBroker-Konsole (SSH) oder nutzen Sie das Experten-Symbol (Katze) im Admin-Interface.Installieren Sie die Vorversion gezielt über den Befehl:bashiob upgrade laundrylens@0.3.0
              Verwende Code mit Vorsicht.Löschen Sie danach einmal Ihren Browser-Cache (Strg + F5), bevor Sie die Einstellungsseite neu laden.3. Temporärer Wechsel in den Light ModeDa der Fehler explizit beim Parameter react=dark ausgeworfen wird, schalten Sie die ioBroker-Adminoberfläche in den Hellen Modus (Light Mode). Eventuell ist die fehlerhafte Variable an eine Dark-Mode-Komponente gekoppelt, sodass die Seite im hellen Design vorübergehend wieder bedienbar wird.
              

              Na ja ,Fehler kommt auch im Light Mode

              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Immer Daten sichern!

              B 1 Antwort Letzte Antwort
              1
              • sigi234S sigi234

                Was die KI alles so weis...

                Das ist ein Volltreffer! Die Fehlermeldung hängt direkt mit dem brandneuen Update des Adapters ioBroker.laundrylens zusammen, das heute (am 30. Juli 2026) in der Version 0.4.0 veröffentlicht wurde.Warum tritt der Fehler genau jetzt auf?In der Version 0.4.0 wurden große Änderungen an der Übersetzung und dem Admin-UI vorgenommen:Der Entwickler hat eine vollautomatische, mehrsprachige Übersetzung für das Admin-UI und die Benachrichtigungen integriert.Gleichzeitig wurden die internen Code-Strukturen an die aktuellen, strengen Vorgaben von ioBroker angepasst (@iobroker/eslint-config).Bei einem solchen UI-Umbau passiert es schnell, dass im React-Code der Einstellungsseite eine Variable (wie eben _suggestedApplied) aufgerufen wird, die durch die neuen Übersetzungsskripte oder veränderten JSDoc-/Linting-Regeln nicht mehr korrekt definiert oder exportiert wird.Da der ioBroker-Admin-Kontext versucht, die Seite im Dark Mode zu laden, stürzt das React-Skript an dieser fehlenden Variable ab.So lösen Sie das ProblemDa es sich hierbei um einen Code-Fehler (Bug) im frisch veröffentlichten Adapter-Update handelt, können Sie das Problem wie folgt angehen:1. Den Fehler auf GitHub melden (Wichtig)Da der Fehler in der ganz neuen Version 0.4.0 aufgetaucht ist, weiß der Entwickler vermutlich noch nichts von diesem speziellen React-Absturz im Dark Mode.Gehen Sie auf die GitHub-Seite des Adapters: backfisch88/ioBroker.laundrylens.Erstellen Sie unter "Issues" ein neues Ticket.Kopieren Sie exakt die Fehlermeldung aus Ihrem vorherigen Post hinein:tab_m.html?newReact=true&react=dark: Uncaught (in promise) ReferenceError: _suggestedApplied is not definedErwähnen Sie dazu, dass Sie den Admin-Adapter im Dark Mode nutzen und der Fehler beim Öffnen der LaundryLens-Instanzkonfiguration auftritt. Der Entwickler fixiert das meistens innerhalb weniger Stunden oder Tage.2. Sofortiger Workaround: Downgrade auf Version 0.3.0Bis der Entwickler den Bug behoben hat, können Sie die vorherige, stabile Version installieren, bei der das Admin-UI noch ohne diesen Fehler lief.Öffnen Sie die ioBroker-Konsole (SSH) oder nutzen Sie das Experten-Symbol (Katze) im Admin-Interface.Installieren Sie die Vorversion gezielt über den Befehl:bashiob upgrade laundrylens@0.3.0
                Verwende Code mit Vorsicht.Löschen Sie danach einmal Ihren Browser-Cache (Strg + F5), bevor Sie die Einstellungsseite neu laden.3. Temporärer Wechsel in den Light ModeDa der Fehler explizit beim Parameter react=dark ausgeworfen wird, schalten Sie die ioBroker-Adminoberfläche in den Hellen Modus (Light Mode). Eventuell ist die fehlerhafte Variable an eine Dark-Mode-Komponente gekoppelt, sodass die Seite im hellen Design vorübergehend wieder bedienbar wird.
                

                Na ja ,Fehler kommt auch im Light Mode

                B Online
                B Online
                backfisch88
                schrieb zuletzt editiert von
                #55

                @sigi234

                Kümmere mich drum. Danke für die Logs etc.

                1 Antwort Letzte Antwort
                0
                • B Online
                  B Online
                  backfisch88
                  schrieb zuletzt editiert von
                  #56

                  0.4.1 Testen.

                  Sollte beides gefixt sein

                  sigi234S 1 Antwort Letzte Antwort
                  1
                  • icebearI Online
                    icebearI Online
                    icebear
                    schrieb zuletzt editiert von
                    #57

                    @backfisch88

                    Ich hab jetzt auch mal eine Waschmaschine ( Siemens varioPerfect IQ700) laufen lassen, und er hat als Programm 'Unknown' erkannt, hab dann unter Programme das Programm eingegeben welches ich laufen hatte, also Programmname, Temp und Laufzeit.

                    Jetzt meine Frage: Muß ich erst unter Programme alle Programme die ich benutze einmal anlegen, oder ist die Vorgehensweise vom Anfang die richtige? Also erstmal machen lassen und wenn er es nicht erkennt, dann unter Programme das Progamm anlegen und zuweisen?

                    B 1 Antwort Letzte Antwort
                    0
                    • icebearI icebear

                      @backfisch88

                      Ich hab jetzt auch mal eine Waschmaschine ( Siemens varioPerfect IQ700) laufen lassen, und er hat als Programm 'Unknown' erkannt, hab dann unter Programme das Programm eingegeben welches ich laufen hatte, also Programmname, Temp und Laufzeit.

                      Jetzt meine Frage: Muß ich erst unter Programme alle Programme die ich benutze einmal anlegen, oder ist die Vorgehensweise vom Anfang die richtige? Also erstmal machen lassen und wenn er es nicht erkennt, dann unter Programme das Progamm anlegen und zuweisen?

                      B Online
                      B Online
                      backfisch88
                      schrieb zuletzt editiert von
                      #58

                      @icebear
                      Kannst du… musst du aber nicht.
                      „Vorteil“ vom vorher anlegen ist, dass du direkt ne zeit hast die plausibel ist. Wenn du 3 mal das Programm laufen lässt ist die Zeit die du eingibst aber eh verworfen

                      1 Antwort Letzte Antwort
                      0
                      • B backfisch88

                        0.4.1 Testen.

                        Sollte beides gefixt sein

                        sigi234S Online
                        sigi234S Online
                        sigi234
                        Forum Testing Most Active
                        schrieb zuletzt editiert von
                        #59

                        @backfisch88 sagte:

                        0.4.1 Testen.

                        Sollte beides gefixt sein

                        Ja, Danke

                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                        Immer Daten sichern!

                        1 Antwort Letzte Antwort
                        1
                        • B backfisch88

                          Hallo zusammen,

                          ich möchte euch LaundryLens vorstellen – einen selbstlernenden Adapter, der über einen Smart-Plug/Leistungsmesser (bei mir ein Shelly EM) automatisch erkennt, wann eure Waschmaschine oder euer Trockner läuft, welches Programm vermutlich gewählt wurde, und wie lange der Zyklus noch dauert.

                          Was der Adapter macht

                          • Erkennt Start/Ende eines Zyklus über eine State Machine (aus/startet/läuft/pausiert/endet)
                          • Lernt eure Programme selbst – es gibt keine vorgefertigten Profile, jedes Programm wird bei euch individuell trainiert
                          • Vergleicht laufende Leistungskurven gegen gelernte Profile (segmentgewichtete Korrelation + DTW-Tiebreak), akkumuliert die Konfidenz über mehrere Runden, damit ein einzelner Ausreißer nicht gleich zur Fehlerkennung führt
                          • Schätzt die Restzeit dynamisch (Zeit- und Energiesignal kombiniert, nicht nur ein fixer Durchschnittswert)
                          • Admin-UI mit Zyklus-Liste inkl. Leistungsgraph, Trimmen/Teilen von Aufzeichnungen, eigenem Export/Import
                          • Telegram-Benachrichtigungen (Start/Update/Fertig), frei konfigurierbar mit Platzhaltern
                          • Beliebig viele Geräte, eine Instanz pro Gerät

                          Aktueller Stand

                          Alpha/Beta – ich nutze es selbst seit einigen Wochen zuverlässig für Waschmaschine und Trockner (beide Siemens iQ). Spülmaschine und Waschtrockner sind im Code als Gerätetyp vorgesehen, aber von mir noch nicht selbst getestet – hier bin ich auf Feedback angewiesen.

                          Installation

                          Aktuell noch nicht im offiziellen ioBroker-Repository, Installation über GitHub:

                          iobroker url https://github.com/backfisch88/ioBroker.laundrylens
                          iobroker add laundrylens
                          

                          Danach pro Gerät eine eigene Instanz anlegen und den passenden Leistungs-Datenpunkt (Watt) auswählen.

                          Wichtig zu wissen

                          • Der Adapter muss erst lernen – die ersten paar Zyklen eines Programms werden noch nicht zuverlässig erkannt
                          • Faustregel: je weniger unterschiedliche Programme ihr ihm beibringt, desto höher die Trefferquote – lieber erstmal nur die 2-3 meistgenutzten Programme lernen lassen
                          • Die Erkennungs-Schwelle ist ein Kompromiss zwischen Geschwindigkeit und Genauigkeit, die Standardwerte sind auf meine Geräte abgestimmt – etwas Tuning pro Gerät ist normal
                          • Restzeitschätzung ist eine Schätzung, keine Garantie

                          Links

                          GitHub (Code, Doku, Issues): https://github.com/backfisch88/ioBroker.laundrylens

                          Über Feedback, Bug-Reports und vor allem Erfahrungsberichte von anderen Geräten/Herstellern würde ich mich sehr freuen!

                          sigi234S Online
                          sigi234S Online
                          sigi234
                          Forum Testing Most Active
                          schrieb zuletzt editiert von
                          #60

                          @backfisch88

                          9fd5df6c-e53e-4d95-973f-dd561749fcf6-image.jpeg

                          Empfohlene Einstellung kommt obwohl im Adapter 4 Minuten eingestellt sind.

                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Immer Daten sichern!

                          B 1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @backfisch88

                            9fd5df6c-e53e-4d95-973f-dd561749fcf6-image.jpeg

                            Empfohlene Einstellung kommt obwohl im Adapter 4 Minuten eingestellt sind.

                            B Online
                            B Online
                            backfisch88
                            schrieb zuletzt editiert von
                            #61

                            @sigi234
                            Hast du die Instanz danach neu gestartet?

                            1 Antwort Letzte Antwort
                            0
                            • icebearI Online
                              icebearI Online
                              icebear
                              schrieb zuletzt editiert von
                              #62

                              @backfisch88

                              Perfekt, Danke für die schnelle Fehlerbehebung, jetzt funktioniert die Ansicht im Admin

                              laundry-lens2.png

                              1 Antwort Letzte Antwort
                              1

                              Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                              Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                              Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                              Registrieren Anmelden
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              403

                              Online

                              33.0k

                              Benutzer

                              83.5k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2026
                              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