Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

  • jaykay
    antwortet
    Danke für die Info. Das Probiere ich mal aus. Mittlerweile läut alles auf dem ESP32 .
    Ich habe hier irgendwo auf den 50 Seitten was von einem Wiki gelesen, konnte es aber nicht finden. Ist das umgezogen oder abgeschaltet?

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Die Hardwarezugriffe sind eigentlich alle hier: https://github.com/thelsing/knx/blob...o_platform.cpp bzw. in der Hardwarespezifischen Platform. Du kannst da die SerialDebug oder SerialKnx Zugriffe auskommentieren, wenn du den Uart schon anderweitig nutzt.

    Einen Kommentar schreiben:


  • jaykay
    antwortet
    Vielen Dank.
    Habe noch ein anderes "Problem" ich versuche (12) WS2812 LEDs per NeoPixelBus anzusprechen.
    Die LED Lib brauchen spezielle GPIOs: Link
    HTML-Code:
    ⚠️ IMPORTANT ⚠️
    The esp8266 requires hardware support to be able to reliably send the data stream. Due to this and the restrictions on which pins are used by each hardware peripheral, only io pins GPIO1, GPIO2, and GPIO3 can be used. The Pin argument is ignored and can be omitted.
    The DMA methods will use GPIO3.
    The UART1 methods will use GPIO2.
    The UART0 methods will use GPIO1.
    Ohne die KNX Lib alles kein Problem. DMA und UART1 fuktionieren.
    - Wenn ich die DMA Variante GPIO 3 (Serial RX auf dem Wemos D1 mini) funktioniert mein Sketch aber ich kann nicht mehr per ETS programmieren.
    - Per Uart1 kann ich per ETS programmieren, aber die LEDs funktionieren nicht.
    Wie komme ich hier weiter? Da ich keine Fehlermeldung/Exception bekomme weiß ich nicht was sich da beißt
    Habe schon versucht auf einen ESP32 zuwechseln, da scheitere ich schon an der knx-demo...

    Gruß, Kay

    Einen Kommentar schreiben:


  • Sonnengruesser
    antwortet
    Zitat von jaykay Beitrag anzeigen
    Was müsste den richtiger weise hochgezählt werden? Applicationsnummer oder die Applikationsversion

    Einen Kommentar schreiben:


  • jaykay
    antwortet

    Hallo Waldemar,

    ja, ich war kurz geschockt . Habe es aber nach der KNX Support Anleitung hier schon repariert. Nach dem umbennen des Odners ProductStore startete die ETS wieder.
    Danke für deine Anleitung! Was müsste den richtiger weise hochgezählt werden? Applicationsnummer oder die Applikationsversion oder beides?

    Danke und Gruß, Kay

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hallo Kay,

    das schockt einen schon ganz schön, oder? Ich hoffe, Du hast Dein produktives Projekt vorher exportiert .

    Ansonsten: Keine Panik! Bisher hab ich meine ETS immer wieder zum Leben wiedererwecken können...

    Übliche Ursache: Produktkatalog ist kaputt. Hast Du selber verursacht (s.u.).
    • ETS beenden
    • C:\ProgramData\KNX\ETS5\OnlineCatalog irgendwo hin kopieren (Sicherheitskopie)
    • C:\ProgramData\KNX\ETS5\OnlineCatalog löschen
    • ETS neu starten
    Danach wird das ziemlich sicher wieder laufen.

    Worauf Du noch in Zukunft achten musst: Solange Du Dich nicht um Versionierung kümmerst (und das macht man beim rumprobieren meist nicht), musst Du folgendermaßen vorgehen, damit der Produktkatalog nicht irgendwann (passiert nicht sofort) kaputt geht (ich nehme an, Du hast ein Bettsensor.knxprod):
    • Bettsensor aus Deinem Projekt löschen
    • Bettsensor aus dem Katalog löschen
    • Projekt schließen
    • Projekt markieren
    • Rechts im Eigenschaften-Fenster mit der Maus auf "Gesamtgröße" gehen, jetzt erscheint "Jetzt komprimieren"
    • Da drauf clicken
    • Danach Projekt wieder öffnen
    Jetzt kannst Du einen neu gebauten Bettsensor.knxprod in den Katalog importieren und anschließend in Dein Projekt aufnehmen.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • jaykay
    antwortet
    Hallo Zusammen,

    nach dem die Beispielprojekte super funktioniert haben, habe ich mich mal an ein eigenes Projekt getraut.
    Irgendwas grobes muss ich leider falsch gemacht haben, den nach dem erfolgreichen Import der KNX_Bettsensor_IP.knxprod startet meine ETS5 nicht mehr.

    Hat jemand eine Ahnung wie ich das wieder repariert bekomme?

    Gruß, Kay
    Angehängte Dateien

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi Thomas,

    danke für die Antwort.

    Zitat von thesing Beitrag anzeigen
    Ich sehe Reads eher als etwas passives.
    Ich stimme Dir da zu bzw. habe es auch bisher so interpretiert und implementiert. Ich weiß auch noch nicht, ob ich es angehen werde, aber wenn, dann weiß ich ja jetzt, wo ich nachschauen muss.

    Zitat von thesing Beitrag anzeigen
    Zumal ein Read nicht heißt, dass alle Geräte den Wert gesehen haben, da ja ein Gerät noch nicht gestartet sein könnte o.ä.
    Genau über dieses Problem bin ich auch letztens gestolpert, als ich die Initialisierung eines Logikkanals getestet hatte und dieser "sporadisch" nicht funktionierte. Lag auch nur daran, dass andere Geräte noch nicht sendefähig waren. Deswegen gibt es in der nächsten Version meiner Logik-Firmware ein "Zyklisch lesen, bis das erste Telegramm eingeht" .

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Hallo Waldemar

    das gibt es bisher nicht. Man könnte dafür aber einfach ein neues Flag am GroupObject hinzufügen. Ich es sinnvoll ist Logikaktionen von einem Read abhängig zu machen ist Geschmackssache. Ich sehe Reads eher als etwas passives. Zumal ein Read nicht heißt, dass alle Geräte den Wert gesehen haben, da ja ein Gerät noch nicht gestartet sein könnte o.ä. Aber es spricht aus meiner Sicht nichts dagegen so ein Flag hinzuzufügen.

    Viele Grüße und frohe Ostern.
    Thomas

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi Thomas,

    hab schon länger nicht mehr in Deinen Stack abtauchen müssen, da alles geradezu perfekt und irre stabil läuft. Aber heute hätte ich doch eine Situation, bei der ich überlege, ob ich es besser machen kann...

    Deswegen hier die Frage: Kann ich irgendwie in der Anwendung mitbekommen, ob ein KO per GroupValueRead abgefragt wurde?

    Hintergrund: Messwerte werden ja üblicherweise über Bedingungen zyklisch gesendet, ich schreibe aber auch Zwischenergebnisse mit valueNoSend ins KO, damit man sie sich per Read abholen kann.
    Eine meiner Bedingungen ist "Abweichung vom letzten gesendeten Wert" und das kann man auf 2 Arten interpretieren: Abweichung vom letzten AKTIV gesendeten Wert (so ist es jetzt) oder eben Abweichung vom letzten Wert, der auf dem Bus war - und das könnte auch ein gelesener Wert sein. Um letzteres zu realisieren, müsste ich wissen, wann und welcher Wert gelesen wurde.

    Frohe Ostern und viele Grüße,
    Waldemar

    Einen Kommentar schreiben:


  • geolin
    antwortet
    Zitat von thesing Beitrag anzeigen
    Du musst eigentlich nur https://github.com/thelsing/knx/blob...facade.cpp#L21 Die Bau57B0 zu Bau07B0 ändern.
    Dann sollte ArduinoPlatform::SerialDebug auf die DebugSerial gesetzt werden (wahrscheinlich Serial1 bei dir).
    Die Serielle Schnittstelle für knx wird bei https://github.com/thelsing/knx/blob...atform.cpp#L10 gesetzt. Das sollte eigentlich auch stimmen.

    Ich hoffe das hilft soweit.
    Vielen Dank für den Hinweis, dann werde ich das mal ausprobieren.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Du musst eigentlich nur https://github.com/thelsing/knx/blob...facade.cpp#L21 Die Bau57B0 zu Bau07B0 ändern.
    Dann sollte ArduinoPlatform::SerialDebug auf die DebugSerial gesetzt werden (wahrscheinlich Serial1 bei dir).
    Die Serielle Schnittstelle für knx wird bei https://github.com/thelsing/knx/blob...atform.cpp#L10 gesetzt. Das sollte eigentlich auch stimmen.

    Ich hoffe das hilft soweit.

    Einen Kommentar schreiben:


  • geolin
    antwortet
    Hallo zusammen,

    ich lese hier schon einige Zeit sehr interessiert stumm mit und bin begeistert, was hier geleistet wird.
    Privat habe ich mir einen Sensor aufgebaut, welcher mit einem ESP8266 und Siemens TP-UART Werte kabelgebunden (nicht über WiFi) an den KNX Bus sendet. Das funktioniert soweit problemlos, bisher setze ich die KNX Lib. von Thorsten Gehrig ein. Ich möchte aber das Devices zusätzlich auch über die ETS parametrieren können, was mit der genannten Lib. nicht geht.
    Ich sehe aber hier bei der von thesing entwickelten Lib. vor lauter Bäumen den Wald nicht, was ich wo ändern muss, damit die KNX Kommunikation mit einem ESP8266 (z.B. D1 Mini) per TP über den Siemens UART läuft (und eben nicht per WiFi über IP).
    Kann mir da jmnd. einen Schubs geben, wo ich schauen muss?

    Vielen lieben Dank und Gruß
    Geolin

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Hi,

    falls es die beteiligten hier interessiert: Ich habe soeben das Ergebnis meiner Arbeit mit den Stack veröffentlicht. Nachzulesen hier: https://knx-user-forum.de/forum/%C3%...dul-von-masifi

    Danke nochmal für die Unterstützung hier.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Wenn du mit realisieren implementieren meinst, dann ja. Bisher ist aber noch nichts in der Richtung implementiert.
    VG
    Thomas

    Einen Kommentar schreiben:

Lädt...
X