Comments (3)
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.
from esp_dmx.
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.
from esp_dmx.
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:
- If you are using RDM with the Sparkfun shield you should solder a 120ohm resistor as the terminating resistor if you haven't already. Using RDM without that terminating resistor may cause problems sending and receiving RDM requests.
- Based on the issue you submitted in #78, it appears you are using the latest commit which is currently experimental. You may continue to have issues using the experimental commit, but hopefully they are few and far between. If you would like to use a more stable commit, you should use the tagged commits. That said, I am very nearly done with version 3.1 so hopefully you'll have a stable version with the latest features soon!
Let me know if you have any comments, questions, or concerns!
from esp_dmx.
Related Issues (20)
- Error on Sample DMX Sniffer HOT 1
- DMX read example - 'isr_handle' undeclared in arduino 2.14 HOT 1
- DMX Output randomly stops for a few seconds HOT 1
- Interrupt conflict HOT 1
- rdm_register_dmx_personality missing in 3.1.0 HOT 4
- DMX Read - Unstable packet.size depends on the number of DMX channels HOT 3
- compiling error with 3.10 but not with 3.0.3-beta HOT 3
- Bug string constant to 'char*' [-Wwrite-strings] HOT 2
- Send SET RDM_PID_IDENTIFY_DEVICE argument error
- RDM controller requests are not copying parameter data HOT 2
- dmx_get_personality_description() does not work HOT 1
- ESP32-S3 RDM issues with UART0 HOT 5
- Start Address Not Saving Via RDM HOT 8
- Compile Warning
- Problem with installing DMX on UART2 HOT 9
- Could not find any RDM capable devices HOT 1
- Stability Issue with BLE and UART
- ESP32 DMX Libary packet size read problem HOT 2
- Is it possible to receive dmx on one uart and copy/write it on another uart ? HOT 3
- Multiple Universes on a ESP32 Dev HOT 14
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esp_dmx.