2022-06-08 16:06:30 -04:00
# OpenLCP support for Art-Net
2022-06-09 16:41:55 -04:00
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.
2022-06-04 10:54:45 -04:00
2022-06-09 16:41:55 -04:00
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
2022-06-04 10:54:45 -04:00
< table >
< tr >
< th rowspan = 3 > OpCode< / th >
< th colspan = 3 > Controller< / th >
< th colspan = 3 > Node< / th >
< th colspan = 3 > Media Server< / th >
< / tr >
< tr >
< th rowspan = 2 > RX Behavior< / th > < th colspan = 2 > TX< / th >
< th rowspan = 2 > RX Behavior< / th > < th colspan = 2 > TX< / th >
< th rowspan = 2 > RX Behavior< / th > < th colspan = 2 > TX< / th >
< / tr >
< tr >
< th > uni< / th > < th > brd< / th >
< th > uni< / th > < th > brd< / th >
< th > uni< / th > < th > brd< / th >
< / tr >
< tr >
< td > ArtPoll< / td >
< td > ArtPollReply< / td > < td > < / td > < td > TX< / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtPollReply< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< / tr >
< tr >
< td > ArtIpProg< / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > ArtIpProgReply< / td > < td > < / td > < td > < / td >
< td > ArtIpProgReply< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtIpProgReply< / td >
< td > < / td > < td > < / td > < td > < / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > < / td > < td > TX< / td > < td > < / td >
< / tr >
< tr >
< td > ArtAddress< / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtDiagData< / td >
< td > < / td > < td colspan = 2 > per ArtPoll< / td >
< td > < / td > < td colspan = 2 > per ArtPoll< / td >
< td > < / td > < td colspan = 2 > per ArtPoll< / td >
< / tr >
< tr >
< td > ArtTimeCode< / td >
< td colspan = 9 > Application Specific< / td >
< / tr >
< tr >
< td > ArtCommand< / td >
< td colspan = 9 > Application Specific< / td >
< / tr >
< tr >
< td > ArtTrigger< / td >
< td colspan = 9 > Application Specific< / td >
< / tr >
< tr >
< td > ArtDmx< / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< / tr >
< tr >
< td > ArtSync< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< td > Sync< / td > < td > < / td > < td > < / td >
< td > Sync< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtNzs< / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< td > Application Specific< / td > < td > TX< / td > < td > < / td >
< / tr >
< tr >
< td > ArtVlc< / td >
< td colspan = 9 > As ArtNzs< / td >
< / tr >
< tr >
< td > ArtInput< / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< td > ArtPollReply< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtFirmwareMaster< / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > OpFirmwareReply< / td > < td > < / td > < td > < / td >
< td > OpFirmwareReply< / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtFirmwareReply< / td >
< td > Next OpFirmwareMaster< / td > < td > < / td > < td > < / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > < / td > < td > TX< / td > < td > < / td >
< / tr >
< tr >
< td > ArtTodRequest< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< td > ArtTodData< / td > < td > < / td > < td > < / td >
< td > < / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtTodData< / td >
< td > < / td > < td > < / td > < td > < / td >
< td > < / td > < td > < / td > < td > < / td >
< td > < / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtTodControl< / td >
< td > < / td > < td > < / td > < td > TX< / td >
< td > ArtTodData< / td > < td > < / td > < td > < / td >
< td > < / td > < td > < / td > < td > < / td >
< / tr >
< tr >
< td > ArtRdm< / td >
< td > < / td > < td > TX< / td > < td > tx< / td >
< td > < / td > < td > TX< / td > < td > tx< / td >
< td > < / td > < td > TX< / td > < td > tx< / td >
< / tr >
< tr >
< td > ArtRdmSub< / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > < / td > < td > TX< / td > < td > < / td >
< td > < / td > < td > < / td > < td > < / td >
< / tr >
< / table >
Art-Net™ is a trade mark of Artistic Licence Holdings Ltd. The Art-Net protocol and associated documentation is copyright Artistic Licence Holdings Ltd.