Professionelle Ethernet DMX Bridge als Alternative zur DMX Extension

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • hismastersvoice
    Supermoderator
    • 25.08.2015
    • 7238

    #16
    Da auf der Bridge von pmayer ein 328P arbeitet könnte man sich das ja mal anschauen.
    Das wäre wieder ein Vorteil gegenüber der Lox-Ext., so hätte man die Eierlegende-Wollmich-Sau für DMX erzeugt

    Vielleicht hat Robert L. ja das auch schon mal angesehen und kann was dazu sagen?
    Ich werde mir das am WE mal anschauen.
    Kein Support per PN!

    Kommentar

    • pmayer
      LoxBus Spammer
      • 27.02.2017
      • 379

      #17
      Denkt dran, dass wir ja auch noch LAN machen, was recht viel RAM braucht. Allerdings hat Paul Stoffregen V2 der Netzwerkbibliothek vor ein paar Wochen released. Dort hat er, nach eigenen Angaben, sehr viel Augenmerk auf die Optimierung von Speicher und Ablauf gelegt.


      https://www.pjrc.com/arduino-ethernet-library-2-0-0/ und https://github.com/PaulStoffregen/Et...ster/README.md

      Bei den sich aktuell in der Produktion befindlichen Bridges werden wir den Code mit der "neuen" Ethernet-Lib kompilieren.
      Zuletzt geändert von pmayer; 15.11.2018, 13:22.
      https://allgeek.de/

      https://twitter.com/pregopm, https://github.com/codmpm/
      https://github.com/codmpm/node-red-contrib-loxone
      https://github.com/codm/wled-controller

      Kommentar

      • Robert L.
        MS Profi
        • 26.08.2015
        • 922

        #18
        der hat 2kByte RAM..
        ein DMX Kanal braucht 3 Byte (Zielwert, Geschwindigkeit, AktuellerWert)
        512 Kanäle sind also schon mal 1,5kByte ..
        kann sich jeder denken dass das eher knapp ist

        wenn man die debug Sachen weglässt (ausgabe auf den seriellen port)
        UDP buffer klein hält usw. geht sich schon mehr als die 128 aus

        ändern muss man in DmxSimple_h -> #define DMX_SIZE 128

        nach dem compilieren wird einem angezeigt wieviel RAM von zur verfügung steht, das sollte eben nicht zu nahe an 0 sein..

        Kommentar

        • hismastersvoice
          Supermoderator
          • 25.08.2015
          • 7238

          #19
          512 Kanäle gehen bei 328P nicht, das max sind 287 Kanäle bevor er anfängt wegen dem RAM (>75% used) zu meckern.
          Ich würde 256 Kanäle als max. nehmen und somit 99% aller Fälle eines "normalen 1-2 Familien-Haus" abdecken.
          -------
          256 Kanäle
          Code:
          Der Sketch verwendet 17416 Bytes (56%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
          Globale Variablen verwenden 1441 Bytes (70%) des dynamischen Speichers, 607 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes
          -------
          287 Kanäle
          Code:
          Der Sketch verwendet 17416 Bytes (56%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
          Globale Variablen verwenden 1534 Bytes (74%) des dynamischen Speichers, 514 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.
          -------
          384 Kanäle
          Code:
          Der Sketch verwendet 17416 Bytes (56%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
          Globale Variablen verwenden 1825 Bytes (89%) des dynamischen Speichers, 223 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.
          Wenig Arbeitsspeicher verfügbar, es können Stabilitätsprobleme auftreten.
          -------
          512 Kanäle
          Code:
          Der Sketch verwendet 17416 Bytes (56%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
          Globale Variablen verwenden 2209 Bytes (107%) des dynamischen Speichers, -161 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes..
          -------

          PS: Wenn man(n) dann wirklich ein so großes Projekt hat das er >256 Kanäle braucht sollte der Preis der 2ten Bridge auch nichts mehr machen
          Kein Support per PN!

          Kommentar


          • pmayer
            pmayer kommentierte
            Kommentar bearbeiten
            Brauchst du das hier für https://github.com/MCUdude/MightyCore/ und eine Idee ware den MAX485 an den zweiten Serial zu hängen. Können das Thema auch gerne drüben im Entwicklungsthread weiterführen.

          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Ja das machen wir im anderen Thread.
            Sonst ist hier gleich wieder alles unübersichtlich.

          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Der 644P lässt sich mit 512 Kanälen compilieren, ob alles funktioniert muss ich aber die Tage durchtesten.

            Der Sketch verwendet 19540 Bytes (30%) des Programmspeicherplatzes. Das Maximum sind 64512 Bytes.
            Globale Variablen verwenden 2196 Bytes (53%) des dynamischen Speichers, 1900 Bytes für lokale Variablen verbleiben. Das Maximum sind 4096 Bytes.
        • pmayer
          LoxBus Spammer
          • 27.02.2017
          • 379

          #20
          Ich lasse gerade eine neue Charge Bridges mit 328p produzieren weil ich leider keine mehr auf Lager habe. Für die 644er Version bin ich aber Feuer und Flamme, auch gerne mit neuer Serie. Wichtig wäre eben, dass der MAX bidirektional an den zweiten UART des 644p kommt.... dann steht einer "universellen" RS485 Bridge nichts mehr im Wege.
          https://allgeek.de/

          https://twitter.com/pregopm, https://github.com/codmpm/
          https://github.com/codmpm/node-red-contrib-loxone
          https://github.com/codm/wled-controller

          Kommentar

          • pmayer
            LoxBus Spammer
            • 27.02.2017
            • 379

            #21
            Es sind wieder DMX Bridges am Lager. Der Bestücker hat es zum Glück geschafft, mich vor Weihnachten noch unter zu kriegen!! Habe gerade die erste Charge programmiert und getestet.

            Außerdem konnte ich die Kosten etwas straffer ziehen und habe den Preis der Bridge daher um 10,- Euro verbilligen können. Ich hoffe ich komme euch damit entgegen.

            Freu mich wie immer über euer Feedback,
            und wünsch euch ein frohes Fest.

            Gruß,
            Patrik
            Zuletzt geändert von pmayer; 21.12.2018, 22:23.
            https://allgeek.de/

            https://twitter.com/pregopm, https://github.com/codmpm/
            https://github.com/codmpm/node-red-contrib-loxone
            https://github.com/codm/wled-controller

            Kommentar

            • Jan W.
              Lox Guru
              • 30.08.2015
              • 1320

              #22
              Gibt es eine Anleitung, wie man mit der Arduino IDE 1.8.8. die Ethernet to DMX Bridge flashen kann? Erfahrung habe ich mit dem Arduino keine, aber mir einen seriellen USB Wandler bestellt und die PINs entsprechend verbunden. Als Board habe ich "nano" und Prozessor "Atmega328P" ausgewählt, allerdings bekomme ich eine Fehlermeldung beim Hochladen:
              avrdude: stk500_recv(): programmer is not responding
              avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
              ...

              Die Ethernet Bibliothek v2.0.0 habe ich im Menü Bibliotheken installiert und Fehlermeldungen gab es nur mit der testweise aktivierten "DEBUG" Option bei "Ethernet.getHostName()". Es scheint diese Funktion in der Bibliothek nicht zu geben, aber da die Funktion nicht wichtig ist, habe ich die Zeile auskommentiert.

              Physikalisch habe ich nur die Programmierschnittstelle über USB angeschlossen (keine 24V).

              Gruß Jan
              Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
              Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
              Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
              Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
              Node-RED: IKEA Tradfri

              Kommentar


              • Robert L.
                Robert L. kommentierte
                Kommentar bearbeiten
                hab jetzt immer 3.3V adapter verwendet.
                wo schließt du die 5V an?

              • hismastersvoice
                hismastersvoice kommentierte
                Kommentar bearbeiten
                Die 5v sind auf der Siftleiste nach außen geführt.
                RX TX 5V GND...

              • pmayer
                pmayer kommentierte
                Kommentar bearbeiten
                Ach sorry, ganz überlesen. Die Funktion zum setzen des Hostnames ist bei Paul Stoffregens Version nicht implementiert. Wir haben da schon länger eine Pull-Request offen, der nicht gemerged ist.
                Da ich die Funktion für recht wichtig halte, nutzen wir unseren Fork der Ethernernet-Lib. Gleiches kannst du natürlich auch tun: https://github.com/codm/Ethernet
            • Robert L.
              MS Profi
              • 26.08.2015
              • 922

              #23
              ok, inzwischen ist das vielleicht anders..

              Kommentar

              • Jan W.
                Lox Guru
                • 30.08.2015
                • 1320

                #24
                Das Board-Layout hat sich bei mir gegenüber der Version von Robert L. etwas geändert, siehe Bild.

                Klicke auf die Grafik für eine vergrößerte Ansicht

Name: IMG_1328.jpg
Ansichten: 1224
Größe: 149,8 KB
ID: 183174
                Ich habe die PINs 5V RX TX GND und DTR mit meinem seriellen Adapter https://www.roboter-bausatz.de/568/c...anschlusskabel verbunden und am Adapter 5V eingestellt (3,3V habe ich auch getestet). Den Treiber für den Adapter habe ich gemäß Anleitung https://github.com/adrianmihalko/ch3...ac-os-x-driver installiert.

                Die Bridge arbeitet ansonsten richtig und die IP-Adresse ist auch erreichbar, wenn ich diese nur per USB und Ethernet angeschlossen habe.

                Ich hatte die Reset-Taste vor dem Hochladen auch testweise mal gedrückt, aber es kommt immer die gleiche Fehlermeldung.

                Nochmal die eigentliche Frage: was muss ich in der Arduino IDE einstellen (Board, evtl. Prozessor, Programmer)? Als Port wähle ich den o.a. seriellen Adapter aus.

                Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                Node-RED: IKEA Tradfri

                Kommentar

              • hismastersvoice
                Supermoderator
                • 25.08.2015
                • 7238

                #25
                Ich stelle das ein...
                IDE 1.8.7

                Klicke auf die Grafik für eine vergrößerte Ansicht  Name: DMX-Arduino.png Ansichten: 1 Größe: 10,3 KB ID: 183186

                Also Port wählst du die USB-Bridge aus.
                Kein Support per PN!

                Kommentar

                • TorstenF
                  Azubi
                  • 15.04.2016
                  • 8

                  #26
                  Ist schon etwas her, aber ich hatte glaube ich auch die Fehlermeldung. Bei mir war die Ursache ganz einfach: RX und TX waren vertauscht.

                  Kommentar

                  • Jan W.
                    Lox Guru
                    • 30.08.2015
                    • 1320

                    #27
                    Bei mir war die Ursache ganz einfach: RX und TX waren vertauscht.
                    Danke, das war auch bei mir die Ursache! TX muss auf RX und umgekehrt. Ich hatte das zwar vorher auch schon getestet, allerdings den Macbook nach der Installation des Treibers nicht neu gestartet.
                    Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                    Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                    Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                    Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                    Node-RED: IKEA Tradfri

                    Kommentar


                    • pmayer
                      pmayer kommentierte
                      Kommentar bearbeiten
                      Es sollten alle Atmega 328P/16MHz Arduino gehen... installiert ist der Bootloader vom Uno.

                      Die Beschriftung am Board ist die, wie sie aus dem MCU kommen. Du musst also TX vom Serial-Adapter auf RX - und umgedreht - der Platine stecken. Das ist meines Wissens nach so üblich.
                      Zuletzt geändert von pmayer; 01.01.2019, 12:22.
                  • Jan W.
                    Lox Guru
                    • 30.08.2015
                    • 1320

                    #28
                    Danke nochmal an Alle für die Hinweise auf meine Fragen!

                    Ich habe für "Neulinge" in der Arduino Programmierung eine Anleitung für das Flashen der Ethernet DMX Bridge erstellt. Der Abschnitt fehlte noch in der Anleitung. Da ich nicht gleich mit der komplexeren PlatformIO anfangen wollte, bin ich mit der Arduino IDE gestartet und habe nicht die ganz neue Software verwendet.

                    Die Antwort zu einer Frage habe ich gerade erst gelesen (Post #22.5), die fehlt noch in der Anleitung.

                    Ethernet DMX Bridge V0.4 with Arduino IDE.pdf
                    Ethernet DMX Bridge V0.4 with Arduino IDE.docx

                    @pmayer: einen winzigen Verbesserungsvorschlag hätte ich noch (neben der schon genannten hellen LED und der fehlenden Beschriftung des Deckels): Die Beschriftung der 5 PINs könnte etwas größer sein, evtl. um 90° gedreht.

                    Eine Frage hätte ich noch: sollte man die Software lieber ohne Anschluss von 24V und DMX flashen (nur mit den 5 PINs des USB to Serial Adapters) oder ist das egal? Beides hat bei mir problemlos funktioniert, allerdings nicht mit dem hier verlinkten Adapter: https://www.loxforum.com/forum/faqs-...148#post166148 Vielleicht ein Problem mit Mac OS-X oder meinem Rechner.
                    Die +5V sollte man bei Stromversorgung über 24V wahrscheinlich nicht anschießen. Wer noch Fehler findet, kann gerne die Anleitung verbessern.

                    Gruß Jan
                    Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                    Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                    Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                    Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                    Node-RED: IKEA Tradfri

                    Kommentar


                    • pmayer
                      pmayer kommentierte
                      Kommentar bearbeiten
                      Wow Jan, super Arbeit. Danke! Würde das dann auch gerne auf der Shopseite verlinken, wenn du es erlaubst. Vielleicht macht es Sinn, die Anleitung hier ins Wiki zu packen?

                      Ein paar Anmerkungen hätte ich natürlich noch:
                      - Die "zuletzt" aktuelle Arduino-Version sollte auf Sourceforge zu finden sein. Da sind meines Wissens nach die aktuellen Änderungen von Robert zurückgeflossen.
                      - Wie oben erwähnt, ist hier die für getHostName angepasste aktuelle Version der Ethernet-Lib: https://github.com/codm/Ethernet. Wenn diese nicht genutzt wird, hat die Bridge einen Netzwerknamen alá wiznetXXXX und nicht eth2dmxXXXX. Der Code prüft allerdings ob die setHostName-Funktion da ist und sollte, bei auskommentiertem DEBUG auch ohne das Löschen der Zeile laufen. Im "Live"-Betrieb sollte Debug aus Geschwindigkeitsgründen sowieso ausgeschaltet werden.
                      - #define USE_EEPROM sollte im Falle der DMX-Bridge immer einkommentiert werden, um die auf dem Board vorhandene MAC zu nutzen, dann macht DHCP auch erst "richtig" Sinn ;-)

                      Ob mit oder ohne 24V flashen ist seit Version 0.3 egal. Es kann eben nur passieren, dass der verwendete USBSerial-Adapter nicht genügend Strom liefern kann um auch den Netzwerkchip mit zu versorgen - bei 24V besteht dieses Problem nicht. Mit meine Foca (https://www.itead.cc/wiki/Foca) hatte ich dieses Problem noch nie. Für den ist auch die Buchsenleiste ausgelegt.
                      Wir arbeiten übrigens komplett auf dem Mac und hatten da - mit dem Foca und auch mit dem CH340X - keine Probleme.

                      Genaueres zu den Designentscheidungen findest du auch noch mal hier: https://allgeek.de/2017/11/15/ethern...e-im-eigenbau/
                      Bezüglich der Beschriftung auf der Platine gebe ich dir recht. Das liegt leider aber auch ein wenig am Platinenproduzent, wie die Schrift da raus kommt. Ich werde versuchen daran bei der nächsten Charge zu denken.
                      Die Gehäusebeschriftung ist etwas was ich gerne noch lösen würde, für eine Kleinserie aber recht schwer (teuer). Werde da aber weiter versuchen dran zu bleiben.
                      Zuletzt geändert von pmayer; 03.01.2019, 13:25.
                  • Robert L.
                    MS Profi
                    • 26.08.2015
                    • 922

                    #29
                    eigentlich ist es im PlatformIO wesentlich einfacher.., vorallem für Anfänger.. (siehe Anleitung im Anhang)
                    da ist dann schon alles fixfertig

                    und auch die Ethernet Library von PaulStoffregen dabei (ich war der Meinung die braucht man für den W5500) ??

                    ist aber natürlich nur interessant, wenn man sich mit dem Code "auseinandersetzen" will..
                    für "enduser" ist alles andere als "binary" releases wohl nicht sinnvoll

                    so macht es auch "EspEasy" .. die arbeiten auch mit PlatformIO und bieten binary releases an..



                    Angehängte Dateien

                    Kommentar


                    • pmayer
                      pmayer kommentierte
                      Kommentar bearbeiten
                      Ja, für den W5500 braucht man die oder die spezielle Lib, die seit Jahren nicht gepflegt wird. Deswegen Paul Stoffregen und für die DMX-Bridge oder eben mit set/getHostName Erweiterung von uns (fork).
                  • Jan W.
                    Lox Guru
                    • 30.08.2015
                    • 1320

                    #30
                    @pmayer: Du kannst die Anleitung gerne verwenden, also verlinken oder ganz oder Teile in Deine Anleitung für die Bridge einfügen.

                    Robert L.: Ich werde mir die PlatformIO mal näher ansehen. Ein paar Punkte gibt es schon, die mich an der Arduino IDE stören. Visual Studio Code ist mittlerweile mein Lieblings-Editor auf dem Mac geworden. Der aktuelle Code ist aber jetzt auf github, wie es in Deinem PDF steht, oder? (wg. dem Kommentar #28.1)

                    Anscheinend ist in der Arduino IDE v1.8.8 die aktuelle Ethernet Library 2.0.0 enthalten. Ich habe gerade auf meiner Fritz!box nachgesehen: die Bridge hat sich mit dem von mir geflashten Code als "wiznet..." gemeldet. Daher ist die angepasste Version mit set/getHostName schon sinnvoll. Das werde ich ebenso, wie den Foca Adapter noch in die Anleitung einbauen.
                    Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                    Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                    Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                    Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                    Node-RED: IKEA Tradfri

                    Kommentar


                    • pmayer
                      pmayer kommentierte
                      Kommentar bearbeiten
                      Wie's aussieht hast du recht, was die Ethernet-Lib bei 1.8.8. angeht. Ist mir nicht aufgefallen, da ich ja sowieso immer unsere Version im User-Libraries Ordner nehme.
                  Lädt...