ArtNet. Packet. ArtNzs
(ArtNet v0.1.0)
View Source
Transmits non-zero-start-code DMX512 data for a single universe.
This packet carries DMX-style payloads identified by start_code, except RDM.
VLC payloads use start code 0x91 and can be decoded with
ArtNet.Packet.ArtVlc.decode/1.
Packet layout
| Part | Field | Description | Default | Size | Format |
|---|---|---|---|---|---|
| Header | id | fixed | 8 bytes | "Art-Net\\0" | |
| Header | op_code | 0x5100 | 2 bytes | little-endian OpCode | |
| Header | prot_ver | 14 | 2 bytes | protocol version | |
| Payload | sequence | Packet sequence number, or 0 to disable sequence checking. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | start_code | Non-zero DMX start code for the payload. | required | 1 byte | unsigned integer (8 bits) |
| Payload | sub_universe | Low byte of the 15-bit Port-Address. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | net | Bits 8-14 of the 15-bit Port-Address. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | length | Number of payload data bytes. | required | 2 bytes | unsigned integer (16 bits) |
| Payload | data | Non-zero-start-code payload data. | required | variable (1 byte each) | list of unsigned integer (8 bits) |
Summary
Functions
Decodes a complete Art-Net binary as this packet type.
Encodes this packet struct into a complete Art-Net binary.
Builds a validated packet struct from a map or keyword list.
Builds a validated packet struct from a map or keyword list.
Returns the Art-Net OpCode value for this packet module.
Returns whether this packet includes the Art-Net protocol version header.
Returns the packet payload schema in declaration order.
Types
Functions
Decodes a complete Art-Net binary as this packet type.
Encodes this packet struct into a complete Art-Net binary.
@spec new(map() | Keyword.t()) :: {:ok, t()} | {:error, ArtNet.EncodeError.t()}
Builds a validated packet struct from a map or keyword list.
Builds a validated packet struct from a map or keyword list.
Raises ArtNet.EncodeError when validation fails.
@spec op_code() :: pos_integer()
Returns the Art-Net OpCode value for this packet module.
The OpCode is 0x5100.
@spec require_version_header?() :: boolean()
Returns whether this packet includes the Art-Net protocol version header.
Returns the packet payload schema in declaration order.