GithubHelp home page GithubHelp logo

Comments (4)

someweisguy avatar someweisguy commented on May 25, 2024

Thanks for the feedback!

It sounds like you are using the DMXRead example with a few modifications; namely the switch-case code in the Packet Status section of the readme. This would mean that you are getting a DMX_ERR_IMPROPER_SLOT status code. This error code gets assigned in the DMX interrupt handler as the result of the UART hardware interrupt status. The line is here, if you're interested. The hardware interrupt that is triggered is the UART_FRM_ERR_INT (I call it UART_INTR_FRAM_ERR in this library) interrupt. The documentation isn't very clear on what causes this interrupt to fire. In my experimentation, I've found that missing start or stop bits in the DMX data is what causes this to fire. In other words, you should be getting this error code due to the ESP32 hardware signaling that it is not getting the proper number of start or stop bits.

To sum up the error you are receiving, you are saying that when your fader is between 0% to approximately 20%, you receive DMX data. When you set your fader to approximately 20% to 50%, you can no longer receive data. But between 50% and 70%, you receive data again. And then anything above 70%, you don't receive data.

A few questions for you:

  1. Before you get the malformed slot error, is the DMX data that the ESP32 receives accurate? In other words, when you set the fader to 0 what DMX value are you receiving on that address? Is the data also 0, or is it some other value?
  2. When you set your fader to approximately 20%, what is the last DMX value that the ESP32 receives before it reports the error?
  3. Which lighting console are you using to send data to the ESP32?

from esp_dmx.

JustSomeRandomUsername avatar JustSomeRandomUsername commented on May 25, 2024

Thanks for the long anwser, yes I added the switch statements to the read example.

To your questions:

  1. from around 0% - 20% the values go down from 0xFE to around 0x00, its a bit hard to tell the exact end point but it looks like it goes towards 0x00 and the "overflows" or something.
  2. around 0x00
  3. its an old zero88 jester 12/24, https://zero88.com/control/jester

I should have time tomorrow to dive deeper into this, thanks for the help

from esp_dmx.

someweisguy avatar someweisguy commented on May 25, 2024

Oh, cool console!

I think the polarity of your DMX receiver board may be reversed. With the fader at 0%, I would expect to see 0x00 on the ESP32, not 0xFE. But if your polarity is reversed, it is possible for the ESP32 UART hardware to interpret 0x00 as 0xFE.

I would check to see if pins 2 and 3 are swapped in your XLR cable. If not, try swapping them. I've used alligator clips to do this. You can just unscrew the XLR connector and clip onto the appropriate pins where they are soldered, and then clip into you board..

from esp_dmx.

JustSomeRandomUsername avatar JustSomeRandomUsername commented on May 25, 2024

Jup, I soldered the 2 data pins the wrong way round 🤦.
Work great now, thanks so much for the great help

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.