# OpenLCP support for Art-Net The Art-Net 4 Release 1.4dd2 (1/2/2021) describes three members of an Art-Net network: - **Controller** : A lighting console. - **Node** : A DMX to / from Art-Net device. - **Media Server** : A Media Server. The ArtPollReply Styles (Table 4) enumerates those, plus an additional 4 device types: - **Route** : A network routing device. - **Backup** : A backup device. - **Config** : A configuration or diagnostic tool - **Visual** : A visualizer The behaviors of Route, Backup, Config, and Visual devices is not specified. The behaviors of Controller, Node, and Media Server are defined, and summarized in a table below. In OpenLCP, the base class for all Art-Net devices is the ARTNET::Device class. ARTNET::Controller and ARTNET::Node inherit from ARTNET::Device virtually, allowing custom implementations that may need to inherit from ARTNET::Controller _and_ ARTNET::Node to do so with a common base ARTNET::Device. - ARTNET::Device carries the implementation for: - Rx - ArtPoll - ArtTimeCode - ArtCommand - ArtTrigger - ArtDmx - ArtNzs - ArtVlc - ArtRdm - ArtRdmSub -Tx - ArtPollReply - ArtDiagData - ArtTimeCode - ArtCommand - ArtTrigger - ArtDmx - ArtNzs - ArtVlc - ArtRdm - ArtRdmSub - ARTNET::Controller extends ARTNET::Device with: - Rx - ArtPollReply - ArtIpProgReply - ArtDiagData - ArtFirmwareReply - ArtTodData - Tx - ArtPoll - ArtIpProg - ArtAddress - ArtSync - ArtInput - ArtFirmwareMaster - ArtTodRequest - ArtTodControl - ARTNET::Node extends ARTNET::Device with: - Rx - ArtIpProg - ArtAddress - ArtSync - ArtInput - ArtFirmwareMaster - ArtTodRequest - ArtTodControl - Tx - ArtIpProgReply - ArtFirmwareReply - ArtTodData ## Art-Net Table of Behaviors
OpCode | Controller | Node | Media Server | ||||||
---|---|---|---|---|---|---|---|---|---|
RX Behavior | TX | RX Behavior | TX | RX Behavior | TX | ||||
uni | brd | uni | brd | uni | brd | ||||
ArtPoll | ArtPollReply | TX | ArtPollReply | ArtPollReply | |||||
ArtPollReply | TX | TX | TX | ||||||
ArtIpProg | TX | ArtIpProgReply | ArtIpProgReply | ||||||
ArtIpProgReply | TX | TX | |||||||
ArtAddress | TX | ArtPollReply | ArtPollReply | ||||||
ArtDiagData | per ArtPoll | per ArtPoll | per ArtPoll | ||||||
ArtTimeCode | Application Specific | ||||||||
ArtCommand | Application Specific | ||||||||
ArtTrigger | Application Specific | ||||||||
ArtDmx | Application Specific | TX | Application Specific | TX | Application Specific | TX | |||
ArtSync | TX | Sync | Sync | ||||||
ArtNzs | Application Specific | TX | Application Specific | TX | Application Specific | TX | |||
ArtVlc | As ArtNzs | ||||||||
ArtInput | TX | ArtPollReply | ArtPollReply | ||||||
ArtFirmwareMaster | TX | OpFirmwareReply | OpFirmwareReply | ||||||
ArtFirmwareReply | Next OpFirmwareMaster | TX | TX | ||||||
ArtTodRequest | TX | ArtTodData | |||||||
ArtTodData | |||||||||
ArtTodControl | TX | ArtTodData | |||||||
ArtRdm | TX | tx | TX | tx | TX | tx | |||
ArtRdmSub | TX | TX |