A Node.js module for sending ArtDMX packets to Art-Net nodes to control DMX512 lighting and stage equipment.
artnet is a Node.js module that sends ArtDMX packets to Art-Net nodes, enabling software control of DMX512 lighting and stage equipment. It solves the problem of programmatically managing lighting setups by providing a simple API to set DMX channels and send triggers over UDP. This allows developers to integrate dynamic lighting effects into applications, installations, or automated shows.
Node.js developers working on lighting automation, stage production software, interactive installations, or entertainment technology projects that require DMX512 control.
Developers choose artnet because it offers a lightweight, focused library for Art-Net communication with built-in rate throttling and flexible channel control. Unlike generic UDP libraries, it handles Art-Net protocol specifics, making it easier to implement reliable lighting control without low-level packet crafting.
Send ArtDMX to an Art-Net node (DMX512, Stage Lighting) 💡🎬
The set() method simplifies DMX control with support for arrays and null values to skip unchanged channels, as demonstrated in the README examples.
Built-in throttling at ~40Hz and periodic refreshes every ~4 seconds prevent network congestion without manual configuration.
Enables sending ArtTrigger packets for device-specific macros, such as starting or stopping shows, adding automation beyond basic DMX.
Options to customize host, port, network interface, and send-all modes allow adaptation to various Art-Net setups and network conditions.
The library only sends ArtDMX and ArtTrigger packets; it cannot listen to or receive data from Art-Net nodes, limiting feedback and bidirectional control.
Throttling is fixed at ~40Hz and not adjustable, which may be insufficient for high-performance applications requiring faster updates.
README focuses on basic usage with minimal examples for complex scenarios like error handling or multi-universe management, leaving gaps for developers.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.