DMX CTC-DRA-10-R2 master mode conceptinetics

Hello All,

I am relative new to arduino. I bought a DMX shield (part no. : CTC-DRA-10-R2). I would like to use the shield running in DMX master mode to send out dmx signal to a DMX decoder and light up the RGB lighting

I tried to use the DMX_master example code in Conceptinetics library. When I need to upload the coding, I put the jumper as the following.
EN ==> EN|
Slave ==> DE
TX-io ==> TX-uart
RX-io <== RX-uart

/*
  DMX_Master.ino - Example code for using the Conceptinetics DMX library
  Copyright (c) 2013 W.A. van der Meeren <danny@illogic.nl>.  All right reserved.

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 3 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*/


#include <Conceptinetics.h>


//
// CTC-DRA-13-1 ISOLATED DMX-RDM SHIELD JUMPER INSTRUCTIONS
//
// If you are using the above mentioned shield you should 
// place the RXEN jumper towards pin number 2, this allows the
// master controller to put to iso shield into transmit 
// (DMX Master) mode 
//
//
// The !EN Jumper should be either placed in the G (GROUND) 
// position to enable the shield circuitry 
//   OR
// if one of the pins is selected the selected pin should be
// set to OUTPUT mode and set to LOGIC LOW in order for the 
// shield to work
//


//
// The master will control 100 Channels (1-100)
// 
// 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   100 

//
// Pin number to change read or write mode on the shield
//
#define RXEN_PIN                2


// 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 ();  
  
  // Set channel 1 - 50 @ 50%
  dmx_master.setChannelRange ( 2, 25, 127 );
}

// the loop routine runs over and over again forever:
void loop() 
{
  static int dimmer_val;
  
  // Keep fading channel 1 in from 0 to 100%
  dmx_master.setChannelValue ( 1, dimmer_val++ );  
  
  delay ( 100 );
}

The code is based on the ‘DMX_master’ example downloaded from the library

After uploading the coding, I updated the jumpers as following.
EN <== EN|
Slave ==> DE
TX-io ==> TX-uart
RX-io ==> RX-uart

However, the problems is the lighting can only be blinking instead of fading or set as a fixed color, which is not same as expected from the coding. Can anyone figure out the reason?

Image for the set up

Thanks in advance for feedback/help

Best Regards,
Ray

I think the problem is that you are redefining dimmer_val in the same loop where you are attempting to increment it.

Try this instead…

/*
DMX_Master.ino - Example code for using the Conceptinetics DMX library
Copyright (c) 2013 W.A. van der Meeren danny@illogic.nl. All right reserved.

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/

#include <Conceptinetics.h>

//
// CTC-DRA-13-1 ISOLATED DMX-RDM SHIELD JUMPER INSTRUCTIONS
//
// If you are using the above mentioned shield you should
// place the RXEN jumper towards pin number 2, this allows the
// master controller to put to iso shield into transmit
// (DMX Master) mode
//
//
// The !EN Jumper should be either placed in the G (GROUND)
// position to enable the shield circuitry
// OR
// if one of the pins is selected the selected pin should be
// set to OUTPUT mode and set to LOGIC LOW in order for the
// shield to work
//

//
// The master will control 100 Channels (1-100)
//
// 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 100

//
// Pin number to change read or write mode on the shield
//
#define RXEN_PIN 2

// 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 );

static int dimmer_val;

// the setup routine runs once when you press reset:
void setup() {

// Enable DMX master interface and start transmitting
dmx_master.enable ();

// Set channel 1 - 50 @ 50%
dmx_master.setChannelRange ( 2, 25, 127 );
}

// the loop routine runs over and over again forever:
void loop()
{
static int dimmer_val;

// Keep fading channel 1 in from 0 to 100%
dmx_master.setChannelValue ( 1, dimmer_val++ );

delay ( 100 );
}

Hello,

may I ask if this solved your problem ?
I have the same issue.
The card seems really unstable.

It either blinks (more or less according to the code) when i touch the jumpers or either does nothing (black out) when i keep my hand away.

:frowning:

Sorry for my poor english…

Roland, Paris, France