Artnet Node for WS2812B (RP2040 Based, 4 Universe)
by UltraW3ird in Circuits > LEDs
444 Views, 6 Favorites, 0 Comments
Artnet Node for WS2812B (RP2040 Based, 4 Universe)
.jpeg)
.jpeg)


This project is focused to assembly of 4 Universe Artnet node for driving 4x170px WS28xxB. Node has refresh rate around 120 fps. Input Voltage between 5 and 24 V makes it universal for use with any LEDs from WS28xx series by changing input voltage only.
We use this node for our light works and mappings with Resolume Arena for custom LED installations.
In case of any issues or modification needs feel free to contact me. I hope you will find this project useful :)
Supplies
MCU: W5500-EVB-Pico -> 1x W5500-EVB-Pico | WIZnet Document System
LED Buffer: 74AHCT125 -> 1x Should be available by any electronics shop
DC-DC converter: 5-24 V to 5V -> 1x DC-DC (Any 5-24V to 5V): https://shorturl.at/GtUKA
Connectors:
Small version:
- 4x PCB terminals with 5.08 spacing eg: https://shorturl.at/kql28
- 3D printed enclosure small + PCB for small enclosure.
Big version:
- 4x SP20/SD20 3 Pin for LED outputs https://shorturl.at/kICZn
- 1x SP20/SD20 2 Pin for power supply
- 1x Ethernet connector to panel 23mm https://shorturl.at/8eXyJ
- 1x 10cm Ethernet patch cable
- 3D printed enclosure for SP/SD20+ PCB for big enclosure.
Any LED for 5V indication + Resistor -> 1x Resistor value should be calculated, depends on LED you want to use.
LED Calculator: LED Calculator - Current limiting resistor
Capacitors:
- 1x 47uf 16v Feel free to use different value, just check the voltage
- 4x 470uf 32v Feel free to use different value, just check the voltage
PCB or stripboard: Schematic is included in Project same as Gerber data and Fritzing project data.
- Please decide which version of Node you want to build as there is difference in PCB for small and big version !
2.54mm 20pin terminals for MCU + 14pin IC socket for 74AHCT125 socket to avoid direct PCB soldering.
Arduino IDE:
- Custom parametrized Ethernet lib. Included in project.
- RP2040 boards added to Board manager
4x M3x6 screws
4x M3x12 screws
For optional testing:
- Generic network switch
- 2 ethernet cables
- WS28xxB LED strip 170leds 4x
PCB Preparation

At the beginning of project please decide if you will use PCB I have created for the build or you will prepare your own stripboard. In case of project PCB go to PCB assembly chapter. For stripboard please refer to included schematics. I have not created any Stripboard layout so this will be on you to figure it out !
Note that 2 version of PCB and Enclosure exists, one is for small version of node and one for big one with SD/SP20 connectors !
Small version of PCB can be used in Big enclosure but MCU needs to be removed for USB access.
Downloads
Project PCB Assembly


On the PCB must be created cutout for Ethernet connector due to MCU orientation. See photo.
Solder 2.54mm 20pin connectors to PCB and MCU. Pins on MCU needs to be soldered on top, where the Ethernet connector is located.
- Please double check orientation of Pins during soldering to MCU, as it on reverse side (See photos) !!!
Solder 14pin socket for 74AHCT125
- Please double check orientation of notch !
Solder 5.08mm connectors for LED or wires.
Cut the ADJ trace on DC-DC converter and solder bridge on 5V or adjust potentiometer on converter to get 5V output.
Solder 4pin 2.54 rail to DC-DC converter and solder it to PCB.
Solder Resistor R1 - Value has to be calculated to fit LED used, but in general for 5V you should be safe with 150ohm +
Solder LED
- Please check LED orientation, there is notch on one LED side and this notch needs to match PCB silkscreen notch!
Solder Capacitors
- C1 is 47uF 16V or similar
- C2-C5 is 470uF 32V or similar
- Please check for orientation, GND is marked on PCB silkscreen and has square solder pad !
Fit MCU and 74AHCT125 to assembled PCB.
After PCB assembly measure for any short circuit between VIN and GND and between 5V and GND rail and double check capacitor orientation !
LED strips wiring:
- Pinout of PCB is V+ | Signal | GND
- for small version I use one of connectors as Power supply input, Big version uses Separate 2 pin SP/SD20 connector
- Avoid exceeding 10A if terminals on PCB are used !
Code Upload

