GithubHelp home page GithubHelp logo

ESP_DMX on ESP32-S2 about esp_dmx HOT 6 CLOSED

someweisguy avatar someweisguy commented on July 20, 2024
ESP_DMX on ESP32-S2

from esp_dmx.

Comments (6)

someweisguy avatar someweisguy commented on July 20, 2024

The latest commit on release/v3.1 compiles and awaits RDM data without issue. I haven't tried testing any RDM receiving yet.

from esp_dmx.

fedechi avatar fedechi commented on July 20, 2024

ok, it was my mistake really sorry. I inherited from the previous examples the initialization in the form
ESP_ERROR_CHECK(dmx_driver_install(dmx_num, &config, DMX_INTR_FLAGS_DEFAULT));
but having changed the return of the function obviously nothing worked anymore!
Now dmx works, the code run but unfortunately I still have problems on RDM discovery with my test setup.
I can't discover with ENTTEC RDM controller, the therminal says
W (20592) dmx: PID 0x0001 did not send a response
With the oscilloscope I can observe that after idle state of DMX line, when responder receive the first RDM_PID_DISC_UNIQUE_BRANCH
to which he must answer, the responder switch to TX mode the dmx line quite early (<176us) but writes nothing. After 25ms the line return to RX state.
Also through RDM packet sniffer i can see an error on checksum for ACK response to DISC_MUTE command.
thanks
F.
RDM_MUTE_ERR

from esp_dmx.

someweisguy avatar someweisguy commented on July 20, 2024

Interesting. Thank you for the detailed information!

I will need to do some more in-depth research into this problem. Unfortunately, I am in the middle of moving across the country so I cannot access my testing equipment at the moment.

This library uses a timer to keep track of when the latest DMX/RDM data was received. When the ESP32 receives an RDM request, it will attempt to send a response. It sounds like you are already aware that RDM requires that responses to packets be sent after about 176 microseconds and within about 3 milliseconds. If more than 3ms have elapsed when the library is attempting to send an RDM response packet, this library prints a warning message. This is why you are seeing W (20592) dmx: PID 0x0001 did not send a response. It seems like there may be an error in the way this library configures the timer on ESP32-S2.

How many RDM devices do you have connected on your DMX network? It appears you may have at least 3 different devices: the ENTTEC RDM controller, the ESP32-S2, and a different device manufactured by a company called ERAL srl. This company appears to also be called Linea Light Group. The device manufactured by ERAL srl/Linea Light Group is the device that is returning a bad checksum. The source ID of the ESP32-S2 should begin with 05E0 unless you changed it using the ESP-IDF sdkconfig.

from esp_dmx.

fedechi avatar fedechi commented on July 20, 2024

no problem, have a good travel, we will go depth on all the issues in september. In the test there is only one device with esp_rdm lib and yes, i have modified UID from sdkconfig. Happy holidays.

from esp_dmx.

someweisguy avatar someweisguy commented on July 20, 2024

Issue #86 has been resolved, so I am hoping that the fixes in that issue have carried over to this issue. I will do some testing soon now that I have access to my ESP32-S2 again!

from esp_dmx.

someweisguy avatar someweisguy commented on July 20, 2024

This appears to be resolved on both ESP-IDF and Arduino. Let me know if you run into any more issues!

from esp_dmx.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.