DMX2Martin-RS485 Protokollconverter

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!


  • Dieser DMX2Martin-Protokollwandler ist fuer einen Martin Roboscan 218Pro MKI konzipiert
    Pan- und Tilt-Aufloesung sind fuer 16bit Aufloesung ausgelegt, die restlichen Kanaele auf 8bit.

    Aus dem DMX-Dimmer Projekt von Michael Dreschmann (http://www.digital-enlightenment.de/dimmer.htm) wurden in dieser (Beta-)Version das Layout der LCD-Anzeige, Teile der Receive-ISR sowie Teile der Buttonroutinen uebernommen (entwendet, geklaut whatever...) und modifiziert.
    Die eigentliche Umsetzung aufs Martin-Protokoll ist eine Eigenentwicklung.

    Die 5 Buttons werden mit einer Seite mit den 5 vorgesehenen Pins verbunden, die andere Seite wird mit GND verbunden
    Die Buttons habe ich auf einem Stueck Lochrasterplatine folgendermassen gesetzt:
    ....................Plus
    ...........Prev Enter Next
    ...................Minus


    12 Kanaele sind verfuegbar:

    Adresse Funktion Martin Channel

    Kanal 0 Shutter, Strobe, SA, Reset Channel 3 MSB
    Kanal 1 Dimmer Channel 6 MSB
    Kanal 2 Color Selection Channel 0 MSB
    Kanal 3 Gobo Selection, Channel 1 MSB
    Kanal 4 Pan/tilt Speed Channel 9 MSB
    Kanal 5 Dimmer Speed Channel 6 LSB
    Kanal 6 Color Speed Channel 0 LSB
    Kanal 7 Gobo Speed Channel 1 LSB
    Kanal 8 Pan Coarse Channel 5 MSB
    Kanal 9 Pan Fine Channel 5 LSB
    Kanal 10 Tilt Coarse Channel 7 MSB
    Kanal 11 Tilt Fine Channel 7 LSB


    Zusaetzlich koennen mit dem Gobo-und Color-Speedkanal absteigend von 255-248 genaue Farbwerte mittels Color- oder Gobo-Selection abgerufen werden (also verkehrtherum wie im normalen Speedkanal
    0 entspricht 255, 7 entspricht 248 ).

    Da das Martin-Protokoll vektororientiert arbeitet (zusaetzlich zu den Pan/Tilt Kanaelen ist noch ein Speedkanal vorhanden) empfiehlt es sich, bei schnellen Bewegungen des Spiegels (Speedkanalwert 1 bis ca. 6) im Steuerungsprogramm nur den Endwert fuer den jeweiligen Pan/Tilt Kanal anzugeben, sonst ruckelts wie der Teufel, da die Informationen net schnell genug zum Scanner kommen.
    Fuer langsame Bewegungen kann auch Tracking-Mode zum Einsatz kommen (Speedkanal auf ca. 16
    und hoeher einstellen); ausprobieren hilft da.


    Einschraenkungen:
    Derzeit reagieren angeschlossene Scanner nur auf DIP-Adresse 1.
    Da dieses Projekt urspruenglich als StandAlone Version geplant war, fehlt im vorliegenden Platinenlayout auch noch ein Optokoppler am Ausgang (wird nachgeliefert).

    Still2come:
    Martin-Kanal fuer den Scanner frei waehlbar.
    Ausbau auf 48 DMX-Channel (3x 16 Kanaele), damit koennen bis zu 3 Martin Scanner, die auf 5bit (0..31) Pan-Tilt Feinaufloesung reagieren, mit diesem
    Platinenlayout angeschlossen werden.
    (vorausgesetzt es gibt keinen Stackoverflow, der Attiny hat halt nur 128 Byte RAM).


    LCD-Display:

    [Blocked Image: http://web12.ipx20125.ipxserver.de/priv/images/LCD1.png]

    Einstellungen:
    [Blocked Image: http://web12.ipx20125.ipxserver.de/priv/images/LCD2.png]

    Download Projektarchiv
    Passwort: mytrend

    hfgl

    wolf

  • Huii, dann hier schon mal ein großes Dankeschön für Vorarbeit und Infos.

    Werde damit dann wohl auch meinem 218 wieder Leben einhauchen - und ich hoffe, du hast nix dagegen, wenn ich mal das ein oder andere Bild hier rein stelle ;)

  • Hab zwar noch keine Platine, aber immerhin schon mal das Plug-On Gehäuse fertig :D Hat mich gestern Abend schlichtweg in den Fingern gejuckt.
    Wird noch gelackt. Und ja, ich hätte es auch noch 2 cm höher setzen können. So stehen eben die Ecken etwas über, aber auf den ersten Gedanken waren mir die Luftschlitze gefühlt wichtiger 8)

    Bekommt mit neuem Layout dann irgendwann einen zusätzlichen "Martin Out" an der Seite, sofern sich nochmal ein weiterer MK I dazu gesellen sollte.

  • so, aus den 48 Channels sind 32 geworden (beim Attiny wirds sonst mit dem RAM eng) , d.h. man kann 2 Martin Lampen mit je 8 Channels (8*(MSB+LSB)) ansteuern.
    Die LCD Anzeige hat sich ein bissel geaendert, es wird nur noch Channel 3 (LampOn, LampOff) pro 16 Kanaelen als Balkendiagramm angezeigt

    Gehen sollten:
    Roboscan 1004
    Roboscan 1016
    Robosan 1020
    Roboscan Pro 1220
    Roboscan 218

    bzw. alle Martin Lampen, bei denen auf Channel 4 und 5 Pan und Tilt liegt und 5bit Fine Microstepping verwenden (0..31)

    Als Werte sind fuer Pan einzutragen: (PanEnde-PanStart+1) am Bsp Roboscan218: 224-30+1=195 und fuer Tilt 150-104+1=47 PanStart ist dann die 30 und Tiltstart 104.
    Auf der letzten Seite der Einstellungen koennen 2 MartinStartChannels eingetragen werden, die mit der Dip-Schaltereinstellung uebereinstimmen muessen.
    (MartinChannels 3 und 4 koennen zwar eingetragen werden, werden aber net ausgewertet, ich war zu faul, den Quellcode nochmal zu aendern).
    Im Archiv liegt eine *.xml Datei, um die Martin-Scanner mit DMXC anzusteuern.
    Sollen 2 Scanner mit DMXC angesteuert werden, muss 2 mal der DMX-Konverter installiert sein, dessen DMX-Startadressen sich um 16 unterscheiden.
    Bsp: DMX-Konverter1 hat DMX-Startadresse 50, dann muss der 2te Konverter die DMX-Startadresse 66 erhalten.

    hf
    wolf

    P.S.: Datei in *.rar umbennen, PW ist "mytrend"
    Das naechste mal gibts dann vielleicht ne Version fuer 8*16 Kanal oder 4*32 Kanal, damit lassen sich dann auch die MacWashs ansteuern

  • Hai, ich bin gerade dabei diese Platine nachzubauen.
    Bisher hat auch alles funktioniert, nur bei der Ansteuerung des Display habe ich Probleme, der Display zeigt nichts an und zieht irrsinnig viel Strom.
    Könntet ihr mir vielleicht Tipps geben, wie ich bei der Fehlerbehebung vorgehen kann?

  • Hallo,
    es werden zwar vermutlich nicht so viele diese Platine kennen (ich z.B. kenne sie auch nicht), aber du könntest das gleiche machen, wie andere mit DE-Interface-Problemen: Mache scharfe, recht hoch aufgelöste, reflexionsarme Fotos von der Ober- und vor allem von der Unterseite der Platine. Vielleicht findet ja jemand aus dem Forum einen Kurzschluss oder eine kalte Lötstelle (wobei der Hohe Strom ehr auf einen Kurzen hindeutet).
    Viele Grüße
    JP

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

  • was fuer ein Display verwendest denn?
    Hoffentlich net das TC1602E von Pollin, weil das hat VSS (-) und VDD (+) gegenueber der normalen Pinbelegung von LCDs vertauscht.
    (Normalerweise ist Pin1 am LCD Minus und Pin2 Plus)
    und dann machts rumsbums.

    hfgl
    wolf

  • Diesen Display verwende ich:
    http://www.reichelt.de/Hintergrund-gr…96a5e689d8731f3


    Ich habe bereits alle Lötstellen kontrolliert, wie gesagt, die Platine funktioniert ja auch wunderbar, nur wenn ich den Display dazustecke, wird mein 5V Linearregler irrsinnig heiß innerhalb kürzester Zeit.


    Liege ich mit der Annahme richtig, dass der PIN 1 vom LCD Display am nähesten beim 12MHz Quarz vom ATMega8515 liegt und der Pin 2 am VCC direkt darunter liegt?

  • Deine Annahme bezgl. der Pins ist richtig.

    Dass der Linearregler heiss wird, hat nix zu sagen, der wird schon ein paar Watt verbraten. (mach halt einen passiven Kuehlkoerper drauf)
    Zeigt das LCD ueberhaupt was an? (wenigstens in der oberen Zeile lauter Balken, dann waers halt net richtig initialisiert, aber das ist das kleinste Prob). Hast schon ma am Poti rumgedreht, bis ein Kontrast sichtbar wird?

  • Ich habe mir das Projektarchiv gerade mal herunterladen. Respekt, dass du es mit der "Dokumentation" überhaupt hinbekommen hast, die Platine aufzubauen. Ein Schaltplan und ne bessere Dokumentation wäre schon von Vorteil.

    Ich nehme mal an, der 16-polige unbeschriftete Anschluss rechts neben dem ATMega8515 ist für das Display zuständig.
    Als Pin 1 kommt der Pin oben links oder unten rechts in Betracht. Laut Bauteilliste haben die Pins folgende Belegung:
    LCD Connector (Pin 1: GND; Pin 2: Vcc; Pin 3: Vref; Pin 4: RS; Pin 5 Gnd; Pin 6: E; Pin [7-10]: GND; Pin [11-14]: D[4-7]; Pin 15: Backlight; Pin 16: GND)
    Irgendwie passt das nur nicht zusammen. Am ehesten passt es, wenn der Pin unten rechts als Pin 1 genommen wird, dann hätte der Anschluss folgende Belegung soweit ich es dem Layout entnehmen kann:
    Pin 1: VCC
    Pin 2: GND
    Pin 3: Daten (geht auf Mikrocontroller)
    Pin 4: Poti (Kontrastspannung?)
    Pin 5: 100 nF auf µC
    Pin 6: GND
    Pin 7-14: Daten
    Pin 15: GND
    Pin 16: Widerstand auf VCC

    Laut Datenblatt stimmt die Belegung deines Displays mit der in der Bauteilliste überein - allerdings eben nicht mit der tatsächlichen Belegung der Buchse. Da ist jeweils VCC und GND vertauscht, das dürfte für den hohen Strom ausschlaggebend sein. Hoffentlich ist dein Display da nicht kaputt gegangen.

    Mal sehen, was der Themenstarter dazu zu sagen hat. Hast du ihn schon mal per E-Mail kontaktiert?

    Freundliche Grüße

    Stefan

    PS: Ah, da haben wir schon eine Antwort :) Ist das Absicht, dass du die Pins da vertauscht hast?

  • Lieber Stephan,
    der Themenstarter schreibt schon die ganze Zeit hier.

    Leider ist Deine Annahme der LCD-Pinbelegung falsch. Die Ansteuerung des LCD wird ueber 8-Bit realisiert, somit liegt D0..D3 mitnichten auf GND, ansonsten waeren die PINS PC0..PC3 des Atmega net mit den LCD Pins verbunden.
    Richtig ist, dass RW auf GND liegt, da aber keine Lesezugriffe aufs LCD erfolgen, ist somit RW immer low.
    Den Schaltplan hab ich damals vergessen, ins Archiv reinzukopieren, da aber meine email Adresse im ersten Archiv drinsteht, ist es ein leichtes, mich wegen der Schematics zu kontaktieren.
    Zur Verdeutlichung anbei ein Picture.

    Gruss
    wolf

  • Lieber Stephan,
    der Themenstarter schreibt schon die ganze Zeit hier.

    Leider ist Deine Annahme der LCD-Pinbelegung falsch. Die Ansteuerung des LCD wird ueber 8-Bit realisiert, somit liegt D0..D3 mitnichten auf GND, ansonsten waeren die PINS PC0..PC3 des Atmega net mit den LCD Pins verbunden.


    Entschuldige, das ist mir dann auch erst aufgefallen, dass du ja schon länger schreibst... ^^ Irgendwie bin ich mit deinen vielen Namen, die auch noch das Geschlecht wechseln, durcheinander gekommen.

    Das ist nicht "meine Annahme" der LCD-Pinbelegung, das ist das was im Projektarchiv als Pinbelegung des LCDs dokumentiert ist - und die passt nicht zum Layout. Aber das ist nur eine Ungereimtheit, welche den Nachbau erschwert.
    Wenn ein Schaltplan existiert, dann pack den doch einfach noch mit ins Projektarchiv, das ist doch kein Aufwand :)

    Freundliche Grüße

    Stefan

  • Danke für die schnellen Rückmeldungen.
    Kannst du mir vielleicht mal den eingestellten Widerstand deines Potis messen, egal welchen ich einstelle, da tut sich irgendwie nichts.
    Welchen Vorwiderstand (R14) hast du den verwendet?

  • das LCD hat als Daten:4,2V und 130mA also 0,8V vernichten --> 0,8V/0,13A=6,15Ohm also sollte als R14 ein 10 Ohm Widerstand reichen.
    ( Das ist aber nur fuer die Backgroundbeleuchtung, hat also nix mit der Funktion des Displays zu tun)
    Test ma, ob das LCD ueberhaupt tut:
    Pin1 des LCD an GND, Pin2 des LCD an VCC; Pin3 des LCD an Poti, zusaetzlich an die beiden "Enden" des Potis Gnd und VCC.

    den 15K Widerstand weglassen und ein 10k Poti nehmen

    [Blocked Image: http://www.sprut.de/electronic/lcd/speisung.gif]

    dann solltest sowas sehen:
    (einfach am Poti rumdrehen, irgendwann kommt so ein Bild)

    [Blocked Image: http://www.sprut.de/electronic/lcd/lcd_test_27x4.jpg]
    das ist ein vierzeiliges Display, daher sollte nur die obere Reihe auf deinem LCD so sichtbar sein

    P.S.:

    hab noch den Schaltplan drangehaengt, aber der ist net so schoen... sry, ging aber auf die Schnelle net anders

  • Also, ich habe jz mal meinen Display ausprobiert, allerdings bekomme ich je nach Potistellung entweder die linke Seite des Displays oder die Rechte zum Leuchten, aber nie beide gleichzeitig.
    Außerdem verschwinden die Zeichen nach und nach wieder.
    Ist das normal?

  • Sorry, die linke Seite leuchtet eig. überhaupt nicht, maximal kurz auf, aber ist gleich wieder weg.
    Ich habe das Display jetzt mal an die Platine gehängt und es hat kurz die Initialisierung (leere Zeichen) aufgeblitzt, sind aber gleich (Bruchteil einer Sekunde) wieder weg.

  • drueck mal ein bissel auf dem Display rum, vielleicht auch mal ein bissel das Glas hin- und herschieben. Wenns dann besser wird, ist das Glas des Displays ein bissel von den Leitgummis gerutscht, sprich dejustiert, oder die Halterung des Glases ist ein bissel locker.

    gruss
    wolf

  • Ja, wenn ich ein bisschen daran rumdrücke, werden plötzlich andere Zeichen sichtbar, allerdings verschwinden ein paar andere auch wieder.
    Kann man das beheben, oder muss ich mir da einen anderen LCD anschaffen?

  • du kannst es versuchen:
    zuerst ma an allen 4 Ecken runterdruecken ( aber net so arg)
    Normalerweise wird das Glas fuer das LCD von einem Blechrahmen gehalten.
    Bieg die Halter zurueck, haeng das LCD an Pin1 (VSs) bis Pin3(Kontrast) wie vorher beschrieben und verschieb das Glas solange auf den Gummis, bis Du lauter schwarze Balken in der oberen Zeile siehst.

    Ich hab allerdings auch schon ein 4zeiliges Display von Reichelt gehabt, das hatte auch nen Knaller, mal gings und dann mal wieder net und auch lauter komische Zeichen.

    Wenn neue LCD bestellst, kuck ma bei Pollin, die sind normalerweise guenstiger

  • habe mir jz 2 neue Displays zugelegt, jetzt funktionieren die Displays.
    Nur zeigt es lauter leere (volle) Zeichen an und keinen Text.

    woran kann das liegen?

    Edited once, last by Eisi1993 (March 6, 2013 at 9:24 PM).

  • 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.