Simple or Advanced
First you have to decide you just want to make it work, for testing purposes, like on a breadboar, or make it as a final device. The difference is that if you want to use it on the go, I heavily suggest to include the isolated optocoupler and DC converter. If you wish to skip the protection, you can simply go from the Arduino pin 1 to the MAX485 / MAX481 / SN7517 ‘s DI pin. Also that way, the isolated DC/DC converter is can be skipped.
The schematic is written down on Matthias Hertel’s site, I could copy-paste it here, but it’s his credit as I said, so go to Matthias Hertel’s shield and see it there.
The above mentioned shield can send and receive dmx, but we only want to send.
So from this picture we only need the “OK2” labeled 6N137, the MAX481 (which can be replaced with MAX485 / SN7517 they do the same thing), and the DC/DC converter from the top of the picture.
You can see on one picture the wiring of the DMX section, and on the other the wiring of the Ethernet section.
You can download my code below. The Artnet library is also there to download. The DmxSerial library can be downloaded from within the Arduino IDE.
Universe and IP address
In my usecase the IP of the node is fixed in the code, but if you want it to be changeable on the field, a dip switch can be used to select from multiple predefinied adresses.
For universe, the same method, a dip switch can be used.
I know it’s not the most advanced, well documented tutorial, but if have any question, message