ESP8266 DMX Receiver für Arduino/C

OP #5383359
Lesenswert?

Hi,

ja die Liste hab ich auch gesehen, und beim Google findet man da auch 
viel, aber hab davon keins für den ESP8266 verwenden können... Für den 
ESP habe ich nur den Weg WLAN-Art-Net zu DMX Sender gefunden. Ich suche 
aber eine LIB als DMX Empfängers (über ein RS484 Modul).

Gruß
David
#7501258
Lesenswert?

Hi,

ich suche auch nach einer Möglichkeit mit einem D1 Mini das DMX Signal aus einem Max485 Chip auszulesen. Ein W-Lan Art Net irgendwas ist mir leider bei weitem zu komplex.

Mit DmxSimple bekomme ich leider diese Fehlermeldung: c:\Users\timru\Documents\Arduino\libraries\DmxSimple\DmxSimple.cpp:7:10: fatal error: avr/io.h: No such file or directory 7 | #include <avr/io.h> | ^~~~~~~~~~ compilation terminated.

exit status 1

Compilation error: exit status 1

Mit DMXSerial bekomme ich diese Fehlermeldung: In file included from C:\Users\timru\Documents\Arduino\Flamer\D1_DMX_test\D1_DMX_test.ino:1: c:\Users\timru\Documents\Arduino\libraries\DMXSerial\src/DMXSerial.h:39:10: fatal error: avr/io.h: No such file or directory 39 | #include <avr/io.h> | ^~~~~~~~~~ compilation terminated.

exit status 1

Compilation error: exit status 1

Wäre sehr für Hilfe Dankbar.

#7501766
Lesenswert?

Hi, danke für den Tipp. ich stoße aber auf folgende Probleme: 1.) Das ist gemacht für ein ESP32, ich benutzte aber einen ESP8266- --> Macht das was aus? 2.) Aufgrund des DMX Lesen Beispiel schließe ich darauf, das man mit diesem Tool nur das ganze DMX Paket auslesen und über dem Seriellen Monitor an einen PC senden kann. Ich muss aber einzelne DMX Kanäle direkt auslesen und in dem ESP8266 direkt verarbeiten und die Ausgänge schalten. --> Ist das damit überhaupt möglich?

Außerdem: Ich habe auch noch das Tool ESPDMX (ohne den Unterstrich bzw. mit Bindestrich) gefunden, aber damit funktioniert nichts, ich kann die Kanäle wohl nicht wirklich auslesen, habe einen Max 485 Chip am RX Pin angeschlossen, wenn ich den Aufbau mit einem Arduino Nano (und DMXSerial) teste läuft das.

Hier das Programm das ich geschrieben habe: #include <ESPDMX.h>

DMXESPSerial dmx;

// DMX Settings int RedCH = 1; // Red LED (0-255) int GreenCH = 2; // Green LED (0-255) int BlueCH = 3; // Blue LED (0-255)

// Pins Output int RedMosfet = 14; // Red LED Mosfet Output Pin (PWM) int GreenMosfet= 12; // Green LED Mosfet Output Pin (PWM) int BlueMosfet = 13; // Blue LED Mosfet Output Pin (PWM)

// DMX Value Variables int RedValue = 0; // DMX Value RedCH int GreenValue = 0; // DMX Value GreenCH int BlueValue = 0; // DMX Value BlueCH int MappedRedValue=0; int MappedGreenValue=0; int MappedBlueValue=0;

void setup() { dmx.init(); // initialization

//Outputs pinMode(RedMosfet,OUTPUT); pinMode(GreenMosfet,OUTPUT); pinMode(BlueMosfet,OUTPUT); }

void loop() { dmx.update(); // update the DMX bus RedValue = dmx.read(RedCH); GreenValue = dmx.read(GreenCH); BlueValue = dmx.read(BlueCH);

MappedRedValue = map(RedValue, 0, 255, 0, 1023); MappedGreenValue = map(GreenValue, 0, 255, 0, 1023); MappedBlueValue = map(BlueValue, 0, 255, 0, 1023);

analogWrite(RedMosfet, MappedRedValue); analogWrite(GreenMosfet, MappedGreenValue); analogWrite(BlueMosfet, MappedBlueValue); }

Jemand eine Idee was ich falsch mache?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren