Home
Categories
Dictionary
Download
Project Details
Changes Log
Who We Are
FAQ
License

ARINC661 protocol



The ARINC 661 protocol specifies the content of the runtime Buffers sent between the ARINC 661 Client (UA) and the ARINC 661 Server (CDS).

Structure of a runtime Buffer

Runtime Block Type Size (bits) Comment
A661_BEGIN_BLOCK uchar 8 Start keyword
Layer Ident uchar 8 Layer ID
Context Number ushort 16 The Context Number is both included in the UA => CDS and CDS=> UA messages blocks, which allows to control the validity of the data sent by UA or received by CDS. How the UA and CDS handle this value is implementation dependant
Block Size ulong 32 Specifies the size of all the blocks, including the header, in bytes
{Runtime commands}+ N/A {32}+ the command structure (the payload of the runtime buffer, see Types of runtime commands)
A661_END_BLOCK uchar 8 End keyword
Unused Pad N/A 24 Padding to be aligned on 32 bits

Types of runtime commands

From UA to CDS

The communication from UA to CDS contain:
  • Layer Requests
  • Widgets SetParameters

Widgets SetParameters

Runtime Block Type Size (bits) Comment
A661_CMD_SET_PARAMETER ushort 16 Start keyword for opening the SetParameter structure
Command Size ushort 16 Specifies the size of the SetParameter block, including the header, in bytes
Widget Ident ushort 16 The Widget ID in the Layer
Unused Pad N/A 16 Padding to be aligned on 32 bits
{ParameterStructures}+ N/A {32}+ Set of parameter structures with the associated values, depending on the message. See Parameter Structure

Parameter Structures

A Parameter Structure allows to send one or several parameters from the UA to the CDS. All structures contains at least the Parameter identification (depending on which parameter is sent to the widget), and one or several values depending on which content is sent. For example, sending a A661_VISIBLE uchar parameter to a widget will be performed through the following structure:
Runtime Block Type Size (bits) Value
Parameter Identification ushort 16 A661_VISIBLE
Parameter value uchar 8 1 (for true) or 0 (for false)
Unused Pad N/A 8 Padding to be aligned on 32 bits

From CDS to UA

The communication from CDS to UA contain:
  • Layer Notifications
  • Error Notifications
  • Widgets Events

Widgets Event Structure

A Widget Event Structure allows to send one event from the CDS to the UA. All structures contains at least the Event identification and one or several values depending on which content is sent.

For J661, The definition of the structure for one event for a widget is defined through the meta-definition (see event structure meta-definition).

Runtime Block Type Size (bits) Comment
A661_NOTIFY_WIDGET_EVENT ushort 16 Start keyword for opening the Widget event structure
Command Size ushort 16 Specifies the size of the Widget event block, including the header, in bytes
Widget Ident ushort 16 The Widget ID in the Layer
Event Origin ushort 16 Identifier of the input device from wich originates the event. This is implementation dependant[1]
In J661, the value is defined as followed: 0 if the Window manager is not a SuperLayer Window Manager, else it will be the widget ID associated with the cockpit element associated with the target
EventStructure N/A {32}+ The Event structure with the associated values, depending on the event

Parameter Structure

A Parameter Structure allows to send one or several parameters from the UA to the CDS. All structures contains at least the Parameter identification (depending on which parameter is sent to the widget), and one or several values depending on which content is sent.

For J661, The definition of the structure for one parameter or message for a widget is defined through the meta-definition (see parameter structure meta-definition).

For example, sending a A661_VISIBLE uchar parameter to a widget will be performed through the following structure:
Runtime Block Type Size (bits) Value
Parameter Identification ushort 16 A661_VISIBLE
Parameter value uchar 8 1 (for true) or 0 (for false)
Unused Pad N/A 8 Padding to be aligned on 32 bits

Specifiyng the exchanges between the UA and the CDS

The ARINC 661 protocol specifies the parameters, Layer requests, Layer notifications, and widget events which can be exchanged between the UA and the CDS. For example for a GPRectangle, all the following SetParameters are possible:
  • Visible: the Rectangle visibility
  • PosX: the Rectangle X position
  • PosY: the Rectangle Y position
  • SizeX: the Rectangle width
  • SizeY: the Rectangle height
  • StyleSet: the Rectangle color index
  • FillIndex: the Rectangle fill index
The UACDS Interface appendix allows to specify in an XML file the exchanges between a UA and a CDS (which will be a subset of those which are possible considering the ARINC 661 protocol).

Notes

  1. ^ In J661, the value is defined as followed: 0 if the Window manager is not a SuperLayer Window Manager, else it will be the widget ID associated with the cockpit element associated with the target

See also


Categories: arinc661 | user

Copyright 2016-2017 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v2 licence