USB-DMX Kabel mit FT232R Chip - DMX Signal senden mit Delphi

We proudly present: The release of DMXControl 3.3.3!


On September 29, 2026, we held our release show for DMXControl 3.3.3. During our usual “hour-long” session, we showed you all the new features in this version and what it now has to offer.
Read all about it in the corresponding news article: We proudly present: The release of DMXControl 3.3.3!


  • Hallo

    Besitze seit einigen Wochen dieses USB-DMX Kabel, mit FT232R Chip:

    https://www.amazon.de/DSD-TECH-RS485-Adapter-Lichtsteuerungskabel-Schwarz/dp/B07WV6P5W6/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=ON5NJ9LJWO0J&keywords=usb+zu+dmx+adapter&qid=1703962457&sprefix=usb+zu+dmx+adapter%2Caps%2C208&sr=8-3

    welches mit DMXControl gut funktioniert, nachdem 'Enttec open DMX' ausgewählt wurde.

    Aber ich will selber ein Programm dafür in Delphi schreiben.

    Kann mir bitte da jemand helfen, wie man am einfachsten ein DMX Signal (Adresse und Wert) über dieses Kabel senden kann.

    Suche schon lange, und stellte Anfragen bei Verkäufer und Ftdi, und studierte Examples sowie D2XXUnit.pas ftd2xx.dll,

    doch bis jetzt leider ohne Erfolg.

    Vor Jahren erstellte ich ein Programm nach Anweisung von Michael Dworkin, für gleichnamigen DMX Controler, welches ganz gut läuft.

    Aber leider keinerlei Reaktion bei dem neuen FT232R Kabel.

    ZBsp: (mit CPort 3.10 Komponente)

    Comport1.Port:='com4';

    ComPort1.Connected:=true;

    Comport1.WriteStr('L');

    Comport1.WriteStr(chr(9)); // Kanal

    Comport1.WriteStr(chr(200)); // Helligkeitwert

    Diese 5 Anweisungen reichen mal für Dworkin, aber leider nicht für FT232R.

    Wäre für jeden Hilfe oder Beispielscode, der dieses USB-DMX Kabel mit FT232R Chip betriebsbereit macht,

    sehr dankbar !

    Mit freundlichen Grüssen Johann

  • JPK January 30, 2024 at 10:40 PM

    Approved the thread.
  • "Betriebsbereit" ist bei diesen OpenDMX-Klonen relativ. Anders als beim Dworkin, das das DMX-Signal mit einem uC selbst erzeugt, ist hier der PC dafür verantwortlich, die DMX-Daten immer und immer wieder mit der entsprechenden Rate auf den Bus zu schreiben.

    Nachdem der FTDI passend eingestellt ist, brauchst du also einen Thread, der in einer Endlosschleife immer wieder 513 Bytes (1 Startbyte + 512 Kanäle) schreibt. Dazu noch einen Break und am Ende eine kurze Pause, je nach gewünschter Wiederholrate. Delphi-Code habe ich nicht, aber auszugsweise C-Code, den du dir wahrscheinlich adaptieren kannst:

    Initialisierung (Gerät schon geöffnet (FT_W32_CreateFile) und Handle in ftHandle):

    Inhalt Sende-Thread (Thread sollte recht hohe Priorität haben):

    Code
        while (true) {
            // Send break
            FT_SetBreakOn(mFTHandle);
            FT_SetBreakOff(mFTHandle);
    
            // Send Startbyte + DMX data
            FT_Write(mFTHandle, mDMXData, 513, &bytesWritten);
    
            Sleep(mInterFrameDelay);
        }

    Viel Erfolg!

    Stefan

  • Vielen Dank für die sehr schnelle Antwort.

    Aha.

    Weiss leider nicht wie ich den FTDI passend einstelle, und initialisiere.

    Hab zwar schon einige Delphi Programme geschrieben,

    aber glaub mit 'Handle' ect. war da noch nix dabei.

    Werde anhand deines Codes, versuchen was zustande zu bringen.

    Danke MfG

  • Hallo

    Habe nun einiges probiert, aber komme leider nicht weiter (auch Handle u. Pointer).

    Das "FT_W32..." ua. gibts scheinbar nur in C, und finde nichts davon in Delphi (D2XXUnit.pas).

    Dachte ich suche mal nach einem USB-Dmx Kabel das vilt. dem Dworkin Controler näher kommt.

    Und fand dieses:

    https://www.amazon.de/raguso-Interface-Controller-Computer-B%C3%BChnenbeleuchtung/dp/B098B4ZCSN

    Weil in der Beschreibung was von "eingebauter Pufferspeicher...", und "internal frame buffering" steht.

    Heisst das, dass dieses Kabel selbständig das DMX Signal immer wieder sendet, wie beim Dworkin Controler?

    Und nicht vom PC in einer Endlosschleife gesendet werden muss.

    Und somit weniger und einfacher zu programmieren wäre?

    Und vilt. mein Dworkin Code funktionieren könnte?

    Danke, mit freundlichen Grüssen

  • Was chinesische Versprechen sind und was tatsächliche Wahrheit ist immer so eine Sache. Leider gibt keiner der zahlreichen Verkäufer dieses Produktes an, welches Interface man wählen muss in DMXControl und co.


    Hast du mal überlegt, über OLA den ganzen backend kram zu regeln? Gibt eine Python sowie eine C++ API (evtl. C bindings in Delphi?) oder ganz dumm auch eine http-API. Dadurch solltest du relativ leicht deine Ziele erreichen können, und musst auch nicht wirklich irgendwas umschreiben wenn sich z. B. dein Interface ändert.

  • Diese sind meist (nicht immer, aber doch im überwiegenden Teil) ebenfalls einfach FTDI Chips, die Johann schon ausgeschlossen hat. Mal so als andere Überlegung: Wie gut bist du im Löten? Eine Möglichkeit wäre auch unser Nodle Interface in der Selbstbau-Variante. Unser Nodle-Interface steuert nämlich tatsächlich den DMX-Bus selbstständig an und das PC-Programm muss nur noch Änderungen an das Interface schicken. Außerdem bietet es noch ein paar weitere Funktionen an. Aus der Delphi-Entwicklung bin ich leider schon etwas raus (hatte früher länger in Delphi 7 programmiert), aber wenn ich das noch richtig im Kopf hatte, konnte man auch externe DLLs halbwegs einfach laden und nutzen. Du könntest ja mal schauen, ob du die DLL von unserem Interface angesteuert bekommst (ist auf unserer Homepage zu finden). Sollte das klappen, kannst du dir ja überlegen, ob du das Nodle aufbauen willst.

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

  • Vielleicht wäre das DMX4All-Interface was für dich:

    NanoDMX USB Interface
    NanoDMX USB Interface Das NanoDMX USB Interface ist ein „Adapterkabel“ das sehr einfach die Steuerung von DMX-fähigen Geräten über den PC ermöglicht.…
    shop.dmx4all.de

    Das erscheint, so weit ich mich erinnere, als einfache serielle Schnittstelle und lässt sich über ASCII-Kommandos steuern. Einzelne Kanäle zu setzen sollte möglich sein. Irgendwo auf der Seite sollte es eine Beschreibung der Befehle geben.

    Edit: Hier: https://www.dmx4all.de/third-party-developers/

    Stefan

  • Dank euch für die netten Antworten.

    Stimmt, bei diesem Kabel mit Buffer ist nichts von einem auswählbaren Interfacetyp zu sehen.

    OLA ist komplett neu für mich, in Delphi hätt ich schon etwas Erfahrung.

    Wenn da jetzt wieder ein FTDI Chip drinnen ist, dann lieber nicht.

    Hab schon eine Anfrage zum Verkäufer gesendet, wegen dem selbständigen Senden, Buffer ect.

    Aber ungewiss, ob der das weiss.

    Naja löten, XLR Stecker usw. hab ich schon angelötet, aber einen Chip einzulöten traue ich mir eher weniger zu.

    Zur Not hab ich ja meinen Dworkin Usb-Dmx Controler (damals auch Bausatz mit eingelöteten Chip), der rel. einfach mit Delphi zu programmieren ist, und ganz gut funktioniert, aber keinen Treiber für Win10 hat. Ist beim Kabel mit Buffer aber scheinbar auch so.

    Denke jetzt, ich warte mal die Antwort vom Verkäufer ab.

    Mit freundlichen Grüssen

  • Naja löten, XLR Stecker usw. hab ich schon angelötet, aber einen Chip einzulöten traue ich mir eher weniger zu.

    In unserem Vereinsshop gibt es auch die Platine mit aufgelötetem Atmega. Dann fällt das weg und es fehlen "nur" noch die normalen Komponenten :)

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

  • Danke wieder.

    Erhielt nun die Antwort des Verkäufers von dem Usb Dmx Kabel mit Buffer, wie erwartet komplett nichtssagend, "sie haben das im Angebot"...

    Mir wäre eine einfache Einkabellösung lieber, als 2 Kabel mit "Kastl" dazwischen,

    wie ichs derzeit mit dem Dworkin Controler hab.

    Bei dem dmx4all (https://www.dmx4all.de/third-party-developers/) steht auch was von einem USB-FTDI D2XX driver.

    Der angezeigte Beispielcode, läuft scheinbar nicht auf dem Dmx4all NanoUSB Interface, und das Mini Interface,

    ist nicht mehr im Sortiment, was unterstützt würde..

    Probierte diesen dmx4all Beispielscode bei meinem FT232R Chip Kabel, leider ohne Erfolg.

    Habe nun begonnen, über meinen Dworkin Controler/Interface, den neuen MovingHead, mit Delphi anzusteuern. Erfolgreich.

    Bitte wenn noch wer wüsste, wie man mein Usb-Dmx Kabel mit FT232R Chip in C oder Delphi ansteuert,

    wäre ich sehr dankbar.

    Mir freundlichen Grüssen

  • OLA ist ein Programm ähnlich DMXControl. Hat aber die oben benannte C++ API. Kannst du dir ja vllt mal anschauen - dann musst du nichts von der interface Konfiguration selber machen.

  • Newly created posts will remain inaccessible for others until approved by a moderator. The last reply was more than 365 days ago, this thread is most likely obsolete. It is recommended to create a new thread instead.