ArtNet_Pico2_WS2811
ArtNet → WS2811 bridge for WIZnet W6300-EVB-Pico2 — 8 parallel LED universes via RP2350 PIO + DMA
ArtNet → WS2811 Bridge — Driving 8 LED Universes from a Single W6300-EVB-Pico2
#ArtNet #WS2811 #DMX #W6300 #RP2350 #Pico2 #PIO #DMA #LEDWall #StageLighting
🎭 Real-time stage-lighting bridge firmware on WIZnet W6300-EVB-Pico2. 8 parallel ArtNet universes, 40fps, zero-CPU LED output — all on a single board.
01 — What is this project?
LED walls and stage-lighting installations speak ArtNet — a DMX-over-Ethernet protocol that lighting consoles, media servers, and visual software (MadMapper, Resolume, QLC+) use to push pixel data across a network. To turn that network traffic into actual light, you need a hardware bridge that listens for ArtNet UDP packets and converts each universe into a WS2811 LED strip signal.
Commercial bridges that do this — Advatek, ENTTEC, BliPlay — start around $200 and scale up to four-figure prices when you need multiple universes. They are essentially closed-source black boxes, and adding a custom feature means waiting for the vendor's next firmware release.
This project is the open-source alternative: a complete C firmware for the WIZnet W6300-EVB-Pico2 that receives ArtNet over Ethernet and drives up to 8 parallel WS2811 LED universes in real time — 170 RGB pixels per universe (512 DMX channels), refreshed at 40 fps. Single board, MIT-licensed, ~$10 of WIZnet hardware.
The clever architecture is what makes it possible: the W6300 handles the entire TCP/IP stack in silicon, the RP2350's 8 PIO state machines drive WS2811 timing in parallel hardware, and DMA carries pixel data from memory to the LED strips with zero CPU involvement during output. The CPU has nothing to do but parse ArtNet packets and swap buffers.
02 — Why ArtNet + WS2811 + Pico 2?
🔷 ArtNet is the de-facto standard for networked DMX
DMX-512 over a serial cable is fine for one fixture chain. The moment you need to drive a wall of LED pixels from a lighting console hundreds of meters away — or run lighting design software on a laptop and send it to fixtures via WiFi/Ethernet — you need DMX over IP. ArtNet 4 over UDP port 6454 has been the industry standard for that since the 1990s. Every serious lighting tool speaks it.
🔷 WS2811 is the universal pixel LED protocol
WS2811 (and the closely related WS2812/NeoPixel) is the protocol every addressable LED strip in the world speaks. One data line, 800 kHz, 24 bits per pixel. A hardware bridge that converts ArtNet to WS2811 is a bridge from "professional lighting industry" to "commodity LED hardware" — and that unlocks LED walls, art installations, and stage effects at a fraction of professional gear cost.
🔷 RP2350 + PIO is built for exactly this
The Pico 2's PIO (Programmable I/O) is uniquely suited to bit-banging protocols like WS2811 at exact timing. Eight independent PIO state machines across two PIO blocks mean eight WS2811 strips can be driven truly in parallel — not multiplexed, not time-sliced — with frame-accurate synchronization. The CPU doesn't even know the output is happening.
03 — System architecture
04 — Why W6300?
🔷 Hardware TCP/IP eliminates the CPU burden — every CPU cycle goes to LEDs
ArtNet runs over UDP. The traditional way to receive UDP on a microcontroller is lwIP — a software TCP/IP stack that consumes RAM, code space, and CPU cycles parsing headers and managing socket state. On a real-time LED bridge, every wasted CPU cycle means a missed frame deadline. W6300 runs the entire TCP/IP stack in silicon. The RP2350 sees only complete UDP payloads ready to parse as ArtNet. The CPU is free to do what only the CPU can do: convert ArtNet packets into universe buffers and trigger DMA.
🔷 QSPI via PIO — the only path to fast Ethernet on RP2350
The RP2350 has no built-in Ethernet MAC. The traditional SPI ethernet path (W5500-style) tops out around 80 Mbps and ties up an SPI peripheral. W6300 uses QSPI — quad-IO SPI — which the W6300-EVB-Pico2 routes through the RP2350's PIO. The result is a high-bandwidth Ethernet pipe that doesn't consume the chip's regular SPI peripherals (which the user may want for other purposes), and that has enough throughput headroom for 8 simultaneous ArtNet universes plus future expansion.
🔷 IPv4 / IPv6 dual-stack — future-proof for venue networks
Modern professional venues and broadcast installations are migrating to IPv6 networks. Most maker-grade Ethernet chips are IPv4-only. W6300 supports both IPv4 and IPv6 natively — this firmware will continue to work on venue networks that have already transitioned, without firmware changes or external translation hardware.
🔷 W6300-EVB-Pico2 — turnkey hardware platform
The official WIZnet evaluation board fuses RP2350 + W6300 + magnetics + RJ45 onto a Pico-form-factor PCB. There is no Ethernet circuit design work, no PHY clock layout, no magnetics impedance matching — the board ships ready to flash. For a firmware project of this complexity, removing the entire hardware-design phase compresses development time from months to weeks.
05 — Key components
🧠 W6300-EVB-Pico2 — Combined MCU + Ethernet Platform
RP2350 dual-core Cortex-M33 @ 150 MHz with 12 PIO state machines and dedicated DMA channels, paired on-board with WIZnet W6300 over QSPI. The fixed QSPI pin assignment (GP15–GP22) frees GP0–GP14 for WS2811 outputs and general I/O. Built with the official Raspberry Pi Pico SDK 2.0 — not Arduino, because Arduino abstracts away the PIO and DMA access this project depends on.
🌐 WIZnet W6300 — Hardware TCP/IP Engine
The W6300 receives, validates, and reassembles UDP packets entirely in hardware before delivering complete payloads to the RP2350 via QSPI. ArtNet's UDP port 6454 traffic appears as a stream of clean ArtDmx packets — no fragmentation handling, no checksum validation, no socket buffer management in CPU code.
📦 ArtNet Parser (src/artnet/)
Stateless C parser that extracts the OpCode, universe number, and 512-byte DMX payload from each ArtDmx packet. Filters out non-DMX packet types (ArtPoll, ArtPollReply, etc.). Maps each universe number to a configured output slot via ARTNET_UNIVERSE_START.
📦 Double-Buffered Universe RAM
Two complete sets of universe buffers in RAM. While DMA streams buffer A to the WS2811 strips, the CPU can fill buffer B from incoming ArtNet packets. Buffers swap atomically at the start of each output frame, guaranteeing torn-frame-free output even when ArtNet packets arrive faster than the LED frame rate.
⚖️ RP2350 PIO Program (ws2811.pio)
Custom PIO assembly that encodes WS2811's strict timing — 0.4 µs high / 0.85 µs low for a logic-0 bit, 0.8 µs high / 0.45 µs low for a logic-1 bit, 50 µs reset gap between frames. Each of the 8 state machines runs this program independently against its own output pin, producing eight simultaneous WS2811 signal streams with no software intervention after initial DMA setup.
🔌 SN74LVC4245A Level Shifter
RP2350 GPIO drives at 3.3 V. WS2811 expects 5 V data signaling, and a 3.3 V signal is at the very edge of WS2811's "logic high" threshold — often resulting in flickering or color corruption, especially on long LED strips. The SN74LVC4245A is an octal bidirectional level shifter that cleanly translates all 8 GPIOs to 5 V in a single chip.
🧪 Verified Performance
- 8 parallel universes confirmed running simultaneously
- 40 fps sustained at full universe count (configurable higher)
- Zero CPU load during LED output (verified via DMA-only path)
- Compatible with MadMapper, QLC+, Resolume, sACN-to-ArtNet bridges
06 — Application scenarios
01. LED Walls and Pixel Art Installations
The native use case. A grid of WS2811 strips driven from a laptop running MadMapper or Resolume, with this bridge as the network-to-LED converter. 8 universes × 170 pixels = 1,360 RGB pixels per board — enough for a 40×34 LED matrix wall, scalable by chaining multiple boards. #LEDWall #PixelMapping #MediaArt
02. Stage and Concert Lighting
Touring and theater installations run on ArtNet/sACN. This bridge slots directly into that ecosystem — a $40 build-it-yourself node that replaces $200+ commercial Art-Net-to-pixel converters. MIT license means it can ship inside venue gear without legal complications. #StageLighting #Theater #Concert
03. Architectural and Retail Lighting
Façade lighting, store window installations, and museum exhibits often combine off-the-shelf control software (running ArtNet) with custom LED layouts. This firmware bridges them. Multiple boards on the same network share traffic naturally — each board listens for the universes it is configured for. #Architectural #RetailDesign #MuseumLighting
04. DIY Maker Festivals and Burning Man-Style Art
Large-scale interactive art with thousands of WS2811 pixels controlled from a sensor-driven program running on a laptop. The combination of open firmware, low cost, and zero-CPU LED output makes this firmware ideal for installations where one operator manages dozens of LED elements. #InteractiveArt #MakerFest #OpenSource
Conclusion
Hardware TCP/IP + hardware PIO + DMA = a real-time ArtNet LED bridge with the CPU mostly asleep.
This firmware demonstrates exactly the architectural pattern WIZnet hardware enables: offload network protocol work to silicon (W6300), offload signal generation to silicon (RP2350 PIO + DMA), and use the CPU only for what genuinely needs general-purpose compute — packet parsing and buffer management. The result is a single-board, MIT-licensed alternative to lighting-industry hardware that costs an order of magnitude more.
For lighting designers, makers, and stage technicians who have been priced out of professional Art-Net pixel hardware, this is a complete, ready-to-flash solution that fits in a pocket and ships from any maker store. For WIZnet, it is a textbook demonstration of why W6300's hardware TCP/IP + QSPI architecture matters for real-time applications.
- ✅ Hardware ArtNet 4 reception via W6300 hardware TCP/IP (no lwIP)
- ✅ 8 parallel WS2811 universes via RP2350 PIO state machines
- ✅ DMA-driven LED output with zero CPU load during transmission
- ✅ Double-buffered for tear-free frame transitions
- ✅ 40 fps sustained at full 8-universe configuration
- ✅ IPv4 / IPv6 dual-stack ready for modern venue networks
- ✅ QSPI Ethernet — high bandwidth without consuming SPI peripherals
- ✅ Compatible with MadMapper, QLC+, Resolume, sACN bridges, every Art-Net 4 source
- ✅ Built on W6300-EVB-Pico2 — turnkey hardware, no PCB design needed
- ✅ MIT licensed — usable in commercial lighting products
Q&A
Q. What is ArtNet and why does it matter for LED lighting? ArtNet is a UDP-based protocol that carries DMX-512 lighting control data over standard Ethernet networks. It was developed by Artistic Licence in the 1990s and has become the industry standard for connecting lighting consoles, media servers, and software (MadMapper, Resolume, QLC+) to physical lighting fixtures. One ArtNet "universe" carries 512 DMX channels (170 RGB pixels). A lighting designer running software on a laptop sends ArtNet packets, and a bridge like this project converts each universe into the appropriate physical signal for the fixtures.
Q. Why is hardware TCP/IP via W6300 better than lwIP for this application? lwIP is a software TCP/IP stack that runs on the CPU. On a microcontroller, it consumes 30–50 KB of RAM, a similar amount of code space, and significant CPU cycles parsing IP headers, computing checksums, and managing socket state. For a real-time application like ArtNet-to-WS2811, every CPU cycle spent on networking is a cycle not spent on LED output. The W6300 runs the entire TCP/IP stack in silicon and delivers fully reassembled UDP payloads to the CPU. The result: more CPU headroom for the actual application logic (ArtNet parsing, buffer management) and dramatically more deterministic timing.
Q. Why is the limit exactly 8 universes? The RP2350 has 12 PIO state machines spread across two PIO blocks (PIO0 and PIO1, four state machines each, plus PIO2 with four more). This firmware uses 8 state machines (4 on PIO0, 4 on PIO1) for LED output, leaving PIO2 available for the W6300 QSPI interface and other uses. Each WS2811 universe needs one dedicated state machine to maintain the exact timing the protocol requires, so 8 state machines = 8 universes. In principle the architecture could extend to more universes if PIO2 were also dedicated to LED output, but the current design intentionally reserves PIO2 for system use.
Q. What is the difference between WS2811 and WS2812 — does this firmware support both? WS2811 is the original protocol; WS2812 (and the related WS2812B and SK6812) is a closely compatible variant with the LED driver integrated into the LED package itself. The data timing is nearly identical — both use the same ~800 kHz one-wire protocol with the same logic-0 / logic-1 pulse-width encoding. The PIO program in this firmware handles WS2811 timing directly; WS2812/WS2812B/NeoPixel strips will also work, possibly with a minor PIO timing tweak depending on the strip. WS2813 and WS2815 require small protocol adjustments.
Q. Do I really need the SN74LVC4245A level shifter — can't I drive WS2811 directly from RP2350 3.3V GPIO? You can, but you should not for production use. WS2811's "logic high" threshold is approximately 0.7 × VCC, which means 3.5 V at a 5 V supply. RP2350's 3.3 V output is below that threshold. The strips often appear to work — the first pixel may receive the signal correctly and amplify it before passing to the next pixel — but the result is unreliable: flickering on long strips, color corruption, sensitivity to cable length and temperature. The SN74LVC4245A is a $1 chip that eliminates these issues completely. For an art installation that needs to run reliably for weeks or months, the level shifter is non-negotiable.
[한글 버전]
ArtNet → WS2811 브리지 — 단일 W6300-EVB-Pico2로 8개 LED universe 구동
#ArtNet #WS2811 #DMX #W6300 #RP2350 #Pico2 #PIO #DMA #LED월 #무대조명
🎭 WIZnet W6300-EVB-Pico2 기반 실시간 무대 조명 브리지 펌웨어. 8개 병렬 ArtNet universe, 40fps, 출력 중 CPU 부하 제로 — 모두 단일 보드에서.
01 — 이 프로젝트는 무엇인가?
LED 월과 무대 조명 설치는 ArtNet으로 대화합니다 — DMX를 이더넷 위에 올린 프로토콜로, 조명 콘솔, 미디어 서버, 영상 소프트웨어(MadMapper, Resolume, QLC+)가 네트워크를 통해 픽셀 데이터를 전송할 때 사용합니다. 그 네트워크 트래픽을 실제 빛으로 바꾸려면, ArtNet UDP 패킷을 수신해 각 universe를 WS2811 LED 스트립 신호로 변환하는 하드웨어 브리지가 필요합니다.
이 일을 하는 상용 브리지 — Advatek, ENTTEC, BliPlay — 는 200달러부터 시작해서, 여러 universe가 필요해지면 네 자릿수 가격까지 올라갑니다. 본질적으로 클로즈드 소스 블랙박스이며, 커스텀 기능을 추가하려면 벤더의 다음 펌웨어 릴리스를 기다려야 합니다.
이 프로젝트는 오픈소스 대안입니다: WIZnet W6300-EVB-Pico2용 완전한 C 펌웨어로, 이더넷으로 ArtNet을 수신해 최대 8개의 병렬 WS2811 LED universe를 실시간으로 구동합니다 — universe당 170 RGB 픽셀(512 DMX 채널), 40fps. 단일 보드, MIT 라이선스, WIZnet 하드웨어 약 1만 원.
이를 가능케 하는 영리한 아키텍처: W6300이 전체 TCP/IP 스택을 HW적으로 처리하고, RP2350의 8개 PIO state machine이 WS2811 타이밍을 병렬 하드웨어로 구동하며, DMA가 메모리에서 LED 스트립으로 픽셀 데이터를 실어 나릅니다 — 출력 중 CPU는 전혀 관여하지 않습니다. CPU는 ArtNet 패킷을 파싱하고 버퍼를 스왑하는 일 외에는 할 일이 없습니다.
02 — 시스템 구조
03 — 왜 ArtNet + WS2811 + Pico 2 인가?
🔷 ArtNet은 네트워크 DMX의 사실상 표준이다
시리얼 케이블 위 DMX-512는 단일 fixture 체인에는 괜찮습니다. 그러나 수백 미터 떨어진 조명 콘솔에서 LED 픽셀 벽을 구동해야 하거나 — 노트북에서 조명 디자인 소프트웨어를 실행하고 WiFi/이더넷으로 fixture에 보내야 한다면 — DMX over IP가 필요합니다. UDP 포트 6454 위의 ArtNet 4는 1990년대부터 그 분야의 산업 표준이었습니다. 모든 진지한 조명 도구가 이를 구사합니다.
🔷 WS2811은 픽셀 LED의 보편 프로토콜이다
WS2811(과 가까운 친척 WS2812/NeoPixel)은 전 세계 모든 어드레서블 LED 스트립이 사용하는 프로토콜입니다. 단일 데이터 라인, 800 kHz, 픽셀당 24비트. ArtNet을 WS2811로 변환하는 하드웨어 브리지는 "프로페셔널 조명 산업"에서 "범용 LED 하드웨어"로 가는 다리입니다 — 이것이 프로 장비 가격의 일부로 LED 월, 아트 설치, 무대 효과를 가능하게 합니다.
🔷 RP2350 + PIO는 정확히 이를 위해 만들어졌다
Pico 2의 PIO(Programmable I/O)는 WS2811처럼 정확한 타이밍이 필요한 비트뱅잉 프로토콜에 독보적으로 적합합니다. 두 개의 PIO 블록에 걸쳐 있는 8개의 독립 PIO state machine은 8개의 WS2811 스트립을 진정으로 병렬로 — 멀티플렉싱 없이, 시간 분할 없이 — 프레임 정확한 동기화로 구동할 수 있습니다. CPU는 출력이 일어나고 있다는 사실조차 모릅니다.
04 — 왜 W6300인가?
🔷 하드웨어 TCP/IP가 CPU 부담을 제거 — 모든 CPU 사이클이 LED로
ArtNet은 UDP 위에서 동작합니다. 마이크로컨트롤러에서 UDP를 수신하는 전통적인 방법은 lwIP — CPU에서 동작하는 소프트웨어 TCP/IP 스택으로, RAM, 코드 공간, IP 헤더 파싱과 소켓 상태 관리에 CPU 사이클을 소모합니다. 실시간 LED 브리지에서 낭비되는 모든 CPU 사이클은 놓치는 프레임 데드라인을 의미합니다. W6300은 전체 TCP/IP 스택을 실리콘에서 실행합니다. RP2350은 ArtNet으로 파싱할 준비가 된 완전한 UDP 페이로드만을 봅니다. CPU는 오직 CPU만이 할 수 있는 일에 자유롭게 집중합니다: ArtNet 패킷을 universe 버퍼로 변환하고 DMA를 트리거하는 일.
🔷 PIO 경유 QSPI — RP2350에서 빠른 이더넷의 유일한 경로
RP2350에는 내장 이더넷 MAC이 없습니다. 전통적인 SPI 이더넷 경로(W5500 방식)는 약 80 Mbps에서 천장에 부딪히고 SPI 페리페럴 하나를 점유합니다. W6300은 QSPI — quad-IO SPI — 를 사용하며, W6300-EVB-Pico2는 이를 RP2350의 PIO를 통해 라우팅합니다. 결과: 칩의 일반 SPI 페리페럴(사용자가 다른 목적으로 쓰고 싶을 수 있는)을 소비하지 않으면서, 8개의 동시 ArtNet universe와 향후 확장을 위한 충분한 처리량 여유를 가진 고대역폭 이더넷 파이프.
🔷 IPv4 / IPv6 듀얼 스택 — 미래 대비된 회장 네트워크
현대의 프로페셔널 회장과 방송 시설은 IPv6 네트워크로 이주하고 있습니다. 대부분의 메이커급 이더넷 칩은 IPv4 전용입니다. W6300은 IPv4와 IPv6를 모두 네이티브로 지원합니다 — 이 펌웨어는 이미 전환된 회장 네트워크에서 펌웨어 변경이나 외부 변환 하드웨어 없이 계속 동작합니다.
🔷 W6300-EVB-Pico2 — 턴키 하드웨어 플랫폼
공식 WIZnet 평가 보드는 RP2350 + W6300 + 자성체 + RJ45를 Pico 폼팩터 PCB 위에 융합합니다. 이더넷 회로 설계 작업 없음, PHY 클럭 레이아웃 없음, 자성체 임피던스 매칭 없음 — 보드가 플래시 준비된 상태로 출하됩니다. 이 정도 복잡도의 펌웨어 프로젝트에서 전체 하드웨어 설계 단계를 제거하면 개발 시간이 수개월에서 수주로 압축됩니다.
05 — 핵심 구성 요소
🧠 W6300-EVB-Pico2 — 통합 MCU + 이더넷 플랫폼
150 MHz 듀얼 코어 Cortex-M33 RP2350, 12개 PIO state machine과 전용 DMA 채널, 보드 위에서 W6300과 QSPI로 페어링. 고정 QSPI 핀 배치(GP15–GP22)가 GP0–GP14를 WS2811 출력과 일반 I/O에 자유롭게 합니다. 공식 Raspberry Pi Pico SDK 2.0으로 빌드 — Arduino가 아닌 이유는, Arduino가 이 프로젝트가 의존하는 PIO와 DMA 접근을 추상화로 가리기 때문입니다.
🌐 WIZnet W6300 — 하드웨어 TCP/IP 엔진
W6300은 UDP 패킷을 전적으로 하드웨어에서 수신, 검증, 재조립한 뒤 완전한 페이로드를 QSPI로 RP2350에 전달합니다. ArtNet의 UDP 포트 6454 트래픽은 깨끗한 ArtDmx 패킷 스트림으로 나타납니다 — CPU 코드에서 단편화 처리, 체크섬 검증, 소켓 버퍼 관리가 없습니다.
📦 ArtNet 파서 (src/artnet/)
각 ArtDmx 패킷에서 OpCode, universe 번호, 512바이트 DMX 페이로드를 추출하는 무상태 C 파서. DMX가 아닌 패킷 유형(ArtPoll, ArtPollReply 등)을 필터링. ARTNET_UNIVERSE_START를 통해 각 universe 번호를 설정된 출력 슬롯에 매핑.
📦 더블 버퍼 Universe RAM
RAM에 두 세트의 universe 버퍼 완전체. DMA가 버퍼 A를 WS2811 스트립으로 스트리밍하는 동안, CPU는 들어오는 ArtNet 패킷으로 버퍼 B를 채울 수 있습니다. 각 출력 프레임 시작 시 버퍼가 원자적으로 스왑되어, ArtNet 패킷이 LED 프레임 속도보다 빠르게 도착해도 찢어진 프레임 없는 출력을 보장합니다.
⚖️ RP2350 PIO 프로그램 (ws2811.pio)
WS2811의 엄격한 타이밍을 인코딩하는 커스텀 PIO 어셈블리 — logic-0 비트는 0.4 µs high / 0.85 µs low, logic-1 비트는 0.8 µs high / 0.45 µs low, 프레임 간 50 µs 리셋 갭. 8개 state machine 각각이 이 프로그램을 자체 출력 핀에 독립적으로 실행해, 초기 DMA 설정 이후 소프트웨어 개입 없이 8개의 동시 WS2811 신호 스트림을 생성합니다.
🔌 SN74LVC4245A 레벨 시프터
RP2350 GPIO는 3.3 V로 구동합니다. WS2811은 5 V 데이터 신호를 기대하며, 3.3 V 신호는 WS2811의 "logic high" 임계값 가장자리에 있습니다 — 특히 긴 LED 스트립에서 깜빡임이나 색상 손상을 자주 일으킵니다. SN74LVC4245A는 단일 칩으로 8개 GPIO 모두를 5 V로 깔끔하게 변환하는 옥탈 양방향 레벨 시프터입니다.
🧪 검증된 성능
- 8개 병렬 universe 동시 동작 확인
- 40 fps 풀 universe 카운트에서 지속(상향 조정 가능)
- 출력 중 CPU 부하 제로 (DMA 단독 경로 검증)
- MadMapper, QLC+, Resolume, sACN-to-ArtNet 브리지와 호환
06 — 응용 시나리오
01. LED 월과 픽셀 아트 설치
원래 사용 사례. 노트북에서 실행되는 MadMapper나 Resolume에서 구동되는 WS2811 스트립 그리드, 이 브리지가 네트워크-LED 변환기 역할. 8개 universe × 170 픽셀 = 보드당 1,360 RGB 픽셀 — 40×34 LED 매트릭스 월에 충분하며, 여러 보드 체이닝으로 확장 가능. #LED월 #픽셀매핑 #미디어아트
02. 무대 및 콘서트 조명
투어와 극장 설치는 ArtNet/sACN으로 동작합니다. 이 브리지는 그 생태계에 그대로 들어맞습니다 — 200달러+ 상용 Art-Net-to-pixel 변환기를 대체하는 4만 원짜리 DIY 노드. MIT 라이선스는 법적 문제 없이 회장 장비 안에 들어갈 수 있음을 의미합니다. #무대조명 #극장 #콘서트
03. 건축 및 리테일 조명
파사드 조명, 매장 윈도우 설치, 박물관 전시는 기성품 제어 소프트웨어(ArtNet 구동)와 커스텀 LED 레이아웃을 결합하는 경우가 많습니다. 이 펌웨어가 그 사이를 연결합니다. 같은 네트워크의 여러 보드가 트래픽을 자연스럽게 공유합니다 — 각 보드는 설정된 universe만 청취합니다. #건축조명 #리테일디자인 #박물관조명
04. DIY 메이커 페스티벌과 버닝맨 스타일 아트
노트북에서 실행되는 센서 기반 프로그램으로 제어되는 수천 개의 WS2811 픽셀이 들어가는 대규모 인터랙티브 아트. 오픈 펌웨어, 낮은 비용, 출력 중 CPU 부하 제로의 조합이 이 펌웨어를 한 명의 운영자가 수십 개의 LED 요소를 관리하는 설치에 이상적으로 만듭니다. #인터랙티브아트 #메이커페스트 #오픈소스
결론
하드웨어 TCP/IP + 하드웨어 PIO + DMA = CPU가 거의 잠든 실시간 ArtNet LED 브리지.
이 펌웨어는 WIZnet 하드웨어가 가능하게 하는 정확한 아키텍처 패턴을 보여줍니다: 네트워크 프로토콜 작업을 실리콘에 오프로드(W6300), 신호 생성을 실리콘에 오프로드(RP2350 PIO + DMA), 그리고 진정으로 범용 컴퓨트가 필요한 것 — 패킷 파싱과 버퍼 관리 — 에만 CPU 사용. 결과는 한 자릿수 배 가격의 조명 산업 하드웨어를 대체하는 단일 보드, MIT 라이선스 솔루션.
프로페셔널 Art-Net 픽셀 하드웨어 가격에서 밀려난 조명 디자이너, 메이커, 무대 기술자에게 이것은 주머니에 들어가고 어떤 메이커 스토어에서도 출하되는 완전하고 플래시 준비된 솔루션입니다. WIZnet에게 이것은 실시간 응용에서 W6300의 하드웨어 TCP/IP + QSPI 아키텍처가 왜 중요한지에 대한 교과서적 시연입니다.
- ✅ W6300 하드웨어 TCP/IP를 통한 하드웨어 ArtNet 4 수신 (lwIP 없음)
- ✅ RP2350 PIO state machine을 통한 8개 병렬 WS2811 universe
- ✅ 전송 중 CPU 부하 제로의 DMA 구동 LED 출력
- ✅ 찢김 없는 프레임 전환을 위한 더블 버퍼링
- ✅ 풀 8-universe 구성에서 40 fps 지속
- ✅ 현대 회장 네트워크를 위한 IPv4 / IPv6 듀얼 스택 준비
- ✅ QSPI 이더넷 — SPI 페리페럴을 소비하지 않는 고대역폭
- ✅ MadMapper, QLC+, Resolume, sACN 브리지, 모든 Art-Net 4 소스와 호환
- ✅ W6300-EVB-Pico2 기반 — 턴키 하드웨어, PCB 설계 불필요
- ✅ MIT 라이선스 — 상용 조명 제품에 사용 가능
Q&A
Q. ArtNet이 무엇이고 왜 LED 조명에 중요한가요? ArtNet은 표준 이더넷 네트워크 위에서 DMX-512 조명 제어 데이터를 운반하는 UDP 기반 프로토콜입니다. 1990년대 Artistic Licence가 개발했으며 조명 콘솔, 미디어 서버, 소프트웨어(MadMapper, Resolume, QLC+)를 물리 조명 fixture에 연결하는 산업 표준이 되었습니다. 하나의 ArtNet "universe"는 512개 DMX 채널(170 RGB 픽셀)을 운반합니다. 조명 디자이너가 노트북에서 소프트웨어를 실행해 ArtNet 패킷을 보내고, 이 프로젝트와 같은 브리지가 각 universe를 fixture를 위한 적절한 물리 신호로 변환합니다.
Q. 이 응용에서 lwIP보다 W6300을 통한 하드웨어 TCP/IP가 왜 더 좋은가요? lwIP는 CPU에서 실행되는 소프트웨어 TCP/IP 스택입니다. 마이크로컨트롤러에서 30–50 KB의 RAM, 비슷한 양의 코드 공간, 그리고 IP 헤더 파싱, 체크섬 계산, 소켓 상태 관리에 상당한 CPU 사이클을 소모합니다. ArtNet-WS2811 같은 실시간 응용에서 네트워킹에 쓰인 모든 CPU 사이클은 LED 출력에 쓰지 못한 사이클입니다. W6300은 전체 TCP/IP 스택을 실리콘에서 실행하고 완전히 재조립된 UDP 페이로드를 CPU에 전달합니다. 결과: 실제 응용 로직(ArtNet 파싱, 버퍼 관리)을 위한 더 많은 CPU 여유와 극적으로 더 결정론적인 타이밍.
Q. 왜 한계가 정확히 8개 universe인가요? RP2350에는 두 PIO 블록(PIO0와 PIO1, 각 4개씩)에 걸친 12개의 PIO state machine과 PIO2의 추가 4개가 있습니다. 이 펌웨어는 LED 출력에 8개 state machine(PIO0의 4개, PIO1의 4개)을 사용해, W6300 QSPI 인터페이스와 기타 용도를 위해 PIO2를 남겨둡니다. 각 WS2811 universe는 프로토콜이 요구하는 정확한 타이밍을 유지하기 위해 전용 state machine 하나가 필요하므로, state machine 8개 = universe 8개. 원칙적으로 PIO2도 LED 출력에 전용으로 할당하면 더 많은 universe로 확장할 수 있지만, 현재 설계는 의도적으로 PIO2를 시스템 사용으로 예약합니다.
Q. WS2811과 WS2812의 차이는 무엇이고 — 이 펌웨어가 둘 다 지원하나요? WS2811은 원조 프로토콜이고, WS2812(그리고 관련된 WS2812B와 SK6812)는 LED 드라이버가 LED 패키지 자체에 통합된 매우 호환되는 변종입니다. 데이터 타이밍은 거의 동일합니다 — 둘 다 동일한 logic-0 / logic-1 펄스 폭 인코딩의 약 800 kHz 1선 프로토콜을 사용합니다. 이 펌웨어의 PIO 프로그램은 WS2811 타이밍을 직접 처리합니다; WS2812/WS2812B/NeoPixel 스트립도 동작하며, 스트립에 따라 약간의 PIO 타이밍 조정이 필요할 수 있습니다. WS2813과 WS2815는 작은 프로토콜 조정이 필요합니다.
Q. SN74LVC4245A 레벨 시프터가 정말 필요한가요 — RP2350 3.3V GPIO에서 WS2811을 직접 구동할 수 없나요? 할 수는 있지만, 프로덕션 용도로는 안 됩니다. WS2811의 "logic high" 임계값은 약 0.7 × VCC이며, 이는 5 V 공급에서 3.5 V를 의미합니다. RP2350의 3.3 V 출력은 그 임계값 아래입니다. 스트립이 종종 동작하는 것처럼 보입니다 — 첫 픽셀이 신호를 올바르게 수신해 다음 픽셀로 전달하기 전에 증폭할 수 있기 때문입니다 — 하지만 결과는 불안정합니다: 긴 스트립에서의 깜빡임, 색상 손상, 케이블 길이와 온도에 대한 민감성. SN74LVC4245A는 이러한 문제를 완전히 제거하는 1달러짜리 칩입니다. 몇 주 또는 몇 달 동안 안정적으로 실행되어야 하는 아트 설치에서 레벨 시프터는 타협 불가능합니다.
