Hi community,
I was hoping you may be able to offer some advice on the error I'm encountering with my DMX Shield and LED circuit.
The model of DMX Shield I have is (ctc-dra-10-1) and the Arduino is UNO. The 'DMX_Simple' library didn't work so I switched to the 'Conceptinecs' library which does work.
I have 2 problems which I suspect may be interlinked:
1. The LED only lights up/reads the code when my FINGER touches the pins of the DMX shield that insert into the left side of the Arduino (digital) = 0, (RX) 1, (TX) 2. I guess this is linked to some grounding issue but it seems strange as I assumed this was built into the shield/Arduino already... my only reasoning is that there is some fault in either the shield or Arduino which is also strange as they are both new.
Here is a video to see this bizzare finger control in action.
2. The second problem is I can't overwrite the original code I sent to the Arduino - even though i'm receiving upload done messages, the LED only plays the sequence of the old code, which is a multi-colour strobe sequence. I uploaded the code below which is the standard test but as you can see from the video the LED is reading a previous code.
Could it be that there is some electronics problem that has rendered the DMX_Shield/Arduino UNO faulty and this is why it only works when my finger touches the pin and it won't let me change the code?
#include <Conceptinetics.h>
// The master will control 5 Channels (1-5)
//
// depending on the ammount of memory you have free you can choose
// to enlarge or schrink the ammount of channels (minimum is 1)
//
#define DMX_MASTER_CHANNELS 6
//
// Pin number to change read or write mode on the shield
// Need to be 5 if slot#1 is used, or 6 if using slot #2
// The switch on Click Shieeld should be set on Prog when programming the code,
// and on URAT
//
#define RXEN_PIN 6
// Configure a DMX master controller, the master controller
// will use the RXEN_PIN to control its write operation
// on the bus
DMX_Master dmx_master ( DMX_MASTER_CHANNELS, RXEN_PIN );
// the setup routine runs once when you press reset:
void setup() {
// Enable DMX master interface and start transmitting
dmx_master.enable ();
// I have to set first the dimmer channel to 100%
dmx_master.setChannelValue (1 , 255);
}
// the loop routine runs over and over again forever:
void loop()
{
dmx_master.setChannelValue (4 , 255);
dmx_master.setChannelValue (5 , 255);
dmx_master.setChannelValue (6 , 255);
}
Any wisdom you can offer with respect to the issues above would be much appreciated : )