For code upload first download Arduino IDE.
Download Ethernet.h from this project and Ethernet library via Library manager in Arduino, replace original Ethernet.h with one included in this project or adjust following parameters in existing Ethernet lib.
Ethernet | Arduino Documentation
- Open Ethernet.h file in your library location and edit following parameters:
- change #define MAX_SOCK_NUM 8 to 2
- uncomment #define ETHERNET_LARGE_BUFFERS
Download Fastled library
FastLED LED animation library for Arduino (formerly FastSPI_LED)
Download RP2040 boards to board manager and select W5500-EVB-Pico and correct COM port.
Adjust following variables in code:
- MAC address
- IP address
- subnet
- Starting universe
Setup according to your project needs. In case you need help with this refer to following article how Artnet works to get an idea or see example below. You can leave default settings from project for test, but you will need to understand later on anyway if you plan to use Artnet for real world installation.
- Please note, that each node needs to have different subnet and universe. Each node takes 4 Universes and each Subnet can take maximum of 16 universes !
Example:
- Node 1 - Subnet 0 | Start Universe 0 -> this node will use Universe 0, 1 ,2 ,3 on subnet 0
- Node 2 - Subnet 0 | Start Universe 4 -> this node will use Universe 4, 5 ,6 ,7 on subnet 0
- Node 3 - Subnet 0 | Start Universe 8 -> this node will use Universe 8, 9 ,10 ,11 on subnet 0
- Node 4 - Subnet 0 | Start Universe 12 -> this node will use Univ. 12, 13 ,14 ,15 on subnet 0
- Node 5 - Subnet 1 | Start Universe 0 -> this node will use Universe 0, 1 ,2 ,3 on subnet 1
- Node 6 - Subnet 1 | Start Universe 4 -> this node will use Universe 4, 5 ,6 ,7 on subnet 1
- and so on...
MAC address can be generated here: MAC Address Generator Online - Generate Random MAC Addresses
- Please note you are responsible for generating MAC address of your device which is not same with other devices in network!
IP address depends on your network architecture. Please refer to following guide if you want to learn more about TCP/IP
TCP/IP addressing and subnetting - Windows Client | Microsoft Learn
As last step flash the code as usual with Arduino IDE.
Functionality Test



For the test feel free to use any app supporting Artnet you are familiar with. As a free options I would recommend QLC+ .or Jinx! both are free apps, but remember Jinx! is supported by Windows only ! I use these modules with Resolume Arena myself without any issues.
QLC+ by Massimo Callegari | QLC+ by Massimo Callegari
Live-LEDs.de | LED Matrix Software & More
Network Interface static address:
First step is to configure our Network Interface in windows to static IP. This IP address needs to be in Range of network we want to use. For further explanation please refer to TCP/IP Networking basics as this information is in general available. TCP/IP addressing and subnetting - Windows Client | Microsoft Learn
example:
- your PC ethernet adapter has IP: 192.168.2.1 mask 255.255.255.0
- your nodes can use address between 192.168.2.2 - 192.168.2.254 (Configured in Step 3)
Connect your PC and your Artnet Node to standard network switch.
Connection without switch only possible with Crossover cable !
Open Jinx! and define your output device with IP, subnet and universe you used in your code setup in chapter 3
Define Output network device.
Define LED matrix with our newly created output device.
Run some animations from the Jinx!
Click start output. Your Artnet node should output Artnet Values to LED strips.
Enclosure


In project you can find folder 3D models with .stl files for 3D printing both small and big version of enclosure.
Both enclosures are compatible with small 3D printers as Prusa Mini or Bambulab A1 mini.
Print the enclosure with PETG, ABS or similar plastic. I can“t really recommend to use PLA if modules will be used outside.
For Big enclosure you can printout TPU gasket to achieve some level of waterproofing or use 2mm rubber gasket you can buy in local Hardware store. If all done correctly this enclosure can survive rainy conditions from our experience as all the connectors are IP68 rated.
Texts with IP, Subnet and Universe info were added in slicer. Please adjust this yourself during printing as this is specific to parameters used in code.