Closed jonasprobst closed 1 year ago
By the way, I'm using UART Port1 and GPIO Pins 16, 17 and 21 (standard ESP32) according to their DMX library example code:
... // lines 28 - 30
int enablePin = 21; //dafault on ESP32
int rxPin = 16;
int txPin = 17;
...
Just realised, after studying those products for hours, that there is a discrepancy in the documentation: In their DMX library (above) they'r using GPIO21 as Enable. But if I map the the Sparkfun DMX Shield documentation to the Sparkfun ESP32 Thing Plus graphical datasheet it looks like Enable is GPIO4. I will ring the board through with my multimeter later today to rule out that it's a hardware / pin definition issue.
Goodness, this has cost me soooooo much time :-S The actual pins used on the Sparkfun DMX Shield for DMX communication via UART Port1 are:
// SparkFun DMX-To-LED Shield (https://www.sparkfun.com/products/15110)
constexpr gpio_num_t DMX_ENABLE = GPIO_NUM_4; // Output Enable (DE) of MAX3485. High for TX. [Pin 16]
constexpr gpio_num_t DMX_RX = GPIO_NUM_16; // UART2 RX [Pin 15]
constexpr gpio_num_t DMX_TX = GPIO_NUM_17; // UART2 TX [Pin 14]
and not GPIO21 as their DMX library and example code suggests.
Thanks for the kind words and so sorry for the confusion! I am also a bit perplexed - I have a couple Sparkfun DMX shields as well and I've had no issues using GPIO 21 as the enable pin. I do not see a revision number listed on my Sparkfun DMX shields. If your has a revision number on it, then I suppose that would be the issue.
Two quick side notes:
Let me know if you have any comments, questions, or concerns!
I really wanna use this library because it's well documented, actively developed and non-blocking. So big THANK YOU!!
Unfortunately i can't get the arduino read example to work. Im on a ESP32 Thing Plus with the Sparkfun DMX Shield.
My platformio.ini
And then I'm using your example from here: https://github.com/someweisguy/esp_dmx/blob/v3.0.3-beta/examples/DMXRead/DMXRead.ino
I've only added an else statement at the end with a debug message, like so:
The packet return the Error: 263. In my research a came across this breadcrumb-trail:
Any ideas what's happening?