Hinweis für die Textformat-Version; um diese Version im PDF Format zu lesen, laden Sie bitte https://www.dk1ri.de/myc/Reserved_tokens.pdf MYC Reserved Commands Author: DK1RI Version V01.20.08 20240416 This paper is published in https://github.com/dk1ri as well Introduction This paper describes the reserved commands of the MYC protocol. For more details of the MYC system please check the reference. Definitions and formats see https://dk1ri.de/myc/Definitions.txt or https://dk1ri.de/myc/Definitions.pdf Overview Every MYC device should provide mandatory reserved command tokens and understand them, if applicable. The set of announcements of a MYC device should be in numerical sequence, start with the reserved basic command 0x00 and end with the other reserved tokens 0xxxf0 - 0xxxff. Rules lines may follow . In the full anouncment-list of CR the last line of each device is the I-announcement. This is necessary, to identify commands in systems with hierarchical (stacked) command-routers. Nine of the reserved tokens are used and defined now: 0x00, 0xxxf0, 0xxxf1 and 0xxxf9 – 0xxxff. It is noted, that the commands below are shown as operate / answer (o / a) commands, but may be used in a real announcement as k / l commands, which will not be included to the full list by the CR. Some reserved word are used. They should use uppercase characters. Other characters can be used as well but no lower case characters. Basic Command 0x00 The one byte 0x00 basic command is mandatory for all MYC devices. The basic announcement is called with the one byte command 0x00. announce: 0;
;MANUFACTURER;DEVICEDESCRIPTION;VERSION;NUMBER_OF_DEVICES;LINELENGTH; COMMAND_BYTES;NUMBER_OF_ANNOUNCEMENTS;SPEC_VERSION command: 0x00 answer / info: 0x00 as string (with one byte length) The announcement is fixed and therefore the announce-line do not describe the format of the command but is the content, which is transmitted as answer of the command 0x00. The length of the string is a one byte string-length. The 0x00 announcement is limited therefore to 255 Bytes. MANUFACTURER DEVICEDESCRIPTION and VERSION are combined to a devicegroupname and are used in file names, so not all character are allowed. Preferred is a-z, A-Z, 0-9 _ These devicegroupnames are unique to a device and its firmware. A (published) device / firmware combination with a devicegroupname must not be changed. If changes are necessary, a new version must be used. Each device with its individualization belongs to a devicegroup. So, this is valid also for controlled programs, but not for controlled CR and and not for all controlling devices. For a normal device NUMBER_OF_DEVICES is 1, For CR it is CR + all FU + CR + RU + number given by lower level CR. This value is important for the command-router as info for a higher level CR. LINELENGTH is the maximum line-length of the announcement lines. COMMAND_BYTES is the number of bytes used for commands. Allowed values are 1 to 8. Higher numbers are handled as one byte. NUMBER_OF_ANNOUNCEMENTS includes “R” and “I” lines. This is the number of different announcements. An announcement can have more than one line. A different transmission length of this number result in a CR startup procedure: see http://dk1ri.de/myc/Description.pdf. A (translated) 0x00 command of a device is answered by the CR itself and not send to the device for answer. SPEC_VERSION is the version of specification, the device is designed for: -. is a set of specification defined in [13]. Within a branch the CR must be compatible to a specific and all lower . Announcement Command 0xxxf0 The 0xxxF0 announcement command is mandatory for all MYC devices. ANNOUNCEMENTS must be the 1st . announce: 240;an,ANNOUNCEMENTS,...;; (240 for 1 byte command-token) command: 0xxxf0 ask for m announcement lines starting at position n answer / info: 0xxxf0 is a positional parameter of the memory. The number of bytes for and must not exceed . < NUMBER_OF_ANNOUNCELINES> is the number of the announcement lines including those for the reserved commands, rules and for the CR the I-lines. It may be differen from the NUMBER_OF_ANNOUCEMENTS. The CR will ask for the announce-lists of all devices using the 0xxxf0 command, if it do not have other sources. It will drop the 0xxxf0 command of other devices when building the complete list. The command-router answers all announcement commands by itself using the full list with translated command-token. The CR will not forward 0xxxf0 infos. The CR will not include “r” and “s” commands in the full list but skip these numbers instead. The command-token are reserved for the delivering devices. Exception: the LD will get the list with the complete “r” and “s” commands. Announcement Command 0xxxf1 The 0xxxf1 announcement command is used by the CR only. BASIC ANNOUNCEMENTS must be the 1st announce: 241;an,BASIC ANNOUNCEMENTS,...; 241 for 1 byte command-token command: 0xxxf1 ask for basic m announcement lines start at n (“0” based) and must not exceed answer / info: 0xxxF1 Feature for SK 0xxxf9 This command is used by the CR and SK only. SK-FEATURE must be the 1st . Announce: 249;oa,SK-FEATURE[,]...;