+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 13
  1. #1
    Registriert seit
    Sep 2014
    Ort
    Limeshain (Hessen)
    Beiträge
    5,424

    Question EIB-Instanz-Funktion kommt nicht mit Variable klar

    Hi!

    Hab da noch ein komisches Problem bei jemanden, das ich mir aktuell nicht erklären kann.

    PHP-Code:
    <?

    // VARIANTE 1 // FEHLER // EIB Group*| Could not convert data, Len: 2 , Data: 008000
    if (($Room == "wohnzimmer") AND ($RoomSub == "all"))
    {
        
    $InstanceID_AR = array(56368,18842,26908,36396);  // EIB Instanzen
    }

    if (
    $DeviceAction == "up")
    {
        
    $Value false;
    }
    elseif (
    $DeviceAction == "down")
    {
        
    $Value true;
    }

    foreach (
    $InstanceID_AR as $InstanceID)
    {
        
    EIB_Switch($InstanceID$Value);
    }



    // VARIANTE 2 // OK
    if (($Room == "wohnzimmer") AND ($RoomSub == "all"))
    {
        
    $InstanceID_AR = array(56368,18842,26908,36396);  // EIB Instanzen
    }

    if (
    $DeviceAction == "up")
    {
        foreach (
    $InstanceID_AR as $InstanceID)
        {
            
    EIB_Switch($InstanceIDfalse);
        }
    }
    elseif (
    $DeviceAction == "down")
    {
        foreach (
    $InstanceID_AR as $InstanceID)
        {
            
    EIB_Switch($InstanceIDtrue);
        }
    }

    ?>

    Warum bekomme ich bei Variante 1, wenn ich das true/false über eine Variable verwende den Fehler "EIB Group*| Could not convert data, Len: 2 , Data: 008000" in der Meldungen-Ausgabe und der Aktor macht nichts? Und ja, die Variable wird auch gefüllt, wenn ich diese mit IPS_LogMessage ausgebe, wird mir das richtige angezeigt - sonst würde Variante 2 ja auch nicht funktionieren.
    Weil - verwende ich Variante 2 und setze direkt true/false bei "EIB_Switch" ein, dann kommt kein Fehler im Meldungen-Fenster und der Aktor funktioniert korrekt

    Bug? Übersehe ich was? ...?

    Viele Grüße,
    Chris
    Geändert von Bayaro (07.09.18 um 17:03 Uhr)
    IP-Symcon Module >> www.bayaro.net << Verfügbare Module: BatterieMonitor, BundesligaTabelle, Enigma2BY, HeizölPreise, Helios, Horoskop, HostMonitor, IPSInformations, MELCloud, Müllabfuhr, PJLink, RSS, TankerkönigSpritpreise, xREL
    IPS Unlimited, ~1200 Scripte, ~7000 Variablen

  2. #2
    Registriert seit
    Oct 2010
    Ort
    Paderborn
    Beiträge
    2,977

    Sehr seltsam. Kann ja eigentlich nur an PHP liegen. Welche Version?

    Lässt sich das weiter reduzieren?

    PHP-Code:
    $Value true;
    EIB_Switch(56368$Value); 
    müsste dann ja auch einen Fehler liefern.
    HM per RaspberryMatic | EKM-868 | LGS-868 | 1 Wire | Fibaro Motion Sensor & Aeon Labs Z-Stick S2 | SONOS | Denon AVR 3312 | Vu+ Ultimo 4K | Sony KD-75XE9405 | Fritzbox 6360 | Hikvision DS-2CD2686G2-IZS | Echo Dot + Show | Stall.biz AirSniffer | Vaillant eBUS | Intel NUC i3 | IPS V5.5 Beta

  3. #3
    Registriert seit
    Apr 2017
    Beiträge
    955

    Lass dir bei Variante 1 in der foreach-Schleife mal den Wert von $Value ausgeben.
    Je nach Wert von $DeviceAction ist das bei Variante 1 eventuell nicht richtig initialisiert.
    Viele Grüße
    Volker

    KNX-TP, KNX-RF

  4. #4
    Registriert seit
    Sep 2014
    Ort
    Limeshain (Hessen)
    Beiträge
    5,424

    @bumaas: Ja, die „Kurzform“ liefert auch einen Fehler. Liegt definitiv nicht an der Schleife.

    @volker: Wie im 1. Post geschrieben - lasse ich mir den Wert in der Schleife ausgeben, ist dieser korrekt - und sonst würde Variante 2 ja auch nicht funktionieren. Und, die Kurzform ohne Schleife liefert den gleichen Fehler.

    IPS ist die aktuelle IPS 5 stable auf Ubuntu Server 18.04 LTS (nicht bei mir zu Hause) mit einem Weinzierl KNX IP Gateway.

    Danke und Grüße,
    Chris
    IP-Symcon Module >> www.bayaro.net << Verfügbare Module: BatterieMonitor, BundesligaTabelle, Enigma2BY, HeizölPreise, Helios, Horoskop, HostMonitor, IPSInformations, MELCloud, Müllabfuhr, PJLink, RSS, TankerkönigSpritpreise, xREL
    IPS Unlimited, ~1200 Scripte, ~7000 Variablen

  5. #5
    Registriert seit
    Apr 2017
    Beiträge
    955

    Zitat Zitat von Bayaro Beitrag anzeigen
    @volker: Wie im 1. Post geschrieben - lasse ich mir den Wert in der Schleife ausgeben, ist dieser korrekt - und sonst würde Variante 2 ja auch nicht funktionieren. Und, die Kurzform ohne Schleife liefert den gleichen Fehler.
    Dein

    EIB Group*| Could not convert data, Len: 2 , Data: 008000"

    weist sehr deutlich drauf hin, daß der übergebene Wert kein Boolean ist.

    Und dazu passend: Die erste Variante unterscheidet sind von der zweiten Variante darin, daß $Value nur für ($DeviceAction == "up") und ($DeviceAction == "down") einen Wert zugewiesen bekommt, aber das nachfolgende EIB_Switch() grundsätzlich immer aufgerufen wird.

    Bei Variante 2 wird EIB_Switch() tatsächlich nur bei ($DeviceAction == "up") und ($DeviceAction == "down") aufgerufen.

    ~~

    Wobei ... Die Kurzform von bumaas in #2 liefert bei mir keinen Fehler (IPS5 Windows).
    Geändert von volkerm (07.09.18 um 19:59 Uhr)
    Viele Grüße
    Volker

    KNX-TP, KNX-RF

  6. #6
    Registriert seit
    Sep 2014
    Ort
    Limeshain (Hessen)
    Beiträge
    5,424

    Nochmal...der Fehler kommt auch, wenn ich die Kurzform ohne Schleife verwende - wie von bumaas in Post 2 geschrieben.

    Grüße,
    Chris
    IP-Symcon Module >> www.bayaro.net << Verfügbare Module: BatterieMonitor, BundesligaTabelle, Enigma2BY, HeizölPreise, Helios, Horoskop, HostMonitor, IPSInformations, MELCloud, Müllabfuhr, PJLink, RSS, TankerkönigSpritpreise, xREL
    IPS Unlimited, ~1200 Scripte, ~7000 Variablen

  7. #7
    Registriert seit
    Apr 2017
    Beiträge
    955

    Ja, ok.

    Nochmal zum

    EIB Group*| Could not convert data, Len: 2 , Data: 008000"

    Sowas bekomme ich, wenn auf eine KNX-GA in IPS vom Bus ein Wert ankommt, der einen falschen Datentyp hat. Prüf das vielleicht auch nochmal, incl. der hörenden Adressen.
    Viele Grüße
    Volker

    KNX-TP, KNX-RF

  8. #8
    Registriert seit
    Sep 2014
    Ort
    Limeshain (Hessen)
    Beiträge
    5,424

    Wenn ich statt mit $Value direkt mit true/false im „EIB_Switch“ arbeite, dann gibt es keinen Fehler, sowohl beim Senden des Befehl zum Aktor nicht, als auch beim Empfangen eines Status, alles bestens und ohne Fehler.
    Ich bekomme die genannte Fehlermeldung nur, wenn ich mit „$Value = true“ arbeite.

    Adressen sind korrekt, sonst könnte ich direkt mit true/false auch nicht arbeiten und würde auch nicht den korrekten Status empfangen, wenn ich den Aktor anderweitig ansteuere. Denke ich. Vielleicht übersehe ich auch was, aber wenn true/false geht und $Value nicht...kann man nicht so viel falsch machen denke ich?!

    Grüße,
    Chris
    IP-Symcon Module >> www.bayaro.net << Verfügbare Module: BatterieMonitor, BundesligaTabelle, Enigma2BY, HeizölPreise, Helios, Horoskop, HostMonitor, IPSInformations, MELCloud, Müllabfuhr, PJLink, RSS, TankerkönigSpritpreise, xREL
    IPS Unlimited, ~1200 Scripte, ~7000 Variablen

  9. #9
    Registriert seit
    Apr 2017
    Beiträge
    955

    Schau vielleicht mal mit dem Gruppenmontor der ETS, was da alles auf dem Bus passiert bei deinem Fehlerszenario. Vielleicht kommt irgendeine Rückmeldung vom falschen Datentyp an, wie es die Meldung sagt.

    Und teste es auch mal mit einer neu angelegten 1-bit-GA, ob das mit „$Value = true“ fehlerfrei funktioniert. Also ganz einfach ohne Aktor, nur senden und im Gruppenmonitor schauen was ankommt.
    Viele Grüße
    Volker

    KNX-TP, KNX-RF

  10. #10
    Registriert seit
    Jan 2007
    Ort
    Nidda(Hessen)
    Beiträge
    7,337

    Standard EIB-Instanz-Funktion kommt nicht mit Variable klar

    Caste mal value auf (bool)$Value


    Gesendet von iPad mit Tapatalk
    Gruß Rainer


    Unmögliches wird sofort erledigt, Wunder dauern etwas länger.


Ähnliche Themen

  1. Antworten: 7
    Letzter Beitrag: 30.09.17, 17:13
  2. Antworten: 6
    Letzter Beitrag: 30.08.15, 12:09
  3. Antworten: 9
    Letzter Beitrag: 24.11.13, 16:01
  4. Problem mit EIB Group Funktion
    Von thka im Forum KNX/EIB, LCN
    Antworten: 13
    Letzter Beitrag: 06.11.12, 12:38
  5. EIB Modul wann kommt das
    Von egonkernien im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 25
    Letzter Beitrag: 21.01.09, 14:24

Stichworte