Problem: apparent HW incompatibility between DMX Shield and Ethernet shield.
Hardware: Arduino Mega 2560, Arduino Ethernet 2 shield, CTC-DRA-10-R2 DMX shield.
Well, I want to use the SD card reader on the Ethernet shield. Although I can change the chip select (CS) pin in the software (Sd2Card.h), from experimentation I have discovered that only pin 4 actually works. Any other pin fails to initialize the SD card reader HW.
Now the DMX shield seems to also use pin 4 for it's own purposes (always a bad sign when that's written right on the PCB So when the shields are stacked together on the Mega, there is contention for pin 4.
I need to get one of these shields to use something else than pin 4. As I already mentioned, experimenting with other CS pins for the SD card reader doesn't seem to work. I can change the logical pin in the software, but unless it pin 4 the HW won't initialize.
The Conceptinetics library I'm using for the DMX shield allows you to select any one of the four UARTS on the Mega board, but they all seem to use pin 4 for TX-io. Here is a dump:
UART USE_DMX_SERIAL_3
DMX_UDR = 0
DMX_UBRRH = 0
DMX_UBRRL = 3
DMX_UCSRA = 32
DMX_UCSRB = 72
DMX_TXEN = 3
DMX_TXCIE = 6
DMX_RXEN = 4
DMX_RXCIE = 7
DMX_FE = 4
RX_PIN = 14
TX_PIN = 15
UART USE_DMX_SERIAL_2
DMX_UDR = 0
DMX_UBRRH = 0
DMX_UBRRL = 3
DMX_UCSRA = 32
DMX_UCSRB = 72
DMX_TXEN = 3
DMX_TXCIE = 6
DMX_RXEN = 4
DMX_RXCIE = 7
DMX_FE = 4
RX_PIN = 17
TX_PIN = 16
UART USE_DMX_SERIAL_1
DMX_UDR = 0
DMX_UBRRH = 0
DMX_UBRRL = 3
DMX_UCSRA = 32
DMX_UCSRB = 72
DMX_TXEN = 3
DMX_TXCIE = 6
DMX_RXEN = 4
DMX_RXCIE = 7
DMX_FE = 4
RX_PIN = 19
TX_PIN = 18
Question: does anyone know how to successfully move either one of these shields off pin 4? Thanks in advance for your help.