Ankündigung

Einklappen
Keine Ankündigung bisher.

OpenKNX-Logikmodul release

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sisamiwe
    antwortet
    mumpf willisurf

    Hallo,

    ich bräuchte mal Hilfe der Logikexperten, ich stehe auf dem Schlauch....
    Ich versuche über den Anstieg der Luftfeuchtigkeit im Bad "Duschbeginn" zu detektieren.
    Dazu habe ich an folgende Logik gedacht:
    Kanal 1 hat als Eingang die Luftfeuchte und gibt diese nach einer Verzögerung von xx Sekunden an Kanal 2 weiter.
    Kanal 2 macht ein Differenzintervall zwischen der verzögerten Luftfeuchte (Eingang 1 mit internem KO) und der Luftfeuchte (Eingang 2). Wenn die Differenz negativ ist (also die aktuelle Luftfeuchte größer als die verzögerte) dann schicke ein EIN.
    Irgendwie klappt das nicht und ich finde den Fehler nicht.

    Wie macht man das richtig?

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Ja, da arbeite ich gefühlt seit Wochen dran. Und habe jetzt schweren Herzens etwas beschlossen, wass einigen weh tun wird (ich weiß nicht, ob Du dazu gehörst), aber es geht nicht anders. Ich werde jetzt erstmal den VPM mit der neuen Infrastruktur (und dem neuen Logikmodul) rausbringen (heute oder morgen), dann das Sensormodul (kommendes Wochenende). Beide aber nur für die RP2040-Hardware. Es geht einfach nicht mehr mit dem SAMD. Ich habe wirklich mehrere Wochen lang (nicht am Stück, aber immer wieder) versucht, noch RAM zu sparen, um es hin zu bekommen. Aber es ist nicht stabil und der hängt sich immer wieder auf. Damit würde ich keinem eine Freude machen.

    Natürlich dann das SAMD-Sensormodul noch in der alten Variante weiter betrieben werden, die ist durchaus robust und funktioniert zuverlässig, aber alle neuen Funktionen kosten einfach zu viele Ressourcen, dass es der SAMD noch schaffen kann.

    In der ersten Runde wird das neue Sensormodul auch noch ohne 1-Wire-Unterstützung sein, das gibt es erst in ca. 2-3 Monaten, nach meinem Urlaub .

    Gruß, Waldemar

    P.S.: Das neue Logikmodul wird in alle Module Einzug halten, die ein Update rausbringen und ein Logikmodul anbieten, z.B. auch der neue Fingerprint...

    Einen Kommentar schreiben:


  • henfri
    antwortet
    Hallo,

    danke für das neue Release!
    Gibt es einen Plan, das im Sensormodul enthaltene Logikmodul auf diese Version zu aktualisieren?

    Viele Grüße,
    Hendrik

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Das wäre zumindest die Erklärung, warum es nicht hilft, die Länge mitzusenden und dazu passend eine andere Fehlermeldung zu generieren.

    Was ist außerdem nicht verstehe: APDU ist hier 55, aber die Formel, die klappt, ist 63 Byte. Wieso klappt das?

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • traxanos
    antwortet
    Für mich Sicht das aus als würde der Befehl garnicht gesendet. Bei mir habe ich min 1 Telegramm mehr. Vg vermute, wenn es zu groß ist, wird es einfach nicht gesendet.

    Einen Kommentar schreiben:


  • thewhobox
    antwortet
    Was Marco meint ist das "FunctionPropertyInvoke" oder so ähnlich.
    Das wäre interessant zu wissen, wie es auf der TP-Linie aussieht.

    Auf der IP Seite kam bei meinen Test einfach Müll zurück in den restlichen Bytes.
    Wie das auf TP-Seite aussieht weiß ich nicht.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von traxanos Beitrag anzeigen
    Command dazu ist wichtig weil damit die Formel übertragen wird.
    Das sind die Commands, die bei Formel prüfen ausgeführt werden:

    Code:
    #    Zeit    Dienst    Flags     Prio    Quelladresse    Quellname    Zieladresse    Zielname    Gebäudefunktion    Gebäudeteil    Hop Count    Typ    DPT    Info
    13    11.07.2024 16:08:48,829    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    T_Connect        
    14    11.07.2024 16:08:48,870    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    DeviceDescriptor_Read (S=0)        DescriptorType=0
    15    11.07.2024 16:08:48,892    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    T_ACK (S=0)        
    16    11.07.2024 16:08:48,923    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    DeviceDescriptor_Response (S=0)        DescriptorType=0, DescriptorData=07 B0
    17    11.07.2024 16:08:48,970    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    T_ACK (S=0)        
    18    11.07.2024 16:08:49,021    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    PropertyValue_Read (S=1)        ObjectIndex=0, PropertyId=56, Count=1, StartIndex=1
    19    11.07.2024 16:08:49,041    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    T_ACK (S=1)        
    20    11.07.2024 16:08:49,084    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    PropertyValue_Response (S=1)        ObjectIndex=0, PropertyId=56, Count=1, StartIndex=1, Data=00 FE
    21    11.07.2024 16:08:49,146    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    T_ACK (S=1)        
    23    11.07.2024 16:08:49,383    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    T_ACK (S=2)        
    24    11.07.2024 16:08:49,414    vom Bus        System    1.0.201    OpenKNX: Soundmodul    1.0.255    -            6    FunctionPropertyState_Response (S=2)        ObjectIndex=160, PropertyId=4, ReturnCode=255
    27    11.07.2024 16:08:50,471    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    T_ACK (S=2)        
    28    11.07.2024 16:08:50,511    zum Bus        System    1.0.255    -    1.0.201    OpenKNX: Soundmodul            6    T_Disconnect    ​
    Details zu #14:
    Eigenschaft Wert
    RawData 2E 00 B0 60 10 FF 10 C9 01 43 00
    MessageCode L_Data_con
    Source 1.0.255
    SourceName -
    Destination 1.0.201
    DestinationName OpenKNX: Soundmodul
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service zum Bus
    LocalizedType DeviceDescriptor_Read (S=0)
    Security
    SequenceNumber 0
    TPCI T_Data_Connected
    APCI DeviceDescriptor_Read
    DescriptorType 0

    #16:
    Eigenschaft Wert
    RawData 29 00 B0 60 10 C9 10 FF 03 43 40 07 B0
    MessageCode L_Data_ind
    Source 1.0.201
    SourceName OpenKNX: Soundmodul
    Destination 1.0.255
    DestinationName -
    RepeatedFlag False
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service vom Bus
    LocalizedType DeviceDescriptor_Response (S=0)
    Security
    SequenceNumber 0
    TPCI T_Data_Connected
    APCI DeviceDescriptor_Response
    DescriptorType 0
    DescriptorData 07 B0

    #18
    Eigenschaft Wert
    RawData 2E 00 B0 60 10 FF 10 C9 05 47 D5 00 38 10 01
    MessageCode L_Data_con
    Source 1.0.255
    SourceName -
    Destination 1.0.201
    DestinationName OpenKNX: Soundmodul
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service zum Bus
    LocalizedType PropertyValue_Read (S=1)
    Security
    SequenceNumber 1
    TPCI T_Data_Connected
    APCI PropertyValue_Read
    PropertyObjectIndex 0
    PropertyId 56 (PID_MAX_APDULENGTH)
    PropertyCount 1
    PropertyStartIndex 1

    #20
    Eigenschaft Wert
    RawData 29 00 B0 60 10 C9 10 FF 07 47 D6 00 38 10 01 00 FE
    MessageCode L_Data_ind
    Source 1.0.201
    SourceName OpenKNX: Soundmodul
    Destination 1.0.255
    DestinationName -
    RepeatedFlag False
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service vom Bus
    LocalizedType PropertyValue_Response (S=1)
    Security
    SequenceNumber 1
    TPCI T_Data_Connected
    APCI PropertyValue_Response
    PropertyObjectIndex 0
    PropertyId 56 (PID_MAX_APDULENGTH)
    PropertyCount 1
    PropertyStartIndex 1
    PropertyData 00 FE

    #23
    Eigenschaft Wert
    RawData 29 00 B0 60 10 C9 10 FF 00 CA
    MessageCode L_Data_ind
    Source 1.0.201
    SourceName OpenKNX: Soundmodul
    Destination 1.0.255
    DestinationName -
    RepeatedFlag False
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service vom Bus
    LocalizedType T_ACK (S=2)
    Security
    SequenceNumber 2
    TPCI T_ACK

    #24
    Eigenschaft Wert
    RawData 29 00 B0 60 10 C9 10 FF 04 4A C9 A0 04 FF
    MessageCode L_Data_ind
    Source 1.0.201
    SourceName OpenKNX: Soundmodul
    Destination 1.0.255
    DestinationName -
    RepeatedFlag False
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service vom Bus
    LocalizedType FunctionPropertyState_Response (S=2)
    Security
    SequenceNumber 2
    TPCI T_Data_Connected
    APCI FunctionPropertyState_Response
    PropertyObjectIndex 160
    PropertyId 4 (PID_GROUP_OBJECT_REFERENCE)
    ReturnCode 255
    CommandData

    Einen Kommentar schreiben:


  • traxanos
    antwortet
    Ne das Command dazu ist wichtig weil damit die Formel übertragen wird.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von traxanos Beitrag anzeigen
    RawData Inhalt wäre interessant.
    Eigenschaft Wert
    RawData 29 00 B0 60 10 C9 10 FF 04 4A C9 A0 04 FF
    MessageCode L_Data_ind
    Source 1.0.201
    SourceName OpenKNX: Soundmodul
    Destination 1.0.255
    DestinationName -
    RepeatedFlag False
    Acknowledge Ack
    HopCount 6
    Priority System
    FrameFormat Standard
    Service vom Bus
    LocalizedType FunctionPropertyState_Response (S=2)
    Security
    SequenceNumber 2
    TPCI T_Data_Connected
    APCI FunctionPropertyState_Response
    PropertyObjectIndex 160
    PropertyId 4 (PID_GROUP_OBJECT_REFERENCE)
    ReturnCode 255
    CommandData

    Einen Kommentar schreiben:


  • traxanos
    antwortet
    Über den Busmonitor in der ETS selber. Erkennst du daran das der Typ "FunctionPropertyCommand" ist und die ObjectIndex=160 ist. RawData Inhalt wäre interessant.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von traxanos Beitrag anzeigen
    Könntest du beim Senden mal schauen ob das Paket einfach nur abgeschnitten wird von der ETS.
    Wenn Du mir sagst wie, kann ich das machen.

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Mache ich eigentlich. Und hab dafür eine eingene Fehlermeldung. Weiß nicht, warum das hier nicht geklappt hat. Beim Testen könnte ich das nur simulieren, wahrscheinlich hab ich mich vertan...

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • traxanos
    antwortet
    Sisamiwe

    Könntest du beim Senden mal schauen ob das Paket einfach nur abgeschnitten wird von der ETS. mumpf du solltest ggf. später noch eine länge mitsenden damit du prüfen kannst, ob der check vollständig ist oder nicht.

    Einen Kommentar schreiben:


  • traxanos
    antwortet
    Hab es auch mal ausprobiert und bei mir klappt es auf dem SOM inkl. Check.

    Übrigens kann man Kanäle jetzt auch exportieren So sieht das bei mir aus:

    Code:
    OpenKNX,cv1,0xA228:0x10/LOG:0x33/2§f~Name=absolute%20Luftfeuchte§f~Logic=2§f~NameInput1=Temperatur%20§f~E1=1§f~E1Dpt=7§f~E1Default=1§f~NameInput2=relativen%20Luftfeuchte§f~E2=1§f~E2Dpt=7§f~E2Default=1§f~NameOutput=absolute%20Luftfeuchte§f~ODpt=7§f~OOn=8§f~OOnAll=8§f~OOnFunction=201§f~OOff=0§f~OOffAll=0§;OpenKNX​
    Die benutzerformel muss man dennoch parallel ablegen weil die Kanalübergreifend ist.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von mumpf Beitrag anzeigen
    Das sind nur 63 Zeichen, das könnte noch klappen.
    Funktioniert. DANKE

    Einen Kommentar schreiben:

Lädt...
X