DyNet Text
DyNet Text is a text-based protocol that sends commands to, and receives status responses from, the control network. It is translated to DyNet1 and DyNet2 by the EG (dependent on port settings). DyNet Text can be sent over a serial RS-485 connection or a TCP connection made by a Telnet client.
-
Presently, DyNet Text does not have an EEPROM section. This means that settings cannot be saved between sessions.
-
DyNet1 uses separate time and date messages. DyNet2 uses a combined time and date message.
-
Commands that have device codes and box numbers as arguments must either have both or neither. You cannot supply a device code without a box number.
Syntax
DyNet Text commands use a single keyword command followed by a number of arguments. Commands and arguments are not case sensitive.
Preset 1 2 5000 (Area 2 fade to preset 1 over 5 seconds)
Most commands have a brief version.
P 1 2 5000
DyNet Text over RS-485 requires an asterisk as a synchronization character. This character is allowed when using Telnet, however, it is not required when using Telnet.
*P 1 2 5000
Arguments are separated by any number of spaces and/or a single comma.
P 1, 2, 5000
Integer arguments can be written as decimal values or hexadecimal values preceded by "0x". Temperature values can be written with or without a decimal point and have two decimal places of precision.
P 1, 2, 0x1388
(Area 2 fade to preset 1 over 5 seconds)
Whenever a command uses an Area, Fade time, Join, or Channel Level, that value becomes the new default value for that argument type. There are two edge cases to this rule:
|
Telnet access
Your PC can connect to the EG via Telnet, using a serial terminal program such as PuTTY (shown here) or HyperTerminal.
-
Connect your PC to the lighting control network via Ethernet or Wi-Fi.
-
Open PuTTY.
-
Enter the EG IP address.
-
Select the Telnet connection type. (To save the session settings, enter a Saved Sessions name and click the
button), then click the button. -
The command line window opens and displays
"Telnet Connection Established…"
Enter DyNet Text commands. The EG acknowledges by echoing the command and"OK"
. -
When the command is performed, the network sends a reply confirming the action.
The command line window also shows DyNet Text messages for all network activity seen by the EG, such as light regulation commands in the example below.
Commands
There are three types of DyNet Text messages:
-
Logical messages
DyNet Text Logical messages act on logical areas. They translate to DyNet1 and 2 logical messages. -
Physical messages
DyNet Text Physical messages act on devices. They translate to DyNet1 and 2 physical messages. -
Configuration messages
DyNet Text Configuration messages act on the DyNet Text engine. They configure settings and default values for arguments. They do not translate into DyNet1 or 2 messages.
The command tables give the long and short commands as well as the arguments they require. Required arguments are shown in bold. The following table is the argument legend for the command tables.
Argument | Explanation | Units/Format | Min | Max | Notes |
---|---|---|---|---|---|
P |
Preset Number |
16 bit Integer |
0 |
65279 |
DyNet2 allows some hard-coded presets above the maximum such as panic mode. |
A |
Area |
16 bit Integer |
0 |
65535 |
EG uses 2 byte areas. Area 0 is "All Areas". |
F |
Fade Time |
milliseconds |
0 |
83885.91 |
Fade time resolution is in milliseconds (ms) (10ms step size). |
J |
Join Level |
8 bit Integer |
0x00 |
0xFF |
|
Ch |
Channel Number |
16 bit Integer |
0 |
65535 |
Channel 0 is "All Channels". |
CL |
Channel Level |
Percentage |
0 |
100 |
|
PO |
Preset Offset |
16 bit Integer |
0 |
65279 |
|
Tmp |
Temperature |
°C |
-127.99 |
127.99 |
EG Temperature resolution is in 0.01°C steps. |
DC |
Device Code |
8 bit Integer |
0x00 |
0xFF |
0xAA is "Any Device" |
BN |
Box Number |
16 bit Integer |
0x0000 |
0xFFFF |
EG uses 2 bytes box numbers. 0x5555 is "Any Box Number". |
TN |
Task Number |
8 bit Integer |
0 |
255 |
|
EN |
Event Number |
16 bit Integer |
0 |
65535 |
|
H |
Hours |
0..23 |
0 |
23 |
|
M |
Minutes |
0..59 |
0 |
59 |
|
S |
Seconds |
0..59 |
0 |
59 |
|
DoW |
Day of the Week |
Three letters |
Either: "Sun", "Mon", "Tue", "Wed", "Thu", "Fri" or "Sat" |
||
Day |
Day of the Month |
1..31 |
1 |
31 |
|
Mon |
Month |
Three letters |
Either: "Jan", "Feb", … , "Dec" |
||
Yr |
Year |
00-99 or 2000-2099 |
0 |
99 |
EG supports both 0..99 and 2000..2099 |
TF |
True or False |
0 or 1 only |
0 |
1 |
Command | Brief | Description | Arguments | ||||
---|---|---|---|---|---|---|---|
Preset |
P |
Set Preset Message |
P |
A |
F |
J |
|
RequestCurrentPreset |
RCP |
Request Current Preset |
A |
J |
|||
ChannelLevel |
CL |
Fade to Channel Level |
Ch |
CL |
A |
F |
J |
RampLevel |
RL |
Ramp to Channel Level |
Ch |
CL |
A |
F |
J |
RequestChannelLevel |
RCL |
Request Current Channel Level |
Ch |
A |
J |
||
StopFade |
SF |
Stop Fading in Area |
Ch |
A |
J |
||
Off |
O |
Turn Off Area |
A |
F |
J |
||
Panic |
Panic Area |
A |
F |
J |
|||
Unpanic |
Un-panic Area |
A |
F |
J |
|||
EnablePanel |
SB |
Enable a Panel |
A |
J |
|||
DisablePanel |
DP |
Disable a Panel |
A |
J |
|||
PresetOffset |
PO |
Set Preset Offset |
PO |
A |
J |
||
SavePreset |
SP |
Push Current Preset |
A |
J |
|||
RestorePreset |
RP |
Pop Current Preset |
A |
F |
J |
||
ResetPreset |
RSetP |
Reset Area to Last Used Preset |
A |
F |
J |
||
ProgramCurrentPreset |
PCP |
Program Current Levels to the Current Preset |
A |
J |
|||
ProgramPreset |
PP |
Program Current Levels to a Given Preset |
P |
A |
J |
||
LEDBrightness |
LEDBr |
Set Indicator LEDs' Active Brightness |
CL |
A |
F |
J |
|
RequestLEDBrightness |
RLEDBr |
Request Indicator LEDs' Active Brightness |
A |
J |
|||
LEDBacklightBrightness |
LEDBlBr |
Set Backlight LEDs' Brightness |
CL |
A |
F |
J |
|
RequestLEDBacklightBrightness |
RLEDBlBr |
Request Backlight LEDs' Brightness |
A |
J |
|||
LCDBrightness |
LCDBr |
Set Display Brightness |
CL |
A |
F |
J |
|
RequestLCDBrightness |
RLCDBr |
Request Display Brightness |
A |
J |
|||
SetTemperatureSetpoint |
STmpSP |
Set Temperature Setpoint |
Tmp |
A |
J |
||
TemperatureSetpoint |
TmpSP |
Send a Reply Temperature Setpoint Message |
Tmp |
A |
J |
||
RequestTemperatureSetpoint |
RTmpSP |
Request a Temperature Setpoint |
A |
J |
|||
Temperature |
Tmp |
Send a Reply Actual Temperature Message |
Tmp |
A |
J |
||
RequestTemperature |
RTmp |
Request Actual Temperature |
A |
J |
Command | Brief | Description | Arguments | |||
---|---|---|---|---|---|---|
Reset |
Reset Device |
DC |
BN |
|||
Version |
V |
Sign on Device |
DC |
BN |
||
StartTask |
STT |
Start Task Engine Task |
TN |
DC |
BN |
|
StopTask |
SPT |
Stop Task Engine Task |
TN |
DC |
BN |
|
PauseTask |
PT |
Pause Task Engine Task |
TN |
DC |
BN |
|
TriggerEvent |
TE |
Trigger Event Scheduler Event |
EN |
DC |
BN |
|
EnableEvent |
EE |
Enable Event Scheduler Event |
EN |
DC |
BN |
|
DisableEvent |
DE |
Disable Event Scheduler Event |
EN |
DC |
BN |
|
RequestTime |
RT |
Request Current Time |
DC |
BN |
||
RequestDate |
RD |
Request Date |
DC |
BN |
||
SetTime |
ST |
Set Current Time |
H |
M |
S |
|
SetDate |
SD |
Set Date |
DoW |
Day |
Mon |
Yr |
SetPhysicalTemperatureSetpoint |
SPhyTmpSP |
Set Temperature Setpoint |
DC |
BN |
Tmp |
|
PhysicalTemperatureSetpoint |
PhyTmpSP |
Send a Reply Temperature Setpoint Message |
DC |
BN |
Tmp |
|
RequestPhysicalTemperatureSetpoint |
RPhyTmpSP |
Request a Temperature Setpoint |
DC |
BN |
||
PhysicalTemperature |
PhyTmp |
Send a Reply Actual Temperature Message |
DC |
BN |
Tmp |
|
RequestPhysicalTemperature |
RPhyTmp |
Request Actual Temperature |
DC |
BN |
Command | Brief | Description | Arguments | |
---|---|---|---|---|
Area |
A |
Set Default Area |
A |
|
A? |
Request Default Area |
- |
||
Fade |
F |
Set Default Fade Time (ms) |
F |
|
F? |
Request Default Fade Time |
- |
||
Join |
J |
Set Default Join |
J |
|
J? |
Request Default Join |
- |
||
Channel |
Ch |
Set Default Channel |
Ch |
|
Ch? |
Request Default Channel |
- |
||
AreaMinMax |
AMM |
Set Maximum and Minimum Areas of Interest |
A |
A |
AMM? |
Request Maximum and Minimum Areas |
- |
||
Brief |
Set to Short Display of Reply Messages |
- |
||
Verbose |
Set to Long Display of Reply Messages |
- |
||
ReplyOK |
Set Whether or not OK is Printed after each Command |
TF |
||
Settings |
Display Current Settings |
- |
||
WhoAreYou |
Ask Gateway Device to Sign on |
- |
||
Echo |
Repeat the command back |
TF |
||
DottedNetworkAddress |
DNA |
Use "Device (??hex) Box??" or "??.??" for Physical Properties |
TF |
Responses
DyNet Text responses take one of two forms:
-
Network responses
-
Configuration responses
If there is a configuration response, then "OK"
is suppressed. The following table is the legend for the response arguments.
Code | Explanation | Example | Notes |
---|---|---|---|
<24h> |
24 hour time |
02:23:05 |
|
<A4> |
Area as 4 char hex |
000c |
|
<Ad> |
Area as a decimal. 0 is all areas. |
12 |
|
<Bd> |
Box number as a decimal. |
24 |
|
<Br> |
Baud rate as a decimal. |
9600 |
|
<C2> |
Current Channel Level Percent as 2 char hex |
23 |
|
<Ch4> |
Channel Number as 4 char hex |
0017 |
|
<Chd> |
Channel Number as a decimal. 0 is all channels. |
2 |
|
<D2> |
Device code as 2 char hex |
dc |
|
<D2B2> |
"Device (<D2>hex) Box<Bd>" or "<Dd>.<Bd>" depending on "Dotted Network Address" setting. |
Device(dchex) Box24 |
|
<Day> |
Day of month as decimal |
23 |
|
<Dd> |
Device code as decimal |
220 |
|
<DLS> |
Either "Daylight Saving Time" or "Standard Time" |
Standard Time |
|
<DoW> |
Three letter day of week |
Mon |
|
<Fd> |
Fade time as a decimal in ms (resolution is 10ms) |
2000 |
|
<Fs> |
Fade time in seconds to 3 decimal places |
2.000 |
|
<J2> |
Join as 2 char hex |
2f |
|
<Jd> |
Join as a decimal |
47 |
|
<L%> |
Level as percentage |
75% |
|
<L4> |
Level as 4 char hex |
0044 |
|
<Month> |
Three letter month |
Mar |
|
<P#> |
Port number as a decimal number |
2 |
Typically, Port 1 is RS-485 and Port 2 is Ethernet (inc. Telnet) |
<P4> |
Preset as 4 char hex |
0022 |
|
<Pd> |
Preset as decimal |
34 |
|
<T2> |
Target Channel Level Percent as 2 char hex |
64 |
100% → 0x64 |
<Tmp4> |
Temperature rounded down as 4 char hex |
45 |
69.25°C → 0x45 |
<TmpF> |
Temperature as a floating point number with 2 decimal places |
69.25 |
|
<V> |
Version number |
v3,02 |
Note that commas are used, not decimal points. |
<Year> |
Year as decimal |
2015 |
Network responses
In the current implementation of DyNet Text, all messages that pass through ports in the EG will be checked by the DyNet Text engine. However, not all DyNet messages are understood by the DyNet Text engine. Included messages will be printed to the Telnet console or if not included in DyNet Text, they will be ignored.
Reply Type | Verbose Reply | Brief Reply |
---|---|---|
Preset |
Reply with Current Preset <Pd>, Area <Ad>, Join <J2>hex |
RCP <P4>,<A4>,<J2> |
Channel Level |
Reply with Channel Level Ch <Chd>, Area <Ad>, TargLev <L%>, CurrLev <L%>, Join <J2>hex |
RCL <Ch4>,<A4>,<T2>,<C2>,<J2> |
Indicator LED Active Brightness |
Reply with LED Brightness <L%>, Area <Ad>, Join <J2>hex |
RPLEDBR <Br4>,<A4>,<J2> |
Backlight LED Brightness |
Reply with LED Backlight Brightness <L%>, Area <Ad>, Join <J2>hex |
RPLEDBLBR <Br4>,<A4>,<J2> |
LCD Brightness |
Reply with LCD Brightness <L%>, Area <Ad>, Join <J2>hex |
LCDBR <Br4>,<A4>,<J2> |
Temperature Setpoint (Logical) |
Reply with Temperature Setpoint <TmpF>, Area <Ad>, Join <J2>hex |
TMPSP <Tmp4>,<A4>,<J2> |
Temperature (Logical) |
Reply with Temperature <TmpF>, Area <Ad>, Join <J2>hex |
TMP <Tmp4>,<A4>,<J2> |
Temperature Setpoint (Physical) |
Reply with Temperature Set Point <D2B2>, <TmpF> |
PHYTMPSP <D2B2>,<Tmp4> |
Temperature (Physical) |
Reply with Temperature <D2B2>, <TmpF> |
PHYTMP <D2B2>,<Tmp4> |
Version |
Signon (Port <P#>) <D2B2>, <V> |
|
Time |
Time <24hr> <DLS> |
|
Date |
Date <DoW> <Day> <Month> <Year> |
|
Time and Date |
Time <24hr> <DLS>, Date <DoW> <Day> <Month> <Year> |
DyNet2 can send a "Time and Date" reply. |
Configuration responses
Configuration responses are responses to queries of the DyNet Text engine itself.
Command | Reply |
---|---|
A? |
A=<Ad> |
F? |
F=<Fd> |
J? |
J=<Jd> |
Ch? |
Ch=<Chd> |
AMM? |
AMin=<Ad>, AMax=<Ad> |
WhoAreYou |
I am EG (dchex) Box <Bd>, <V> |
Version |
Signon (Port <P#>) EG(dchex), Box <Bd>, <V> |
RequestTime |
Time <24hr> <DLS> |
RequestDate |
Date <DoW> <Day> <Month> <Year> |
Settings |
See Responses. |