Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      Beowolf @Neuschwansteini last edited by

      @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

      Naechstes Problem, meine Tags werden gerne hin- und her getoggelt zwischen den AP's,

      Ich habe hier auch drei APs.

      Ich habe das so gelöst, das ich jedem AP seine TAGs zuordne und dem AP dann verbiete einen neuen TAG anzunehmen. Wärend ich die Tags den APs zuordne sind jeweils die anderen beiden APs aus.

      Jeder AP hat auch seinen eigenen Kanal.

      Das läuft bis jetzt sehr gut.

      Walter.O. 1 Reply Last reply Reply Quote 0
      • Walter.O.
        Walter.O. @Beowolf last edited by

        Hallo, gibt es hier einen Link zu einer seite für mich als Anfänger im E-Paperbereich .?
        Schön wäre eine schritt für schritt anleitung für den Einstieg.
        Danke

        B Walter.O. 2 Replies Last reply Reply Quote 0
        • B
          Beowolf @Walter.O. last edited by Beowolf

          @walter-o

          Na ja, wie wäre es mit dem ersten Beitrag, ganz oben? 👍

          1 Reply Last reply Reply Quote 1
          • B
            bimmi last edited by

            @ilovegym Also das die Access Points nach einer Weile den Versand der Daten einstellen halte ich für nicht richtig. Homeassistant nutzt ja auch die WebSocket Verbindung und da läuft es sehr stabil.

            @Beowolf jeder ap braucht einen eigenen zigbee Kanal. Dann wechseln die displays auch nicht mehr hin und her.

            Übrigens wurde inzwischen SubGhz und BLE implementiert. Das öffnet Oepl noch ein Stück weiter und es gibt viele neue Displays die unterstützt werden! Chroma74 usw...

            7,4 Zoll Display
            IMG_20240506_165358.jpg

            B 1 Reply Last reply Reply Quote 0
            • B
              Beowolf @bimmi last edited by

              @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

              @Beowolf jeder ap braucht einen eigenen zigbee Kanal. Dann wechseln die displays auch nicht mehr hin und her.

              Das hatte ich aber schon geschrieben 😊

              Zwei Beiträge drüber: "Jeder AP hat auch seinen eigenen Kanal."

              Liegt es dann an dem Web-Socket Adapter in ioBroker, das die Verbindung nicht bleibt?

              BananaJoe 1 Reply Last reply Reply Quote 0
              • B
                bimmi last edited by

                Sorry 😁

                Mhm. Es könnte durchaus am iobroker liegen. Wenn ich mein Chrome plugin laufen lasse kommen die Daten kontinuierlich 🤔

                B 1 Reply Last reply Reply Quote 0
                • B
                  Beowolf @bimmi last edited by

                  @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                  Wenn ich mein Chrome plugin laufen lasse kommen die Daten kontinuierlich

                  Was ist das? Kannst Du das hier einstellen/erklären?

                  Dann könnte ich hier schauen ob alles läuft.

                  1 Reply Last reply Reply Quote 0
                  • B
                    bimmi last edited by

                    @Beowolf Als Plugin nutze ich das hier für den chrome browser: https://chromewebstore.google.com/detail/simple-websocket-client/pfdhoblngboilpfeibdedpjgfnlcodoo?hl=de&pli=1

                    da kann man einfach die ip vom AP eintragen ws://IP.ADRESSE../ws

                    27c532ee-ad29-479a-b131-e412f2c0f78b-image.png

                    1 Reply Last reply Reply Quote 0
                    • B
                      Beowolf last edited by Beowolf

                      Ok, habe das Plugin für Firefox gefunden.

                      Dort laufen die Daten ein.

                      Das sind die Daten, die auch erscheinen, wenn man im AP auf den rechten TAB klickt (dieses Blatt-Symbol) und dann das Häckchen bei "Show all websocket traffic" macht, richtig?

                      Der Port vom WS ist im ioBroker 8084. Sollte dort, wenn ich die Protokolleinstellung auf "Alles" stelle nicht auch das alles angezeigt werden?

                      1 Reply Last reply Reply Quote 0
                      • B
                        Beowolf last edited by Beowolf

                        Bei mir sind die Adapter WEB-Server und WEB-Socket installiert.

                        Kommen die sich ins Gehege?

                        Gerade eine Fehlermeldung "erzeugt".

                        open-epaper-link.0
                        	2024-05-10 13:25:51.295	error	Cannot read properties of undefined (reading 'mac')
                        open-epaper-link.0
                        	2024-05-10 13:25:51.295	error	TypeError: Cannot read properties of undefined (reading 'mac') at WebSocket.<anonymous> (/opt/iobroker/node_modules/iobroker.open-epaper-link/build/main.js:124:102) at WebSocket.emit (node:events:517:28) at Receiver.receiverOnMessage (/opt/iobroker/node_modules/ws/lib/websocket.js:1209:20) at Receiver.emit (node:events:517:28) at /opt/iobroker/node_modules/ws/lib/receiver.js:608:16 at node:internal/process/task_queues:140:7 at AsyncResource.runInAsyncScope (node:async_hooks:203:9) at AsyncResource.runMicrotask (node:internal/process/task_queues:137:8) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
                        open-epaper-link.0
                        	2024-05-10 13:25:51.294	error	uncaught exception: Cannot read properties of undefined (reading 'mac')
                        

                        Hilft das?

                        1 Reply Last reply Reply Quote 0
                        • BananaJoe
                          BananaJoe Most Active @Beowolf last edited by

                          @beowolf sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                          Liegt es dann an dem Web-Socket Adapter in ioBroker, das die Verbindung nicht bleibt?

                          Ich denke nicht, die AP nutzen das doch wenn untereinander.
                          Oder wie kommunizierst du aus Sicht des ioBrokers mit dem AccessPoints für die ePaper?

                          1 Reply Last reply Reply Quote 0
                          • B
                            Beowolf last edited by

                            Was mir auffällt, wenn ich einen AP reboote, verliert der OpenEpaper-Adapter sofort die Verbindung und stellt sie auch nicht wieder her.

                            Ist das also ein "Timing-Problem" zwischen dem Adapter und den APs?

                            1 Reply Last reply Reply Quote 0
                            • B
                              Beowolf last edited by

                              Hier noch einmal die Meldung die kommt, wenn sich der Adapter Aufhängt.

                              host.raspberrypi
                              	2024-05-10 14:00:33.724	error	instance system.adapter.open-epaper-link.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                              open-epaper-link.0
                              	2024-05-10 14:00:32.953	warn	Terminated (UNCAUGHT_EXCEPTION): Without reason
                              open-epaper-link.0
                              	2024-05-10 14:00:32.952	info	terminating
                              open-epaper-link.0
                              	2024-05-10 14:00:32.948	error	Cannot read properties of undefined (reading 'mac')
                              open-epaper-link.0
                              	2024-05-10 14:00:32.948	error	TypeError: Cannot read properties of undefined (reading 'mac') at WebSocket.<anonymous> (/opt/iobroker/node_modules/iobroker.open-epaper-link/build/main.js:124:102) at WebSocket.emit (node:events:517:28) at Receiver.receiverOnMessage (/opt/iobroker/node_modules/ws/lib/websocket.js:1209:20) at Receiver.emit (node:events:517:28) at /opt/iobroker/node_modules/ws/lib/receiver.js:608:16 at node:internal/process/task_queues:140:7 at AsyncResource.runInAsyncScope (node:async_hooks:203:9) at AsyncResource.runMicrotask (node:internal/process/task_queues:137:8) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
                              open-epaper-link.0
                              	2024-05-10 14:00:32.947	error	uncaught exception: Cannot read properties of undefined (reading 'mac')
                              
                              BananaJoe B 2 Replies Last reply Reply Quote 0
                              • BananaJoe
                                BananaJoe Most Active @Beowolf last edited by

                                @beowolf Was genau bringt dir denn der Adapter? Im Moment würde ich den einfach nicht nutzen.

                                B 1 Reply Last reply Reply Quote 0
                                • B
                                  Beowolf @BananaJoe last edited by

                                  @bananajoe

                                  Ich würde gerne die Buttons mit verwenden.

                                  bimmi hatte hier mal ein Skript für die Button-Abfrage eingestellt.

                                  Das "hängt" ja auch nach einer gewissen Zeit. Erst wenn ich das Skript neu starte, funktioniert auch die Buttonabfrage wieder.

                                  Ein Reboot der APs bringt keine Änderung. Es hat meiner Meinung nach etwas mit dem web-socket Adapter zu tun.

                                  1 Reply Last reply Reply Quote 0
                                  • B
                                    bimmi @Beowolf last edited by

                                    @beowolf sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                    host.raspberrypi 2024-05-10 14:00:33.724 error instance system.adapter.open-epaper-link.0 terminated with code 6 (UNCAUGHT_EXCEPTION) open-epaper-link.0 2024-05-10 14:00:32.953 warn Terminated (UNCAUGHT_EXCEPTION): Without reason open-epaper-link.0 2024-05-10 14:00:32.952 info terminating open-epaper-link.0 2024-05-10 14:00:32.948 error Cannot read properties of undefined (reading 'mac') open-epaper-link.0 2024-05-10 14:00:32.948 error TypeError: Cannot read properties of undefined (reading 'mac') at WebSocket.<anonymous> (/opt/iobroker/node_modules/iobroker.open-epaper-link/build/main.js:124:102) at WebSocket.emit (node:events:517:28) at Receiver.receiverOnMessage (/opt/iobroker/node_modules/ws/lib/websocket.js:1209:20) at Receiver.emit (node:events:517:28) at /opt/iobroker/node_modules/ws/lib/receiver.js:608:16 at node:internal/process/task_queues:140:7 at AsyncResource.runInAsyncScope (node:async_hooks:203:9) at AsyncResource.runMicrotask (node:internal/process/task_queues:137:8) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) open-epaper-link.0 2024-05-10 14:00:32.947 error uncaught exception: Cannot read properties of undefined (reading 'mac')

                                    kannst du mal das script hier testen:

                                    const WebSocket = require('websocket').w3cwebsocket;
                                    
                                    // Funktion zum Behandeln der WebSocket-Verbindung für EPS
                                    function handleEPSWebSocket(deviceIP) {
                                        const ws = new WebSocket(deviceIP);
                                    
                                        // Ereignishandler, wenn die WebSocket-Verbindung geöffnet wird
                                        ws.onopen = () => {
                                            console.log(`Verbindung zu ${deviceIP} erfolgreich hergestellt.`);
                                        };
                                    
                                        // Fehlerbehandlung für die WebSocket-Verbindung
                                        ws.onerror = (error) => {
                                            console.error(`WebSocket-Fehler: ${error.message}`);
                                        };
                                    
                                        // Behandlung der Schließung der WebSocket-Verbindung
                                        ws.onclose = (event) => {
                                            console.log(`WebSocket-Verbindung geschlossen: Code=${event.code}, Grund=${event.reason}`);
                                        };
                                    
                                        // Datenempfang über WebSocket
                                        ws.onmessage = (event) => {
                                            const data = event.data.toString();
                                            console.log(`Empfangene Daten von EPS (${deviceIP}): ${data}`);
                                    
                                            try {
                                                const jsonData = JSON.parse(data);
                                                console.log('JSON-Daten:', jsonData); // Ausgabe der empfangenen Daten für Überprüfung
                                    
                                                // Sicherstellen, dass das 'tags' Array existiert und mindestens ein Element enthält
                                                if (jsonData.tags && jsonData.tags.length > 0) {
                                                    const tag = jsonData.tags[0];
                                                    
                                                    // Überprüfen, ob die notwendigen Eigenschaften vorhanden sind
                                                    if (tag && tag.wakeupReason && tag.mac) {
                                                        console.log(`Wakeup Reason erhalten: ${tag.wakeupReason}`);
                                                        console.log(`MAC erhalten: ${tag.mac}`);
                                    
                                                        // Schreibe den aktuellen Wert von Mac und wakeupReason in den Datenpunkt
                                                        setState('0_userdata.0.EPS.Websocket', `${tag.mac}_${tag.wakeupReason}`, true);
                                                        console.log(`Aktueller Wert von Wakeup Reason (${tag.wakeupReason}) und MAC (${tag.mac}) in Datenpunkt geschrieben.`);
                                                    } else {
                                                        console.log('Notwendige Eigenschaften `wakeupReason` oder `mac` fehlen in den Daten.');
                                                    }
                                                } else {
                                                    console.log('Keine oder leere Tags im JSON-Datenobjekt vorhanden.');
                                                }
                                            } catch (error) {
                                                console.error(`Fehler beim Verarbeiten der empfangenen Daten: ${error}`);
                                            }
                                        };
                                    }
                                    
                                    // Verbindung zum EPS WebSocket-Server herstellen und behandeln
                                    handleEPSWebSocket('ws://192.168.1.70/ws');
                                    
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      Beowolf last edited by

                                      Kommt direkt das

                                      10.5.2024, 22:56:34.853	[warn ]: javascript.0 (10472)     at W3CWebSocket.ws.onmessage (script.js.common.EPaper-Displays.Erdgeschoss.button:42:21)
                                      10.5.2024, 22:56:34.857	[warn ]: javascript.0 (10472)     at W3CWebSocket.ws.onmessage (script.js.common.EPaper-Displays.Erdgeschoss.button:41:21)
                                      10.5.2024, 22:56:34.860	[warn ]: javascript.0 (10472)     at W3CWebSocket.ws.onmessage (script.js.common.EPaper-Displays.Erdgeschoss.button:42:21)
                                      
                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        bimmi @Beowolf last edited by

                                        @beowolf ich schau dieses Wochenende nochmal drüber 👍

                                        1 Reply Last reply Reply Quote 0
                                        • B
                                          bimmi last edited by bimmi

                                          So, hab mich mal ein bisschen bemüht und dann ist folgendes herausgekommen:

                                          https://github.com/slimline33/OpenEPaperLink-IOBROKER-JavaScript

                                          Bitte testen.

                                          "javascript.0 (1401318) script.js.EPS.Websocket2_Test: Object "0_userdata.0.OpenEPaperLink.4467090B10421125" can't be copied: {}"

                                          Den Fehler bekomm ich noch nicht weg, ändert aber nichts an der Funktion!

                                          Neuschwansteini B 2 Replies Last reply Reply Quote 2
                                          • Neuschwansteini
                                            Neuschwansteini @bimmi last edited by

                                            @bimmi

                                            super, laeuft einwandfrei!
                                            Hat n bisschen gedauert, bis alle Datenpunkte angelegt wurden, und man das im Admin gesehen hat.. aber ich glaube das war noch ein Bug im Admin 6.17.3... die neueren Versionen geiern ja ab, wenn man was aendert..

                                            Aber super, so habe ich alle Datenpunkte mit Mac etc drin und darauf zieh ich mir dann die Daten fuer die Scripte..

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            979
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            42
                                            991
                                            240496
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo