Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DMX read #3

Open
Rickgg opened this issue Nov 22, 2015 · 14 comments
Open

DMX read #3

Rickgg opened this issue Nov 22, 2015 · 14 comments

Comments

@Rickgg
Copy link
Owner

Rickgg commented Nov 22, 2015

The read() function refers to reading the data from the DMX buffer in the chip.

@mseerig
Copy link
Contributor

mseerig commented Nov 22, 2015

we should add a real "read" function.. ;)
"Send" is now working now on all architectures. The read funktion should have the same main features.
are you interested in?

@mseerig
Copy link
Contributor

mseerig commented Nov 22, 2015

may, it is sensible to rename the lib to "universalDMX". Then we have to add some code to change the pin 2 (ESP TX PIN) to the right TX pin (for example the Leonardo's TX PIN 1).

@Rickgg
Copy link
Owner Author

Rickgg commented Nov 22, 2015

It could be an option... I am developing this for use in a business I'm in (mobile music for parties, including dancefloors and robotic heads), as nobody knows how to use the "usual" DMX controller. My first idea was to make a webserver in the ESP to control DMX, but reading could be done too.

@Rickgg
Copy link
Owner Author

Rickgg commented Nov 22, 2015

For Arduino, DMXSimple Already exists, and it works really well.

@mseerig
Copy link
Contributor

mseerig commented Nov 23, 2015

In my opinion, libraries witch runs on every hardware are better than separate librariesfor each hardware. But I think this is not nassosay if you want to expand the functions to an huge dmx tool for the ESP hardware.
My plan ist to share dmx signals over art net, so it's possible to add devices to every hardware in a "huge" distance. If you want to develop a tool like this, then you can expect my support.

Importent for me is:

  • Dmx send
  • A art net mash network
    ... A PC with PC Dimmer can be used as art net transmitter
    ... The PC connect over WiFi to the network
  • (optional) a command console based on a Esp webserver

@mseerig
Copy link
Contributor

mseerig commented Nov 23, 2015

https://www.pcdimmer.de

@Rickgg
Copy link
Owner Author

Rickgg commented Nov 23, 2015

I hadnt read the last comment, but that's also my idea: control over distance and a command console in the ESP, and/or a GUI based on Electron.

@Rickgg
Copy link
Owner Author

Rickgg commented Nov 23, 2015

For the Mesh network we could use the library from ESP8266/Arduino

@bfranske
Copy link

bfranske commented Jan 5, 2016

I am also interested in having the ability to read DMX in as well as transmit it as I'd like to use the ESP8266 chips as the basis for some e1.31 Streaming ACN (sACN) transmit and receive nodes which is basically WiFi -> DMX and DMX -> WiFi. There are also cases where it would be useful to support the DMX-RDM protocol which some DMX devices use for bidirectional communication but this is less important to me.

Some inspiration for adding DMX input functionality can be found on the Arduino page about it: http://playground.arduino.cc/Learning/DMX

If I get some time I'll probably work on this, and then send a pull request but my time is quite limited right now as I have several higher priority projects going on.

@rossmeier
Copy link

I'd also greatly appreciate bidirectional DMX-Communication for this Libary.

@rgr101
Copy link

rgr101 commented Mar 19, 2017

Any news on this?
I've developed a multi-channel LED Driver (PWM-less but linear current regulated and so real flicker free) and using a nodeMCU for wireless control (no ArtNet here so far; just simple TCP commands). Now, I'm planning to extend the controller by (wired) DMX as an additional coexistent input interface...

@pinq-
Copy link

pinq- commented Nov 17, 2017

Any good ideas how read dmx values? Can I just do like this:
`Serial1.begin(250000)
if (Serial1.available()) {
if (Serial1.read() == 0){
for(int i=0; i< 512; i++){
data[i] = Serial1.read()
}
}
}' Or how to parse that ?

@bairlin
Copy link

bairlin commented Jun 9, 2019

Hi!

I need some help...
Is there any chance to get this library working to receive DMX input?

I have created a sketch for controlling WS2812B LEDs via DMX. So, a Wemos D1 mini is a DMX node/receiver which shall be controlled by a DMX Mixer. As I was about to finalize my project I was recognizing that the receiving function within this library is missing or in other words was not fully implemented. I´d like to receive a DMX signal and the Wemos to act as a node to control the WS2812B strip.

This library here is the only library I found to be able to handle DMX receiving function:
https://github.com/mtongnz/ESP8266_ArtNetNode_v2

Maybe this can be used as a reference to integrate functionality into ESPDMX.h?

I hope there is a chance to get the receiving part running and I am looking forward to any help for this!

@kemalsatiro
Copy link

hi i try to this examples and i try every rx pin but always i get 0 how can i read dmx data with esp8266
#include <ESPDMX.h>

DMXESPSerial dmx;

void setup() {
Serial.begin(9600);
dmx.init(); // initialization
delay(200); // wait a while (not necessary)
}

void loop() {
dmx.update(); // update the DMX bus
int data = dmx.read(1); // data from channel 1
Serial.println(data); // print it out
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants