Grass Valley USA, LLC and its Grass Valley Affiliates
Headquarters:
400 Providence Mine Road
Nevada City, CA 95945
United States
15655 SW Greystone Ct.
Beaverton, OR 97006
United States
Brunnenweg 9
D-64331 Weiterstadt
Germany
Kapittelweg 10
4827 HG Breda
The Nederlands
2300 So. Decker Lake Blvd.
Salt Lake City, UT 84119
United States
Including its implementation, meets the requirements of the standard:
ISO 9001:2008
Scope:
The design, manufacture and support of video and audio hardware and software products and related
systems.
This Certificate is valid until: June 14, 2012
This Certificate is valid as of: December 23, 2010
Certified for the first time: June 14, 2000
H. Pierre Sallé
President
KEMA-Registered Quality
The method of operation for quality certification is defined in the KEMA General Terms And Conditions For
Quality And Environmental Management Systems Certifications. Integral publication of this certificate is allowed.
KEMA-Registered Quality, Inc.
4377 County Line Road
Chalfont, PA 18914
Ph: (215)997-4519
Fax: (215)997-3809
CRT 001 042108
ccredited By:
ANAB
A
Switcher Products
Protocols Manual
Software Version
071806308
JUNE 2011
Contacting Grass Valley
International
Support Centers
Local Support
Centers
(available
during normal
business hours)
France
24 x 7
Australia and New Zealand: +61 1300 721 495Central/South America: +55 11 5509 3443
Middle East: +971 4 299 64 40 Near East and Africa: +800 8080 2020 or +33 1 48 25 20 20
Europe
+800 8080 2020 or +33 1 48 25 20 20
Hong Kong, Taiwan, Korea, Macau: +852 2531 3058 Indian Subcontinent: +91 22 24933476
This section describes the tally mechanisms available on the Kalypso and
Kayenne Video Production Center and the Zodiak Digital Production
Switcher systems. These systems (generically called “switcher”) are each
equipped with a classic tally relay system, but also have a serial tally inter
face to provide more in-depth status than simple on/off air information.
Technical details of the serial tally protocol used to report tally information
are presented later in this section.
Section 1
-
Kalypso System Overview
A Kalypso system provides 64 tally relays that close in response to tally statuses, and an additional 64 relays may be added as an option. The tally
serial port also outputs current system tally information.
Kalypso systems are available in 4-ME and 2-ME models. The MEs are
identical to one another, with one acting as a PGM
four keyers, two background buses, two utility buses, two preview out
puts, and four program outputs.
A Kalypso system has 46 programmable system outputs (Outputs 39 and
40 are not programmable). An aux bus output can be configured as a
video/key pair.
The Kalypso Still Store option has two inputs and eight outputs.
Zodiak System Overview
A Zodiak system provides 32 tally relays. The tally serial port also outputs
current system tally information.
Zodiak systems are available in a 3-ME model (three fully functional MEs,
one acting as PGM
ME has four keyers, two background buses, one utility bus, one preview
output, and one program output. The PGM
PST bank. Each ME has
-
PST) and a 2.5-ME model (2 MEs and PGM PST). Each
PST-DSK bank is equipped
Switcher Products — Protocols Manual9
Section 1 — Tally Protocol
Kayenne System Overview
with three downstream keyers (on the 3-ME model an additional four ME
keyers are available, making a total of seven), and has two program and
two preview outputs.
Many of the Zodiak system’s 26 outputs are dedicated, and 13 aux buses
are available. Zodiak system output pairing is different from that on
Kalypso systems.
The Zodiak Still Store has two inputs and four outputs.
A Kayenne system provides 24 tallies relays per installed ME board.
Smaller 4-RU Kayenne frames support up to 48 relay tallies. Larger 8-RU
Kayenne frames support up to 96 relay tallies.
Kayenne systems have a modular design available in different configurations, ranging in size from 1.5ME to 4.5MEs. From a protocol perspective, a
Kayenne can have up to 5MEs (which includes the ME50). Kayenne
systems have 6 keyers per ME.
Kayenne systems also support an Image Store capable of 6 input and
output channels, and a floating eDPM effects system.
Kayenne Source IDs are in the range of 1-146 (Kalypso was limited to 128).
The message sync algorithm employed is different from Kalypso because
source IDs can have values greater than 128. The size of the contribution
tally is 303 bytes (Kalypso was 223 bytes).
Tally Background Information
This subsection describes what a switcher does in terms of tally calculations, and may be useful for persons designing a tally computer that uses
serial tally information.
The tally system of a production switcher provides status to devices and
their operators. The most basic status is whether or not the device is on air,
but other statuses can also be provided by the tally system. For example,
the Kalypso system has four program outputs on its PGM
tally system is not affected when one of the additional outputs is simply a
“clean feed” version of the main program output. However, customized
feeds which depart from the program output are possible. These custom
ized outputs may include sources which are not present on the main
program output. For example, the switcher may automatically substitute a
“private” camera for a wide shot. The tally system provides ways to prop
erly tally these special situations.
PST bank. The
-
-
10Switcher Products — Protocols Manual
Tally Types
Output Tally
Tally Background Information
Tally requirements can go beyond simple on/off air indication for each
source. This section describes the types of tally information which can be
provided via the switcher tally relays or the serial protocol.
The switcher performs five tally calculations: on-air tally, plus four other
customer specified calculations. Each calculation may be customized by
selecting the tally type and which buses contribute to the tally.
There are three basic types of tally calculations and two specific derivatives
for the “output tally” type.
Output tally indicates which sources contribute to a specific output or
group of outputs (maximum of four outputs). On-air and look-ahead tally
are specific cases of output tally.
Output tally needs a starting point for tally calculations. The customer can
select one or more outputs which will be included in the tally calculation.
Any sources which appear on those outputs will be tallied.
On-air Tally
On-air tally indicates whether a source is on or off air. This information is
most often used to provide camera tally so the camera operator and the
talent know when the camera is included on the program output(s) of the
production switcher. It is a special case of output tally. It is provided as a
separate type to ease tally configuration.
The switcher has more than one output which may be on air (e.g., all four
program outputs of the PGM
tions). On air tally includes sources which contribute to any of these outputs. On-air tally had no configuration. It tallies any source which
contributes to any of the four PGM
Look-ahead Tally
Look-ahead tally is similar to On-air tally but is based on the selection
made on the switcher’s main PRESET bus. It is intended to indicate which
sources will be on air if a program-preset transition is performed. Lookahead tally is also a special case of output tally. It is provided as a separate
type to ease tally configuration. Look-ahead tally has no configuration. It
tallies any source which contributes to the look-ahead state for any of the
four program outputs of the PGM
PST bank may have different source contribu-
PST program outputs.
PST bank.
Switcher Products — Protocols Manual11
Section 1 — Tally Protocol
Iso Tally
Selection Tally
Iso tally indicates which sources contribute to a specific point in the
switcher video path whether or not those sources contribute to the program
output. For example, an ME iso tally indicates what sources contribute to
one or more of an ME’s program outputs. Iso tally is similar to output tally
except that the tally calculation is specified in terms of the ME outputs not
on physical outputs of the switcher. In fact, the ME outputs do not have to
be mapped to physical outputs in order to generate ME Iso tally.
Selection tally indicates what source is selected on a particular bus or buses.
Selection tally does not follow reentries or factor in bus visibility. The buses
need not be on air for the sources to contribute to this information.
Selection tally requires specifying which buses of the switcher should be
included in the tally calculation.
Tally Calculation Basics
Tally status provides information about switcher sources based on the
video composite at some point in the video path. This section describes the
mechanisms used within the switcher to calculate tally relay closures. The
information is also useful when interpreting the “contribution tally” data
described later.
Many sources may be combined at each ME of the switcher and ME banks
can be reentered. In order to calculate tally status, the video and key paths
must be traced backwards from the video output through all MEs, keyers
and external processing equipment (e.g., a DVE) to the primary sources.
At each stage in the video path, tally calculations must take into consideration whether or not a particular bus contributes to the composite and what
source is selected on the bus. If the selection is a primary source, the end of
that branch has been found. However, if the selection is a reentry (either
another ME or internal (e.g., frame store) or external processing (DVE), the
trace must continue in order to find sources which contribute to that pro
cessing block’s output.
Calculations must include both video and key paths through the switcher.
-
Keyer Modifications
Keyers modify the video and key signals and affect tally calculations.
The keyer can either use the incoming video or replace it with a matte. In
addition, the key signal can be derived either from the incoming video,
12Switcher Products — Protocols Manual
incoming key signal or a wipe pattern generator. The video input contributes to the key if it is used as either the fill or as the key source. The key
input contributes to the key if it is used as the key source.
An opacity setting of 0% negates all contributions of the keyer.
The processed cut signal or the masking signals may also change video contribution. If the result of key processing produces a completely transparent
(i.e., cut signal is 0 for the entire raster), the video signal is not contributing
to the key output. This calculation is normally not considered since it
requires real time sampling of the cut signal and existing key processor
ASICs do not include the calculations.
All of these factors are combined into a single flag within the contribution
tally packet.
Transition Mixer Modifications
The transition mixers modify the contribution of all inputs to an ME bank.
If the mixer makes an input transparent, there is no contribution to the
mixer output for that input.
Tally System
Internal and External Processing Loops
Tally System
Separate contribution flags are provided for each path into a mixer. Each
mixer (the Kalypso system has four per ME, for example) has its own set of
contribution flags in the contribution tally packet.
Images processed by DVEs, frame stores or other devices must also receive
accurate tally. Since these devices have the ability to make their incoming
video invisible, their current state must be included in the switcher tally
calculations. For example, if the DVE positions an image completely off
screen or the frame store is frozen, the on-air tally for that source should go
away (assuming it isn’t on air via some other path).
There are many inputs, outputs and paths through a production switcher.
The tally system must be capable of determining which sources contribute
to a specified output regardless of contributions to other outputs. In
essence, there may be multiple tally paths through the switcher just as there
are multiple video paths. It is essential to maintain tally independence back
though each video processing path of the switcher and external gear (e.g.,
DVE).
Switcher Products — Protocols Manual13
Section 1 — Tally Protocol
Names
For this reason, each device which processes video must build a “contribution map” which indicates which of its inputs are visible on or contributes
to each output. Because the video path through the switcher is known, the
tally system can then trace each output back through all paths and find all
contributing sources. The set of contributing sources for each output is
likely to be different, but can be tallied independently.
With this mechanism, most tally modes are a degenerate case of Output
Tally. On-air tally is Output Tally for the PGM
ahead tally is Output Tally for the PGM
If more than one program output exists, for example, the four programmable clean feed outputs of the PGM PST bank, contributions can be combined after tracing each path from output back to all inputs.
All tally information is number based to keep messages short and minimize
communication time. Source names are provided through a separate mech
anism because they change less frequently and require a higher bandwidth
to transfer.
PST Preview output.
PST Program output. Look-
-
Source names name the source IDs including reentries.
Tally Relay Outputs
The Kalypso system provides 64 tally outputs as part of the standard
system. A second card can be added for a total of 128 tally relays within the
frame. The Zodiak system has 32 tally relays with no additional cards avail
able.
On a Kalypso or Zodiak system, tally relays can be configured for different
tally calculations in groups of 32. For example, on a Kalypso system one
group can provide on-air tally while another group can provide bus iso
tally. Each tally relay within the group can be associated with one of the 128
sources. In the previous example, on-air tally can be set up for any 32 of the
128 Kalypso sources using the first group. The second group could provide
bus iso tally for the same set of 32 sources or a completely different set. In
many situations, 32 on-air closures will be sufficient. When this is not the
case, additional groups can also be configured for on-air tally calculations
and mapped to different sources. By using all four tally groups for on-air
tally, all 128 Kalypso sources can be tallied.
NoteAt the time of publication, switcher tally relays were hard-coded to corre-
-
spond one-to-one to system sources. The tally relay for any source visible on
any of the outputs of the PGM PST bank will close. Programmable tally
relays, as referenced here, are under development. Check the documentation
of your current switcher software version to determine what tally relay programming capabilities are available.
14Switcher Products — Protocols Manual
Serial Tally
Serial Tally
The switcher provides a serial tally interface that provides the necessary
information to trace any tally path within the switcher.
The serial protocol is based on RS-422 asynchronous serial communications
at 76.8 kb, 8 data bits, 1 stop bit, and no parity as a default. Other baud rates
(9600, 19,200, 38,400, 57,600, and 115,200) and odd or even parity selections
can be selected for contribution tally but the lower rates reduce throughput
and hence latency in reporting tally. 76.8 kb/field with no parity yields
about 128 characters per field and was assumed for all transmission times
unless otherwise noted. At 9600 baud and even or odd parity, the link only
supports 14 characters per field, making the link virtually useless for real
time tally (contribution tally would require 16 fields to transmit). See
Ta bl e 10 on page 26 for specific timing information.
The serial tally interface uses binary protocols with easily identifiable
message boundaries. All communication is from the switcher frame to the
external device. Multiple listeners can be connected to this port. External
devices should not transmit information on either pair of the link. The
switcher does not listen to this port, it only speaks.
The contribution tally information is currently output to port 5 on the
Kalypso system, and port 2 on the Zodiak system. The ability to configure
switcher serial ports for different purposes is currently under develop
ment.
Changing Tally Port Serial Settings
At the time of publication, the switcher does not have a menu to change
serial port settings. The contribution tally baud rate can be changed by
editing the text file "mfPorts.cfg" located in the root of the frame's hard
disk. The file can be FTPed to a workstation, edited with any text editor and
FTPed back. The frame can then be reset to activate the new baud rate. If
the file is not recognized during frame boot up, a default will be created
replacing an existing one. The default uses 76.8 Kb.
The following sample indicates what the file should look like for 115.2 Kb
on a Kalypso system.
PORT5: identifies which port will be affected by the remaining information
on the line. Currently only the tally contribution port (port 5 on Kalypso,
port 2 on Zodiak) can be set using this mechanism.
-
Respectively, the remaining comma separated information is:
Baud Rate: 9600, 19200, 38400, 57600, 76800 or 115200
Parity: N for none, O for odd or E
Switcher Products — Protocols Manual15
Section 1 — Tally Protocol
Number of Data Bits: must be 8
Number of Stop Bits: 1 (typical) or 2.
The semicolon indicates a comment separator causing the rest of the line to
be ignored by the parser.
Kalypso & Zodiak Contribution Tally Protocol
Contribution tally makes it possible to determine which sources and processing blocks (an ME or DVE) contribute to the image at any point in the
video path. On-air tally, for example identifies which sources contribute in
some way to the main program output of the switcher. ME 2 iso tally starts
at ME 2’s main program output.
Refer to Tally Calculation Basics on page 12 and Tally System on page 13 for
more details.
Contribution tally consists of approximately 220 bytes of information.
Because bandwidth is limited to approximately 128 bytes per field at
kb, this information is broken into smaller messages. This allows
76.8
sending changes at a higher priority than unchanging information. Even
with prioritized updates, there is no guarantee that all changes will be com
municated within one field. See Tab le 10 on page 26 for specific timing
information.
-
Contribution messages indicate which sources are selected on buses
feeding the processing block (or output) and which of those inputs con
tribute to a processing block’s output. In the cases where a processing block
has several outputs, a separate contribution map is included for each
output. Contribution tally for external processing blocks such as a DVE also
lists the source IDs for this block’s output(s) so that reentry paths through
external devices can be identified and followed.
Contribution message codes start at 0x8 with an instance ID grater than or
equal to one. This insures that command character value is always above
128 so it is recognized as a command code. Command codes 0xE and 0xF
are not used but are reserved.
Contribution information for each processing block is sent as a separate
message. Information for switcher outputs is sent in six messages of eight
outputs each. All portions of the system are included in the contribution
dump even if they are inactive. Inactive blocks will contain data which
indicates inactive status for all inputs to the processing block. In addition,
that block’s outputs will never appear as selections on any bus of the
switcher.
-
16Switcher Products — Protocols Manual
Source IDs
Kalypso & Zodiak Contribution Tally Protocol
Valid source IDs used in this protocol range from 1-128. Source IDs in the
range of 93 - 128 originate within the switcher and never change. On
Kalypso systems, source IDs in the range of 1 - 92 represent external
sources, including any external processing blocks. Zodiak systems have the
same range of external source IDs, but have fewer external physical inputs.
A source value of 0 indicates the input or bus is not in use, or to indicate
that an external DVE is being used in an effects send loop. In this case, the
DVE’s contribution information is included in the ME’s contribution infor
mation and additional tally calculations are not necessary. No further tally
can be calculated for source IDs of zero, and it should not be counted as a
primary input.
Tally is source based. Which physical inputs are used is not factored into
tally information.
Ta bl e 1 summarizes source IDs for ME reentries and internal sources. Note
that some sources are not available on some switcher models.
-
Tab l e 1 . S o ur c e I D s
Source IDReentrySource IDReentry
93ME 1 PGM A94
a
95
97ME 1 PVW A98
99
101
103
105
107
109
111Pgm-Pst PGM A112Pgm-Pst PGM B
113
115Pgm-Pst PVW A116Pgm-Pst PVW 2
117
119Background 1120Background 2
121Still Store 1122Still Store 2
123Still Store 3124Still Store 4
125
127
a
Zodiak Systems do not have these sources.
b
2-ME Kalypso Systems do not have these sources.
c
2.5-ME Zodiak Systems do not have these sources.
ME 1 PGM C96
b
ME 2 PGM A100a
a b
ME 2 PGM C102a
b
ME 2 PVW A104a
b c
ME 3 PGM A106a
a b
ME 3 PGM C108a
b c
ME 3 PVW A110a
a
Pgm-Pst PGM C114
a
Test Signal118Black
a
Still Store 5126
a
Still Store 7128
a
a
a
b
b
b
b
b
b
a
a
a
ME 1 PGM B
ME 1 PGM D
ME 1 PVW 2
ME 2 PGM B
ME 2 PGM D
ME 2 PVW 2
ME 3 PGM B
ME 3 PGM D
ME 3 PVW 2
Pgm-Pst PGM D
Still Store 6
Still Store 8
Switcher Products — Protocols Manual17
Section 1 — Tally Protocol
ME Contribution Information
Kalypso systems have up to 4 MEs. Each ME has 12 input buses (4 video/
key pairs, 2 backgrounds and 2 utility buses), 4 program outputs (PGM A
– PGM D) and two preview outputs. PVW A is always associated with
PGM A. PVW 2 is selectable as the preview for PGM B, C or D. Preview
output contribution depends on the preview mode selected and active
keyer “hold to previews” or “show keys”. Contribution information is pro
vided for all six real outputs and for the look-ahead state of the four
program outputs. “LAP” contribution always indicates what the program
contribution information would be following a main transition.
Zodiak system MEs have only one utility bus, and only one program and
one preview output. Contribution information for these will be generated,
but none will be generated for utility 2 which is not present. Contribution
information for missing inputs and outputs will always be false.
On a Zodiak 2.5-ME system, PGM PST-DSK has three downstream keyers
and no utility buses, and two program and two preview outputs. Zodiak
PGM
PST-DSK is reported as Pgm-Pst. It will only report keys 1-3 as contributing to the composite, and only show PGM A and B outputs active. ME
3 is not active.
-
On a Zodiak 3-ME system, PGM PST feeds the downstream keyer and is
reported as ME 3. The DSK is reported as Pgm-Pst, and has three down
stream keyers, no utility buses, and no B bus. The DSK has two program
and two preview outputs.
The Keyer buses “in use” flags indicate whether or not the cut and fill
would be visible if the keyer was contributing to an output. The Contribu
tion flags indicate whether or not the keyer contributes to the output. These
flags need to be combined (ANDed) to determine if a keyer cut or fill bus is
actually contributing to the output. This was done to limit size of the
message without eliminating information.
The source information indicates which source is feeding the ME inputs.
These may be primary sources or reentries. Sources and in use flags apply
to all outputs from an ME, but contribution information may be different
for each output. Refer to
Ta bl e 2 on page 19.
-
-
18Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Table 2. ME Contribution
b7b6b5b4b3b2b1b0Notes
ME Contribution (0x8)ME IDME IDs
Key 1 Fill Source (1 – 128)
Key 4
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM A Contribution9399105111
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM B Contribution94100106112
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM C Contribution95101107113
Key 4Key 3Key 2Key 1Util 2Util 1BAPGM D Contribution96102108114
Key 4Key 3Key 2Key 1Util 2Util 1BALAP A Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP B Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP C Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BALAP D Contribution
Key 4Key 3Key 2Key 1Util 2Util 1BAPVW A Contribution97103109115
External video processing blocks such as DVEs must be included for accurate tally calculations. This protocol supports up to two external processing
blocks, each with up to four input pairs and six outputs.
External processing blocks use primary inputs for reentry paths. The
output source IDs identify these paths. These source IDs should be treated
just like an ME reentry. Output contribution maps and reentry source IDs
are provided for the 6 outputs.
Switcher Products — Protocols Manual19
Section 1 — Tally Protocol
The input mode flags indicate whether the B side of an input pair is an independent video signal or linked to the A side as the input’s key. Refer to
Ta bl e 3.
Table 3. External Processing Contribution
b7b6b5b4b3b2b1b0Notes
External Proc Contribution (0x9)Ext Proc IDExt Proc ID
The Kalypso internal still store has 8 outputs. Outputs can be configured in
pairs as two independent outputs or as a video-key pair. The Output Mode
flags identify the configuration for each output pair.
The Zodiak internal still store has only four outputs, so still store contribution information will only be valid for outputs 1-4. Contribution information for outputs 5-8 will always be false.
20Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
The Kalypso and Zodiak internal still store has two inputs. They can be
configured as two independent video inputs or as a video-key pair. The
Input Mode flag indicates which mode the inputs are operating in.
The Record flags indicate whether or not the input is in use. If an input is
grabbing a frame or recording an animation, the bit will be 1. An active
record flag is essentially a beginning point for tally regardless of still store
output usage since the indicated source is being recorded on the still store’s
hard disk. Refer to
Table 4. Still Store Contribution
b7b6b5b4b3b2b1b0Notes
Still Store Contribution (0xA)1
Still Store Contribution (0xA)1
Output
0
7/8
Mode
Tab le 4.
Input 1 Source (1 – 128)
Input 2 Source (1 – 128)
Output
Mode
5/6
Output
3/4
Mode
Output
1/2
Mode
Input
Mode
Input 2
Rec
Input 1
Rec
Only one instance of Still
Store contribution
Mode
0 – Video-video
1 – Video-key
Output Contribution Information
Kalypso Systems
Kalypso has 46 programmable outputs (Outputs 39 and 40 are dedicated to
Black and Test and report these source IDs). An output can be programmed
as either an aux bus or as a dedicated output for an ME, etc. From a tally
standpoint, the only difference is what source is selected on the output. A
dedicated output won’t change sources while an aux bus might. That is, the
tally protocol won’t indicate what the output is being used for (dedicated
output or aux bus) and the receiver of the information shouldn’t care. It
may be necessary to identify which physical outputs are starting points for
tally calculations.
Output status is communicated in 6 messages of 8 outputs each. For
example, status for output 10 would be sent as output 2 in the second block.
The on-air flags indicate whether or not the switcher considers the output
to be on air. This information can be hard coded, or may be based on status
from some external device. For example, the Pgm-Pst PGM A output is the
main program output and is normally assumed to be on air. The feed to an
iso recorder may utilize a GPI input (running status via the switcher-VTR
control interface) so that output is on air only when the VTR is in record.
Tally calculations may choose to ignore these flags.
Outputs used as aux buses may be paired in order to deliver a video-key
pair to an external device. The Output Mode flags indicate whether the two
Switcher Products — Protocols Manual21
Section 1 — Tally Protocol
buses of a pair are independent (video-video) outputs or are being used as
a video-key pair. Refer to
Table 5. Output Contribution
b7b6b5b4b3b2b1b0Notes
Outputs Status (0xB)Block ID
Outputs Status (0xB)Block ID
Output 1 Source (1 – 128)
0000Out 7/8Out 5/6Out 3/4Out 1/2
Output 2 Source (1 – 128)
Out 8Out 7Out 6Out 5Out 4Out 3Out 2Out 1On-air
Output 3 Source (1 – 128)
Output 4 Source (1 – 128)
Output 5 Source (1 – 128)
Output 6 Source (1 – 128)
Output 7 Source (1 – 128)
Output 8 Source (1 – 128)
a
Outputs 39 and 40 are not programmable and are always Black and Test, respectively.
b
Outputs 41 through 48 are the effects send outputs.
Many Zodiak outputs are hard wired to ME outputs. These outputs will not
be reported in tally contribution information. The remaining outputs are
programmable as aux buses (single buses or aux bus pairs). Zodiak output
pairing is different from Kalypso. Note that aux bus numbers may not cor
respond to aux output numbers since this assignment is configurable.
Output messages are organized to put Zodiak's effects send buses on the
same output IDs as used for Kalypso effects send buses. Zodiak aux
outputs 6-13 (Zodiak's effects send outputs) are reported as outputs 41-48
(Kalypso's effects send outputs). Zodiak's switched preview is also
reported as Output 6. (
-
Ta bl e 6).
22Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Table 6. Zodiak Output Assignments
OutputSignal
1Aux Output 1 (A side if paired with aux output 2)
2Aux Output 2 (B side if paired with aux output 1)
3Aux Output 3 (A side if paired with aux output 4)
4Aux Output 4 (B side if paired with aux output 3)
5Aux Output 5 (can't be paired)
6Switched Preview
7-8unused (reported as source ID 0)
9-40unused, not reported
41Aux Output 6 (effects send - A side if paired with aux output 7)
42Aux Output 7 (effects send - B side if paired with aux output 6)
43Aux Output 8 (effects send - A side if paired with aux output 9)
44Aux Output 9 (effects send - B side if paired with aux output 8)
45Aux Output 10 (effects send - A side if paired with aux output 11)
46Aux Output 11 (effects send - B side if paired with aux output 10)
47Aux Output 12 (effects send - A side if paired with aux output 13)
48Aux Output 13 (effects send - B side if paired with aux output 12)
Source Names
Switcher source names are not really part of tally, but often provide valuable information to devices which utilize switcher tally information. Source
names are limited to twelve characters and each is sent in its own message
along with the source’s ID. Source names are not necessarily unique. That
is, two sources could have the same name.
The switcher supports an optional nickname for each source as well as the
full source name. Nicknames are a shortened version of the full source
name intended for displays with limited space. These are blank if unde
-
fined in which case the full source name should be used.
The switcher supports the notion of aliasing source names, i.e., replacing
generic names for names more specific to the intended usage of the source.
When aliases are activated in suite preferences, the tally system reports
aliases. Otherwise, the contribution tally reports engineering source names.
The name set ID indicates which name set is being reported.
Switcher Products — Protocols Manual23
Section 1 — Tally Protocol
Characters are limited to 7-bit ASCII. Names shorter than 12 characters are
left justified and null (0) filled. The message format is indicated in
Table 7. Source Names
b7b6b5b4b3b2b1b0Notes
Source Name (0xC)Nameset ID
Source Name (0xC)Nameset ID
Source ID (1 – 128)
0Name Character 1Left-most character
0Name Character 2
0Name Character 3
0Name Character 4
0Name Character 5
0Name Character 6
0Name Character 7
0Name Character 8
0Name Character 9
0Name Character 10
0Name Character 11
0Name Character 12Right-most character
0Nickname Character 1Left-most character
0Nickname Character 2
0Nickname Character 3
0Nickname Character 4
0Nickname Character 5
0Nickname Character 6Right-most character
1 – Name & Nickname
Ta bl e 7.
Nameset ID
2 – Alias
24Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
Update
Update messages inform the receiver of critical state changes. Initialize
indicates the start of switcher tally processing (the beginning of life). Data
Consistent indicates that all tally packets are up to date. Since updates for
one change may span several packets, to avoid tallying sources improperly,
tally calculations should only be performed when data is consistent (all
updates have been sent). See
Tab le 8. Refer to Command Codes and Instance
Summary for the use of these messages.
Table 8. Update Messages
b7b6b5b4b3b2b1b0Notes
Update (0xD)Update ID
Update (0xD)Update ID
Command Codes and Instance Summary
Update ID
1 – Initialize
2 – Data Consistent
Refer to Ta bl e 9 for a list of the valid command codes and valid instance IDs
for each command, and message lengths.
Messages start with a message code. Message codes are repeated twice in
order to provide positive identification of the message start. Data bytes
could match a valid message code, however the messages have been laid
out such that no two consecutive data bytes have values above 128. Since
all message code characters are above 128, it is not possible for message
data to duplicate the repeated message code.
When the switcher begins sending tally information, it will issue an Initialize command, then send all tally packets as fast as possible. After all
packets have been sent a Data Consistent message is sent.
During idle times (no changes), one background contribution update will
be sent at the frequency specified in
Ta bl e 10 followed by a Data Consistent
message. All instances of all message codes are always sent regardless of
which portions of the switcher are currently active.
The source name set is sent one name at a time. All 128 source names are
sent in order and the process repeats.
Background contribution updates and the source name messages are
spaced out and interleaved as shown in
Ta bl e 10. Remaining serial band-
width is used for contribution change updates, if any.
When changes occur, many messages may be required to communicate the
change. At the end of the stream of packets, a Data Consistent message will
be sent. The switcher will insure that data is inconsistent for no longer than
indicated in
Source name refresh (sec)13.6536.8273.4132.5601.7071.707
Max data inconsistent time (sec)0.3200.1600.0800.0600.0400.040
Tab le 10.
Field
Rate
60 Hz
Baud Rate
9,60019,20038,40057,60076,800115,200
20105432
26Switcher Products — Protocols Manual
Kalypso & Zodiak Contribution Tally Protocol
The cycle period is the time (in fields) it takes to send one background contribution update and three source name messages. Remaining time within
a cycle is used to send contribution changes. If no changes need to be sent,
the link goes idle during a cycle.
By design, the cycle period is also the time it takes to send all contribution
messages. This is the maximum time contribution information will be
inconsistent. Data is inconsistent when tally changes occur and more than
one message must be sent to communicate all changes.
Background contribution refresh is the time it takes to completely send all
contribution messages as background updates. This tells the tally system
designer how long it will take for their system to sync up to the switcher
should they connect after the switcher is up and idle.
Source name refresh is the time it takes to send all source name messages.
Switcher Products — Protocols Manual27
Section 1 — Tally Protocol
Message Parsing and Processing
Message code recognition and parsing can use the following algorithm:
repeat forever
currentChar = next byte on input stream
// message header – set up for new message
if (currentChar > 128 && currentChar == lastChar)
messageCode = currentChar >> 4 // message code is 4 MSBs
instance = currentChar & 0xF // instance is 4 LSBs
bytesReceived = 0
if (messageCode == UPDATE)
switch (instance) // instance is really update type
case INITIALIZE:
invalidateAllData ()
dataConsistent = FALSE
break
case DATA_CONSISTENT:
if ( allDataValid ())
dataConsistent = TRUE
processTally ()
break
end switch
// prevent tally processing while receiving tally updates
// but source name updates shouldn’t prevent tally calcs
else if (messageCode < SOURCE_NAME)
dataConsistent = FALSE
// assemble message starting with message code and instance ID
if (messageCode != INVALID)
messageBuffer[bytesReceived++] = currentChar
if (bytesReceived == messageLength (messageCode) + 1)
copyTally (messageBuffer, messageCode, instance)
messageCode = INVALID // end of message
else
// waiting for valid message header - discard char
lastChar = currentChar
end repeat
This routine looks for two consecutive characters greater than 128. The
message type is extracted from the 4 most significant bits of this character.
An instance ID is extracted from the 4 least significant bits of this same
character. Instance IDs indicate specific information for identical objects
(e.g., MEs). The meaning of instance (if any) for a command is indicated in
the command descriptions above.
Each message type has a known message length. messageLength returns
the number of data characters in the message. Message data lengths are
specified in the command descriptions above.
Characters are assembled in a buffer including the message code and
instance ID. When all characters have been received,
to move the completed message out of the message buffer to somewhere it
can contribute to tally calculations.
This algorithm assumes the program keeps track of valid receipt of each
and every contribution tally data block (every instance of all messages). It
is not appropriate to process tally data if all data blocks are not up to date.
When a data block is received, it is marked as valid (possibly by
copyTally). The only thing which invalidates any data block is
invalidateAllData which invalidates all data blocks. This only occurs
on loss of communication or when the switcher sends the Initialize mes
sage.
copyTally is called
-
allDataValid is routine which checks all the data block flags to make
sure all the data is valid. If it is, tally calculations can be performed. If not,
they must wait until all blocks have been received. Since the switcher sends
a Data Consistent message after every background update and after a
stream of changes, this is the appropriate time to check the data flags and
determine if processing should be permitted.
processTally is routine which performs the desired tally calculations.
An alternative is to perform tally calculations in a different part of the
program but only if dataConsistent is true. Specific tally calculations
depend on the application and are beyond the scope of this document. In
practice, you wouldn’t need both dataConsistent and
Failure of the communications link for even a short period of time may
allow tally updates to be missed and the receiver’s view of the data to be
out of date. For this reason, some mechanism (represented by
onSerialTimeout ( )) should be implemented which detects lack of com-
munication activity. If this occurs, tally calculations should be suspended
and all data blocks should be marked as invalid. Tally calculations can
resume after all data blocks have been refreshed and a Data Consistent
message has been received.
At least one background update will be sent on a regular basis. The frequency of this update is a function of the link baud rate as shown in the
table above. The inactivity timeouts listed in the table are based on 120% of
the update sequence length for 50 Hz operation (since it has a longer field
time (20 mS)).
processTally.
Switcher Products — Protocols Manual29
Section 1 — Tally Protocol
Kayenne Contribution Tally Protocol
This section describes the Contribution Tally Protocol that applies to
Kayenne switchers. This protocol has a modified form of the earlier
Kalypso and Zodiak switcher protocols.
Contribution tally makes it possible to determine which sources contribute
to the image at any point in the video path. On-air tally, for example, iden
tifies which sources contribute in some way to the main program output of
the switcher.
Contribution messages indicate which sources are selected on buses
feeding each processing block (ME, eDPM, etc.) and which of those inputs
contribute to each output of a processing block. In the case where a pro
cessing block has several outputs, a separate contribution map is included
for each output.
Contribution information for each processing block is sent as a separate
message. All portions of the system are included in the contribution dump
even if they are inactive. Active blocks will be updated whenever their tally
information changes.
-
-
Message Structure and Summary
Messages start with two message code bytes followed by the message data.
•The first message code byte has 0xF in the upper nibble and a command
code in the lower nibble.
•The second message code byte has 0xF in the upper nibble and an
instance number in the lower nibble.
The previous Kalypso protocol used identical two message codes in
sequence to indicate start of message. This algorithm depended on the fact
that message codes were always greater than 128 and source ID’s were 128
or less so that two message codes in sequence was unique. This new
method allows for source ID’s up to and including 240 (0xF0).
Message code bytes always have their most significant 4 bits set on. The
command code is in the least significant 4 bits of the first message code
byte. The instance ID is in the least significant 4 bits of the second message
code byte. The instance ID is 1 based and is never 0.
The new sync algorithm is to detect two consecutive bytes with 0xF in the
upper nibble. This allows message data to use all eight bits. To make the
sync pattern unique, messages have been organized so that bytes con
taining contribution map data are always separated with bytes containing
source ID data. This makes detecting the beginning of messages possible
and preserves efficient use of message data bytes for encoding tally infor
mation.
-
-
30Switcher Products — Protocols Manual
Kayenne Contribution Tally Protocol
All messages are of fixed length. Each message type has its own characteristic length (see Tab le 11). Note that a complete contribution tally now consists of 303 bytes instead of 223 for Kalypso. Because the bandwidth of a
serial connection is limited to approximately 128 bytes per field, the tally
information is broken into smaller messages summarized in the table
below. Even with prioritized updates, there is no guarantee that all changes
will be communicated within one field.
Table 11. Kayenne Contribution Tally Messages
Command CodeInstance Number
1 = ME 1
2 = ME 2
0x8 (ME contribution)
0x9 (DPM contribution)1 = eDPM1414219
0xA (SS contribution)1 = Image Store1010229
0xB (Output status)
0xC (Source Name)1 = Name & Nickname (1-146)21N/AN/A
0xD (Update)
0xE (unused)
0xF (unused)
3 = ME 3
4 = ME 4
5 = ME 5
1 = Outputs 1-8
2 = Outputs 9-16
3 = Outputs 17-24
4 = Outputs 25-32
5 = Outputs 33-40
6 = Outputs 41-48
1 = Initialize Kalypso protocol
3 = Initialize Kayenne protocol
Message length
per instance
41205205
12 72301
2 2 3032 = Data Consistent
Message length
all instances
Running
Subtotal
The message structure for Kayenne differs from the Kalypso/Zodiak protocol in the following ways:
•Different message sync mechanism.
•Different length for most messages with corresponding different length
for total contribution tally information.
Source IDs
Valid source IDs used in this protocol for Kayenne range from 1-146. A
source value of 0 indicates the input or bus is not in use. Source IDs in the
range 1-96 represent external sources. Source IDs in the range 97-146 origi
nate within the switcher and are fixed.
Switcher Products — Protocols Manual31
-
Section 1 — Tally Protocol
NoteContribution tally is based on engineering sources, not logical source aliases.
Which physical inputs are used is not factored into tally information.
Table 12. Kayenne Source IDs
Src IDReentrySrc IDReentrySrc IDReentry
97ME 1 PGM A98ME 1 PGM B99ME 1 PGM C
100ME 1 PGM D101ME 1 PVW A102ME 1 PVW 2
103ME 2 PGM A104ME 2 PGM B105ME 2 PGM C
106ME 2 PGM D107ME 2 PVW A108ME 2 PVW 2
109ME 3 PGM A110ME 3 PGM B111ME 3 PGM C
112ME 3 PGM D113ME 3 PVW A114ME 3 PVW 2
115ME 4 PGM A116ME 4 PGM B117ME 4 PGM C
118ME 4 PGM D119ME 4 PVW A120ME 4 PVW 2
121ME 50 PGM A122ME 50 PGM B123ME 50 PGM C
124ME 50 PGM D125ME 50 PVW A126ME 50 PVW 2
127eDPM ch 1 video128eDPM ch 1 key129eDPM ch2 video
130eDPM ch2 key131eDPM ch3 video132eDPM ch3 key
133eDPM ch4 video134eDPM ch4 key135Test Signal
136Black137White138Background 1
139Background 2140Black Key141Image Store out 1
142Image Store out 2143Image Store out 3144Image Store out 4
145Image Store out 5146Image Store out 6
The source IDs for Kayenne differ from the Kalypso/Zodiak protocol in the
following ways:
•Includes ME 50, no ME is designated PGM-PST.
•Includes eDPM outputs, which are internal sources.
•Max source ID is 146 (0x92) which overlaps with Message codes.
Kalypso max source ID of 128 did not overlap with Message code
which is one factor which contributed to the need for the new message
synchronizing scheme. This new scheme allows for source ID’s up to a
max of 239 (0xEF).
ME Contribution Information
Kayenne systems have up to 5 MEs. Each ME has 16 input buses (6 video/
key pairs, 2 background and 2 utility buses), 4 program outputs (A-D) and
two preview outputs. PVW A is always associated with PGM A. PVW 2 is
the preview of C.
Contribution information is provided for all six real outputs and for the
look-ahead state of the 4 program outputs. The “LAP” contribution always
indicates what the program output contribution would be following a main
transition.
32Switcher Products — Protocols Manual
Kayenne Contribution Tally Protocol
The keyer buses “in use” flags indicate whether or not the cut and fill
would be visible if the keyer was contributing to an output. These flags
need to be combined (ANDed) with the contribution bits to determine if a
keyer cut or fill bus is actually contributing to the output.
The source information indicates which source is feeding the ME inputs.
These may be primary sources or reentries. Sources and “in use” flags
apply to all outputs of an ME, but contribution information may be dif
ferent for each output.
This differs from the Kalypso/Zodiak protocol in the following ways:
• Separate bytes for fill and cut “in use” flags.
• Separate bytes for key and background bus contributions.
• Byte order is different, especially source IDs.
•No ME is designated PGM-PST (except as indicated in the Logical ME
0000U2U1BAPVW 2 Bus contribution 35
Key 5 Fill Source (1-146)36
Key 5 Cut Source (1-146)37
Key 6 Fill Source (1-146)38
Key 6 Cut Source (1-146)39
Table 13. ME Contribution Tally
1 = ME 1 (B)
2 = ME 2 (C)
3 = ME 3 (D)
4 = ME 4 (A)
5 = ME 50 (50)
Key 6
Fill
Key 6
Cut
Key 5
Fill
Key 5
Cut
Key 4
Fill
Key 4
Cut
Key 3
Fill
Key 3
Cut
Key 2
Fill
Key 2
Cut
Key 1
Fill
Key 1
Cut
Message code1
Keyer Fill buses in use3
Keyer Cut buses in use5
34Switcher Products — Protocols Manual
Table 13. ME Contribution Tally - (continued)
b7b6b5b4b3b2b1b0NotesOffset
Suite IDLogical ME ID
1=Suite 10=PGM PST
0
2=Suite 21=ME 1
0=Not Assigned2=ME 2
3=ME 3
4=ME 4
The Logical ME Assignment byte (offset 40) represents the logical ME
assigned to the physical ME identified in the message code type (offset 1).
The logical assignment is by suite, hence the suite ID in bits is b4-b6 and the
logical ME ID in bits is b0-b3. These may be used to display the logical ME
ID associated with a specific ME contribution tally.
eDPM Contribution Information
The Kayenne includes an eDPM and so has no facility for effects send to
external DVEs. Since the outputs of the eDPM are fixed internal sources
(like ME reentry) and are included in the Source ID table above, they do not
need to be part of this message data. Output contribution maps and input
source ID’s are provided for 4 channels and 4 video/key (A/B) outputs.
The Output A contribution maps reflect the contribution of the A side of
each input. The Output B contribution maps reflect the contribution of the
B side of each input.
Command Code 1 (0xF)Image Store Contribution (0xA)Message code0
Command Code 2 (0xF)Image Store (1)Message code1
Ch 3
0
Rec
00000
This differs from the Kalypso/Zodiak protocol in the following ways:
•There is one eDPM with 4 output channels
•The A and B contributions are in separate bytes. This is the one place in
the new protocol where extra bytes are used to allow the sync
byte(0xFF) to be unique. It would have been possible to combine A and
B input contributions into one byte but that would leave the possibility
that a data byte would be 0xFF, the same as the sync byte.
The Kayenne still store is configured into three channels with two inputs
and two outputs each. Inputs and Outputs can be configured as two inde
pendent video signals or as video-key pairs. The mode for each channel
input and output is indicated by mode flags. The record flag indicates
whether or not each input is in use.
Table 15. Image Store Contribution Information
Input 1A Source (1-146)2
Input 1B Source (1-146)3
Input 2A Source (1-146)4
Input 2B Source (1-146)5
Input 3A Source (1-146)6
Input 3B Source (1-146)7
Ch 2
Rec
Ch 1
Rec
Ch 3
0
mode
Out 3
mode
Ch 2
mode
Out 2
mode
Ch 1
mode
Out 1
mode
Input Mode (0 = VV, 1 = VK) and
record state
Output Mode (0 = VV, 1 = VK)9
8
-
This differs from the Kalypso/Zodiak protocol in the following ways:
• There are three channels (6 outputs) for the Image Store.
• The input modes and output modes are in separate bytes.
• The Image Store tally is channel oriented.
Output Status
Kayenne has 48 programmable outputs. An output can be programmed as
either an aux bus or as a dedicated output for an ME. From a tally stand
point, only the source selected in each output is significant.
36Switcher Products — Protocols Manual
-
Kayenne Contribution Tally Protocol
The on-air flags indicate whether the switcher considers the output to be
on-air. Outputs used as aux buses may be paired in order to provide a
video/key pair to an external device. The mode flags indicate whether the
two buses of a pair are independent (video/video) outputs or are being
used as video/key pair.
Table 16. Kayenne Output Status
b7b6b5b4b3b2b1b0NotesOff set
Command Code 1 (0xF)Output Status (0xB)Message code0
Block ID 1 = Outputs 1-8
Block ID 2 = Outputs 9-16
Command Code 2 (0xF)
00
00
Mode 3/4Mode 1/2Out 4
Mode 7/8Mode 5/6Out 8
Output 1 source (1-146)4
Output 2 source (1-146)5
Output 3 source (1-146)6
Output 4 source (1-146)7
Output 5 source (1-146)8
Output 6 source (1-146)9
Output 7 source (1-146)10
Output 8 source (1-146)11
Block ID 3 = Outputs 17-24
Block ID 4 = Outputs 15-32
Block ID 5 = Outputs 33-40
Block ID 6 = Outputs 41-48
onair
onair
Out 3
onair
Out 7
onair
Out 2
onair
Out 6
onair
Out 1
onair
Out 5
onair
Message code1
Mode (0 = VV, 1 = VK)2
3
Source Names
This differs from the Kalypso/Zodiak protocol in the following ways:
•The modes and source ID bytes are in different order.
•The output modes and on air state for outputs 1-4 are in separate bytes
than the same data for output 5-8.
Switcher source names are not really part of tally, but often provide valuable information to devices which utilize switcher tally information. Source
names are limited to 12 characters and each is sent in its own message along
with the source ID. Source names are not necessarily unique. The name pro
-
Switcher Products — Protocols Manual37
Section 1 — Tally Protocol
vided is the engineering source name. The nickname is an engineering
source nickname unique to serial tally and is limited to 6 characters.
Table 17. Kayenne Source Names
b7b6b5b4b3b2b1b0NotesOff set
Command Code 1 (0xF)Source Name (0xC)Message code0
Command Code 2 (0xF)1 = Name + NicknameMessage code1
Source ID (1-146)2
0Name Character 1Left-most character3
0Name Character 24
0Name Character 35
0Name Character 46
0Name Character 57
0Name Character 68
0Name Character 79
0Name Character 810
0Name Character 911
0Name Character 1012
0Name Character 1113
0Name Character 12Right-most character14
0Nickname Character 1Left-most character15
0Nickname Character 216
0Nickname Character 317
0Nickname Character 418
0Nickname Character 519
0Nickname Character 6Right-most Character20
The source name message format is identical to the Kalypso/Zodiak protocol except for the range of source ID values.
Update
The Update messages inform the receiver of critical state changes. Initialize
indicates the start of switcher tally processing (the beginning of life). Data
consistent indicates that all tally packets are up to date and tally calcula
tions should be performed.
Table 18. Kayenne Update
b7b6b5b4b3b2b1b0NotesOff set
Command Code 1 (0xF)Update (0xD)Message code0
Command Code 2 (0xF)
Update ID
1 = Initialize Tally data
2 = Data Consistent
Message code1
38Switcher Products — Protocols Manual
-
Kayenne Contribution Tally Protocol
The use of this message is the same as the Kalypso/Zodiak protocol.
Message Parsing and Processing
Except for the difference in detecting the start of a message, the parsing and
processing of messages is quite similar to that appropriate for the Kalypso/
Zodiak protocol.
Generally messages are sent in the following order:
Table 19. Message Order
1Update(3) “beginning of life” ->clearAllData
2ME contribution (1)
3ME contribution (2)
4ME contribution (3)
5ME contribution (4)
6 ME contribution (5)
7 DPM contribution (1)
8 SS contribution (1)
9 Output status (1)
10 Output status (2)
11 Output status (3)
12 Output status (4)
13 Output status (5)
14 Output status (6)
15 Source Name (1-146)
16 Update (2) “Data constant” -> processTally
Subsequent tally updates send only the messages that involve changes followed by Update (2).
// check for update/initialize
if (commandCode == 0xD) && (instanceID == 0x1)
clear all data.
// check for update/data consistent
if (commandCode == 0xD) && (instanceID == 0x2)
processTally()
Message code recognition and parsing can use the following algorithm:
// read in message according to commandCode
else
read message data bytes for specified instance.
}
}
40Switcher Products — Protocols Manual
Editor Protocol
A video editing system uses the switcher editor port to exercise real-time
control over the switcher's functions. The editor is really an external com
puter that can input and output functions. Such functions select crosspoints, perform auto transitions, or perform E-MEM (Effects Memory)
register recalls, to name just a few possibilities. Refer to the appropriate
switcher User Manual for definitions and explanations of switcher func
tions and features.
Kalypso/Zodiak Editor Protocol
Section 2
-
-
Introduction
This section describes the Editor protocol and its error handling as used by
Kalypso and Zodiak systems. This Kalypso/Zodiak Editor protocol is
based on the Grass Valley Group Model 4000 switcher protocol, used by the
Model 4000, 3000, and 2200 Grass Valley Group switchers, but commands
have been extended to support Kalypso and Zodiak features.
Serial Data Word Description
The serial data word contains eleven bits, as shown in Figure 1:
Figure 1. Serial Data Word
D
0
Start Bit, Always Zero
11 Bits Character Length
D1D2D3D4D5D6D7P
Data, 8 Bits, LSB First
Parity Bit
Previous Character's Stop BitStop Bit, Always One
Switcher Products — Protocols Manual41
Next Character's Start Bit
8063_02_01_r0
Section 2 — Editor Protocol
Break
Character
Address
Byte
Command/Message Blocks
Editor Protocol Access
This Editor protocol is based upon, but not identical to, the proposed
SMPTE (Society of Motion Picture and Television Engineers) Digital
Control Interface, which establishes a means for the orderly flow of data
over a serial bus.
The major components of the protocol are shown in Figure 2 and discussed
in the following paragraphs.
Figure 2. Components of the Editor Interface Protocol
Break Character
The main component of the Editor protocol is a 1-1/2 character-length
“break.” A break consists of a spacing or logical low (0) condition on the
serial bus (see Figure 2-2) followed by a minimum of two bit-times of
marking (logic 1) condition. The Bus Controller (editor) transmits a break
to the switcher, forewarning of an impending message (
Figure 3. Break Character
SMPTE Break Character
1 Bit Time (26 S @ 38.4K Baud)
Spacing Data, 17 to 20 Bit Times
Marking Data, 2 or More Bit Times
Figure 3).
8063_02_02_r0
First Character of
Address Byte
The break forces all tributaries, or listeners (such as the switcher’s editor
port), from the “Idle” state into the “Active” state. A break can be sent only
by the Edit Controller. When the switcher receives the break, it ceases all
bus communications, resets any communication error condition, and pre
-
pares to receive an address (Figure 4).
42Switcher Products — Protocols Manual
Editor Serial Port
"Idle" State
Power On
or Reset
Received
Valid
Break
Received
Invalid Poll
Address
Received
Poll Address
(31H)
Received
Valid Select
Address (30H)
Receive
Request
Receive
Command
Invalid
Command
or Time Out
Received
Communication
Error or Time Out
Received
Invalid Select Address,
Communication Error,
or Time Out
Received
Valid
Break
Editor Serial Port
"Active" State
Editor Serial Port
"Selected" State
Transmit Data
Requested
Transmit
Protocol Error
Process Command,
Transmit
Protocol Accept
Transmit
Negative
Acknowledge
Editor Serial Port
in Any State
Editor Serial Port
Transmits
Acknowledge Byte
8063_02_04_r1
Transmit
Acknowledge Byte
Kalypso/Zodiak Editor Protocol
Figure 4. Editor Protocol State Diagram
Switcher Products — Protocols Manual43
Section 2 — Editor Protocol
Address Byte
Once the break has been received, the Editor protocol advances to the
active state and begins expecting a one-byte address. The switcher will
respond to the switcher address 30H (Hexadecimal), when transmitted by
the Edit controller. After receiving the address, the Editor protocol accepts
command/message block transmissions containing commands, data
requests, and other data directed toward the switcher. As long as commu
nication errors do not occur, the Editor protocol can skip the break/address
sequence during the remainder of the transmissions. Command/message
blocks can be sent repeatedly, one after another, without break interrup
-
tions.
The address is one byte long and directed to a specific tributary. If the
received address matches the tributary’s assigned address, the tributary
advances to the Selected state and awaits instructions. The address of the
switcher is fixed as 30H. In response to the address, the 3000 transmits an
acknowledgment byte of 84H to the controller, indicating the change in
status to the “Selected” State. If an address of 31H is received, the switcher
transmits an acknowledgment byte of 84H to the controller, but stays in the
“Active” State. If the address does not match, the tributary drops off the bus
(goes Idle) and awaits another break.
-
Command/Message Block Structure
In the Selected state, the Editor protocol receives command/message
blocks that direct switcher operations. The basic message structure is
Byte Count
Byte
shown in
Figure 5. Message Structure
Effects
Addr. Byte
The maximum length of a message is 255 bytes plus the byte count byte. At
a baud rate of 38,400, the maximum length command/message takes more
than 4 fields to complete.
The Editor protocol can handle data continuously, receiving a contiguous
stream of command/message blocks. Such an ability enables multiple
switcher operations to be performed without constant cycling through the
Figure 5.
Command
Code Byte
Message Bytes
Maximum Size
255 Bytes
0350-09
44Switcher Products — Protocols Manual
break/address sequence. Responses (handshakes or read data) are
returned in the same order as the command/message blocks are received.
Byte Count
The command/message block can range in size from two to 256 bytes. The
first byte of the block contains the byte count. A byte count consists of the
total number of subsequent bytes in the block; valid byte count values
range from 01H to FFH (1 to 255). After receiving a valid byte count (01H
to FFH) and the proper number of data bytes (1 to 255), the switcher exe
cutes the command.
Effects Address Byte
The second byte of the command/message block is the effects address byte,
typically referred to as EX. This byte identifies the desired “effect bank”
within the switcher where the associated command will go. Valid Effects
Addresses for each command are specified later in this manual.
Kalypso/Zodiak Editor Protocol
-
Command Code Byte
The command code is the third byte of the command/message block.
Command codes fall into two broad categories: requests and commands.
Only one command is allowed in any command/message block. Likewise,
only one response is embedded in any command/message block.
Requests
Requests interrogate the status of the specified operational parameter of
the switcher. When the editor issues a read command/message block, the
switcher responds by sending the current status of the requested opera
tional parameter(s) back to the editor. This status information is returned in
the format of the write command/message block. By echoing the write
format, the editor can later send responses to a request to the switcher and
cause execution of that function.
Commands
Commands are used by the editor to change operational parameter(s) or
initiate a function within the switcher.
-
Switcher Products — Protocols Manual45
Section 2 — Editor Protocol
Status Replies
The switcher responds to a command by sending a two-byte status
message to the editor. The first byte is the byte count which is 01H, and the
second byte is the switcher’s response to the command.
The two most common responses are 80H (command accepted) and 40H
(protocol error) as shown in (
Figure 6. Status Reply Message
Bit Bit
7 6 5 4 3 2 1 0
X X 0 0 0 0 0 0
1 = Protocol Error
Figure 6).
The status bits are described below. Note that the Command Accept bit and
Protocol Error bit cannot both be set.
•If Command Accept is true, the command is forwarded to the specified
•If Protocol Error is true, an illegal function may have been requested.
Error Detection
Error detection is a normal part of the communication process. Communication or “handshaking” errors can take many forms, such as parity errors,
framing errors, or data overrun errors. When the Editor protocol detects
communication errors, it responds with a negative acknowledge byte of
85H and then aborts all communications. Any remaining un-executed com
mands are discarded after the error indication occurs.
In order to resume communication, the editor must transmit a break/
address sequence to return the channel to the Select state. If an error is
detected during the receipt of the tributary address, the Editor protocol
drops back into the Idle state without transmitting the 85H Negative
Acknowledge byte.
1 = Command Accepted
effects system. Only the Command Code Byte, Byte Count Byte, and the
Effect Address Byte are checked for validity. It does not mean that the
switcher executed the command correctly.
8063_02_03_r0
-
In general, it is preferable for the editor to wait until it receives the
Command Accept response before sending a new command, although it is
possible to send a continuous stream of commands without waiting for
replies after each one.
46Switcher Products — Protocols Manual
Editor Commands
Introduction
This section describes the editor command set used by the Kalypso Video
Production Center and the Zodiak Digital Production Switcher when using
the Kalypso/Zodiak editor protocol. These interface commands follow the
Model 4000 interface closely, and are designed to respond to existing Model
4000 commands from an editor (with a few exceptions - such as E-MEM
transfer). Commands have been extended to provide access to Kalypso and
Zodiak features, like Keyer 3 and 4, which do not exist on the Model 4000.
This allows an existing Model 4000 editor interface to be useful without
modification, or expanded to access new switcher functionality.
In this section the Kalypso and Zodiak systems are generically called
“switcher” when the same commands are used. When differences in the
commands for these models exist, the differences are indicated with notes
or with separate labeled tables.
Editor Commands
Note the following for both Kalypso and Zodiak switchers:
•The E-MEM data transfer commands have been replaced with Save and
Load commands. Instead of transferring data over the RS-422 serial line
the Load and Save commands transfers data to and from files located
on the switcher’s internal hard drive. These files may be transferred
from the switcher’s hard drive to the editor using FTP over an ethernet
connection.
•The E3 (Mask) command is not implemented. Mask buses do not exist
on the switcher, instead the Utility buses are used for masking.
•The E8 (Layered) command is not implemented. Split layered mode is
not accessible.
•Access is provided to all 128 switcher sources (see Command C0, C1).
Note the following for Kalypso systems only:
•E-MEM Levels are used differently in Kalypso than in the Model 4000.
The Effects Address in this protocol refer to Kalypso E-MEM enable
groups as identified by the default names. Kalypso may be configured
to assign any E-MEM level to any enable group. This protocol assumes
that the enable group will be referenced even if the E-MEM levels
assigned may change.
•Access is provided to new buses: K3, K4, U1, U, and Aux Bus 1 – 46 (see
Command C0, C1).
•Access is provided to secondary wipe generator (see Command C8)
•Access is provided to Primary and Secondary M/E partitions when
Kalypso is in split mode (via effect address).
Switcher Products — Protocols Manual47
Section 2 — Editor Protocol
Command Usage
Note the following for Zodiak systems only:
•Access is provided to new buses: K3, K4, U1, and Aux Bus 1 – 13 (see
Command C0, C1).
•Access to DSK transition doesn’t work with existing 4000 code.
Editor protocol commands are detailed in tables presented on the following
pages. Addresses, byte counts, important names, and supporting details
are listed for each command. References to pushbuttons are shown in
capital letters, using the legends as they appear on a Control Panel. Control
Panel section names are shown in initial capitals.
NoteAll values within tables are hexadecimal unless otherwise indicated by the
notation “decimal.”
The appropriate command to use may be determined by referring to
Ta bl e 20.
Table 20. Command Use Summary
PurposeCommand(s)
Source Bus (C1 – C4) Commands – page 50
Basic Source Control
To simulate the pressing of certain buttonsPushbutton Select and Control (C6, C7 and FB) Commands – page 59
Selection of Wipe PatternsWipe Pattern (C8) Command – page 63
Control of Transition mode pushbuttonsTransition Mode (CA) Command – page 65
Set transition ratesAuto and Key Transition Rate (CC and CD) Commands – page 67
E-MEM learns and recallsLearn and Recall E-MEM Register (DA and DB) Commands – page 71
E-MEM and Configuration Save and Load Data
Timeline control for multiple keyframe effectsTimeline Control (4E, 4F, CE, and CF) Commands – page 83
Save and Load Status (6D and ED) Commands – page 82
All Stop (F2) Command – page 88
Software Version (6C and EC) Commands – page 90
Application Examples
Several examples of serial communications using the switcher Editor Interface are provided on the following pages in the sections appropriate to the
commands. In general, “Transmit” refers to communication from the editor
to the switcher and “Receive” refers to communication from the switcher
to the editor. Refer to specific command tables for details on these exam
ples.
-
48Switcher Products — Protocols Manual
Editor Commands
Example 1: Bringing the Editor Interface into a Ready State
Tab l e 2 1. Tr an s mi t
Break Address
BRK30
Table 22. Receive
Status
84
Example 2: How to Set Crosspoint #6, A Row, Mix/Effects 2
Tab l e 2 3. Tr an s mi t
Byte Count Ex AddressCommandData
03 02 C1 06
Table 24. Receive
Byte Count Status
01 80
Example 3: How to Perform a DSK Auto Transition (Zodiak Only)
Table 25. Set DSK Elements (DSK1, DSK2, DSK3)
FunctionByte Count Ex Address CommandData
DSK104 04 C6 020E
DSK20404C60210
DSK20404C6022B
Table 26. Set DSL Link On for Active M/E
FunctionByte Count Ex AddressCommandData
DSK LINK04EXC60230
Table 27. Set Mix Transition Type on M/E
FunctionByte Count Ex Address CommandData
MIX04EXC60206
Tab l e 2 8. Tr ig ger Au t o Tr ans it i on
FunctionByte Count Ex Address CommandData
AUTO TRANS04EXC60206
Table 29. Perform Single DSK Transition – Cut or Mix
FunctionByte Count Ex Address CommandData
DSK1 CUT04 04 FB 0223
DSK1 MIX0404C60224
Switcher Products — Protocols Manual49
Section 2 — Editor Protocol
Source Bus (C1 – C4) Commands
The Source Bus commands enable the editor to select any source on a bus
specified by the effects address, and the command code.
Table 30. Source Bus Commands
Function
BKGD A/AUX 03EXC1 Source #
BKGD B03EXC2 Source #
KEY1/DSK 103EXC3 Source #
KEY2/DSK 203EXC4 Source #
Byte
Count
Effects
Address
Command
Code
Message
50Switcher Products — Protocols Manual
Editor Commands
Kalypso Effects Addresses
Valid effects addresses for the Source Bus commands used by the Kalypso
system are as indicated in
Table 31. Kalypso Effects Addresses - Source Bus Commands
Effects
Address
Accessible Model 4000 Code
Kalypso Code
a
New effects address assignment associated with Kalypso.
Assignment
00PGM-PST 07
01 Mix/Effects 1 0C Aux Bus 1A13 Aux Bus 4B1A Aux Bus 8A
02 Mix/Effects 2 0D Aux Bus 1B14 Aux Bus 5A1B Aux Bus 8B
03Mix/Effects 3 0E Aux Bus 2A15 Aux Bus 5B1C Aux Bus 9A
The Source Bus command enables the editor to select any Source on a bus
specified by the effects address, and the command code. This command
includes compatibility of commands C1, C2, C3 and C4.
Table 35. Source Bus Command
Function Byte Count Effects AddressCommand CodeMessage
Source Bus03EXC0Source #
Kalypso Effects Addresses
Valid effects addresses used by Kalypso systems for the CO Source Bus
command are defined in
Editor Commands
Ta bl e 36 on page 56.
Switcher Products — Protocols Manual55
Section 2 — Editor Protocol
Effects
Address
00 PGM-PST A 2BMix/Effects 3 Key 2 56AuxBus12A79AuxBus29B
The Preview Bus command enables the editor to select any Source on the
preview primary bus.
Table 38. Source Bus Command
Function Byte Count Effects AddressCommand CodeMessage
Preview Bus0306E2Source #
Source Numbers
Valid Source numbers are shown in Tab le 33 on page 53 and Tab le 34 on
page 54.
Switcher Products — Protocols Manual57
Section 2 — Editor Protocol
Split Key (E4, E5, E6, E7, E9 and EA) Commands
Kalypso Effects Addresses
These commands allow an editor to use the Split Key feature of the
switcher. There are two modes for selecting the key source: Auto Select
mode uses the key source assigned to the selected fill source. Video Select
mode uses the selected fill video as the key source.
Table 39. Split Key Commands
Function Byte Count Effects AddressCommand CodeMessage
Valid Source numbers are shown in Tab le 33 on page 53 and Tab le 34 on
page 54.
The fill source is a valid source in hex. The format of the Key Source byte is
provided in
Table 42. Key Source Byte Format
76543210
Editor Commands
Ta bl e 42.
Bit
Combination of 7 bits makes
valid sources (00H to 7FH) with
special case: 00 is 80H
0 = Auto Select Mode, 1 = Video Select Mode
Pushbutton Select and Control (C6, C7 and FB) Commands
The Pushbutton Select command (FB) is a command that performs a
“push” of the specified pushbutton number, just as if the button had actu
ally been pressed at the control panel. The Pushbutton commands turn the
designated pushbutton “on” (C6) or “off” (C7). These commands are valid
with all pushbuttons.
Table 43. Pushbutton Select and Control Commands
Function Byte Count Effects AddressCommand CodeMessage
PB/L# ON04EXC6PB/L# High, PB/L# Low
PB/L# OFF04EXC7PB/L# High, PB/L# Low
PB/L# PRESS04EXFBPB/L# High, PB/L# Low
-
Switcher Products — Protocols Manual59
Section 2 — Editor Protocol
Kalypso Effects Addresses
Zodiak Effects Addresses
Valid effects addresses used by Kalypso systems for the Pushbutton
Control commands are defined in
Table 44. Kalypso Effects Addresses - Pushbutton Select and Control
1607HWipe 1 Direction - NormalX0580HAuto Recall
1608HWipe 1 Direction - ReverseX
1687HWipe 2 Direction - NormalX
1688HWipe 2 Direction - ReverseX
a
New pushbutton function associated with Kalypso.
b
Effects addresses are irrelevant and will be ignored. All effects addresses will be treated as 0X0B.
a
a
a
a
a
a
a
a
a
a
a
Tab le 46 on page 61.
sition element is on, the editor should turn on the desired transition element
(e.g., Bkgd, Key 1, etc.) before turning off unwanted ones. Normally, Transition Wipe 1 will use Complex 1 and Transition Wipe 2 will use Complex 2, but,
this is not a requirement. It may be impossible for the edit controller to select
the wipe pattern if the operator has changed this association from the UI.
a
a
a
a
a
a
X0511HENABLE MISC 3
X0512HENABLE MISC 4
X0513HENABLE MISC 5
X0514HENABLE MISC 6
a
a
a
a
a
a
XX050CHENABLE ALLX
XX0516HStill Store Grp A
XX0518HStill Store Grp C
X0562HRev
X0563HAuto Run
X0564HStop Next
X0565HRun
a
a
a
a
a
a
a
a
a
a
a
a
b
X
b
X
b
X
b
X
XX
XXX
XX
XX
XX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Switcher Products — Protocols Manual61
Section 2 — Editor Protocol
Zodiak Pushbutton Numbers
Zodiak system pushbutton numbers supported by these commands are
specified in
NoteInvalid pushbutton numbers will be ignored. To insure that at least one tran-
Table 47. Zodiak Pushbutton Numbers
M/E PushbuttonsMaster E-MEM/Effects Edit/Effects Run Pushbuttons
Number FunctionPressOn / OffNumber FunctionPressOn / OffM/E
0201HCutX022AHKey 4 Mix
0202HAuto TranX0230HDSK LINKX
0203HPreset BlackX1607HWipe 1 Direction - NormalX
0206HMixX1608HWipe 1 Direction - ReverseX
0207HA/B BkgdX1687HWipe 2 Direction - NormalX
0208HPri Wipe X1688HWipe 2 Direction - ReverseX
0209HDSK1X0502HENABLE M/E 1
020BHDSK2X0503HENABLE M/E 2
0211HDSK3X0504HENABLE M/E 3
0204HSec Wipe
022DHUser Trans 1
022EHUser Trans 2
022FHUser Trans 3
020EHKey 1XX0511HENABLE MISC 3
0210HKey 2XX0508HENABLE DPM
022BHKey 3
022CHKey 4
0212HKey PriorityXX0545HNext KF
0213HTrigger
0223HKey 1 Cut/DSK1 Cut
0224HKey 1 Mix /DSK1 Mix
0225HKey 2 Cut /DSK2 Cut
0026HKey 2 Mix /DSK2 Mix
0227HKey 3 Cut /DSK3 Cut
0228HKey 3 Mix/DSK3 Mix
0229HKey 4 Cut
a
New pushbutton function associated with Zodiak.
b
Effects addresses are irrelevant and will be ignored. All effects addresses will be treated as 0X0B.
a
a
a
a
a
a
a
a
a
a
a
a
a
a
Ta bl e 47 on page 62.
sition element is on, the editor should turn on the desired transition element
(e.g., Bkgd, Key 1, etc.) before turning off unwanted ones. Normally, Transition Wipe 1 will use Complex 1 and Transition Wipe 2 will use Complex 2, but,
this is not a requirement. It may be impossible for the edit controller to select
the wipe pattern if the operator has changed this association from the UI.
a
a
a
a
X0501HENABLE PGM-PST
a
X0505HENABLE DSKX
X0507HENABLE MISC 1
X0510HENABLE MISC 2
a
a
a
a
XX050CHENABLE ALLX
XX0544HPrev KF
XX0560HRew
X0561HHold Inputs
X0562HRev
X0563HAuto Run
X0564HStop Next
X0565HRun
X0580HAuto Recall
a
a
a
a
a
a
a
a
a
X
X
X
X
X
X
X
X
X
X
b
X
b
X
b
X
b
X
XX
XXX
XX
XX
XX
62Switcher Products — Protocols Manual
Wipe Pattern (C8) Command
The Wipe Pattern command selects the specified Transition Wipe 1 or Transition Wipe 2 pattern for an M/E. Only one Transition Wipe 1 and one Transition Wipe 2 pattern can be active at a time for each M/E.
Table 48. Wipe Pattern Command
Function Byte Count Effects AddressCommand CodeMessage
Wipe Pattern03EXC8Wipe #
Kalypso Effects Addresses
Valid effects addresses used by Kalypso systems for the Wipe Pattern
command are defined in
The format of the Transition Mode byte for an M/E as used by both
Kalypso and Zodiak systems is provided in
Table 56. Transition Mode Byte Format – M/E
Bit
76543210
0XXX0XXX
1 = KEY 2 on
1 = KEY 1 on
1 = BKGD on
1 = Key Priority on
1 = Key 4 on
1 = Key 3 on
a
New bit assignment associated with Kalypso and Zodiak
a
a
Ta bl e 56.
Mode Byte — DSK (Zodiak Only)
The format of the Transition Mode byte for the DSK as used by Zodiak
systems is provided in
Table 57. Transition Mode Byte Format – DSK
Bit
76543210
0XXX0XXX
1 = Key Priority on
1 = DSK3 on
a
New bit assignment associated with Zodiak
a
Ta bl e 57.
1 = BKGD on
1 = DSK 2 on
1 = DSK 1 on
66Switcher Products — Protocols Manual
Auto and Key Transition Rate (CC and CD) Commands
The Transition Rate commands set the rates used by the switcher to
perform a transition. They can also cause a transition to take place by
setting the “execute bit.” The “next transition” which will occur should
have been previously selected, either manually at the panel or by sending
a Transition Mode command.
Five transition rates may be set in the switcher:
•Auto transition rate,
•Key 1 transition rate,
•Key 2 transition rate,
•Key 3 transition rate, and
•Key 4 transition rate.
Which rate is used depends on:
•The “next transition” which has been selected, and
Editor Commands
•The effects address.
The transition rates that are set depend on the effects address and the keyer
bits in the units digit of the rate data. The effects address specifies which
M/E. The keyer bits control which of the keyer transition rates are also set.
The Auto Transition Rate command is primarily intended to set the auto
transition rate but can also set the Key 1, 2, 3 and Key 4 transition rates. If
the execute bit is set, the auto transition will be performed. The Key transi
tion rate command only sets Key transition rates.
Table 58. Auto and Key Transition Rate Commands
Function Byte Count Effects AddressCommand CodeMessage
Auto Transition Rate05EXCCHD TN UN
Key Transition Rate05EXCDHD TN UN
PGM–PST/DSK (Zodiak Only)
On Zodiak systems, the transition rate depends on the state of the “next
transition”. If the next transition is set only to Background, then the auto
transition rate is used. if the next transition is set to DSK 1, DSK 2, or DSK
3, or all three, then the key transition rate is used. If Background and DSK
1, DSK 2, or DSK3 is selected, then the Background (PGM–PST) transition
has precedence over the DSK transition and the auto transition rate is used.
-
Switcher Products — Protocols Manual67
Section 2 — Editor Protocol
Kalypso Effects Addresses
Zodiak Effects Addresses
Valid effects addresses used by Kalypso systems for the Auto Transition
Rate command are defined in
Table 59. Kalypso Effects Addresses - Auto Transition Rate Command
New effects address assignment associated with Kalypso.
Ta bl e 59.
a
a
a
a
Valid effects addresses used by Zodiak systems for the Auto Transition
Rate command are defined in
Table 60. Zodiak Effects Addresses - Auto Transition Rate Command
Effects Address Assignment
a
Function associated only with Zodiak.
Transition Rate
Transition rates are specified in numbers of frames. To translate a transition
rate in seconds to number of frames, use the following formulae:
NTSC
Frame Rate = (transition time in seconds) x (30 frames/second)
PAL
Ta bl e 60.
00 PGM-PST
01Mix/Effects 1
02Mix/Effects 2
03Mix/Effects 3
04DSK
a
Frame Rate = (transition time in seconds) x (25 frames/second)
Example: A four second AUTO TRAN would have a frame rate of 120
frames in the NTSC standard (4 seconds x 30 frames/second = 120 frames).
For the PAL standard, substitute 25 frames/second to arrive at frame rate
of 100 frames.
68Switcher Products — Protocols Manual
Editor Commands
The command specifies the auto transition rate in terms of frames ranging
from 000 to 999. Specify the auto transition rate in the command by sup
-
plying three data bytes:
•HD — The hundreds digit in BCD. The MSB is the “execute” bit.
•TN — The tens digit in BCD.
•UN — The units digit in BCD. The four MSBs are control bits to select
Key 1, 2, 3 and Key 4 rates in addition to the auto transition rate.
The format of the HD byte is provided in Tabl e 61.
Table 61. HD Byte Format
Bit
76543210
X000XXXX
Combination of 4 bits makes Hundreds digits
Rate value of 0 through 9 in BCD (0000 to 1001)
0 = Set rate only, do not perform the transition
1 = Set rate and perform the auto transition
The format of the TN byte is provided in Tab le 62.
Table 62. TN Byte Format
Bit
76543210
0000XXXX
Combination of 4 bits makes Tens digits
Rate value of 0 through 9 in BCD (0000 to 1001)
Switcher Products — Protocols Manual69
Section 2 — Editor Protocol
The format of the UN byte is provided in Tab le 63.
Table 63. UN Byte Format
a
Bit
76543210
XXXXXXXX
Combination of 4 bits makes Units digits
Rate value of 0 through 9 in BCD (0000 to 1001)
1 = Set Key 3/DSK3 rate also
1 = Set Key 4 rate also
1 = Set Key 1/DSK1 rate also
1 = Set Key 2/DSK2 rate also
a
If bits 4, 5, 6 and 7 are set to 1, or are all zero, then all Key rates will be set. If bits 4, 5, 6 and 7 are all zero,
command CC will set no Key rates; command CD will set all Key rates.
b
New bit assignment associated with Kalypso and Zodiak.
b
b
70Switcher Products — Protocols Manual
Editor Commands
Learn and Recall E-MEM Register (DA and DB) Commands
The Learn E-MEM Register command is a command that causes the Effects
Address state data in the specified E-MEM register to be stored or
“learned” into the E-MEM register specified in the Mode byte. This
command has the same effect as manually pressing the LRN button and
then selecting an E-MEM register number (0 through 99). The command
also supports learning an Effects Dissolve into a register.
The Recall E-MEM command, when sent, causes the state data in the specified E-MEM (Effects Memory) register to be recalled, thus changing the
current state of the switcher to the stored settings for the given effects
addresses. This command performs the same action as manually recalling
an E-MEM register number of 0 through 99.
Control bits may be set to force or inhibit the recall of the register as an
effects dissolve. Additionally, control bits may be used to force or inhibit
the running of an effect which contains multiple keyframes, and the recall
of learned enables prior to the recall of the register.
NoteDo not send this command more than once per video frame. Also note that a
new recall command received by the switcher will override any recall that is
still in progress for an effects address.
Table 64. Learn and Recall E-MEM Register Commands
Function
Learn E-MEM Register
Recall E-MEM Register
Byte
Count
04
06
06
04
06
06
Effects
Address
EXDA
FFDA
FEDA
EXDB
FFDB
FEDB
Command
Code
Message
Mode, Register Number
Mode, Register Number, 2-byte Bit-Mask, 4000 Format
Mode, Register Number, 2-byte Bit-Mask, Switcher Format
Mode, Register Number
Mode, Register Number, 2-byte Bit-Mask, 4000 Format
Mode, Register Number, 2-byte Bit-Mask, Switcher Format
Switcher Products — Protocols Manual71
Section 2 — Editor Protocol
Kalypso Effects Addresses
Valid effects addresses used by Kalypso systems for the Learn and Recall
E-MEM Register commands are defined in
The editor may learn/recall a specific Effects Address or may learn/recall all levels currently enabled on
the control panel. If the Effects Address is FF then the levels to be learned/recalled are specified in a 4000
type 2-byte Bit-Mask.
b
New effects address assignment for Kalypso, for use with Kalypso type 2-byte Bit-Mask.
Assignment
All specified levels in
the Bit-Mask
a
b
Effects
Address
E0PGM-PSTSecondary Partition
E8
E9Miscellaneous5
Kalypso Code
EAMiscellaneous6
EBMiscellaneous7
ECDPM
EDStill Store A
EEStill Store B
EFStill Store C
Tab le 65.
Assignment
Miscellaneous4
72Switcher Products — Protocols Manual
Zodiak Effects Addresses
Valid effects addresses used by Zodiak systems for the Learn and Recall
E-MEM Register commands are defined in
New effects address assignment associated with Zodiak.
b
The editor may learn/recall a specific Effects Address or may learn / recall all levels currently enabled on
the control panel. If the Effects Address is FF then the levels to be learned / recalled are specified in a 4000
type 2-byte Bit-Mask.
c
New effects address assignment for Zodiak, for use with Zodiak type 2-byte Bit-Mask.
Assignment
Mix/Effects 3
a
All specified levels in
the Bit-Mask
Editor Commands
Ta bl e 66.
Effects
Address
E5Miscellaneous1
DPM
EC
Zodiak Code
b
c
Assignment
To enable levels, use C6 or C7 commands. For example, to enable the DSK
level use the values given in
Table 67. Enable Levels
FunctionByte Count Ex Address
ENABLE DSK04OBC60505
Learn Mode Byte
The Mode byte allows an E-MEM learn with Effects Dissolve. The format
of the Learn Mode byte is provided in
Table 68. Learn Mode Byte Format
76543210
0X000000
1 = Learn with Effects Dissolve
a
Setting Bit 6 to one causes an Effects Dissolve to
automatically occur when the specified E-MEM register is recalled.
Bit
Tab le 67.
Comman
d
Data
Tab le 68.
a
Switcher Products — Protocols Manual73
Section 2 — Editor Protocol
Recall Mode Byte
The Mode byte allows an E-MEM recall with Effects Dissolve, Auto Recall,
and Run, either separately or together. The Mode byte takes precedence
over the Switcher button tallies. The mode byte looks at four operations:
•Force the Run/Auto Recall/Effects Dissolve/Sequence operation
•Inhibit the Run/Auto Recall/Effects Dissolve/Sequence operation
•Operate according to current Switcher panel settings
The format of the Recall Mode byte is provided in Tab le 69.
Table 69. Recall Mode Byte Format
Bit
76543210
XXXXXXXX
1 = Recall E-MEM Register and Inhibit Auto Recall
1 = Recall E-MEM Register and Inhibit a Run
1 = Recall E-MEM Register and Inhibit Effects Dissolve
1 = Recall E-MEM Register and Inhibit Sequence
1 = Recall E-MEM Register and Force Auto Recall
1 = Recall E-MEM Register and Force Run
1 = Recall E-MEM Register and Force Effects Dissolve
1 = Recall E-MEM Register and Start Sequence
Effects Dissolve, Sequence, Auto Recall, and Run each have a Force bit and
an Inhibit bit. If the Force bit is on, the action is performed irrespective of
the state of the switcher. If the Inhibit bit is on, the action is not performed,
irrespective of the state of the switcher. If both bits are off, then the action
is performed according to the switcher state, that is, what has been recalled
from E-MEM, modified by the current state of the panel. (Refer to
Table 70. Force/Inhibit Bits
ForceInhibit Action
1 0Perform action
01Inhibit action
00
11Invalid
Act according to panel state
and register contents
Ta bl e 70.)
Setting Bit 5 to one recalls an E-MEM register and runs any keyframes
stored in that register. This has the same effect as pushing the AUTO RUN
pushbutton and then recalling an E-MEM register from the control panel.
Setting Bit 1 to one recalls an E-MEM which does not run, irrespective of
the state of the AUTO RUN button. If both Bits 5 and 1 are set to zero, then
the E-MEM is recalled and will run only if the AUTO RUN button is on.
74Switcher Products — Protocols Manual
Registers
Editor Commands
Setting Bit 6 to one recalls an Effects Dissolve into an E-MEM register. This
has the same effect as pushing the EFF DIS pushbutton and then recalling
an E-MEM register from the control panel. Setting Bit 2 prevents the Effects
dissolve from taking place irrespective of whether the effect was learned
with Effects Dissolve on, or the Effects Dissolve button was pressed prior
to sending the Recall E-MEM command. If both Bits 6 and 2 are zero, then
the Effects Dissolve will occur if the effect was learned with Effects Dissolve
on, or if the Effects Dissolve button is on (has just been pressed).
Auto Recall is controlled by the bits in the same manner as Auto Run,
described above.
It is possible to combine Force bits to automatically run a register starting
with an effects dissolve after the enabled levels have been recalled.
Valid E-MEM registers are 00 through 99 (00H–63H). The format of the
Effects Register Number byte is provided in
Ta bl e 71.
Table 71. Effects Register Number Byte Format
Bit
76543210
0XXXXXXX
Combination of 7 bits makes values used for
Effects Register 00H – 63H
4000 Bit-Mask Format
The two-byte bit mask allows the editor to specify any combination of
effects addresses 00 through 7FF. The LSB (bit 0) represents the first
address, and bit 10 represents the DPM 4 address. The top bits are “don't
care.” This is used with the FF Effects Address.
Switcher Products — Protocols Manual75
Section 2 — Editor Protocol
Table 72. 4000 Type Effects Addresses Byte Format
Bit
1514131211109876543210
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
DSK (Zodiak Only)
Miscellaneous (MISC)
DPM 1
Kalypso Bit-Mask Format
The two-byte bit mask used by Kalypso systems allows the editor to specify
any combination of effects addresses 00 through 7FFF. The LSB (bit 0) rep
resents the first address, and bit 15 represents the Still Store C address. The
4 bit is “don't care.”This format is used with the FE Effects Address.
PGM-PST Mix
-
Table 73. Kalypso Effects Addresses Byte Format
Bit
1514131211109876543210
X
PGM-PST Mix
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
Miscellaneous (MISC) 1
Miscellaneous (MISC) 2
Miscellaneous (MISC) 3
Miscellaneous (MISC) 4
Miscellaneous (MISC) 5
Miscellaneous (MISC) 6
Miscellaneous (MISC) 7
DPM
Still Store A
Still Store B
Still Store C
76Switcher Products — Protocols Manual
Zodiak Bit-Mask Format
The two-byte bit mask allows the editor to specify any combination of
effects addresses 00 through 7FF. The LSB (bit 0) represents the first
address, and bit 10 represents the DPM 4 address. The top bits are “don't
care.” This format is used with the FE Effects Address.
Table 74. Zodiak Effects Addresses Byte Format
Bit
1514131211109876543210
PGM-PST Mix
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
DSK
Miscellaneous (MISC)
DPM
Editor Commands
Switcher Products — Protocols Manual77
Section 2 — Editor Protocol
Save and Load Data (5F and DF) Commands
Effects Addresses
An editor may request the switcher to save an E-MEM register to a disk file
on the switcher using a specified file name. At a later time the editor may
request that the disk file be loaded to a specified E-MEM register. There is
a separate message type for each of these operations. The message specifies
the E-MEM register number and an option field followed by a null termi
nated text file name. The effects address specifies whether E-MEM data or
configuration (either suite prefs or user prefs) are saved or loaded. An
“Ack” is returned if a valid command is received. Use Status Request
Command (6D) to determine if the file operation is successful.
Table 75. Save and Load Data Commands
Function Byte Count Effects AddressCommand CodeMessage
Save Data06H to FFHEX5F
Load Data06H to FFHEXDF
Reg Number, Opt(2bytes),
Name (up to 250 bytes)
Reg Number, Opt(2bytes),
Name (up to 250 bytes)
-
Valid effects addresses for the Save and Load Data commands defined in
Ta bl e 76 are new.
Table 76. Effects Addresses - Save and Load Data Commands
Reg Number
The value in this byte is a register number from 0 to 99 (decimal).
Name
The name is a null terminated string from 1 to 250 bytes long that specify a
path name for the E-MEM file to be loaded or saved. The name specified is
appended to the string “C:\EMEM\” to form the complete path name. If
the editor supplies no name (a single zero byte) the Editor protocol uses a
default name of “EDITOR”, so that the complete path name on the switcher
is “C:\EMEM\EDITOR”.
The file name is automatically generated by the switcher and is of the form
“REGnnn.EMM”, where nnn is the decimal register number.
78Switcher Products — Protocols Manual
Examples
09 0B 5F 00 00 00 41 42 43 00
Makes Kalypso save E-MEM register 0 to the following file:
“C”\EMEM\ABC\REG000.EMM”
09 0B DF 63 00 00 41 42 43 00
Makes Kalypso load the following file to E-MEM register 99:
“C”\EMEM\ABC\REG099.EMM”
06 0B 5F 01 00 00
Makes Kalypso save to E-MEM register 1 the following file:
“C”\EMEM\EDITOR\REG001.EMM”
Editor Commands
Switcher Products — Protocols Manual79
Section 2 — Editor Protocol
Save Option Byte Formats
Table 77. E-MEM (0B)
Bit
1514131211109876543210
00000000000000XX
1 = All Levels Learned; 0 = All Levels Enabled
Table 78. SourceMem (1B)
Bit
1514131211109876543210
000000000000000X
Table 79. RMem (1C)
Bit
1514131211109876543210
000000000000000X
1 = Don’t Overwrite; 0 = Force Overwrite
1 = Don’t Overwrite; 0 = Force Overwrite
1 = Don’t Overwrite; 0 = Force Overwrite
Table 80. System Config (1D)
Bit
1514131211109876543210
000000000000000X
1 = Don’t Overwrite; 0 = Force Overwrite
Table 81. Suite Prefs (1E)
Bit
1514131211109876543210
000000000000000X
1 = Don’t Overwrite; 0 = Force Overwrite
Table 82. User Prefs (1F)
Bit
1514131211109876543210
000000000000000X
1 = Don’t Overwrite; 0= Force Overwrite
80Switcher Products — Protocols Manual
Load Option Byte Formats
Table 83. E-MEM (0B)
Bit
1514131211109876543210
00000000000000XX
0 = Load; 1 = Recall after Load
1 = All Levels Learned; 0 = All Levels Enabled
Table 84. SourceMem (1B)
Bit
1514131211109876543210
0000000000000000
Table 85. RMem (1C)
Bit
1514131211109876543210
0000000000000000
Editor Commands
Table 86. System Config (1D)
Bit
1514131211109876543210
0000000000000000
Table 87. Suite Prefs (1E)
Bit
1514131211109876543210
00000000000XXXX0
Opt 1
No Options are currently defined.Opt 2
Opt 3
Opt 4
Table 88. User Prefs (1F)
Bit
1514131211109876543210
00000000000XXXX0
No Options are currently defined.Opt 2
Switcher Products — Protocols Manual81
Opt 1
Opt 3
Opt 4
Section 2 — Editor Protocol
Save and Load Status (6D and ED) Commands
Effects Addresses
The switcher will respond with a Status Response message on receipt of a
Status Request command. The status code reflects the current state of file
operations.
Table 89. Save and Load Status Commands
Function Byte CountEffects AddressCommand CodeMessage
Status Request02EX6DNone
Status Response04EXEDStatus (2bytes)
Valid effects addresses for the Save and Load Status command are defined
in
Tab le 90. (This is new code generated for Kalypso and Zodiak systems.)
Table 90. Effects Addresses - Save and Load Status Command
Effects Address Assignment
0BAll E-MEM Levels
1BSource Mem
1CRMem
1DSystem Config
1ESuite Prefs
1FUser Prefs
Status Message
Valid Status code for the Save and Load commands are defined in Tab le 91.
(This is new code generated for Kalypso and Zodiak systems.)
Table 91. Status Codes - Save and Load
Status Message
0Idle
1Error
2Loading
3Saving
82Switcher Products — Protocols Manual
Timeline Control (4E, 4F, CE, and CF) Commands
The Timeline Control commands allow the editor to manipulate a specified
effect’s timeline. The controlling device may read the current position,
write a new position, or trim the current position by a specified amount. All
positions or trims are measured as a field count. The switcher’s response to
the Read Timeline command is the Set Timeline command.
Table 92. Timeline Control Commands
Function
Read Timeline Time (1)02EX4ENone
Set Timeline Time (2)
Trim Timeline Time (2)
Run Timeline (2)
Byte
Count
06EXCE4 byte value
08FFCEValue + 2 byte bit mask
08FECEValue + 2 byte bit mask Kalypso format
06EXCF4 byte value
08FFCFTrim value + 2 byte bit mask
08FECFTrim value + 2 byte bit mask Kalypso format
06EX4F4 byte value
08FF4FSpeed value + 2 byte bit mask
08FE4FSpeed value + 2 byte bit mask Kalypso format
Effects
Address
Command
Code
Editor Commands
ssage
Me
Kalypso Effects Addresses
Valid effects addresses used by Kalypso systems for the Timeline Control
commands are defined in Tab le 65.
Table 93. Kalypso Effects Addresses – Timeline Control commands
New effects address assignment associated with Kalypso type 2-byte Bit-Mask.
Assignment
Master Timeline (all
enabled levels)
All specified levels in
the Bit-Mask
Effects
Address
E0PGM-PSTSecondary Partition
Miscellaneous3
E7
Miscellaneous4
a
b
E8
E9Miscellaneous5
Kalypso Code
EAMiscellaneous6
EBMiscellaneous7
ECDPM
EDStill Store A
EEStill Store B
EFStill Store C
Assignment
Switcher Products — Protocols Manual83
Section 2 — Editor Protocol
4000 Bit-Mask Format
The two-byte bit mask allows the editor to specify any combination of
effects addresses 00 through 7FF. The LSB (bit 0) represents the first
address, and bit 10 represents the DPM 4 address. The top bits are “don't
care.” This format is used with the FF Effects Address.
Table 94. 4000 Type Effects Addresses - Byte Format
Bit
1514131211109876543210
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
DSK (Zodiak Only)
Miscellaneous (MISC)
DPM 1
PGM-PST
Kalypso Bit-Mask Format
The two-byte bit mask used by Kalypso systems allows the editor to specify
any combination of effects addresses 00 through 7FFF. The LSB (bit 0) rep
-
84Switcher Products — Protocols Manual
Editor Commands
resents the first address, and bit 14 represents the Still Store C address. The
4 bit is “don't care.” This format is used with the FE Effects Address.
Table 95. Kalypso Effects Addresses - Byte Format
Bit
1514131211109876543210
PGM-PST Mix
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
Miscellaneous (MISC) 1
Miscellaneous (MISC) 2
Miscellaneous (MISC) 3
Miscellaneous (MISC) 4
Miscellaneous (MISC) 5
Miscellaneous (MISC) 6
Miscellaneous (MISC) 7
DPM
Still Store A
Still Store B
Still Store C
Zodiak Bit-Mask Format
The two-byte bit mask used by Zodiak systems allows the editor to specify
any combination of effects addresses 00 through 7FFF. The LSB (bit 0) rep
-
Switcher Products — Protocols Manual85
Section 2 — Editor Protocol
resents the first address, and bit 12 represents the DPM address. This
format is used with the FE Effects Address.
Table 96. Zodiak Effects Addresses Byte Format
Bit
1514131211109876543210
Mix/Effects 1
Mix/Effects 2
Mix/Effects 3
DSK
Miscellaneous (MISC) 1
Miscellaneous (MISC) 2
Miscellaneous (MISC) 3
PGM-PST Mix
DPM
Data Field Format
All time data (field count) and speed data is specified to be binary data in
S15.16 format. The lower two bytes specify a fractional field value. The
topmost bit is the sign bit and the next 15 bits represent whole field values.
Note the following examples.
+1 field : 00 01 00 00
– 1 field : FF FF 00 00
+1 (unity) speed : 00 01 00 00
– 1/2 speed : FF FF 80 00
Setting the Run Time for a speed of zero is the same as sending a STOP command.
The editor is allowed to write a negative field count or to trim in a negative
direction which results in a negative field count. In either case the result is
to display a negative timecode in the menu and position the video at the 1st
86Switcher Products — Protocols Manual
Editor Commands
keyframe. The video will remain at that position until one of the following
occurs:
•The effect runs long enough for the field count to pass zero
•The editor successively trims the field count in a positive direction until
zero is passed
•The editor writes a positive, non-zero field count to the switcher
NoteKalypso and Zodiak currently ignore the speed parameter in the Timeline Run
command. Run always causes the effect to run at +100% speed.
Examples
08 0C CF FF FF 00 00 07 80 ==> Trim all DPM levels by –1 field.
08 0C CE 00 1E 00 00 00 0E ==> Set the 3 M/Es to 30 fields.
08 0C 4F 00 01 00 00 00 0E ==> Run the effects for all 3 M/Es.
Switcher Products — Protocols Manual87
Section 2 — Editor Protocol
All Stop (F2) Command
The ALL STOP command is issued to set all or a specific part of the
switcher to a known state. The command causes the following functions to
occur:
•Any ongoing KEY MIX is stopped,
•An ongoing AUTO TRAN (Transition) is stopped,
•An ongoing EFF DIS (Effects Dissolve) is stopped,
•An ongoing SEQ (Sequence) is stopped,
•The lever arms are set to a limit,
•The transition type is set to MIX,
•The transition mode is set to BKGD,
•All Keys are removed,
•Stop Effect Run, and
•The Source selections remain unchanged.
Table 97. All Stop Command
Function Byte Count Effects AddressCommand CodeMessage
Write03EXF2FF
Kalypso Effects Addresses
Valid effects addresses used by Kalypso systems for the All Stop command
are defined in
Table 98. Kalypso Effects Addresses - All Stop Command
New effects address assignment associated with Kalypso.
Tab le 98.
a
a
a
a
88Switcher Products — Protocols Manual
Zodiak Effects Addresses
Valid effects addresses used by Zodiak systems for the All Stop command
are defined in
Table 99. Zodiak Effects Addresses - All Stop Command
Effects Address Assignment
00 PGM-PST
01Mix/Effects 1
02Mix/Effects 2
03Mix/Effects 3
04DSK
0BAll Levels
Tab le 99.
Editor Commands
Switcher Products — Protocols Manual89
Section 2 — Editor Protocol
Software Version (6C and EC) Commands
Request Software Version02EX6CNone
Software Version Response04H to FFhEXECModel number, version string
Effects Address
The switcher will respond with a Software Version Response message on
receipt of a Request Software Version command. The response will be
returned two fields after the request is received. The Version string is ASCII
Text of th e fo rm at:
<major>.<minor>.<patch><A or B><release>, e.g., 2.0.0B19
Table 100. Software Version Commands
Function Byte Count Effects AddressCommand CodeMessage
The valid Effects Address for the Software Version command is defined in
Ta bl e 101.
Table 101. Effects Address - Software Version Command
Effects Address Assignment
Model Number
Model numbers are as defined in Tab le 102.
Table 102. Model Numbers
Model Number Meaning
00 PGM-PST
013000-2
023000-3
034000-2A
044000-2B
054000-3
062200-2
072200-2i
08Kalypso 3-M/E + PP
09Kalypso 2-M/E + PP
0AKalypso 1-M/E + PP
0BKalypso 0-M/E + PP
0CZodiak 2.5 -M/E
0DZodiak 3-M/E
Version Number
The software Version number comprises a Major Version number, a Minor
Version number, and two fix-level parameters. The Major Version and
90Switcher Products — Protocols Manual
Minor Version are each represented as a two-byte ASCII character, and the
two fix-level parameters are each represented as a one-byte ASCII char
acter.
Switcher Model Features
The following is a brief summary of the features associated with the various
switcher models.
This section describes the Peripheral Bus II (PBus II) serial protocol and
related commands, which can be used to allow a master (controlling)
device to control external (controlled) devices that support the protocol.
Controlling devices able to use the Peripheral Bus II protocol include the
Kalypso Video Production Center and the Zodiak Digital Production
Switcher. In this section these devices are referred to by the generic term
“switcher”. Earlier Grass Valley Group switchers (Model 200, 250, 3000,
4000, and 2200) also use the Peripheral Bus II protocol, acting as controlling
devices. However, some very early Grass Valley Group switchers (Model
300, 1600/1680) use a different protocol (called the Peripheral protocol),
which is incompatible with the Peripheral Bus II protocol described here.
Section 3
Overview
System Description
Programming a controlled device to communicate properly with the
switcher requires a thorough understanding of the protocol and the avail
able commands. Controlled devices may be programmed to support different sets of the available PBus II commands.
The Peripheral Bus II system consists of a single controlling device (the
switcher) and up to 24 peripheral controlled devices connected to a serial
Figure 7). The controlling device communicates with controlled
bus (
devices via a serial connection. All devices on the bus must operate at the
same baud rate, parity, and communication standard (RS-485).
-
Switcher Products — Protocols Manual93
Section 3 — Peripheral Bus II Protocol
Serial
Port
XMIT
RCV
Controlling Device
(Switcher)
XMIT
RCV
XMIT
RCV
8063_02_05_r3
Peripherial 0
VTR
Peripheral Device Video Outputs to Switcher Video Inputs
Controlled Devices
NOTE: Controlling Device RCV and
Controlled Device XMIT are only used for
Read, Write, and Query Commands, which
are not used by Kalypso or Zodiak systems.
RS-485 Peripheral Bus
Peripherial 1
Char Gen
XMIT
RCV
XMIT
RCV
Peripherial 22
DPM
Peripherial 23
Still Store
Serial
Port
Serial
Port
Serial
Port
Serial
Port
Figure 7. Peripheral Bus System Block Diagram Example
E-MEM System Interaction (Learns, Recalls)
The switcher can be set to address a particular controlled device, such as a
character generator, during E-MEM learns and recalls. When a switcher
effect is learned into an E-MEM register, the switcher sends a command
over the peripheral bus to the controlled device telling it to learn its current
status into a memory register of its own. Later, when the same switcher
E-MEM register is recalled, the switcher will send a command over the
peripheral bus to instruct the controlled device to recall the effect that it
previously had stored in its memory.
The controlled device should store the learned information in nonvolatile
memory. The switcher does not keep track of what has been learned on the
controlled device, and does not ask for controlled device learn or recall
information.
For key framed effects in a controlled device (like a DPM), learning the
current status may not be sufficient. In this case, the controlled device
should associate its current effect number with the register number sent in
94Switcher Products — Protocols Manual
Overview
the Learn command. When a Recall command is received, the controlled
device should look up the effect that was active at the time and recall that
effect. For example, if the controlling device sends a learn 5 command and
the controlled device's current effect is 37, then when the controlling device
sends a recall 5 command, the controlled device should recall its effect 37.
The cross reference between PBus
device's effect number should be retained in nonvolatile memory and some
provision for saving this information to disk for transport to another
system should be provided.
Grass Valley Group switchers use PBus II effect numbers 0 through 99, corresponding to the switcher's E-MEM register numbers 0 through 99. The
controlled device must provide storage for all 100 PBus
when interfacing to a Grass Valley Group switcher. Grass Valley Group
switchers never send learn or recall commands for register numbers above
99 (0x63).
Some controlled devices (e.g., Kaleidoscope) run effect timelines as part of
the Recall command. We do not recommend this practice, or at least sug
gests a user preference be available on the controlled device to control
running the effect on Recall. In general, the controlled device should first
recall an effect and prepare to run it when a Recall is received. A Trigger
should then be employed to cause the effect to run.
II register numbers and the controlled
II effect numbers
-
Trigger Interactions
The switcher can also be set to send triggers to controlled devices over the
peripheral bus. Triggers act like GPIs. They can trigger any controlled
device function that has been programmed for control via the peripheral
bus. The switcher can send a trigger to a controlled device when it recalls
an effect (the trigger is on the first keyframe), or the trigger can be placed
anywhere on the switcher effect’s timeline to send triggers during the
running of an effect.
It is important to understand the purpose of triggers relative to recalls. A
peripheral bus Recall can be sent when the controlling device recalls one of
its effects. The Recall instructs the controlled device to recall an appropriate
effect or return to a specific state. Triggers are intended to cause some
activity to occur within the controlled device.
An example of using recalls and triggers is having a controlled device that
feeds video to the switcher select an output signal when a specific switcher
effect is recalled (a Recall command is sent out the peripheral bus), and then
change its output at specific times when the switcher runs the effect (send
Trigger commands at specific keyframes).
The Peripheral Bus II protocol does not define or recommend which function is associated with a specific trigger number. It is recommended that a
Digital Video Effects system implement Run, Rewind, and Stop triggers at
Switcher Products — Protocols Manual95
Section 3 — Peripheral Bus II Protocol
minimum. A Digital Disk Recorder should implement Play, Stop and Cue
at minimum, and use Recall commands to load clips.
Command Timing and Frame Accuracy
It is possible to use the Peripheral Bus II protocol for frame accurate control,
but this is not guaranteed under all conditions. PBus
connect and the commands are long. It is possible to saturate the serial link
with commands especially at lower baud rates, making the link non-deter
ministic. For example, a recall command is 11 characters. At 9600 baud this
supports only 16 characters per field, sufficient for only one command per
field. At 38.4 Kb, there is link bandwidth to support 64 characters per field,
enough to send three recall and three trigger commands.
It is the responsibility of the controlling device to output commands at an
appropriate time so the controlled devices can respond in sync with other
activities of the system. The controlling device should provide and specify
deterministic responses to triggers and recalls.
II uses a serial inter-
-
Protocol Description
The Peripheral Bus II protocol provides a means for orderly communication by a controlling device to up to 24 peripheral controlled devices on a
serial data bus.
Hardware Interface
Communications follow the RS-485 standard at 9.6, 19.2, 38.4 k, 56.7, 76.8
Kb, or 115.2 KBaud with even, odd, or no parity. RS-485 is a derivative of
RS-422 that specifies controlled devices must disable their transmit drivers
when not sending information. This is required because all controlled
devices share a common connection (
RS-422 may be used instead of RS-485 only if a single line is connected from
the controlling device's transmitter to all the controlled devices’ receivers
and the controlled devices' transmitter lines are completely disconnected.
This configuration prevents the controlling device from receiving informa
tion from the controlled devices. This disrupts Read, Write, and Query
functions, but these commands are not sent by Kalypso or Zodiak systems
(of Grass Valley Group switchers, only the Model 200/250 uses these com
mands).
Figure 7 on page 94).
-
-
All devices connected to the peripheral bus must be set to exactly the same
communications standard. The recommended settings are 38.K baud and
no parity.
96Switcher Products — Protocols Manual
Command Structure
The Peripheral Bus II protocol includes six types of messages: Three are
essential for a fully functional PBus
•Learn,
•Recall,
•Trigger,
•Query (optional)
•Read (optional), and
•Write (optional).
The peripheral interface command set has been constructed from ASCII
characters. This permits the commands to be displayed on a conventional
computer terminal. Additionally, the ASCII characters used for command
codes are different from those used for data in order to simplify the con
trolled device software and help prevent coding errors.
Each message sent out on the peripheral bus has a three part format. A
unique ASCII character serving as a keyword is sent first, additional data
follows, and finally a carriage return terminates the message. In order to
eliminate problems caused by interleaving spaces and line feeds that may
have been inserted for readability, those characters are ignored in message
parsing by both the controlling and controlled devices.
Protocol Description
II interface, and three are optional.
-
Twenty-three ASCII characters comprise the complete set of characters
available. Seven ASCII characters represent keywords, and 16 characters
represent data (
Table 104. Peripheral Bus II ASCII Characters
CategoryCharacterHexDescription
Keyword
Data
Tab le 104).
L4CLearn
R52Recall
T54Trigger
Q51Query
S53Read
W57Write and Read Response
<carriage return>0DEnd or Message
1-930-39
A-F41-46
Switcher Products — Protocols Manual97
Section 3 — Peripheral Bus II Protocol
Decimal Controlled Device
Numbers 0-23
Binary Map Indicating
Which of the
Devices Are Selected
Hexadecimal Numbers Equivalent
to Bindary Map Numbers
6-Byte ASCII Character Field
Equivalent to Hexadecimal Numbers
Identifying Selected Devices
23 22 21 20
1 1 1 0
E
45
19 18 17 16
0 1 0 0
4
34
15 14 13 12
0 0 1 0
2
32
11 10 9 8
0 0 0 0
0
30
7 6 5 4
0 0 0 1
1
31
3 2 1 0
1 0 0 0
8
38
Controlled Device Identification
Because the controlling device communicates with multiple controlled
devices, a mechanism is required to specify which device a particular
command is intended for. It is also desirable to be able to send the same
command to multiple devices simultaneously.
PBus II commands employ a six-byte field of ASCII characters (dddddd)
representing six hex numbers to specify which controlled devices are to
receive the command. The six hex numbers represent a binary 24 bit map.
A set bit (1) in the map means the controlled device assigned to that bit
number is included, and a (0) bit means the controlled device is not
included (see
Figure 8. Controlled Device Selection Data Interpretation
Figure 8).
98Switcher Products — Protocols Manual
Commands
Learn Command
Commands
NoteThe Kalypso and Zodiak systems use the Learn, Recall, and Trigger com-
mands. The Query, Read, and Write commands and responses are not used
by these systems, but command descriptions for them are included in this
document for completeness.
The controlling device sends a Learn command to a selected controlled
device to cause the controlled device to “learn” its current status or mul
tiple keyframe effect. The controlled device’s response to the Learn
command should be to store in its own memory whatever data is needed
in order for it to recall its current setup at some later time. No further
response from the controlled device is required.
The format of the Learn command is:
Lddddddrrr<cr>
-
•The first byte is the ASCII keyword for Learn, L (4CH).
•Next a six-byte field of ASCII characters (dddddd) acts as a bit map that
identifies which controlled devices are included in the Learn (see
Figure 8 on page 98).
•Next the controlling device sends a three-byte field of ASCII characters
(rrr) representing a hex number that identifies the hex register number
(000H-FFFH) from which the controlling device will recall the learned
effect.
•A carriage return ends the message.
Switcher Products — Protocols Manual99
Section 3 — Peripheral Bus II Protocol
Recall Command
The controlling device sends a Recall command to a selected controlled
device to cause the controlled device to “recall” a previously stored effect.
The controlling device would send the Recall command some time in
advance of the vertical interval in which the controlling device will actually
perform the Recall. The controlled device’s response to the Recall
command should be to recall from its own memory the specified effect. No
further response from the controlled device is required.
The format for a Recall command is:
Rddddddrrr<cr>
•The first byte is the ASCII keyword for Recall, R (52H).
•Next a six-byte field of ASCII characters (dddddd) acts as a bit map that
identifies which controlled devices are included in the Recall (see
Figure 8 on page 98).
•Next the controlling device sends a three-byte field of ASCII characters
(rrr) representing a hex number that identifies the hex register number
from which the controlling device will recall the learned effect
(000H-FFFH).
•A carriage return ends the message.
100Switcher Products — Protocols Manual
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.