You can use any pin marked USARTx_TX, so you should be ok. I think DMX uses 12v voltage levels, so you need the level converter anyway (which will be on that shield).
To send DMX, all you should need is:
// if using USART1
Serial1.setup(250000, { tx: DMXpin });
var DMXdata = new Uint8Array(512);
setInterval(function() {
pinMode(DMXpin, "output");
digitalPulse(DMXpin, 0, 0.1); // send 'break'
pinMode(DMXpin, "af_output");
Serial1.write(DMXdata);
}, 50);
I think you could increase the refresh rate if you needed, and you could make life easier for yourself by not sending all 512 bytes.
I haven't tried that though, so I'm not 100% sure if it'd work.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
You can use any pin marked
USARTx_TX
, so you should be ok. I think DMX uses 12v voltage levels, so you need the level converter anyway (which will be on that shield).To send DMX, all you should need is:
I think you could increase the refresh rate if you needed, and you could make life easier for yourself by not sending all 512 bytes.
I haven't tried that though, so I'm not 100% sure if it'd work.