Go Down

Topic: DMX_Shield to LED electronics issue. LED lights only when finger touches PIN 1-3 (Read 287 times) previous topic - next topic

mellamoaoife

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?


Code: [Select]
#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 : )

Grumpy_Mike

1) A finger touch making something work is often the sign of a missing ground wire somewhere.

2) As DMX uses the serial pins ( normally ) then this can hamper code upload. You might have to remove the shield or switch out the connections to shield when uploading.

mellamoaoife

Hi Grumpy_Mike,

Thanks for your response. I've been doing a bit of digging these last few days but it's not clear to me how their could be a ground wire missing given that there are no wires involved in my circuit:

Arduino -> DMX Shield -> PAR can LED

In similar set ups to mine online it doesn't seem like anyone is doing additional wiring...Could it be that either my DMX Shield or Arduino is faulty? Or that I need to install a ground wire somehow?

Thank-you!

Grumpy_Mike

It might be you have a faulty shield in that case. One that is not making good contact with the Arduino.

Go Up