284
DATaRec ® 4 Series PROGRAMMING MANUAL Version 1.49 Issue: March 4, 2020 DATaRec ® 4 Series High-Speed Digital Data Acquisition System Safran Data Systems GmbH AEROSAFETY & TECHNOLOGY Telemetry & Telecommunications - HEIM TechnologiePark Friedrich-Ebert-Straße D-51429 Bergisch Gladbach Germany Tel.: +49 (0) 2204 84 41 00 Fax: +49 (0) 2204 84 41 99 Documentation no. HD5704031149

DATaRec 4 Series

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DATaRec 4 Series

DATaRec® 4 Series

PROGRAMMING MANUAL

Version 1.49

Issue: March 4, 2020

DATaRec® 4 Series

High-Speed Digital Data Acquisition System

Safran Data Systems GmbH

AEROSAFETY & TECHNOLOGY

Telemetry & Telecommunications - HEIM

TechnologiePark

Friedrich-Ebert-Straße

D-51429 Bergisch Gladbach

Germany

Tel.: +49 (0) 2204 84 41 00

Fax: +49 (0) 2204 84 41 99

Documentation no. HD5704031149

Page 2: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-2

Table of Content Table of Content................................................................................................................................................... 1-2

1 General Information ................................................................................................................................... 1-8

1.1 Manual Release Notes ....................................................................................................................... 1-8

1.2 How to Use this Manual .................................................................................................................. 1-14

1.3 Overview ......................................................................................................................................... 1-14

1.4 See also ........................................................................................................................................... 1-14

2 SCSI Access ............................................................................................................................................... 2-1

2.1 Introduction ....................................................................................................................................... 2-1

2.2 Basic Concepts .................................................................................................................................. 2-1

2.2.1 Data Collection Method shall be supported by the LINK ....................................................... 2-2

2.3 Commands ........................................................................................................................................ 2-3

2.3.1 Summary ................................................................................................................................. 2-3

2.3.2 Command Details .................................................................................................................... 2-3

2.3.3 Pre-Execution Checks ............................................................................................................. 2-3

2.3.4 INQUIRY Command (12h) ..................................................................................................... 2-4

2.3.5 RECEIVE Command (08h) ..................................................................................................... 2-8

2.3.6 REQUEST SENSE Command (03h) ....................................................................................... 2-9

2.3.7 Sense Keys and Additional Sense Codes ............................................................................... 2-10

2.3.8 SEND Command (0Ah) ........................................................................................................ 2-12

2.3.9 TEST UNIT READY Command (00h) ................................................................................. 2-13

3 DATaRec® 4 Data Format ......................................................................................................................... 3-1

3.1 Common Packet Elements ................................................................................................................ 3-1

3.1.1 General Packet Structure ......................................................................................................... 3-1

3.1.2 Packet Header .......................................................................................................................... 3-5

3.2 Time Data Packets, Format 1 ............................................................................................................ 3-9

3.2.1 Time Packet Channel Specific Data ...................................................................................... 3-10

3.2.2 Time Packet Body ................................................................................................................. 3-11

3.3 Ethernet Data Packets, Format 0 ..................................................................................................... 3-11

3.4 Analog Data Packets, Format 1 ....................................................................................................... 3-13

3.4.1 Analog Packet Channel Specific Data ................................................................................... 3-14

3.4.2 Analog Samples ..................................................................................................................... 3-16

3.5 Computer Generated Data Packets .................................................................................................. 3-19

3.5.1 Computer Generated Data Packets Format 0, User Defined ................................................. 3-20

3.5.2 DATaRec® 4 Computer Generated Data .............................................................................. 3-20

3.5.3 General Structures ................................................................................................................. 3-20

3.6 Message Data Packets ..................................................................................................................... 3-21

3.6.1 Generic Message Data Packet format .................................................................................... 3-21

3.6.2 CAN Message format ............................................................................................................ 3-24

3.6.3 Flex Ray Message format ...................................................................................................... 3-24

3.6.4 STANAG 3910 Message Format .......................................................................................... 3-25

3.6.5 Parallel Data Message Format ............................................................................................... 3-28

3.6.6 HDLC Data Format ............................................................................................................... 3-29

3.6.7 Fibre Channel Message Format ............................................................................................... 3-1

Page 3: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-3

3.6.8 AFDX Message Format ........................................................................................................... 3-1

4 The DATaRec® 4 Remote Commands ...................................................................................................... 4-3

4.1 Binary Structures as Remote Commands .......................................................................................... 4-3

4.2 DATaRec® 4 Binary Messages ........................................................................................................ 4-3

4.2.1 OID Usage ............................................................................................................................... 4-4

4.2.2 Information Header ................................................................................................................. 4-4

4.3 Information Data ............................................................................................................................... 4-5

4.3.1 Used Notation .......................................................................................................................... 4-6

4.3.2 Predefined Data Types ............................................................................................................ 4-6

4.3.3 Channel Status Bit Words...................................................................................................... 4-23

4.3.4 Error Reporting ...................................................................................................................... 4-27

4.3.5 Broadcast Messages ............................................................................................................... 4-28

4.3.6 Configuration Information ..................................................................................................... 4-29

4.3.7 Module Configuration ........................................................................................................... 4-29

4.3.8 Link Module Parameters ....................................................................................................... 4-31

4.3.9 Module Parameters ................................................................................................................ 4-39

4.3.10 Channel Parameters ............................................................................................................... 4-50

4.3.11 System Commands .............................................................................................................. 4-108

4.3.12 User Annotation Data .......................................................................................................... 4-123

4.3.13 System Annotation Data ...................................................................................................... 4-124

4.3.14 Data Stream Definitions ...................................................................................................... 4-126

4.3.15 Environmental Measurement Data ...................................................................................... 4-128

4.3.16 Channel Status and Measurement ........................................................................................ 4-130

4.3.17 Status and Measurement Setup Information ........................................................................ 4-136

4.3.18 General Behavior of the System in Case of Errors .............................................................. 4-137

4.3.19 Link-Module/Data-Module Status and Measurement ......................................................... 4-137

4.3.20 Calibration Execution .......................................................................................................... 4-138

4.3.21 Calibration Information ....................................................................................................... 4-138

4.3.22 Correcting Analog Data Based on TEDS Information ........................................................ 4-139

4.3.23 AutoZero Execution (SGU9 & MFHB6V only) .................................................................. 4-140

4.3.24 Data Flow Control ............................................................................................................... 4-141

4.3.25 Front-End Replay Control ................................................................................................... 4-141

4.3.26 Stand-Alone Record, Erase and Delete Control .................................................................. 4-143

4.3.27 Stand-Alone Replay Control ............................................................................................... 4-149

4.3.28 Stand-Alone Status .............................................................................................................. 4-150

4.3.29 Stand-Alone File Functions ................................................................................................. 4-152

4.3.30 Recorder Status Auto-Reporting Function .......................................................................... 4-155

4.3.31 Telemetry Downlink Measurements and On-Board Recorder Status .................................. 4-158

4.3.32 Write File ............................................................................................................................. 4-162

4.3.33 Auto Ranging Fuction ......................................................................................................... 4-163

5 Synthesized Modules .................................................................................................................................. 5-1

5.1 Ethernet packet recording with ETH software module (MDR only) ................................................ 5-1

5.2 Soft UART Module ........................................................................................................................... 5-1

6 IRIG-106 Chapter 6 Remote Commands.................................................................................................... 6-1

Page 4: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-4

6.1 General Description .......................................................................................................................... 6-1

6.2 Differences of “Telemetry Standard RCC Document 106-09, Chapter 6” ....................................... 6-2

6.2.1 .DECLASSIFY ........................................................................................................................ 6-3

6.2.2 .DUB ....................................................................................................................................... 6-3

6.2.3 .FILES ..................................................................................................................................... 6-3

6.2.4 .LASTEVENT ......................................................................................................................... 6-3

6.2.5 .PUBLISH ............................................................................................................................... 6-3

6.2.6 .PLAY...................................................................................................................................... 6-4

6.2.7 .RECORD ................................................................................................................................ 6-4

6.2.8 .SETUP .................................................................................................................................... 6-4

6.2.9 .ZDS_RESTORE ..................................................................................................................... 6-4

6.2.10 .TMATS .................................................................................................................................. 6-4

6.2.11 Overview .TMATS and .SETUP ............................................................................................. 6-5

6.2.12 .ZDS_UDPFS .......................................................................................................................... 6-6

6.2.13 .ZDS_REMTIME .................................................................................................................... 6-8

6.2.14 .ZDS_AUTOZERO ................................................................................................................. 6-8

6.2.15 .ZDS_SHUNTCAL ................................................................................................................. 6-8

6.2.16 .ZDS_LIST_USER_DATA ..................................................................................................... 6-9

6.2.17 .ZDS_PWRCTRL .................................................................................................................... 6-9

6.3 Irig106 Remote Commands Error Codes .......................................................................................... 6-9

7 Indexing Method ........................................................................................................................................ 7-1

7.1 General Description .......................................................................................................................... 7-1

7.2 IRIG-106 Chapter 10 Event Packets ................................................................................................. 7-1

7.2.1 Event Types ............................................................................................................................. 7-1

7.2.2 Event Priority .......................................................................................................................... 7-2

7.2.3 Event Mode ............................................................................................................................. 7-2

7.2.4 IRIG-106 Chapter 6 .EVENT Remote Command ................................................................... 7-2

7.2.5 Structure of IRIG-106 Chapter 10 Event Packets .................................................................... 7-2

7.2.6 Start/Stop Event Mode Operation on MDR ............................................................................. 7-3

7.3 IRIG-106 Chapter 10 Index Packets ................................................................................................. 7-5

7.3.1 Node Index Packets ................................................................................................................. 7-5

7.3.2 Root Index Packets .................................................................................................................. 7-7

8 Gigabit Ethernet Interface .......................................................................................................................... 8-1

8.1 General Description .......................................................................................................................... 8-1

8.2 Addressing ........................................................................................................................................ 8-1

8.3 Big-Endian ........................................................................................................................................ 8-1

8.4 Web Server........................................................................................................................................ 8-1

8.4.1 Java Applet D4Recorder .......................................................................................................... 8-1

8.5 Ethernet Remote Control Interface ................................................................................................... 8-2

8.6 Front-End Data Access Interface via TCP/IP ................................................................................... 8-2

8.7 UDP Front-End Data Access Interface ............................................................................................. 8-2

8.7.1 Start Front-End Data Server via UDP Message ....................................................................... 8-2

8.7.2 Stop Front-End Data Server via UDP Message ....................................................................... 8-4

8.7.3 Start Front-End Data Server with Flush Front-End Buffers via UDP Message....................... 8-4

Page 5: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-5

8.8 Recorded File Access Interface via UDP .......................................................................................... 8-5

8.8.2 Control Recorded File Server via UDP Message .................................................................... 8-6

8.8.3 Stop Recorded File Server via UDP ...................................................................................... 8-10

9 Configurable Contact Remote Interface ..................................................................................................... 9-1

9.1 Configurations ................................................................................................................................... 9-1

9.2 Pin Definitions .................................................................................................................................. 9-1

9.2.1 DATaRec® 4 Link Module ..................................................................................................... 9-1

9.2.2 MDR ........................................................................................................................................ 9-1

9.2.3 Pin Out ..................................................................................................................................... 9-1

10 LED Color Codes ..................................................................................................................................... 10-1

10.1 Link Module LEDs ......................................................................................................................... 10-1

10.2 General Rules for Modules ............................................................................................................. 10-1

10.3 Power-On Self Test ......................................................................................................................... 10-1

10.4 The special cases for the modules ................................................................................................... 10-1

11 How to Start a Playback ........................................................................................................................... 11-1

11.1 How to Start a Front-End Playback................................................................................................. 11-1

11.1.1 The Simple Method ............................................................................................................... 11-1

11.1.2 The PC Controlled Method.................................................................................................... 11-1

11.2 How to Start a Stand-Alone Playback ............................................................................................. 11-1

12 How to Flush the Internal Circular Data Buffer ....................................................................................... 12-1

13 Brief Description SNMP .......................................................................................................................... 13-1

13.1 Files on the Target........................................................................................................................... 13-1

13.1.1 /lib/libdl.so.2 .......................................................................................................................... 13-1

13.1.2 /usr/local/share/snmp/snmpd.conf ......................................................................................... 13-1

13.1.3 /usr/local/sbin/snmp ............................................................................................................... 13-1

13.2 Accessing SNMP ............................................................................................................................ 13-1

13.3 Using a MIB browser ...................................................................................................................... 13-1

13.4 Command Line Tools ...................................................................................................................... 13-2

13.5 Debugging ....................................................................................................................................... 13-2

13.6 Supported SNMP Versions ............................................................................................................. 13-2

13.7 Specified and implemented objects ................................................................................................. 13-2

13.7.1 Manufacturer ......................................................................................................................... 13-2

13.7.2 Title ....................................................................................................................................... 13-3

13.7.3 Type ....................................................................................................................................... 13-3

13.7.4 Software Version ................................................................................................................... 13-3

13.7.5 Hardware Version .................................................................................................................. 13-3

13.7.6 Serial Number ........................................................................................................................ 13-3

13.7.7 System Up Time .................................................................................................................... 13-4

13.7.8 Status ..................................................................................................................................... 13-4

13.7.9 OID System Manufacturer..................................................................................................... 13-4

13.7.10 Reset ...................................................................................................................................... 13-4

13.7.11 Reboot ................................................................................................................................... 13-4

13.8 Manufacturer specific ..................................................................................................................... 13-5

13.8.1 MediaPartitionTable .............................................................................................................. 13-5

Page 6: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-6

13.8.2 Fields of the partition table .................................................................................................... 13-5

13.8.3 MediaCapacity ....................................................................................................................... 13-7

13.8.4 MediaRemainingCapacity ..................................................................................................... 13-7

13.8.5 MediaCountOfDrives ............................................................................................................ 13-7

13.8.6 MediaCountOfVolumes ........................................................................................................ 13-7

13.8.7 MediaFileID .......................................................................................................................... 13-8

13.8.8 MediaRemainingPercent ....................................................................................................... 13-8

13.8.9 MediaFileTable...................................................................................................................... 13-8

13.8.10 Fields of the File Table .......................................................................................................... 13-8

13.8.11 MediaFixPartitionTable ......................................................................................................... 13-9

13.8.12 Fields of the partition table .................................................................................................. 13-10

13.8.13 SizeFixPartitionTable .......................................................................................................... 13-12

13.8.14 PartitionRefreshCycle .......................................................................................................... 13-12

13.8.15 FileRefreshCycle ................................................................................................................. 13-12

13.8.16 AutorunInfo ......................................................................................................................... 13-12

13.8.17 StatusStandAlone ................................................................................................................ 13-12

13.8.18 StatusSystemTableStatus ..................................................................................................... 13-12

13.8.19 Fields of the StatusTable ..................................................................................................... 13-13

13.8.20 StartRecord .......................................................................................................................... 13-15

13.8.21 StartPlay .............................................................................................................................. 13-15

13.8.22 Stop ...................................................................................................................................... 13-15

13.8.23 PlayFile ................................................................................................................................ 13-15

13.8.24 PlayFileID ........................................................................................................................... 13-16

13.8.25 PlayStartTime ...................................................................................................................... 13-16

13.8.26 PlayStopTime ...................................................................................................................... 13-16

13.9 Channels Status via SNMP ........................................................................................................... 13-16

14 RCC Telemetry Standard IRIG 106 Version Numbers ............................................................................ 14-1

14.1 Table of IRIG-106 Version Numbers.............................................................................................. 14-1

15 Tables ....................................................................................................................................................... 15-1

15.1 Component Identification Codes ..................................................................................................... 15-1

16 Special Features for Advanced Users ....................................................................................................... 16-1

16.1 Auto-Start Function......................................................................................................................... 16-1

16.1.1 Auto-Start from Media .......................................................................................................... 16-1

16.1.2 Auto-Start from Flash File System ........................................................................................ 16-1

17 Built-In Tests (BIT) in the DATaRec® 4 and MDR Recorder Family .................................................... 17-1

17.1 PBIT (Power-On Build-In Test) ...................................................................................................... 17-1

17.1.1 DATaRec® 4 LED and Interface Self Test ........................................................................... 17-1

17.1.2 MDR LED and Module Specific Self Test ............................................................................ 17-1

17.2 CBIT (Continuous Built-In Test) .................................................................................................... 17-1

17.2.1 Media Self Test...................................................................................................................... 17-2

17.2.2 MDR Power Supply Self Test ............................................................................................... 17-2

17.3 IBIT (Initiated Built-In Test) .......................................................................................................... 17-2

17.3.1 IBIT via MDR Front Panel .................................................................................................... 17-3

18 RPM Signals ............................................................................................................................................. 18-4

Page 7: DATaRec 4 Series

DATaRec-4 Programming Manual Table of Content

Page 1-7

Page 8: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-8

1 General Information

1.1 Manual Release Notes Release 1.49 2020-03-04

• Updated Video Status • TMATS version 17 added • Simultaneomus UDP Play feature added to the UDP File Server

Release 1.48 2019-01-14

• Extend Event Packet description with AutoZero and ShuntCalibration

Release 1.47 2019-01-10

• Better wording at the Module and Channels Config description (see 4.3.7)

Release 1.46 2018-11-16

• Added Dot command .ZDS_PWRCTRL • MTIME NTP client parameter enabled • MTIME IRIG DC input and strict IRIG DOY time flags • MVCR SDI4 module and channel parameters • MANAP module parameters • MANA OUT channel parameters • Analog channel status fix ICP Power Bit

Release 1.45 2018-03-19

• New IRIG106 dot command .ZDS_LIST_USER_DATA • All IRIG-106 references changed to IRIG-106-09

Release 1.44 2017-11-06

• Cross-reference to Environmental Measurement Data in Chapter 3.5.3 corrected • Chapter “Telemetry Downlink Measurements and On-Board Recorder Status“ is added

Release 1.43 2017-09-19

• Cross-reference Channel Status and Measurement in 4.3.30 Recorder Status Auto-Reporting Function corrected

• Video Channel Status and Measurements updated

Release 1.42 2017-09-13

• Updated Environmental Measurement Data description • Extended contact remote mode 3 (MDR NVG) by “NVG Mode On” • Table of IRIG-106 version numbers extended by IRIG-106 version 15 and 17 • Data type version extended by IRIG-106 version 15 and 17 • GIM282: Auto Ranging Function is added • Extended with the new last_ext_time_source_id and last_ext_stamp_source_id bytes • The time channel vendor specific bits and the 'flags' are also updated • The top priority sources listing in the time channel parameters was extended with the non

warning/warning IRIG versions

Release 1.41 2017-04-04

• Added Fibre Channel Parameters • Updated description of the Fibre Channel Message Format • Updated description of Link Modul parameter tmats_ver • Fibre channel status and measurement added

Page 9: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-9

• Modified contact remote mode 7 (MDR SADR), “BIT Status” exchanged by “Time Source Locked”

• Updated to Link Module parameter feedback_options bit word • Updated IRIG-106 Chapter 6 Remote Commands general description (added

.ZDS_AUTOZERO and .ZDS_SHUNTCAL to supported commands table) • Updated timestatus32 channel status bit word • Chapter 18 description of the RPM Data Format

Release 1.40 2016-11-21

• Fibre Channel data format added •

Notes:

1 – Before firmware version 3.06 (DATaRec-4: DIC6, DEBU, MIC6, DIC24, DIC24Plus, GIM282) and firmware version 3.30.17 (MDR: MANA4/6) only DS2430A TEDS memory chip is supported. From firmware version 3.06 and 3.00.17 the following TEDS memory chips are supported: DS2406, DS2430A, DS2431, DS2433 and DS28EC20. 2 - If DS2406, DS2431, DS2433 or DS28EC20 TEDS chip is connected than only the 8 bytes Factory ID and the first 40 bytes of memory are reported because of the limited size of the message. (The complete memory of DS2430A chip is available with this message.) 3 – Command is obsolete! Use TEDS Sensor Information Extended command

instead of it!

• TEDS Sensor Information Extended added • HDLC data format added

Release 1.39 2016-09-05

• Description of Write File command is added • GIM282: Module and Channel Parameters are corrected , new parameters are added • GIM282: description of Arbitrary Wave file download is added • Added MFHB6V module and MSGB channel parameters • Added Dot commands .ZDS_AUTOZERO and .ZDS_SHUNTCAL • Added Contact Remote Mode “Strain Gage” • Updated Link Module Parameters (reftime_synch_options, fallback_tmo) • Extend note fractional sampling rate • Removed exciation channel parameters • Added exciation to module parameters MANA6 • Added module paramters MANA4 • Updated MTIME parameters: introduced mdr_gps_platform_model. removed ‘DSLM-

only’ from playonly_outputs • Clarified information about the actual_time and play_time messages

Release 1.38 2015-12-14

• Added Low Power bit to General Warning bits of Recorder health status • Module Slot Information added to componentid32 list

Release 1.37 2015-11-03

• Added MTIME time_flags bit for selecting old tuning mode • Extended “Time source validation” with new handling of PPS cable removal • Modified time packet format description where only a single source is allowed

Release 1.36 2015-10-28

• Added MANA4/6, change MANA12, added fractional sampling rate description • Added excitation channel parameters • Added description for Variance reported in the Time Input Status • Updated footnote in Contact Remote Pin Definitions regarding NVG Brightness Control • Added missing definitions for time channel status bits 19-21 • Added missing definitions for HSD4ChTimeParam (NTP and PTP)

Page 10: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-10

• Added Extended UDP Front-End Data Server Control (IDC_UDPB_EXT_PARAMETERS)

Release 1.35 2015-08-19

• Added description of link module parameter clshdn_mode • Renamed Contact Remote Mode “Extended 3” to “MDR SADR” and modified it to LMCO

needs • TEDS111 analog data correction method is described • IDC_ETH_STATISTICS for factory testing

Release 1.34 2014-07-25

• Some health bits added and corrected • Current volume file system format added to the Stand-Alone Status • New Time channel parameters time source priority added

Release 1.33 2014-04-30

• Updated MDR Power Supply self test in chapter BIT • Dot command .ZDS_RESTORE <n> added • GIM282: Module and Channel Parameters are added • GIM282: Module Type, Module Main Revision, Channel Type are added

Release 1.32 2014-04-01

• MMDSCT12, MMDSCO6 and MMDSC12 channel parameters added • MANA12 module, channels, parameters added • Status and Measurement of an Analog Channel extended for MANA12 RPM channels • System annotation group IDs extended • “Ethernet packet recording with ETH software module (MDR only)” moved to chapter 5 • New Soft UART module description • New chapter 5 inserted. All further chapter shift by one • New chapter BIT

Release 1.31 2013-10-14

• Improvement Channel Status via SNMP • TRM100, TRM200 and TRM300 parameters added • Status and Measurement message of OUT6 is extended: input range of the recorded signal

and output range actally used for replay are added (see the Chapter Status and Measurement of an Analog Channel)

Release 1.30 2013-08-26

• VCR100 and MRG100 Channel Parameter: fixed some wrong field widths • Description of the SNMP protocol moved into this document • PCM filter parameters added • MC10T channel parameters added • ETH100 module parameters added, ETH100 channel parameters extended • New Binary Message IDC_SAVE_SET_LIST • New Binary Message IDC_POWER_ON_SAVE_SET • New Binary Message IDC_EVENT_INFO • New calibration feature: analog modules are collecting calibration commands and

executing them in one shot (see Note 2 in Chapter Start Calibration with parameter passing) • MARR16, MUAR6, MAMU, MEMU, MANA8, MANA8A, MANA16, MUSM16, MSTG,

MCAN, MDSC32, MPAR, MVCR1,2,3,4,5 added, and their parameters are updated • New op_mode added to IDC_UDPB_PARAMETERS • New bit added in IDC_UDPB_PARAMETERS and IDC_UDP_FILE_SERVER • MVCR1,2,3,4,5 module parameter added • New Link Module Parameter “default_fs” • New chapter “Special Features for Advanced Users” added

Release 1.29 2012-12-18

• Two new bit added in the Stand-Alone Status to indicate the running UDP servers

Page 11: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-11

• New optional parameter B<n> added for the .ZDS_UDPFS (UDP file server) dot command

Release 1.28 2012-12-15

• Corrected Layout of MRG100 parameters (3 PCM definitions shift as three reserved words where missing in the table)

• Added description of ‘data streams’ – IDC_STREAM_DEFINITION • .PUBLISH extended by the Interface (ifr) parameter • IDC_UDPB_PARAMETERS command extended by the Interface (ifr) parameter • IDC_UDP_FILE_SERVER command extended by the Interface (ifr) parameter

Release 1.27 2012-09-06

• MIC6 Module and Channel parameters are added • IRIG-106 Chapter 6 Remote Command .ZDS_REMTIME

Release 1.26 2012-07-15

• Stand-Alone Recording Trigger Function • UDP file server bit rate mode

Release 1.25 2012-06-28

• Added link module parameter event_mode • Description of Start/Stop Event Mode Operation for MDR • Introduced Save Set Load Control to MCSR contact mode on Inputs 2, 3 and 4 • Added EOM (End Of Media) indication to Extended 1 contact mode on Output 6 • Graph improved to explain the .TMATS and .SETUP commands • Bug fix at IDC_UDP_FILE_SERVER in the op_mode bit description • STANAG 3910 data format added

Release 1.24 2012-03-02

• Added link module parameters media_almost_full_val and media_almost_full_unit • Corrected table references in Chapter 3.6 • New UDP front-end data server parameter added (tmats_interval) • New recorded file server control added • IDC_ERROR_CLEAR added • Graph added to explain the .TMATS and .SETUP commands • System Annotation Data description added

Release 1.23 2011-11-10

• Added link module parameter analog_master_clock • Updated link module parameters ser2mode and contact_mode • Updated environmental measurement definitions • Recorder, CAN and FlexRay Channel Status bit definitions (incl. General Warning) • Updated definitions for ASM and GPS Channel status bits • Node Index Packets limits • Unlocking of MDR/AA300 front panel via front panel • Front panel lock mode can be saved into a save_set • Table of the different IRIG Version Numbers • Link Module parameter max_rec_file_size_div description improvement

Release 1.22 2011-07-06 • Bug-fix IDC_MODUL_STATUS layout

• .LASTEVENT command added • New event source added (EID_DISCRETE_OPEN) • New graph is added to describe the restore function after boot and if a new media is found • Environmental Measurement packet description • New Link Module parameters op_mode2 Bit 2

Release 1.21 2011-02-25

• New contact mode NVG (Night Vision Goggles) for MDR

Page 12: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-12

• New link module parameters new link module type LMR and cooling fan exists • Link Module LEDs description • Link Module parameters extended with Serial 2 mode

Release 1.20 2011-01-19 • Start-up action at power on, action at power failure

• ETHSOFT – module notes • IRIG106 Ethernet Data Packets, Format 0 • IDC_SEARCH_TIME_DATE was missing • New IDC_FILE_DELETE_BY_NAME • General Behavior of the System in Case of Errors (Drawing)

Release 1.19 2010-12-13

• Related to link module Firmware 2.45 • Loop back transit delay changed from 900 ms to 2000 ms • How to perform flush • How to start a Stand-Alone and a Front-End Playback

Release 1.18 2010-11-30 • Corrected the LED color codes for the ETH100 module

• LMR contact remote connector added • Link Module Parameters op_mode Bit 6 and Bit 7 • Link Module Parameters op_mode2 Bit 0 • IRIG-106 Chapter 6 ‘dot’ Commands • Indexing Method

Release 1.17 2010-04-23 • Search Remote Commands

• Front panel lock • IDC_GET_FIRST_FILE and IDC_GET_NEXT_FILE • IDC_LOOP_BACK • IDC_LINK_MODULE_PARAMETERS new bits in enabled_interfaces parameter • IDC_LINK_MODULE_PARAMETERS new bit in op_mode parameter ITL (implied time

lock) • New revision_id field in all parameters • IDC_LINK_MODULE_PARAMETERS new max_rec_file_size_div parameter • Extended IDC_TIME_STATUS • Updated documentation for IDC_TIME_CHANNEL_PARAMETERS (Features

implemented by newer firmware) Release 1.16 2009-07-13

• User Annotation Data • DATaRec-3 Data Format and Remote Command Chapters removed • Search Remote Commands

Release 1.15 2009-06-26 • SGU9 module added

• UDP IRIG-106 chapter 10.3.11.1 broadcast server • New Chapter about the Gigabit Ethernet interface

Release 1.14 2009-06-04 • More info at Restore Parameter Set

• UAP100, ARP100 and ASM100 module added • LMF1G added • New Error Report Reason • New Link Module parameters

Release 1.13 2008-11-20

• Save/restore parameter set to/from media

Page 13: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-13

• Reset remote command Release 1.12 November 2008 • Link Module configuration option extended.

• Fan control remote commands added Release 1.11 August 2008

• Save and restore save sets • Link Module configuration options extended • Stand-Alone Status added • Parameter Structures are updated • CAN4 module packet structure is added • Remote commands for stand-alone record added • New network interface chapter added

Release 1.04 April 2007

• MRG100 parameters added • Information Header and Information Data structures are defined in more details • Error report structures defined • Data Flow control messages are added

Release 1.03 28 March 2007

• Calibration Event Packet added Release 1.02 February 2007 • Chapter DATaRec

® 4 Messages Extended

Release 1.01 January 2007

• SCSI commands are added • DATaRec

® 4 Data Format added

Release 1.0 October 2006

• Initial Release

Page 14: DATaRec 4 Series

DATaRec-4 Programming Manual General Information

Page 1-14

1.2 How to Use this Manual Please note the following symbols that will be used throughout this manual.

Note:

The bubble indicates important details. Equipment damage or malfunction may result if they are ignored.

Tip:

Special remarks are marked with a bulb.

1.3 Overview The DATaRec

® 4 Programming Manual gives information helping the user to understand and use the

DATaRec® 4 system in it advanced level. It is written for the technicians or engineers who want to remote

control or getting live data from the system with own application software. Therefore it contains information about the remote control commands to control the system via the Ethernet, IEEE1394, USB and the SAS interface as well as the DATaRec

® 4 data format.

The described procedures are applicable to the following types of DATaRec recorders:

• DATaRec® 4 Family (inc. MDR)

1.4 See also The document PM_D4VSpecTMATS_EN_YYMMDD_HD5704031VVV gives a description of vendor specific TMATS.

Page 15: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-1

2 SCSI Access

2.1 Introduction This chapter describes the communication primitives used to access the DATaRec

® 4 devices over SCSI

protocol over IEEE 1394 (FireWire), USB or SATA/SAS physical layer.

The DATaRec® 4 systems are using different LUNs for different type access:

• LUN 0 is used for direct data access (real time) from the inputs. This operation is called “front-end mode”.

• LUN 1 is used for remote control. The same remote control commands, which can be used on the network remote control port, can be issued through the SCSI port over LUN 1.

2.2 Basic Concepts Basic concept for USB, IEEE 1394 (FireWire), SATA/SAS and NET data transfer with LINK or Single modules

DATaRec® 4 Communication types:

MODULE ---- INTERN ---- LINK

Known features, limitations:

• The LINK cannot filter or adjust packet contents.

• Variable length data transfer synchronized to the packet headers.

• The modules cannot generate any final ‘user type’ packets, because the sequence number must be incrementing.

MODULE ---- USB ---- PC, GSS

Known features, limitations:

• Read cannot return with data and error (restricted by windows).

• The maximum transfer is 64Kbyte.

• The modules must generate ‘user type’ packets containing the configuration information.

LINK ---- USB ---- PC, GSS

Known features, limitations:

• Read cannot return with data and error (restricted by windows).

• The maximum transfer size is determined by the host adapter. (> 512Kbyte).

• The LINK must generate ‘user type’ packets containing the configuration information.

LINK ---- FIREWIRE ---- PC, GSS

Known features, limitations:

• Read cannot return with less data than the requested one (restricted by windows).

• The LINK must generate ‘user type’ packets containing the configuration information.

• The retuned length of the FireWire target has to equal to the requested one (windows FireWire limit). The FireWire target must implement this request sense when there is not enough data available. The others shall return with less data except when there is similar limitation to the FireWire one on the host side. The FireWire host must implement a bit rate dependent ‘length strategy’ to minimize the transfer overheads when small data requests are used but the data rate is relative high or reduce the waiting time to get available data when large data request are used and the data rate is relative low. The number of available BYTES returns in the request-sense additional fields.

LINK ---- SAS ---- PC, GSS

Known features, limitations:

• The LINK must generate ‘user type’ packets containing the configuration information.

LINK ---- BCAST ---- PC, GSS

Known features, limitations:

Page 16: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-2

• Already defined. The broadcast data header doesn’t contain the length information – it is in the UDP header.

• The LINK must generate ‘user type’ packets containing the configuration information.

LINK ---- TCP/IP ---- PC, GSS

Known features, limitations:

• The maximum transfer size 64KByte.

• The LINK must generate ‘user type’ packets containing the configuration information.

LINK ---- INTERN ---- D4-MEDIA

Known features, limitations:

• The LINK must generate ‘user type’ packets containing the configuration information.

• Packet based variable length transfer or fix block transfer with last block handling.

• The module shall implement external USB variable length data transfer based on windows SPTI protocol (n-times 32-bit boundary). Parallel extern USB and internal LINK communication are not guaranteed.

The LINK NET TCP/IP and NET broadcasting (simulated) are already available.

The Fire-wire shall be the next available. The USB, Fire-wire, and SAS variable length data transfer based on windows SPTI protocol (n-times 32-bit boundary). For 1394 adapters 64-bit structures are faster – odd 32-bit word transfers may limit speed. The module USB and LINK SPTI must have same concept of communication and stream contents.

Successful answer to an SPTI host read request returns with the requested amount of the data. The host must check the length of returned data. The returned length can be less then the requested one (except the Fire-wire!!!).

2.2.1 Data Collection Method shall be supported by the LINK

Long-time front-end operation 2.2.1.1

The average of the incoming data rate is less then average of the data capture rate of the host (GSS, PC). Short time buffer overruns shall be supported and internal buffers (LINKs and Modules) are not enough to compensate either the ‘extreme’ peeks on incoming data rate or ‘leak’ of host latency. These cases are ‘deterministic’.

The best overrun handling:

Reject the complete internal buffer (for example LINK 1GBytes, current DICx series 6MBytes) and keep running the data collection.

Long-time media recording 2.2.1.2

The average of the incoming data rate is less then average of the data recording rate of the host (LINK, GSS, PC). Short time buffer overruns shall be supported and internal buffers (LINKs and Modules) are not enough to compensate either the ‘extreme’ peeks on incoming data rate or ‘leak’ of host latency. These cases are ‘random’ and the probability of the occurrences is definitely less then previous measurement type.

The best overrun handling:

When there is a buffer overrun predicted on the interface buffers then an appropriate part (not the complete buffer!) of the oldest data are rejected.

Sort time high rate front-end operation 2.2.1.3

The incoming data rate is definitely higher then the specified long time data rate of the LINK ~100Mbytes, or GSS 250MByte/s.

The best overrun handling:

Keep the buffer and suspend the data collection until the host is able to read all of the data.

At the end of all data read and End Of DATA request sense will be returned.

Selection between the methods 2.2.1.4

Three methods can be selected (remote parameter) to handle the data buffer overrun:

Page 17: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-3

There is a settable time parameter, which will determine how many data should be kept in case of overflow. The value can be 0 (full delete, method 1) or infinite (keep everything, method 3).

The Data Overflow flag in the Packet header must be set in the next new data block – to be able to find easily the overflow position.

2.3 Commands This chapter explains all supported SCSI commands.

2.3.1 Summary

The following table is a summary of the commands showing the operation code and whether the command is supported or not:

Opcode CDB Len Command Name

00h 6 TEST UNIT READY

03h 6 REQUEST SENSE

08h 6 RECEIVE

0Ah 6 SEND

12h 6 INQUIRY

Table 1 Supported SCSI Commands

2.3.2 Command Details

The command descriptions are listed in alphabetical order of command name. Each command is described briefly. This is followed by a list of pre-execution checks which are described below. The Command Descriptor Block (CDB) is then given, with details of the various parameter bits and fields.

In all Command Descriptor Blocks, bits 7-5 of byte 1 are the Logical Unit Number (LUN) field, and should be cleared to zero as recommended in the SCSI-2 standard.

2.3.3 Pre-Execution Checks

Before executing the commands the system checks different conditions:

• Checks on the command sent by the host. The fixed parameters and the valid range of the variable parameters will be checked. Also checks for dependencies of different fields can be carried out.

• Checks to ensure that there is no asynchronous status pending for a command sent earlier from the host. In this case a DEFERRED ERROR will be reported.

The checks are described in alphabetical order. The usual order of execution is:

• Reservation

• Deferred Error

• Illegal Field, Bad LUN, Parameter List

• Unit Attention

Bad LUN Check This check that the logical number field is set to 0. If not, the following request sense information is returned:

Sense Key Additional Sense Code / Qualifier

5h: ILLEGAL REQUEST 25 00h: Logical unit not supported

Deferred Error Check A deferred error is generated when an immediate report fails after the report has been returned. The check looks to see if a deferred error exists for the host which sent the command, and this error was not already reported. If more than one deferred error happened, always the oldest be returned (because most probably that was the real reason of the other errors also). In case of error a CHECK CONDITION status returned. The sense data for the command is set to DEFERRED ERROR.

Page 18: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-4

Illegal Field Check This checks that the host has set legal values for each fields of the CDB. If a field has been set to an illegal value, the following status is returned:

Sense Key Additional Sense Code / Qualifier

5h: ILLEGAL REQUEST 24 00:h Invalid Field in CDB

The recorder scans the data in the Command Descriptor Block from byte 0 to byte n, from bit 0 to bit 7, and sets the bad field to the first field where error encountered. If the bad field is contained in a continuous group of bits or bytes always the beginning of that group will be indicated even though the error may be later in that group.

Parameter List Check This check that the host has set legal values for each fields of the parameter list. If a field has been set to an illegal value, the following status is returned:

Sense Key Additional Sense Code / Qualifier

5h: ILLEGAL REQUEST 26 00h: Invalid Field in Parameters

The recorder scans the parameter list from byte 0 to byte n, from bit 0 to bit 7, and sets the bad field to the first field where error encountered. If the bad field is contained in a continuous group of bits or bytes always the beginning of that group will be indicated even though the error may be later in that group.

Unit Attention Check This checks if any of the following UNIT ATTENTION conditions exist:

Sense Key Additional Sense Code / Qualifier

6h: UNIT ATTENTION 29 00h: Power-On or reset occurred

2.3.4 INQUIRY Command (12h)

The INQUIRY command tells the recorder to return configuration information to the host.

The INQUIRY command returns normally, even if the requested LUN is not available (but the inquiry data returned will contain a flag stating that the LUN is not supported):

Bit

Byte 7 6 5 4 3 2 1 0

0 Operation Code (12h)

1 Logical Unit Number Reserved (0) EVPD

2 Page Code

3 Reserved (0)

4 Allocation Length

5 Reserved (0) Flag Link

Table 2 INQUIRY (12h) CDB

Logical Unit Number Specifies the device Logical Unit Number the command is addressing.

0 Selected device is the Data Access

1 Selected device id the Remote Control

2 Selected device is the Media Access

EVPD: Enable Vital Product Data 0 Standard inquiry data is returned.

1 Vital Product data is returned specified by the Page Code field.

Page 19: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-5

Page Code If the EVPD bit is zero, the Page Code field must be zero.

The following Vital Product Data Pages are supported:

0x00 Supported Vital Product Data Pages

0x80 Unit Serial Number Page

0x83 Device Indentification Page

Allocation Length This specifies the maximum number of bytes, that the initiator has allocated for the returned inquiry data. The drive will return allocation length bytes of data or less. It is not an error to specify an allocation length of zero, in this case no inquiry data will be returned.

The following inquiry data is returned by the recorder:

Bit

Byte 7 6 5 4 3 2 1 0

0 Peripheral Qualifier Peripheral Device Type

1 RMB (0) Device Type Modifier (0)

2 ISO Version (0) ECMA Version (0) ANSI-Approved Version (2)

3 Reserved (0) Response Data Format (2)

4 Additional Length (36)

5 Reserved (0)

6 Reserved (0)

7 Rel A (0) W32 (0) W16 Sync (1) Link (0) Rsv (0) CQ (0) SR (0)

8 to 15 Vendor Identification (“HEIM “)

16 to 31 Product Identification

32 to 35 Product Firmware Revision

36 to 47 Serial Number

48 to 55 Factory Name

Table 3 INQUIRY Response Data

Peripheral Qualifier Only two qualifiers are used by the DATaRec recorders: 0 A device exists at the LUN. 3 The target is not capable of supporting a physical drive on this

logical unit. The Peripheral Device Type field is also set to 1F.

Peripheral Device Type The following device types may be returned:

3 Processor Device (returned for LUN 0,1)

0,1,14 Direct or Sequential Access Device (returned for LUN 2)

31 Unknown or no device (for all other LUN)

RMB: Removable Media 0 Indicates that the recorder is not a removable media.

Device Type Qualifier 0 This is a 7 bit vendor defined field, not used.

ISO version 0 The drive does not necessarily comply with the ISO version of SCSI.

ECMA version 0 The drive does not necessarily comply with the ECMA version of SCSI.

ANSI version 2 The drive complies with the ANSI version of SCSI-2.

Page 20: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-6

Response Data Format 2 The Inquiry Data format complies with the ANSI version of SCSI-2.

Additional Length The Additional Length field specifies the length in bytes of the rest of the Inquiry data block. (The length is not adjusted, if the allocation length is to small to hold the complete inquiry data.

RelA: Relative Addressing 0 Not supported

W32: 32 bit Data Transfer 0 Not supported

W16: 16 bit Data Transfer Depending on the hardware and firmware release of the recorder the following values may be returned:

0 Not supported

1 16 bit wide data transfer is supported

Sync: Synchronous Data

Transfer 1 The recorder supports synchronous data transfer.

Link: Linked Commands 0 The recorder does not supports linked commands.

CQ: Command Queuing 0 Not supported

SR: Soft Reset 0 The drive responds to the reset condition with hard reset.

Vendor Identification The field contains 8 bytes of ASCII data identifying the vendor of the product (“Heim” for Safran Data Systems GmbH formerly named Heim Systems GmbH). This and the following ASCII fields are left-aligned with the unused bytes at the end of the fields filled with space (´ ´, 20h) character.

Product Identification The field contains 16 bytes of ASCII data identifying the product name padded to 16 bytes by blanks. The product names are detailed in 15.1.

Product Firmware Revision The field contains 4 bytes of ASCII data identifying the product firmware revision. The first two digits are the mayor version number, the second two digits are the minor version number. So “0201” will be returned for Version 2.01.

Serial Number The field contains 12 bytes of ASCII data identifying the Serial Number of the Unit.

Factory Name (variable characters): DIC6, CHG6, DEBU, DIC24, LMF2, LMF4, LMF8, etc.

Bit

Byte 7 6 5 4 3 2 1 0

0 Peripheral Qualifier Peripheral Device Type

1 Page Code (0)

2 Reserved (0)

3 Page Length (n-3)

4 0x00

5 0x80

n 0x83

Table 4 INQUIRY Vital Data Data: Supported Vital Product Pages

Bit

Page 21: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-7

Byte 7 6 5 4 3 2 1 0

0 Peripheral Qualifier Peripheral Device Type

1 Page Code (0x80)

2 Reserved (0)

3 Page Length (n-3)

4 0x00

5 0x80

n 0x83

Table 5 INQUIRY Vital Data Data Product Serial Number Page

Bit

Byte 7 6 5 4 3 2 1 0

0 Peripheral Qualifier Peripheral Device Type

1 Page Code (0x80)

2 Reserved (0)

3 Page Length (n-3)

Product Serial Number (ASCII data)

n

Table 6 INQUIRY Vital Data Data ASCII Information Page

Bit

Byte 7 6 5 4 3 2 1 0

0 Peripheral Qualifier Peripheral Device Type

1 Page Code (0x83)

2 Reserved (0)

3 Page Length (n-3)

reserved (0) Code Set (2)

reserved (2) Association (1) Identifier Type ( 1 )

reserved ( 0 )

Identifier Length ( n-7 )

n Identifier

Table 7 INQUIRY Vital Data Data Device Identification Page

Identifier Composed string of the Vendor ID, Product Identification, Version Number, Serial Number and Factory Detailed Name (without separation between field, only padded with spaces if the fields are shorter):

Vendor ID: Identical to the standard inquiry Vendor ID (8 characters)

Product Identification: Identical to the standard inquiry Product Identication (16 characters)

Version Number: Identical to the standard inquiry Version (4 character)

Serial Number: Identical to the Vital Unit serial number (12 characters)

Factory Detailed Name (variable characters): DIC6, CHG6, DEBU, DIC24, LMF2, LMF4, LMF8, etc.

Page 22: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-8

2.3.5 RECEIVE Command (08h)

The RECEIVE command transfers data blocks or remote answers from the recorder to the host.

Bit

Byte 7 6 5 4 3 2 1 0

0 Operation Code (08h)

1 Logical Unit Number Reserved (0)

2 msb

3 Allocation Length 4 lsb 5 Reserved (0) Flag Link

Table 8 RECEIVE (08h) CDB

Logical Unit Number Specifies the device Logical Unit Number the command is addressing.

0 Selected device is the Data Access

1 Selected device id the Remote Control

Allocation Length The maximum length of data to be transferred in bytes.

Note: If not enough data is available, a CHECK_CONDITION status will be returned, and the Available Data field will return the maximum available data available. The Additional Sense Code and Qualifier will tell the reason of the data unavailability.

Returned Data

The recorder returns the data in one of two possible formats:

• A Data Block, which contains a DATaRec® 4 data block generated by the input streams of the

recorder with the same length as requested by the Allocation Length. If less data is available, CHECK_CONDITION will be returned. (See the Note at Allocation Length). The DATaRec

® 4 Data

Block format is described in Chapter 3.

• Remote Control Answers: This block contains the answers to remote commands send to the recorder using the SEND command and possibly auto reported values. The format of the Remote Control Answer block is described in Table 9 . The format of the answer string is the same as for the serial line remote control.

Bit

Byte 7 6 5 4 3 2 1 0

0 Version (1) Reserved (0)

1 msb 2 Answer Block Length (n-4)

3 lsb

4

… Remote Answer

n-1

Table 9 Remote Answer Block

Version Identifying the remote block structure version. 0 The DATaRec-3 type max. 512 byte long answer format.

Page 23: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-9

1 The DATaRec® 4 type 24-bit length field.

Answer Block Length The length of the answer string in bytes. The maximum possible value is the Allocation Length specified by the receive command.

Remote Answer The Remote Answer contains the returned ASCII or ASCII embedded birary remote answers along with the CR LF termination characters if they exists.

2.3.6 REQUEST SENSE Command (03h)

The REQUEST SENSE command returns sense data held within the recorder to the host. The recorder clears sense data for the host following the execution of the REQUEST SENSE command for that host:

Bit

Byte 7 6 5 4 3 2 1 0

0 Operation Code (03h)

1 Logical Unit Number Reserved (0)

2 Reserved (0)

3 Reserved (0)

4 Allocation Length

5 Reserved (0) Flag Link

Table 10 REQUEST SENSE (03h) CDB

Allocation Length The maximum amount of sense data in bytes that should be transferred to the host (can be zero). If the allocation length less than the data to be transferred, the rest of the sense data is lost.

The next table shows the format of the data returned for the REQUEST SENSE command. The returned sense information has the following format:

Bit

Byte 7 6 5 4 3 2 1 0

0 Valid Response Code

1 Reserved (0)

2 Reserved (0) Sense Key

3 to 6

Available Data (number of data or remote answer bytes)

4

5

6

7 Additional Sense Length (10)

8 to 11 Reserved (0)

12 Additional Sense Code (ASC)

13 Additional Sense Code Qualifier (ASCQ)

14 Field Replaceable Unit Code

15 SKSV

16 Sense Key Specific

17

Table 11 REQUEST SENSE Data

Valid 0 The valid bit is set to zero to indicate, that the Information field contains information not defined by the SCSI standard.

Response Code 70h Indicates that the error is current, that is, it is associated with the

Page 24: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-10

command for which CHECK CONDITION status has been reported.

71h Indicates that the error is deferred. Deferred error occurs when there is a failure for an operation which was already terminated with GOOD status.

Sense Key Basic classification of the failure type. See 2.3.7 for details of sense keys which can be returned.

Available Data This field contains the number of data or remote answer bytes. Additional Sense Length 10 Specifies the number of additional sense bytes to follow (always

10 Bytes). Additional Sense Code Type of fault reported. See 2.3.7 for details of sense keys which can be

returned. Additional Sense Code

Qualifier More detailed reason for reported fault. See 2.3.7 for details of sense keys which can be returned.

SKSV Sense Key Specific Valid 0 The Sense Key Specific field contains Nonstandard data. 1 Sense Key specific data contains ANSI standard data. See 2.3.7 for details. Sense Key Specific This field carries different information depending on the value of the

Sense Key field. See 2.3.7 for details.

2.3.7 Sense Keys and Additional Sense Codes

This section contains a list of all the sense keys and additional sense codes that the recorder can return. Along with each code is a description of the cause of the sense.

0h: NO SENSE

ASC / ASCQ Description

00 01h

File mark detected (reserved to DATaRec-3) This sense is generated whenever the internal buffer of the unit is flushed and data collection starts again. Causes for this include: The channel setup was changed. Calibration was started.

2h: NOT READY Indicates that the unit being addressed can not be accessed (currently not used).

4h: HARDWARE ERROR Currently not used

5h: ILLEGAL REQUEST Indicates that there was an illegal parameter in the command descriptor block or in the additional parameter list. In this case the SKSV bit is set to one and the Sense Key Specific Portion of the Request Sense contains the Field Pointer as defined by ANSI:

Bit

Byte 7 6 5 4 3 2 1 0

15 SKSV Reserved (0) BPV Bit pointer

16 Field pointer

17

Table 12 Field Pointer Bytes

BPV Bit Pointer Valid 0 The Bit Pointer field is invalid (not used).

1 The Bit Pointer Field is valid. If the SKSV bit is set the BPV bit must be set also.

Bit Pointer Identifies the bit position of the field in error whenever it is a command descriptor or a command parameter block.

Field Pointer Identifies the byte position of the bytes in the command block or in the parameter list where the error was found.

Page 25: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-11

ASC / ASCQ Description

20 00h Invalid command operation code

The drive does not recognize the operation code.

24 00h Invalid field in Command Descriptor Block

An invalid field has been found during the Pre-Execution Checks in the CDB.

25 00h Logical unit not supported

The LUN field contains not supported LUN number.

26 00h Invalid field in the parameter list

An invalid field has been found during the Pre-Execution Checks in the parameter list.

26 01h Parameter not supported

An invalid parameter has been found during the Pre-Execution Checks in the parameter list.

26 02h Parameter value out of range

An invalid parameter value has been found during the Pre-Execution Checks in the parameter list (e.g. not supported data length).

55 00h System Resource failure

The System is not able to perform the operation because not enough resources (memory/bitrate) are available or the operation is forbidden.

6h: UNIT ATTENTION Indicates that some parameters may have changed in the unit (by an other initiator or reset).

ASC / ASCQ Description

29 00h

Power-On, Reset or bus reset occurred

This is set for all hosts after power-on, reset or bus reset has occurred.

9h: VENDOR SPECIFIC Used for sense conditions for which no appropriate code exists in the SCSI standard.

ASC / ASCQ Description

90 01h

Trigger occurred (reserved to DATaRec-3)

A recording was started. The SKSV bit in the Sense Key specific code is set to zero and the remaining 23 bits give the offset o (may be negative) to the block in which the trigger occurred. A negative number indicates that the frame with the trigger event was already lost. Non-negative numbers indicate that the frames must be read before the one with the trigger event.

90 02h

Lost Data Blocks

Some data has been lost between the previous and the current block. The SKSV bit in the Sense Key specific code is set to zero and the remaining 23 bits give the number of lost data blocks. If the exact number of lost blocks is not known to the exact number of lost blocks is not known 0 will be returned in this field. Note: A valid data block will be returned with the command that cause this sense. This is done to give a slow host the chance to see leas some of the data.

90 03h

NOT SUPPORTED TRANSFER LENGTH

The requested transfer length is either larger than the maximum length allowed on the given communication type or the data transfer length is not n x 32 bits. (Please note: Remote may use any byte length transfers).

Page 26: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-12

90 04h

NO DATA AVAILABLE

Either there is no data available or the transfer is temporary not available due to some ‘non-interruptible’ internal activities.

The number of available BYTES returns in the request-sense additional fields with this sense code has no meaning (set to 0).

90 05h

NOT ENOUGH DATA

There is not enough data available. The number of available bytes will be returned in the request-sense additional fields. The next read shall be called with less or equal to the given length, or wait until more data is available.

90 06h

DATA LIMIT RETRY

There is limited amount of data available:

- End of internal buffer (maximum amount of data which can be transferred at with one read) or

- The total available data size is less than the requested.

The number of available BYTES returns in the request-sense additional fields. The next read shall be called with not more than the given length.

90 07h END OF DATA

All available data has already been read.

90 08h

REMOTE COMMAND BUFFER FULL

All Remote Command Buffers are full. First get some remote answers to reduce the amount of full buffers

2.3.8 SEND Command (0Ah)

The SEND command allows to transfer remote control commands or data to be replayed from the host to the recorder.

Bit

Byte 7 6 5 4 3 2 1 0

0 Operation Code (0Ah)

1 Logical Unit Number Reserved (0)

2 msb

3 Transfer Length 4 lsb 5 Reserved (0) Flag Link

Table 13 SEND (0Ah) CDB

Logical Unit Number Specifies the device Logical Unit Number the command is addressing.

0 Selected device is the Data Access

1 Selected device id the Remote Control

Transfer Length The amount of data to be transferred.

The remote commands send with the SEND command should not be preceded by a header. The commands are ASCII control sequences of the same format as defined in the RS 232 Remote Control Commands section.

Page 27: DATaRec 4 Series

DATaRec-4 Programming Manual SCSI Access

Page 2-13

Each Remote Control Command should be terminated by a LF character. It is possible to send more than one remote control command with one SEND command.

The device will return a BUSY status for the SEND command, if its internal buffer does not have enough space for the remote command.

When the SEND command is used to transmit data blocks, the transmitted blocks will be appended to the data queue of the currently active selected replay source (Currently only one replay source is implemented, later the active source can be configured and selected by using the spq remote command)

The command may return BUSY status, if the recorder can not handle the data because the internal data paths are congested. (Retry the command after a short delay in this case). Check condition status and appropriate request sense information will be generated, if the recorder does have no memory or handling of the data is impossible.

2.3.9 TEST UNIT READY Command (00h)

The TEST UNIT READY command checks if the recorder is ready for commands.

Bit

Byte 7 6 5 4 3 2 1 0

0 Operation Code (00h)

1 Logical Unit Number Reserved (0)

2 Reserved (0)

3 Reserved (0)

4 Reserved (0)

5 Reserved (0) Flag Link

Table 14 TEST UNIT READY (00h) CDB

Page 28: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-1

3 DATaRec® 4 Data Format

The DATaRec® 4 data format is based on a world-wise spreading new digital data recording and reproduction

standard (IRIG-106). Instead of referencing to the standard, the used Chapters are copied over into this manual – making DATaRec

® 4 version changes independently possible from the standard changes.

It is otherwise very much similar to the DATaRec-3 data format, with the following main differences:

• Low-Endian data structures – fitting better to the PC environment.

• 32-bit data structures, larger Packet Headers.

• No transfer frame is defined, the Data Packets are following each other continuously.

• 32-bit analog data packet generation is possible.

• The DATaRec® 4 implementation delivers the data from the analog channels with the same bandwidth

in different packets – which makes possible simple channel to channel base processing – independently how many channels are used in the modules.

3.1 Common Packet Elements Data shall have three required parts, a Packet Header, a Packet Body, a Packet Trailer, and an optional part if enabled, a Packet Secondary Header (Packet Secondary Header is currently not used in DATaRec

® 4 data

format). Single or multiple channel recordings will always conform to the structure outlined in Table 15 .

3.1.1 General Packet Structure

A packet has the basic structure shown in Table 16 . Note that the width of the structure is not related to any number of bytes or bits. This table is merely to represent relative packet elements and their placement within the packet. This figure does not depict the bit lengths of each field. Word sizes of 8-bit, 16-bit and 32-bit are used depending on the data type.

To further clarify the packet layout, Table 17 shows the generic packet in a 32-bit, little-endian format, and assumes 16-bit data words and data checksum.

In DATaRec® 4 format the Optional Secondary Packet Header will not be used.

Page 29: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-2

Computer Generated Data Packet,

Format 1 Setup Records

Time Data Packet

Data Packet

Data Packet

Data Packet

Time Data Packet

Data Packet

Packet Sync Pattern

Channel ID

Packet Length

Data Length

Header Version

Sequence Number

Packet Flags

Data Type

Relative Time Counter

Header Checksum

Bit

6

Bit

5

Bit

4

Time

(Least Significant Long Word)

Time

(Most Significant Long Word)

Reserved

Secondary Header Checksum

Channel Specific Data Word

Intra-Packet Time Stamp

(Least Significant Long Word)

Intra-Packet Time Stamp

(Most Significant Long Word)

Intra-Packet Data Header

Packet

Header

Optional

Packet

Secondary

Header

Packet Body

Filler...

Data Checksum

(8 Bit, 16 Bit, 32 Bit, or None)

Packet Trailer

If 0, 48 Bit Relative Time

Counter

If 1, Secondary Header Time

(Bits 3-2)

Bit

7

If 0, Secondary

Header Is Not

Present

If 1, Secondary

Header Is Present

Bit

3

Bit

2

If 00, IRIG106 Ch4 Binary

Weighted 48-Bit Time.

If 01, 10, or 11, Reserved

Bit

1

Bit

0

If 00, No Data Checksum Present.

If 01, 8-Bit Checksum - If 10, 16-Bit Checksum - If 11, 32-Bit Checksum

Bit 7: Indicates

the existence of

the optional

packet

secondary

header.

Bit 6: Indicates

the intra-packet

time stamp time

source.

Bits 3-2: Indicate

the packet

secondary

header time

format.

Bits 1-0: Indicate

the data

checksum

existence.

Must Be 1st Packet in Recording

Must Be 1st Dynamic Packet in Recording

Each Packet Must be Generated within 100 milliseconds when

ever data is available to ensure packets contain less than

100 milliseconds worth of data

Time Data Packet Frequency at Time Code Frame Rate orResolution of Time Format Type

Data Packet

Single or Multiple Channel Recording. Will

always conform to the following:

Table 15 Data Recording Structure.

Page 30: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-3

PACKET SYNC PATTERN

CHANNEL ID

PACKET LENGTH

DATA LENGTH

DATA TYPE VERSION Packet Header

SEQUENCE NUMBER

PACKET FLAGS

DATA TYPE

RELATIVE TIME COUNTER

HEADER CHECKSUM

CHANNEL SPECIFIC DATA

INTRA-PACKET TIME STAMP 1

INTRA-PACKET DATA HEADER 1

DATA 1 Packet Body

:

INTRA-PACKET TIME STAMP n

INTRA-PACKET DATA HEADER n

DATA n

DATA CHECKSUM Packet Trailer

Table 16 General packet format used in DATaRec® 4.

Msb lsb 31 16 15 0

CHANNEL ID PACKET SYNC PATTERN

PACKET LENGTH

DATA LENGTH

DATA TYPE PACKET FLAGS

SEQUENCE NUMBER

DATA TYPE VERSION

Packet Header

RELATIVE TIME COUNTER

HEADER CHECKSUM RELATIVE TIME COUNTER

TIME (LSLW) (Optional)

TIME (MSLW) Packet

SECONDARY HEADER CHECKSUM RESERVED Secondary

Header

CHANNEL SPECIFIC DATA

INTRA-PACKET TIME STAMP 1

INTRA-PACKET TIME STAMP 1

INTRA-PACKET DATA HEADER 1

DATA 1 WORD 2 DATA 1 WORD 1

DATA 1 WORD n :

INTRA-PACKET TIME STAMP 2

INTRA-PACKET TIME STAMP 2

INTRA-PACKET DATA HEADER 2

DATA 2 WORD 2 DATA 2 WORD 1 Packet

DATA 2 WORD n : Body

:

INTRA-PACKET TIME STAMP N

INTRA-PACKET TIME STAMP N

INTRA-PACKET DATA HEADER N

DATA N WORD 2 DATA N WORD 1

DATA N WORD n :

[FILLER]

DATA CHECKSUM Packet Trailer

Table 17 A 32-Bit packet format layout.

Page 31: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-4

Depending on the data type, the size of the Data Checksum can be 16-bits, 32-bits, 8-bits, or left out entirely. For a 32-bit Data Checksum, the packet trailer would be as shown in Table 18 .

msb lsb 7 0

[ FILLER ]

DATA CHECKSUM (LSB)

DATA CHECKSUM Packet Trailer

DATA CHECKSUM

DATA CHECKSUM (MSB)

Table 18 Packet trailer for 32 bit data checksum.

For an 8-bit Data Checksum, the packet trailer would be as shown in Table 19 .

msb lsb 7 0

[ FILLER ] Packet Trailer

DATA CHECKSUM

Table 19 Packet trailer for 8-bit data checksum.

The size of a single Packet may be a maximum of 524,288 bytes as shown in Table 20 . This includes the Packet Header, Packet Body, Packet Trailer, and optional Packet Secondary Header if enabled. The only exception to the packet size limit is the Computer Generated Data Packet, Format 1 Setup Record which may be a maximum of 134,217,728 bytes. Any Packet which requires more than 524,288 bytes may do so by utilizing the packet sequence counter and generating multiple packets. Some packet types allow a single data set to span multiple packets if the data set size or time does not fall under packet maximums. Consult the individual data types for the mechanisms that allow packet data spanning for a given type.

With the exception of Computer Generated Packets all other Packet Generation Times shall be equal to or less than 100 milliseconds as measured by the 10 MHz Relative Time Counter whenever data is available. This requirement ensures that a packet shall contain equal to or less 100 milliseconds worth of data, and that a packet containing any data must be generated equal to or less than 100 milliseconds from the time the first data was placed in the packet. This strategy will assure packet granularity and save bandwidth by not forcing or marking empty/idle packets.

Packets can not contain only filler or can not be idle or empty. All packets that are generated shall contain data.

All reserved bit fields in packet headers or channel specific data words shall be set to zero (0x0).

With the exception of Computer Generated Data Packets all other packets shall have a Stream Commit Time equal to or less than 1,000 milliseconds as measured by the 10 MHz Relative Time Counter contained in the packet header.

PACKET TYPE REQUIRED MAXIMUM

PACKET SIZE

REQUIRED PACKET

LOCATION

Computer Generated Data Packet, Format 1 Setup Record

Yes 134,217,728 bytes First Packet in Recording.

Time Data Packet Yes 524,288 bytes First Dynamic Data Packet Following Setup Record

Packet(s). Reference the Time Data Packet Description for

Page 32: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-5

packet rate.

All other data type packets with the exception of Computer Generated

Data Packet, Format 1 Setup Record, Time Data Packets, and

Computer Generated Data Packet, Format 3 Recording Index (Root

Index)

No 524,288 bytes After First Time Data Packet and before the first Computer Generated Data Packet Format

2, Recording Index (Root Index) if enabled.

Computer Generated Data Packet, Format 3 Recording Index (Root

Index)

Yes, if Recording Events are Enabled.

No, if Recording Events are Disabled.

524,288 bytes If Recording Index Packets are enabled the Root Index Packet Type will be the last packet(s)

in a recording.

Table 20 Packet Requirements

3.1.2 Packet Header

The length of the packet header is fixed at 24 bytes (192-bits). The Packet Header is mandatory and shall consist of the ten fields, positioned contiguously, in the following sequence:

Packet Sync Pattern 3.1.2.1

The Packet Synch Pattern (2 Bytes) contains a static sync value for the every packet. The Packet Sync Pattern value shall be 0xEB25.

Channel ID 3.1.2.2

The Channel ID (2 Bytes) contains a value representing the Packet Channel ID. All channels in a system must have a unique Channel ID for each data source.

Multiplexer Soutrce ID

In a distributed Multiplexer system, a Multiplexer Source ID is used to discern each multiplexer in the system. The Setup Record shall contain a Number of Source Bits recorder attribute (R-x\NSB) to specify the number of most significant bits from the Channel ID that distinguish the Multiplexer Source ID. The remaining least significant bits of the Channel ID field shall be the Channel ID for each data source acquired by the multiplexer.

Reserved Channel ID

Channel ID 0x0 is reserved, and is used to insert computer-generated messages into the composite data stream.

Available Channel IDs

All values not comprising the reserved Channel ID are available.

Note:

For single multiplexer systems: the reserved Channel ID is 0x0000; values 0x0001 thru 0xFFFF are available Channel IDs; Computer Generated Data Packets shall only have a Channel ID of 0x0000; and no other data type can have a Channel ID of 0x0000.

Packet Length 3.1.2.3

The Packet Length (4 Bytes) contain a value representing the length of the entire packet. The value shall be in bytes and is always a multiple of four (bits 1 and 0 shall always be zero). This Packet Length includes the Packet Header, Packet Secondary Header (if enabled), Channel Specific Data, Intra-Packet Headers, Data, Filler and Data Checksum.

Page 33: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-6

Data Length 3.1.2.4

The Data Length (4 Bytes) contains a value representing the valid data length within the packet. This value shall be represented in bytes. Valid data length includes Channel Specific Data, Intra-Packet Data Headers, Intra-Packet Time Stamp(s), and Data but does not include Packet Trailer Filler and Data Checksum.

Data Type Version 3.1.2.5

The Data Type Version (1 Byte) contains a value at or below the release version of standard applied to the data types in Table 21 . The value shall be represented by the following bit patterns:

0x00 = Reserved

0x01 = IRIG106-04

0x02 = IRIG106-05

0x03 = IRIG106-07

0x04 = IRIG 106-09

0x05 = IRIG 106-11

0x06 = IRIG 106-13

0x07 = IRIG 106-15

0x08 = IRIG 106-17

0x09 thru 0xFF = Reserved

The current usage for DATaRec® 4 formats are indicated in Table 21 . See also 14.1 Table of IRIG-106 Version

Numbers

Sequence Number 3.1.2.6

The Sequence Number (1 Byte) contains a value representing the packet sequence number for each Channel ID. This is simply a counter that increments by n + 0x01 to 0xFF for every packet transferred from a particular channel and is not required to start at 0x00 for the first occurrence of a packet for the Channel ID.

Note:

Sequence number counter value for each channel in a recording session will repeat (rollover to 0x00) after the sequence number counter has reached 0xFF.

Each Channel in a Recording shall have its own sequence counter providing a unique Sequence Number for that channel.

Packet Flags 3.1.2.7

The Packet Flags (1 Byte) contain bits representing information on the content and format of the packet(s).

Bit 7: Indicates the presence or absence of the Packet Secondary Header.

0 = Packet Secondary Header is not present. 1 = Packet Secondary Header is present.

Bit 6: Indicates the Intra-Packet Time Stamp Time Source.

0 = Packet Header 48-Bit Relative Time Counter. 1 = Packet Secondary Header Time (Bit 7 must = 1).

Bit 5: Relative Time Counter Sync Error.

0 = No Relative Time Counter sync error. 1 = Relative Time Counter sync error has occurred.

Bit 4: Indicates the Data Overflow Error.

0 = No data overflow. 1 = Data overflow has occurred.

Bits 3-2: Indicate the Packet Secondary Header Time Format.

00 = IRIG 106 Chapter 4 binary weighted 48-bit time format. The two LSB’s of the 64-bit Packet Secondary Header Time and Intra-Packet Time Stamp shall be zero filled.

Page 34: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-7

01 = IEEE-1588 Time format. The Packet Secondary Header Time and each Intra-Packet Time Stamp shall contain a 64-bit timestamp represented in accordance with the Time Representation type as specified by IEEE Std 1588TM-2002. The 32 bits indicating seconds shall be placed into the Most Significant Long Word portion of the secondary header and the 32 bits indicating nanoseconds shall be placed into the Least Significant Long Word portion.

10 = Reserved 11 = Reserved

Bits 1-0: Indicate Data Checksum existence.

00 = No data checksum present 01 = 8-bit data checksum present 10 = 16-bit data checksum present 11 = 32-bit data checksum present

Data Type 3.1.2.8

The Data Type (1 Byte) contains a value representing the type and format of the data. All values not used to define a data type are reserved for future data type growth:

Packet Header

Value Data Type Name Data Type Description

DATaRec® 4

Version

0x00 Computer Generated Data, Format 0 (User Defined) 0x02

0x01 Computer Generated Data, Format 1 (Setup Record) 0x02

0x02 Computer Generated Data, Format 2 (Recording Events) 0x03

0x03 Computer Generated Data, Format 3 (Recording Index) 0x03

0x04 – 0x07 Computer Generated Data, Format 4 – 7 (Reserved for future use) 0x02

0x08 PCM Data, Format 0 (Reserved for future use) 0x02

0x09 PCM Data, Format 1 (IRIG 106 Chapter 4/8) 0x03

0x0A – 0x0F PCM Data, Format 2 – 7 (Reserved for future use) 0x02

0x10 Time Data, Format 0 (Reserved for future use) 0x02

0x11 Time Data, Format 1 (IRIG/GPS/RTC) 0x03

0x12 – 0x17 Time Data, Format 2 – 7 (Reserved for future use) 0x02

0x18 MIL-STD-1553 Data, Format 0 (Reserved for future use) 0x02

0x19 MIL-STD-1553 Data, Format 1 (Mil-Std-1553B Data) 0x03

0x1A MIL-STD-1553 Data, Format 2 (16PP194 Bus) 0x03

0x1B – 0x1F MIL-STD-1553 Data, Format 3 - 7 (Reserved for future use) 0x03

0x20 Analog Data, Format 0 (Reserved for future use) 0x02

0x21 Analog Data, Format 1 (Analog Data) 0x02

0x22 – 0x27 Analog Data, Format 2 – 7 (Reserved for future use) 0x02

0x28 Discrete Data, Format 0 (Reserved for future use) 0x02

0x29 Discrete Data, Format 1 (Discrete Data) 0x02

0x2A – 0x2F Discrete Data, Format 2 – 7 (Reserved for future use) 0x02

0x30 Message Data, Format 0 (Generic Message Data) 0x02

0x31 – 0x37 Message Data, Format 1 – 7 (Reserved for future use) 0x02

0x38 ARINC 429 Data, Format 0 (ARINC429 Data) 0x02

0x39– 0x3F ARINC 429 Data, Format 1 – 7 (Reserved for future use) 0x02

0x40 Video Data, Format 0 (MPEG-2/H.264 Video) 0x03

0x41 Video Data, Format 1 (ISO 13818-1 MPEG-2) 0x02

0x42 Video Data, Format 2 (ISO 14496 MPEG-4 Part 10

AVC/H.264)

0x03

0x43 – 0x47 Video Data, Format 3 – 7 (Reserved for future use) 0x03

0x48 Image Data, Format 0 (Image Data) 0x02

0x49 Image Data, Format 1 (Still Imagery) 0x03

Page 35: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-8

0x4A – 0x4F Image Data, Format 2 – 7 (Reserved for future use) 0x03

0x50 UART Data, Format 0 (UART Data) 0x03

0x51 – 0x57 UART Data, Format 1 – 7 (Reserved for future use) 0x02

0x58 IEEE-1394 Data, Format 0 (IEEE-1394 Transaction) 0x02

0x59 IEEE-1394 Data, Format 1 (IEEE-1394 Physical Layer) 0x03

0x5A – 0x5F IEEE-1394 Data, Format 1 – 7 (Reserved for future use) 0x03

0x60 Parallel Data, Format 0 (Parallel Data) 0x02

0x61 – 0x67 Parallel Data, Format 1 – 7 (Reserved for future use) 0x02

0x68 Ethernet Data, Format 0 (Ethernet Data) 0x03

0x69 – 0x6F Ethernet Data, Format 1 – 7 (Reserved for future use) 0x03

Table 21 Data Types

Relative Time Counter 3.1.2.9

The Relative Time Counter (6 Bytes) contains a value representing the 10MHz Relative Time Counter. This is a free-running 10 MHz binary counter represented by 48-Bits common to all data channels. The counter shall be derived from a 10 MHz internal crystal oscillator and shall remain free running during each recording session.

The applicable data bit to which the 48-bit value applies unless defined in each data type section shall correspond to the first bit of the data in the packet body.

Header Checksum 3.1.2.10

The Header Checksum (2 Bytes) contains a value representing a 16-bit arithmetic sum of all 16-bit words in the header excluding the Header Checksum Word.

Packet Secondary Header (Optional) 3.1.2.11

The length of the Packet Secondary Header is fixed at 12 bytes (96-bits). The Packet Secondary Header is optional and when enabled shall consist of the three fields, positioned contiguously, in the following sequence:

• Time. (8 Bytes) contain the value representing Time in the format indicated by bits 2 and 3 of the Packet Flags (see 3.1.2.7.)

• Reserved. (2 Bytes) are reserved and shall be zero filled.

• Secondary Header Checksum. (2 Bytes) contain a value representing a 16-bit arithmetic sum of all Secondary Header bytes excluding the Secondary Header Checksum Word.

Note:

The Packet Secondary Header is currently not used in DATaRec® 4 format.

Packet Body 3.1.2.12

The format of the data in the packet body is unique to each channel type. Detailed descriptions of the type-specific data formats found in packet bodies are described in subsequent sections of this document.

Channel Specific Data 3.1.2.13

The Channel Specific Data (Variable Bytes) contain the number and contents of the Channel Specific Data field(s) depending on the Data Type field in the Packet Header. Channel Specific Data is mandatory for each data type and channel. The occurrence of Channel Specific Data is once per packet and precedes packet channel data.

Intra-Packet Time Stamp 3.1.2.14

The Intra-Packet Time Stamp (8 Bytes) contain Time in either 48-bit Relative Time Counter format (plus 16 high-order zero bits) or 64-bit absolute format as specified in the Packet Flags in the Packet Header. The Intra-Packet Time Stamps are only mandatory where defined by the data formats.

Page 36: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-9

Intra-Packet Data Header 3.1.2.15

The Intra-Packet Data Header (Variable Bytes) contains additional status and format information pertaining to the data items that follow. The Intra-packet Data Headers are only mandatory where defined by the data formats.

Data 3.1.2.16

The Data (n Bytes) contain valid data from a particular channel as defined within the data formats contained within this standard.

Note:

The Intra-Packet Time Stamp and the Intra-Packet Data Header are collectively called the Intra-Packet Header. In some cases an Intra-Packet Header may only have a Time Stamp (zero-length Data Header), while in other cases, the Intra-Packet Header only has a Data Header (zero-length Time Stamp). Some data types have no Intra-Packet Header. The Intra-Packet Header requirements are specified separately for each Data Type.

The Intra-Packet Data Header (IPDH) presence once set shall be the same state for the entire recording session.

Packet Trailer 3.1.2.17

The packet trailer may contain filler, a data checksum, both filler and a data checksum, or neither filler nor a data checksum. In the latter case, the packet trailer has zero length. The reason a packet trailer would have a zero length is best explained by understanding the reason for inserting filler. The purpose of the filler is twofold:

• Keep all packets aligned on 32-bit boundaries (i.e., make all packet lengths a multiple of 4 bytes), and

• Optionally keep all packets from a particular channel the same length.

If both of the above requirements are already met without adding filler, then filler shall not be added.

The inclusion of the data checksum is optional as well and is indicated by the Packet Flags setting. When included, the packet trailer contains either an 8-bit, 16-bit or 32-bit Data Checksum. Depending on the Packet Flags option selected, the Data Checksum is the arithmetic sum of all of the bytes (8-bits), words (16-bits) or long words (32-bits) in the packet excluding the 24 bytes of Packet Header Words, Packet Secondary Header (if enabled) and the Data Checksum Word. Stated another way, the Data Checksum includes everything in the packet body plus all added filler.

Filler 3.1.2.18

The filler (n Bytes/Bits) shall be set to 0x00 or 0xFF

8-Bit Data Checksum 3.1.2.19

The 8-Bit Data Checksum (1 Byte) contains a value representing an 8-bit arithmetic sum of the bytes in the packet (includes Channel Specific Data, Data and Filler). Only inserted if Packet Flag bits 0 and 1 = 01.

16-Bit Data Checksum 3.1.2.20

The 16-Bit Data Checksum (2 Bytes) contains a value representing a 16-bit arithmetic sum of the words in the packet (includes Channel Specific Data, Data and Filler). Only inserted if Packet Flag bits 0 and 1 = 10.

32-Bit Data Checksum 3.1.2.21

The 32-Bit Data Checksum (4 Bytes) contains a value representing a 32-bit arithmetic sum of the long words in the packet (includes Channel Specific Data, Data and Filler). Only inserted if Packet Flag bits 0 and 1 = 11.

3.2 Time Data Packets, Format 1 Time is treated like another data channel. If a time source other than “none” is used, the time packet will be generated at a minimum frequency of 1 Hz.

a. IRIG Time Type Formats. The 10MHz Relative Time Counter shall be captured for insertion into the Time Packet Data header IAW IRIG 200 Serial Time Code Formats; On-Time Reference Marker definition.

Page 37: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-10

b. All Non-IRIG Time Type Formats. The 10MHz Relative Time Counter shall be captured for insertion into the Time Packet Data header consistent with the resolution with the Time Packet Body format (10 milliseconds).

Note:

A Time Data Packet shall be the first dynamic data packet at the start of each recording. Only static Computer Generated Data packets may precede the Time Data Packet in the recording.

If the Time Data Packet Source is None at least one Time Data Packet is required.

A packet with time data has the basic structure shown in Table 22 . Note that the width of the structure is not related to any number of bits. This drawing is merely to represent relative placement of data in the packet. Time Packets do not have Intra-Packet Headers.

PACKET HEADER :

CHANNEL SPECIFIC DATA

TIME DATA

:

PACKET TRAILER

Table 22 General time data packet, Format 1

3.2.1 Time Packet Channel Specific Data

The Packet Body portion of each Time Data Packet begins with a Channel Specific Data word formatted as shown in Table 23 .

msb lsb 31 12 11 8 7 4 3 0

RESERVED DATE FMT SRC

Table 23 Time packet channel specific data format.

Time Source (SRC). (bits 3-0) indicates the source of the time in the payload of each time packet.

0x0 = Internal (Time derived from a Clock in the Recorder) 0x1 = External (Time derived from a Clock not in the Recorder)

0x2 = Internal from RMM (Internal Time derived from the Clock in the RMM) 0x3 – 0xE Reserved 0xF = None

Note:

If the SRC is external and loses lock then SRC will show time source as internal until lock is regained on the external source.

Time Format (FMT). (bits 7-4) indicate the Time Data Packet format. All bit patterns not used to define a time format type are reserved for future data type growth.

0x0 = IRIG-B 0x1 = IRIG-A 0x2 = IRIG-G 0x3 = Real-Time Clock 0x4 = UTC Time from GPS 0x5 = Native GPS Time 0x6 thru 0xE = Reserved 0xF = None (time packet payload invalid)

Page 38: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-11

Date Format (DATE). (bits 11-8) indicate the Date format. All bit patterns not used to define a date format type are reserved for future growth.

Bits 11-10: Reserved Bit 9: Indicates Date Format

0 = IRIG day available 1 = Month and Year available

Bit 8: Indicates if this is a leap year 0 = Not a leap year 1 = Is a leap year

Reserved. (bits 31-12) are reserved.

3.2.2 Time Packet Body

After the Channel Specific Data word, the time data words are inserted in the packet in Binary Coded Decimal (BCD) format as shown in Table 24 and Table 25 .

msb lsb 15 12 11 8 7 4 3 0

0 TSn Sn Hmn Tmn

0 0 THn Hn 0 TMn Mn

0 0 0 0 0 0 HDn TDn Dn

Table 24 Time Data Packet IRIG Day Format.

msb lsb 15 12 11 8 7 4 3 0

0 TSn Sn Hmn Tmn

0 0 THn Hn 0 TMn Mn

0 0 0 TOn On TDn Dn

0 0 OYn HYn TYn Yn

Table 25 Time Data Packet Day, Month, and Year Format

Table 26 describes the units of measure apply to Table 24 and Table 25 .

Tmn Tens of milliseconds TDn Tens of days Hmn Hundreds of milliseconds HDn Hundreds of Days Sn Units of seconds On Units of Months TSn Tens of Seconds TOn Tens of Months Mn Units of minutes Yn Units of Years TMn Tens of minutes TYn Tens of Years Hn Units of hours HYn Hundreds of Years THn Tens of Hours OYn Thousands of Years Dn Units of Days 0 Always zero

Table 26 Fields of Time Packet

3.3 Ethernet Data Packets, Format 0 Data from one or more Ethernet network interfaces can be placed into an Ethernet Data Packet Format 0 as shown bellow:

msb lsb 15 0

PACKET HEADER

Page 39: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-12

CHANNEL SPECIFIC DATA (BITS 15-0) CHANNEL SPECIFIC DATA (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 15–0) INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 31–16) INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 47-32) INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 15-0) INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 31-16)

BYTE 2 BYTE 1 : :

FILLER (IF n IS ODD) BYTE n :

INTRA-PACKET TIME STAMP FOR MSG n (BITS 15–0) INTRA-PACKET TIME STAMP FOR MSG n (BITS 31–16) INTRA-PACKET TIME STAMP FOR MSG n (BITS 47-32) INTRA-PACKET TIME STAMP FOR MSG n (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG n (BITS 15-0) INTRA-PACKET DATA HEADER FOR MSG n (BITS 31-16)

BYTE 2 BYTE 1 : :

FILLER (IF n IS ODD) BYTE n PACKET TRAILER

Ethernet Data Packet Format 0, Channel Specific Data Word. The Packet Body portion of each Ethernet Data Packet begins with a Channel Specific Data word. It indicates how many Physical Ethernet messages (MAC Frame) are placed in the Packet Body. The Channel Specific Data word is formatted for the complete type of packet body as:

msb lsb

31 28 27 16 15 0

FORMAT RESERVED NUMBER OF FRAMES

Format (bits 31-28): indicate the type of Ethernet Packet.

0000 = Ethernet Physical Layer IEEE-802.3

0001 - 1111 = Reserved

Reserved (bits 27-16): are reserved.

Number of Frames (bits 15-0): contain a binary value that represents the number of frames included in the packet.

Ethernet Data Packet Format 0 Intra-Packet Header. After the Channel Specific Data, Ethernet Data is inserted into the packet. Each Frame is preceded by an Intra-Packet Header that has both an Intra-Packet Time Stamp and an Intra-Packet Data Header containing a Frame ID Word. The length of the Intra-Packet Header is fixed at 12 bytes (96 bits) positioned contiguously.

msb lsb

31 0

TIME (LSLW)

TIME (MSLW)

Page 40: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-13

FRAME ID WORD

Intra-Packet Time Stamp: (8 Bytes) indicate the time tag of the Frame Data. First long word bits 31-0 and second long word bits 31-0 indicate the following values:

The 48-bit Relative Time Counter that corresponds to the first data bit in the Frame with bits 31 to 16 in the second long word zero filled or;

The Absolute Time, if enabled by bit 6 in the Packet Flags (paragraph 10.6.1.1.g). Time format is indicated by bits 2 and 3 in the Packet Flags (paragraph 10.6.1.1.g) and the first data bit in the Frame.

Frame ID Word: The Frame ID Word is an identification word that precedes the Ethernet frame and is inserted into the packet with the following format:

msb lsb

31 30 29 28 27 24 23 16 15 14 13 0

RESERVED FE CONTENT SPEED NET ID RESERVED DATA LENGTH

Reserved (bit 31): is reserved. Frame Error (FE) (bit 30): The Frame Error bit is used to indicate any error that occurred during frame transmission.

0 = No Frame Error 1 = Frame Error encountered

Captured Data Content (CONTENT): (bits 29-28). This field specifies the extent of the captured MAC Frame.

00 = Full MAC Frame: starting with the 6-byte Destination MAC address and ending with the 4-byte Frame Check Sequence 01-11 = Reserved for further formats

Ethernet Speed (SPEED) (bits 27-24): This field indicates the negotiated bit rate for the identified NETID on which the frame was captured.

0000 = Auto 0001 = 10 Mbit/s 0010 = 100 Mbit/s 0011 = 1 Gbit/s 0100 = 10 Gbit/s

Network Identifier (NETID) (bits 23-16): contain a binary value which represents the physical network identification of frame origination that follows the ID Word. Zero means first and/or only physical network. Reserved (bits 15-14): are reserved. Data Length (bits 13-0): contain a binary value that represents the length of the frame in bytes (n) that follows the ID Word.

3.4 Analog Data Packets, Format 1 The generic packet structure for analog data is illustrated in Table 27 .

An Analog Data Packet will contain a Channel Specific Data word for each subchannel of analog data sampled within that packet. This will be followed by at least one complete sampling schedule of data.

A sampling schedule is defined as a sampling sequence in which each subchannel, described by a Channel Specific Data word, is sampled at least once. In many cases, due to simultaneous sampling rules and varied sampling rates, a particular subchannel will be sampled more than once during a sampling schedule. In addition, multiple complete sampling schedules may be included in a single packet. For these reasons, the number of Channel Specific Data words will usually be less than the number of samples.

Page 41: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-14

Figure 10−23 depicts the generic packet data structure for M data subchannels and a single sampling schedule that has a length N. Note that the width of the structure is not related to any number of bits and is merely to represent relative placement of words within the packet.

PACKET HEADER :

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2

*

*

*

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M

SAMPLE 1

SAMPLE 2

• • •

SAMPLE N

:

PACKET TRAILER

Table 27 Generic Analog Data Packet, Format 1

Note:

The Packet Header Time in an Analog Data packet shall correspond to the first data sample in the packet. There are no Intra-Packet Headers in Analog Data Packets.

3.4.1 Analog Packet Channel Specific Data

The Packet Body portion of each Analog packet begins with the Channel Specific Data word(s). Each subchannel that is sampled within the packet sampling schedule must have a Channel Specific Data word within the packet. If subchannels are sampled at the same sampling rate, only one Channel Specific Data word is required. Bit 28 of the channel specific data word shall be used to indicate same sampling data rate for subchannels.

Channel Specific Data words for Analog Data Packets are formatted as shown in 3.4.1 Analog Packet Channel Specific Data.

msb lsb

31 29 28 27 24 23 16 15 8 7 2 1 0

RESERVED SAME FACTOR TOTCHAN SUBCHAN LENGTH MODE

Table 28 Analog Data Packet Format 1

Mode. (Bits 1-0) indicate alignment and packing modes of the analog data Bit 0 is the packing bit, Bit 1 is the alignment bit. When TOTCHAN, defined, is more than 1, the Mode must be the same for all subchannels in a single packet.

00 = data is packed 01 = data is unpacked, lsb padded 10 = Reserved for future definition 11 = data is unpacked, msb padded

Page 42: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-15

Length. (Bits 7-2) indicate a binary value representing the number of bits in the Analog to Digital converter (A/D).

000000 = sixty-four bit samples 000001 = one bit samples : 001000 = eight bit samples : 001100 = twelve bit samples :

Subchan. (Bits 15-8) indicate a binary value representing the number of the analog subchannel.

When an Analog Packet contains data from more than one subchannel and the Channel Specific Data Words are not the same for all channels (see field Same, Bit 28), the Channel Specific Data words must be inserted into the packet in ascending subchannel number as identified by this Subchan field. The Subchan values in these Channel Specific Data words need not be contiguous (see Totchan), but they must be in ascending decimal numerical order with the exception that subchannel 0 (256) is last. If the “Same” bit is set, Subchan field shall be set to zero.

0x01 = Subchannel 1 0x02 = Subchannel 2 : 0x00 = Subchannel 256

Totchan. (Bits 23-16) indicate the total number of analog subchannels in the packet (and the number of Channel Specific Data words in the packet.)

This Totchan field must be the same value in all Channel Specific Data words in a single packet. The Totchan value may be less than the largest Subchan value. This can happen when a multi-channel analog input device has some of its subchannels disabled (turned off) for a specific recording. For example, if an analog input device has eight subchannels and not all eight are active, an analog data packet may have three subchannels (Totchan=3) numbered 4, 7, and 8 (enabled Subchan = 4, 7, 8). The number of subchannels (Totchan) and the subchannel number for each active subchannel (Subchan) in a packet are identified in the accompanying TMATS (Computer Generated Data, Format 1) packet.

0x00 = 256 Subchannels 0x01 = 1 Subchannel 0x02 = 2 Subchannels :

Factor. (Bits 27-24) are the exponent of the power of 2 sampling rate factor denominator for the corresponding subchannel (described in 10.6.4.2.2) in the range 0 to 15. (The sampling rate factor numerator is always 1.)

0x0 = sampling rate factor denominator 20 = 1 => factor = 1/1 0x1 = sampling rate factor denominator 21 = 2 => factor = ½ 0x2 = sampling rate factor denominator 22 = 4 => factor = ¼ : 0xF = sampling rate factor denominator 215 = 32768 => factor = 1/32768

Same. (Bit 28) specifies if this Channel Specific Data Word applies for all the channels included in the packet, or if each channel has its own Channel Specific Data Word.

0 = each analog channel has its own Channel Specific Data Word 1 = The Channel Specific Data Word is valid for all analog channels stored in this packet

Reserved. (Bits 31-29) are reserved.

Page 43: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-16

Note:

The multiple-rate / multi-channel Analog Packet option is currently not used in DATaRec® 4

data format. Only a single channel is stored in a packet.

3.4.2 Analog Samples

To preserve timing relationships and allow for accurate reconstruction of the data, a simultaneous sampling scheme shall be employed. The highest sampling rate required shall define the primary simultaneous sampling rate within the packet. The primary simultaneous sampling rate is identified in the Telemetry Attributes Transfer Standard (TMATS) file describing the attributes of the analog data packet. The rate at which the other subchannels are sampled is then defined by the sampling factor (1, ½, ¼, 1/8, 1/16, … 1/32768) for each subchannel. As an example, a sampling factor of ¼ would yield that subchannel being sampled at one-fourth the primary simultaneous sampling rate and a sampling factor of 1 would yield that subchannel being sampled at the primary simultaneous sampling rate.

Directly following the Channel Specific Data word(s), at least one complete sampling schedule shall be inserted in the packet. The samples, within the sampling sequence, may be inserted either unpacked, MSB Packed, or LSB Packed as described in section 3.4.2.1 and 3.4.2.2. In either case, one or more subchannels may be included in a single packet. When multiple subchannels are encapsulated into a single packet, the subchannel with the highest sampling rate requirement defines the primary simultaneous sampling rate. The rate at which the other subchannels are sampled is defined by the sampling factor (contained within the Channel Specific Data words). Sampling factors are defined as:

X2

1K

;K = 0, 1, 2, 3, 4, 5, …

of the Primary Simultaneous Sampling Rate, X.

The subchannels are then sampled and ordered such that:

• the highest sample rate X1∗ subchannel(s) appear in every simultaneous sample,

• the X∗

2

1in every 2nd simultaneous sample,

• the X∗

4

1in every 4th simultaneous sample,

… and so on until all the subchannels are sampled, resulting in a complete sampling schedule of all subchannels described by the Channel Specific Data words. In doing so, the total number of simultaneous samples (not the total number of samples) will equal the denominator of the smallest sampling factor and all subchannels are sampled in the last simultaneous sample. For example, a packet with six subchannels with Sampling Factors ½, 1/8, 1, ½, 1, and

1/8 respectively will yield a sampling sequence within the data packet as follows:

Simultaneous Sample 1: Subchannel 3 Simultaneous Sample 1: Subchannel 5 Simultaneous Sample 2: Subchannel 1 Simultaneous Sample 2: Subchannel 3 Simultaneous Sample 2: Subchannel 4 Simultaneous Sample 2: Subchannel 5 Simultaneous Sample 3: Subchannel 3 Simultaneous Sample 3: Subchannel 5 Simultaneous Sample 4: Subchannel 1

Page 44: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-17

Simultaneous Sample 4: Subchannel 3 Simultaneous Sample 4: Subchannel 4 Simultaneous Sample 4: Subchannel 5 Simultaneous Sample 5: Subchannel 3 Simultaneous Sample 5: Subchannel 5 Simultaneous Sample 6: Subchannel 1 Simultaneous Sample 6: Subchannel 3 Simultaneous Sample 6: Subchannel 4 Simultaneous Sample 6: Subchannel 5 Simultaneous Sample 7: Subchannel 3 Simultaneous Sample 7: Subchannel 5 Simultaneous Sample 8: Subchannel 1 Simultaneous Sample 8: Subchannel 2 Simultaneous Sample 8: Subchannel 3 Simultaneous Sample 8: Subchannel 4 Simultaneous Sample 8: Subchannel 5 Simultaneous Sample 8: Subchannel 6

Notice that the denominator of the smallest sampling factor defines the number of simultaneous samples within the packet (in this example 8). However, the total number of samples within the sampling schedule does not have to equal number of simultaneous samples (in this example 26). Also notice that all subchannels are sampled during the last Simultaneous Sample. The order of the subchannel samples in each simultaneous sample is ascending by subchannel number.

Any number of complete sampling schedules may be placed within a packet so that the maximum packet length is not exceeded. The TMATS file identifies the number of samples contained within each packet.

Unpacked Mode 3.4.2.1

In Unpacked Mode, packing is disabled and each sample is padded with the number of bits necessary to align each word with the next 16-bit boundary in the packet. Four (4) pad bits are added to 12 bit words, eight (8) pad bits are added to 8 bit words, etc. All pad bits shall be zero (0).

To illustrate msb padding, given M analog subchannels mapping into N samples for the special case of all samples having bit lengths of 12 bits, the resultant Analog packets with msb padding have the form shown in Table 29 .

msb 15

lsb 0

PACKET HEADER

:

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 31-16)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 31-16)

:

:

:

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M (BITS 31-16)

Page 45: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-18

4-PAD BITS SAMPLE 1, 12-DATA BITS

4-PAD BITS SAMPLE 2, 12- DATA BITS

4-PAD BITS SAMPLE 3, 12- DATA BITS

:

4-PAD BITS SAMPLE N, 12- DATA BITS

: PACKET TRAILER

Table 29 Analog Data Packet - Unpacked Mode, msb Padding

To illustrate LSB Packing, given M analog subchannels mapping into N samples for the special case of all samples having bit lengths of 12 bits, the resultant Analog packets with LSB padding have the form shown in Table 30 .

msb 15

lsb 0

PACKET HEADER

:

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 31-16)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 31-16)

:

:

:

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL m (BITS 31-16)

:

SAMPLE 1, 12-DATA BITS 4-PAD BITS

SAMPLE 2, 12- DATA BITS 4-PAD BITS

SAMPLE 3, 12- DATA BITS 4-PAD BITS

SAMPLE N, 12- DATA BITS 4-PAD BITS

:

PACKET TRAILER

Table 30 Analog Data Packet - Unpacked Mode, lsb Padding

Packed Mode 3.4.2.2

In Packed Mode, packing is enabled and padding is not added to each data word. However, if the number of bits in the packet are not an integer multiple of 16, then Y filler bits will be used to msb fill the last data word to force alignment on a 16-bit boundary. Y is sixteen (16) minus the integer remainder of L, the total number of data bits in the packet, divided by 16 and is mathematically expressed as:

Y = 16 – (MODULUS{L,16}).

Page 46: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-19

To illustrate msb padding, given M Analog subchannels mapping into N samples for the special case of all samples having bit lengths of 12 bits, the resultant Analog packets with padding bits at the end of the Nth sample have the form shown in Table 31 .

Msb 15

lsb 0

PACKET HEADER

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 1 (BITS 31-16)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL 2 (BITS 31-16)

:

:

:

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M (BITS 15-0)

CHANNEL SPECIFIC DATA WORD, SUBCHANNEL M (BITS 31-16)

SAMPLE 2 (BITS 3-0) SAMPLE 1 (BITS 11-0)

SAMPLE 3 (BITS 7-0) SAMPLE 2 (BITS 11-4)

: :

: :

: :

Y PADDING BITS SAMPLE N (BITS 11-0)

:

PACKET TRAILER

Table 31 Analog Data Packet - Packed Mode

Note:

The DATaRec® 4 data format uses only 8, 16 or 32-bit Unpacked Mode lsb padded mode -

however no padding happens at 8,16 and 32-bit data words.

3.5 Computer Generated Data Packets Packets with Computer Generated Data have the basic structure shown in Table 32 . Formats 0, 1, 2 and 3 are used to add information packets to recorded data. This information contains annotation data, setup records, events or index information for the data that has been recorded. The width of the structure is not related to any number of bits. This drawing is merely to represent relative placement of data in the packet.

Note:

Computer Generated Data is defined as non-external data or data generated within the recorder. After the Channel Specific Data Word, the Computer Generated Data is inserted in the packet. The organization and content of the Computer Generated Data is determined by the specific Format type.

Page 47: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-20

PACKET HEADER

CHANNEL SPECIFIC DATA WORD

COMPUTER GENERATED DATA

PACKET TRAILER

Table 32 General computer generated data packet format.

3.5.1 Computer Generated Data Packets Format 0, User Defined

Format 0 enables the insertion of user-defined Computer Generated Data.

Computer Generated Packets Format 0 Channel Specific Data Word. 3.5.1.1

The Packet Body portion of each Format 0 Packet begins with the Channel Specific Data word, which is formatted as shown in Table 33 .

msb lsb

31 0

RESERVED

Table 33 Computer generated format 0 specific data word format.

• Reserved. (Bits 31-0) are reserved.

3.5.2 DATaRec® 4 Computer Generated Data

In the DATaRec® 4 system the user defined data is used to store information about the detailed system

configuration, the state of the system during recording and environmental measurement data.

The content of the DATaRec® 4 Computer Generated Data is considered as internal information of the

DATaRec® 4 system. Based on its internal fully big-endian data processing structures, the internal structures

defined within the Computer Generated Data are Big Endian – contrary to the rest of DATaRec® 4 data format –

which is following an international Low-Endian data format standard. Generally the schema described on Table 34 is used.

PACKET HEADER – (Low Endian)

CHANNEL SPECIFIC DATA WORD (always 0)

COMPUTER GENERATED DATA – (Big-Endian)

PACKET TRAILER (empty, no fill needed, no CSUM used)

Table 34 DATaRec® 4 Computer Generated Data Usage

3.5.3 General Structures

The COMPUTER GENERATED DATA follows the structure shown in Table 35 . Each packet contains one or more Information Unit. The structure of one information unit can be seen in Table 50 .

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Synch Word with value DATAREC4_SYNCH_WORD (uint32) Identify DATaRec

® 4 Vendor Specific Binary Format

+4 First Information Unit

Page 48: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-21

Second Information Unit (optional)

Last Information Unit (optional)

Table 35 DATaRec® 4 Computer Generated Data Details

Note:

The DATAREC4_SYNCH_WORD= 0x6865696d (Little-Endian) on 32-bit is used to insert DATaRec

® 4 binary packets defined in Chapter 4.2.2 into the data stream.

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Synch Word with value ENV_MEAS_SYNCH_WORD (uint32) Identify DATaRec

® 4 Vendor Specific Environmental Measurement Packet Format

+4 Information Header (IDC_ENV_MEASUREMENT)

+20 DATaRec® 4 Environmental Measurement Data

Table 36 DATaRec® 4 Environmental Measurement Data Details

Note:

The ENV_MEAS_SYNCH_WORD= 0x656e766d (Little-Endian) on 32-bit is used to insert DATaRec

® 4 environmental measurement packets defined in Chapter 4.3.15 into the data

stream.

3.6 Message Data Packets The DATaRec

® 4 CAN, FlexRay, STANAG 3910, Parallel, HDLC, Fibre Channel and AFDX Data formats use

the Generic Message Data Packet format, which has the Data Type value 0x30 and Data Type Version 0x02 in the Packet Header.

3.6.1 Generic Message Data Packet format

The Message Data Packet format is shown in Table 37 .

Msb lsb

15 0

PACKET HEADER

CHANNEL SPECIFIC DATA (BITS 15-0)

CHANNEL SPECIFIC DATA (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 15–0)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 31–16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 31-16)

Page 49: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-22

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n

:

INTRA-PACKET TIME STAMP FOR MSG n (BITS 15–0)

INTRA-PACKET TIME STAMP FOR MSG n (BITS 31–16)

INTRA-PACKET TIME STAMP FOR MSG n (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG n (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG n (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG n (BITS 31-16)

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n

PACKET TRAILER

Table 37 Message Data Packet format

a. Message Packet Channel Specific Data Word. The Packet Body portion of each Message Data Packet begins with a Channel Specific Data word. It indicates if the Packet Body contains several short messages (Type: Complete) or one segment of a long message (Type: Segmented).

b. Complete Message Channel Specific Data Word. The Channel Specific Data word is formatted for the Complete type of packet body as shown in Table 38 . This type is used for DATaRec

® 4

packets.

Msb lsb

31 18 17 16 15 0

RESERVED TYPE COUNTER

Table 38 Complete message channel specific data word format

• Reserved. (Bits 31-18) are reserved.

• Type. (Bits 17-16) indicates the type of Serial Packet.

00 = One or more complete messages

01 = Reserved

10 = Reserved

11 = Reserved

• Counter. (Bits 15-0) contains a binary value indicating the number of messages included in the packet.

c. Segmented Message Channel Specific Data Word. The Channel Specific Data word is formatted for the Segmented type of packet body as shown in Table 39 .

Page 50: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-23

Msb lsb

31 18 17 16 15 0

RESERVED TYPE COUNTER

Table 39 Segmented message channel specific data word format

• Reserved. (Bits 31-18) are reserved.

• Type. (Bits 17-16) indicates the type of Serial Packet.

00 = Reserved

01 = Packet is a beginning of a long message from a single source

10 = Whole packet is the last part of a long message from a single source

11 = Whole packet is a middle part of a long message from a single source

• Counter. (Bits 15-0) contains a binary value indicating the segment number of a long message. The number must start with 1 and must be incremented by one after each packet. The maximum length of a single long message is 4GBytes (combined with the 16-bit Message Length field).

d. Message Data Intra-Packet Header. After the Channel Specific Data, Message Data is inserted into the packet. Each Message is preceded by an Intra-Packet Header that has both an Intra-Packet Time Stamp and an Intra-Packet Data Header containing a Message ID Word. The length of the Intra-Packet Header is fixed at 12 bytes (96 bits) positioned contiguously, in the sequence shown in Table 40 .

Msb lsb

31 0

TIME (LSLW)

TIME (MSLW)

MESSAGE ID WORD

Table 40 Message data intra-packet header

1) Intra-Packet Time Stamp. (8 Bytes) indicate the time tag of the Message Data. First long word bits 31-0 and second long word bits 31-0 indicate the following values:

• The Relative Time Counter that corresponds to the first data bit in the Message with bits 31 to 16 in the second long word zero filled or;

• Time, if enabled by bit 7 in the Packet Flags. Time format corresponds to the time format indicated by bits 2 and 3 in the Packet Flags and to the first data bit in the Message.

2) Intra-Packet Data Header. The Intra-Packet Data Header is an identification word (Message ID Word) that precedes the message and is inserted into the packet with the format shown in Table 41 .

Msb lsb

31 30 29 16 15 0

DE FE SUBCHANNEL MESSAGE LENGTH

Table 41 Intra-packet data header format

• Data Error (DE). (Bit 31) indicates bad data bits as determined by parity, checksums, or CRC words received with the data.

0 = No Data error has occurred

1 = Data error has occurred

Page 51: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-24

• Format Error (FE). (Bit 30) indicates a protocol error, such as out-of-sequence data or length errors.

0 = No Format Error

1 = Format Error encountered

• Subchannel. (Bit 29-16) contains a binary value that represents the subchannel number belonging to the message that follows the ID Word when the Channel ID in the packet header defines a group of subchannels. The following sub-channel codes are used to identify data format and data type:

0x00 CAN 0x01 Flex Ray 0x02 STANAG 3910 (EFABUS) 0x03 Parallel Data 0x04 HDLC Data 0x05 Fibre Channel Data 0x06-0x1F reserved 0x20- 0x9F AFDX Data 0xA0-0xFF reserved

• Message Length. (Bits 15-0) contains a binary value representing the length of the message in bytes (n) that follows the ID Word. The maximum length of a message (complete) or a message segment (segmented) is 64K bytes.

3.6.2 CAN Message format

For Message Data Packets containing DATaRec® 4 CAN messages each Intra-Packet Header is

followed by a 32-bit word containing the CAN Identifier as well as the CAN data payload, which is max. 8 byte long. The CAN Message format is shown in Table 42 .

msb lsb

15 0

CAN Identifier low (IDE=0: bits 10-0, IDE=1: bits 15-0)

IDE RTR RES CAN Identifier high (IDE=1: bits 28-16)

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n (max(n) = 8)

Table 42 CAN Message format

• IDE (bit 31 of the 32-bit CAN Id. Word): use extended CAN Identifier

0 11-bit standard CAN Identifier (CAN Id. Word bit 10-0)

1 29-bit extended CAN Identifier (CAN Id. Word bit 28-0)

• RTR (bit 30 of the CAN Id. Word): Remote Transfer Request bit

When using the 11-bit standard CAN Identifier, bits 29-11 of the 32-bit CAN Id. Word are unused, for the 29-bit extended CAN Identifier only bit 29 is unused.

3.6.3 Flex Ray Message format

Message Data Packets containing DATaRec® 4 Flex Ray data are distinguished from CAN messages

by their sub channel number, which is set to 1. The Flex Ray Intra Packet Header is followed by a Flex Ray-specific data header, its format depends on the Flex Ray frame recorded as follows:

Page 52: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-25

msb lsb

15 0

TSS/LOW PERIOD LENGTH

FRAME TYPE ERROR BITS

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n (max(n) = 262)

• TSS / Low Period Length. (Bits 15-0 of FlexRay specific header) contains the length of the initial part of a FlexRay frame measured in FlexRay sampling clock ticks

TSS Length: Static and Dynamic Frames

Low Period Length: Symbols

• Frame Type. (Bits 31-25)

0 Static Frame

1 Dynamic Frame

2 Symbol

3-255 Reserved

• Error Bits. (Bits 24-16) present only for Static and Dynamic Frames

Bits 7-4 Reserved

Bit 3 DTS Error

Bit 2 FES Error

Bit 1 BSS Error

Bit 0 FSS Error

• BYTE x. Data bytes recorded. Present only for Static and Dynamic Frames

For Flex Ray Symbols (CAS – Collision Avoidance Symbol; MTS – Media Access Test Symbol; WUS – Wakeup Symbol) the number of generated Intra Packets equals to the number of falling edges on the Flex Ray bus (that is, the number of symbols). A Symbol Intra Packet contains the timestamp of the falling edge and the length of the low period on the bus (in number of sampling clock ticks). The format is independent from the type of the symbol, and symbols are not differentiated from each other. E.g. recording a CAS symbol results a single Intra Packet which contains the sum of TSS length and CAS length. Recording a Wakeup Pattern results as many Intra Packets as many Wakeup Symbols are in the Wakeup Pattern (pWakeupPattern).

3.6.4 STANAG 3910 Message Format

Message Data Packets containing DATaRec® 4 STANAG 3910 data are distinguished from CAN and

Flex Ray messages by their sub channel number, which is set to 2. The STANAG 3910 Intra Packet Header is followed by a STANAG 3910 -specific data header:

Page 53: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-26

msb lsb

15 0

BUS E:(0) Reserved (0) OL SD ED NF MW MA GL

First data word

Second data word

:

Last data word

Table 43 STANAG 3910 Message format (No Error)

Msb lsb

15 0

BUS E:(1) Reserved (0) OL SD ED NF MW MA GL

Reserved (0) Glitch error counter

Reserved (0) First glitch error

Reserved (0) Manchester error counter

Reserved (0) First manchester error

First data word

Second data word

:

Last data word

Table 44 STANAG 3910 Message format (Glitch or Manchester Error)

GL: Glitch Error Bit 1 - Glitch Error in the Message MA: Manchester Error Bit 1 - Manchester Error in the Message MW: Too-ManyWords Error Bit 1 - More than 4100 word in the Message NF: Not-Full-Word Error Bit 1 - The last word contains less than 16 valid bits

(No. of Message bits MOD 16 != 0) ED: End Delimiter Missing Bit 1 - End Delimiter is missing (Message is not closed by an End Delimiter but

closed by a Gap.) SD: Start Delimiter Missing Bit 1 - Start Delimiter is missing (After Gap four ONEs of Preamble detected but

after a timeout of 2us no Start Delimiter decoded or End Delimiter or Gap received during timeout counter run.)

OL: Overlap Bit 1 - This messages was overlapped by a message of other Bus E: Error Format 0 There are neither Glitch nor Manchester Error in the Message. Data

Body contains only the data words of the Message.

Page 54: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-27

1 There is Glitch or Manchester Error in the Message. Data Body contains Glitch Error Counter, word number of the first Glitch Error in the Message, Manchester Error Counter, Word number of the first Manchester Error in the Message

BUS: 0 Message of BUS A 1 Message of BUS B Glitch Error Counter No. of Glitch Error data words in the Message (max. 4095)

Manchester Error Counter No. of Manchester Error data words in the Message (max. 4095)

First Glitch Error Word number of the first Glitch Error in the Message

First Manchester Error Word number of the first Manchester Error in the Message

msb lsb

15 0

PACKET HEADER

CHANNEL SPECIFIC DATA (BITS 15-0)

CHANNEL SPECIFIC DATA (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 31-16)

HEIM SPECIFIC DATA HEADER FOR MSG 1 (BITS 15-0)

( BLOCK STATUS WORD)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 1 (BITS 31-16)

( GLITCH ERROR COUNTER)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 1 (BITS 47-32)

( MANCHESTER ERROR COUNTER)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 1 (BITS 63-48)

( FIRST WORD WITH GLITCH ERROR)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 1 (BITS 79-64)

( FIRST WORD WITH MANCHESTER ERROR)

FIRST DATA WORD

SECOND DATA WORD

:

LAST DATA WORD

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 31-16)

HEIM SPECIFIC DATA HEADER FOR MSG 2 (BITS 15-0)

( BLOCK STATUS WORD)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 2 (BITS 31-16)

( GLITCH ERROR COUNTER)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 2 (BITS 47-32)

Page 55: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-28

( MANCHESTER ERROR COUNTER)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 2 (BITS 63-48)

( FIRST WORD WITH GLITCH ERROR)

(OPTIONAL) HEIM SPECIFIC DATA HEADER FOR MSG 2 (BITS 79-64)

( FIRST WORD WITH MANCHESTER ERROR)

FIRST DATA WORD

SECOND DATA WORD

:

LAST DATA WORD

PACKET TRAILER

Table 45 STANAG 3910 data packet format

3.6.5 Parallel Data Message Format

Message Data Packets containing DATaRec® 4 Parallel data are distinguished from CAN, Flex Ray

and STANAG 3910 messages by their sub channel number, which is set to 3.

Msb lsb

15 0

Reserved MODE ACK Reserved 4 or 8 valid data bits

Parallel data message format

[Bit 13] MODE: 4 or 8 bit mode 0 – 4 bit mode 1 – 8 bit mode

[Bit 12] ACK: ACK edge 0 – the data is captured after the falling edge of ACK

1 - the data is captured after the rising edge of ACK

msb lsb

15 0

PACKET HEADER

CHANNEL SPECIFIC DATA (BITS 15-0)

CHANNEL SPECIFIC DATA (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 31-16)

DATA

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 31-16)

DATA

PACKET TRAILER

Parallel data packet format

Page 56: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-29

3.6.6 HDLC Data Format

Message Data Packets containing DATaRec® 4 HDLC data are identified by the sub channel number,

which is set to 4. The Chapter 10 standard Message Intra Packet Header is followed by a HDLC specific data header.

msb

lsb

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

S1 S2 Reserved (0) CT ME

AB LO SH SE CR FR EN SM

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n (max(n) =4096)

Table 46 HDLC Message format

The first 16 bits is the HDLC Status Word, which consist of the following fields:

S1-S2: Message Segmentation Bits S1 and S2 define this message is a full HDLC frame or only a part of a HDLC

frame is included in this message. Fragmentation happens only, if a full HDLC Frame is longer than the required maximum Chapter 10 packet time span (default 100 ms, but user can define it shorter): S1 S2 0 0 Complete Frame 0 1 Start fragment of an HDLC Frame 1 0 End fragment of an HDLC Frame 1 1 Middle fragment of an HDLC Frame

CT: Clock Timeout Error Bit 1 – clock stopped (or data stopped in data only, e.g. biphase mode)

ME: Missing EOF Error Bit 1 – No End of Frame detected before a new Start of Frame arrived

AB: Abort Error Bit 1 – 7 x 1’s in bit mode or escape followed by a flag in byte mode within data detected (HDLC frame abort criteria)

LO: Frame Too Long Error Bit 1 – HDLC frame is too long (longer than 4096 bytes including checksum)

SH: Frame Too Short Error Bit 1 – HDLC frame is too short (shorter than 3 bytes)

SE: Stuffing Error Bit 1 – Bit stuffing error (deleted bit is not 0) or Byte stuffing error (deleted byte is invalid – flag or escape)

CR: CRC Error Bit 1 – CRC error – the 16 or 32 bit CRC at the end of the HDLC frame is not correct

FR: Frame Length Error Bit 1 – The number of detected bits are not multiples of the 8 data bits

EN: Stop Missing Error Bit 1 – Stop bit is not 1 (in byte modes only)

SM: Start Missing Error Bit 1 – Start bit missing (in byte modes only, during continuous transfer)

msb lsb

15 0

PACKET HEADER

CHANNEL SPECIFIC DATA (BITS 15-0)

Page 57: DATaRec 4 Series

DATaRec-4 Programming Manual DATaRec-4 Data Format

Page 3-30

CHANNEL SPECIFIC DATA (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 1 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 1 (BITS 31-16)

HDLC STATUS WORD FOR MSG 1 (BITS 15-0)

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n

FIRST DATA WORD

SECOND DATA WORD

:

LAST DATA WORD

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 15-0)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 31-16)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 47-32)

INTRA-PACKET TIME STAMP FOR MSG 2 (BITS 63-48)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 15-0)

INTRA-PACKET DATA HEADER FOR MSG 2 (BITS 31-16)

HDLC STATUS WORD FOR MSG 2 (BITS 15-0)

BYTE 2 BYTE 1

: :

FILLER (IF n IS ODD) BYTE n

PACKET TRAILER

Table 47 HDLC Data packet format

Page 58: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 3-1

3.6.7 Fibre Channel Message Format

Message Data Packets containing DATaRec® 4 Fibre Channel data are identified by their sub channel

number, which is 5. The packet layout conforms to the generic message data packet format without the addition of any extra fields.

The Fibre Channel Message format will be used by Fibre Channels when the Link Module parameter tmats_ver is set to a value smaller than 15, otherwise Fibre Channels will record Fibre Channel Data Packet Format 0 defined in IRIG Standard 106-15 Chapter 10.

The type of the Fibre Channel Intra-Packet frame payload format is FC-PH Physical Layer ANSI X3T11 Project 755-D using complete (non-stripped) frames. This means that each Intra-Packet Header is followed by Fibre Channel frame payload of maximum length of 2148 bytes (divisable by 4).

Msb lsb

31 30 29 24 23 16 15 0

BYTE 4 BYTE 3 BYTE 2 BYTE 1

: : : :

FILLER (IF n NOT DIVISABLE BY 4)

BYTE n (max. 2112) : :

Table 48 Fibre Channel Intra-Packet frame payload

3.6.8 AFDX Message Format

Message Data Packets containing DATaRec® 4 AFDX (ARINC 664) data are identified by their sub

channel number, which is in the range 0x20-0x9f. The AFDX Intra Packet Header is followed by an AFDX-specific data header:

Msb lsb

31 30 29 24 23 16 15 0

PM FE RESERVED SUBCHANNEL MESSAGE LENGTH

Table 49 AFDX Intra-packet data header format

Where:

Bit 31 Promiscous flag.

The frame would be normally discarded, only recorded because Promiscuous mode was turned on.

Bits used in Subchannel field:

Bit 23-20: Record reason

This specifies the reason while the frame is recorded. Possible decimal values are the following:

2 (P). Frame was dropped because of frame error 3 (P) Frame was dropped because it is not AFDX Frame 5 (P) Frame was dropped by the IC 6 Frame was recorded, it arrived on the CH1 physical interface first (and later on CH2) 7 Frame was recorded, it arrived on the CH2 physical interface first (and later on CH1) 8 Frame was recorded, but received only on one physical interface 9 (P) Frame was dropped by the RM

Bit 19-18: Channel Error

This indicates Frame Errors. Possible values.

0 No frame error 1 (P) Frame error on CH0

Page 59: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 3-2

2 (P) Frame error on CH1 3 (P) Frame error on both physical interfaces

Bit 17-16: Channel Indicator

This indicates on which physical channel the frame was received

1 Frame was received on CH1 only (within WaitMax time window)

2 Frame was received on CH2 only (within WaitMax time window)

3 Frame was received on both channels (within WaitMax time window))

Note:

Values marked with (P) available in promiscuous mode only.

Page 60: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-3

4 The DATaRec® 4 Remote Commands

The DATaRec® 4 Binary Messages are the basic communication structures between sub-components of the

system. They can be passed in the internal communication channels, but they can also be inserted to the normal remote control commands.

4.1 Binary Structures as Remote Commands The binary structures are embedded in the standard DATaRec

® 4 ASCII remote control commands. Currently

only one message is defined for general purpose binary message transfer: “bin”. The binary information starts with the <esc> character – followed by a 32-bit big-endian length field. Then any DATaRec

® 4 Binary Message

(see 4.2) can be sent (also as Big-Endian). The transfer finishes with the standard <cr> <lf> characters.

So, e.g.:

bin<esc> <32-bit-big-endian-length> <big-endian- DATaRec® 4-Binary-Message> <cr> <lf>

The answer is:

bin<esc> <32-bit-big-endian-length> <big-endian- DATaRec® 4-Binary-Message> <cr> <lf>

The 32-bit big-endian length field shell be calculated over the binary content, it excludes the header (“bin<esc>”, and the length itself) and also excludes the <cr> <lf> characters.

4.2 DATaRec® 4 Binary Messages

All the messages which are not data packets are considered Information message, and having the same general format:

31 24 23 16 15 8 7 0

Synch Word (1 x 32-bit)

Operation ID (1 x 32-bit)

Sequence Number (1 x 32-bit)

Information Header (4 x 32-bit)

Information Unit (Variable Length)

Parameters:

Synch Word Fix synch word = MSG_SYNCH_WORD to help resynchronization in a circular buffer.

Operation ID Each message is identified by a unique Operation ID (OID). To each OID an action is assigned. For detailed description see Chapter 4.2.1.

Sequence Number Any number (except 0xffffffff) which can by used to identify the message. This number can be used to match message and answer (info, acknowledge or error). This number is fully handled by the user application. The firmware will not manipulate this number.

The Sequence Numbers for Auto Reporting Messages (unrequested answers) are always 0xffffffff. Therefore this number should not be use by the initiator application.

Information Header See Chapter 4.2.2

Information Data See Chapter Information Data4.3

Page 61: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-4

4.2.1 OID Usage

Every message is identified by an Operation Identifier telling the main purpose of the operation. The OIDs identify the 2 main groups: Down-Stream and Up-Stream messages.

Down-Stream Message OIDs:

OID_GET Asking for specific information.

The up-steam answer can be

OID_INFO The Information Block contains the requested information block.

OID_ERROR The requested information is not available.

OID_SET Changing request for one or more setup parameters. The new parameters are not activated by this command – they will be effective only at the next OID_ARM command.

The operation checks if a requested setup is valid, invalid, or can be applied with adjusting of some fields of the submitted parameter block.

The up-steam answer can be:

OID_ACK All parameter is OK.

OID_ERROR One or more parameter is invalid. The returned error parameter block gives back a pointer to the first invalid parameter.

OID_INFO The parameter block is valid, but one or other parameter.

OID_ARM

This operation activates all the previous parameter setups. This activates the mode changes, set the hardware to new values, …

The up-steam answer can be:

OID_ACK All setup was successful.

OID_ERROR One or more setup was not possible due to hardware problem. The returned error parameter block gives information about the failing component.

OID_NOOP The message is a no operation – can be used for communication testing.

OID_CTRL Broadcast message to which no answer is sent back.

The Up-Stream Message OIDs:

OID_ACK Acknowledge – the down-stream information accepted without error. Only Information Header is returned without Information Data.

OID_INFO Information returned in the attached Information Header and Information Data.

OID_ERROR There was an error during processing the down-stream message. An Information Header and an IDC_ERROR_REPORT Information Data structure will be returned with reference for the error reason (see Chapter Error Reporting 4.3.4).

OID_NOOP The message is a no operation – can be used for communication testing. Only Information Header is returned.

OID_BUSY This Operation Identifier indicates that the down-stream message triggered an action which will still be in progress when the up-stream message arrives.

4.2.2 Information Header

The Information Header contains the data identifier, the data length and the destination address (for down-stream messages) or the source address (up-stream messages).

Page 62: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-5

The length field belongs to the message identification – for extendibility the same IDC may contain more information in a later version – where the new parameters are always appended to the previous structures. In such a cases by checking the length parameter can be decided if the IDC contains the extended, or the shorter version of the Information Data block.

The structure of the Information Header is as follows:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 The identification of the data structure: Identification Code (IDC)

+4 Length of the Information Data field in bytes. Any integer number of bytes is allowed, however all structures are padded with zero fills to 32-bit structures.

+8 Version reserved (0) Higher Level Link Module ID

+12 Link Chain Number Module Number Channel Number

Table 50 Structure of the Information Header

Where:

Version The version ID of the addressing schema. The schema described here has the code: MSG_ADDR_PHYSICAL

Higher Level The field reserved for higher level identification. MaxValue = 0xFF.

Link Module ID This field contains the address of the Link Module. MaxValue = 0xFF.

Link Chain Number Address of a link chain connected to a Link Module. MaxValue = 0xFF.

Module Number Module address of a module on a link chain. MaxValue = 0xFF.

Channel Number Address of a channel within a module. MaxValue = 0xFFFF.

The component numbering start with code 0 (e.g. first module is Module Number = 0). However, some values are reserved for special meaning:

MaxValue All the components. (e.g. in Channel Number field it means all the channels of the addressed module.)

MaxValue-1 The higher component itself (e.g. in the Channel Number field it means the addressed module itself, in the Link Chain Number field it means the addressed Link Module itself.)

MaxValue-2 The higher component and all the addressed components (e.g. all the channels and the module itself).

Note:

In the remote control communication of DATaRec® 4 systems the transmitted binary

structures are having the same structures as described in Table 35 and Table 50 .

4.3 Information Data This Chapter defines the Information Data structures which are used in the Binary Messages – and also inserted in the Computer Generated Packets in the DATaRec

® 4 data format.

The data format is identified by the IDC (Identification Code) field of the Information Header defined in Chapter 4.2.2.

The real length of the length of the data structure is defined in the data length field in the Information Header, but the real data structure is always padded to 32-bit boundary by 0-3 fill zero bytes depending on the length.

Page 63: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-6

4.3.1 Used Notation

In the DATaRec® 4 Computer Generated Data description the fields are not defined by their values, only by

their symbolic names (written with capital letters). Their values can always be taken from the current “d4_all.h” include file.

• Notations used in formal description:

Name (KeywordLen)

Name text identifier or description of the field.

Keyword uint, int, fvalue.

uint and int have the usual meaning. fvalue is used for fixed point numbers. The enumerations are explicitly stated by symbol names. The structures are Big Endian.

Len length in bits: 8, 16, 32. The smallest data size used is 8 bits. This field is defined for fix-length data, not specified for variable length cases.

The Len field is optional. If missing, the whole available field is used.

The (KeywordLen) part is optional. If missing, the default is uint (size is the whole available field).

• Complex structures used in formal description:

Number of consecutive occurrences * { list of elements }

The structure {list of elements} repeats a number of times which is given either by a constant or by a parameter. In the first case an integer number will replace “Number of consecutive occurrences” in the text. In the latter case a parameter name will be used instead. The value preceding '*' is not stored in the data. The positions of the listed elements are relative to the beginning of the corresponding structure occurrence. If the length of the structure itself is not constant, the value for the length is stored at a given position relative to the beginning of each occurrence.

4.3.2 Predefined Data Types

Name Description

datatype8 (uint8) Main Data Type category of a module or channel

CFG_DATA_TYPE_PCM CFG_DATA_TYPE_UART CFG_DATA_TYPE_MIL1553 CFG_DATA_TYPE_ANALOG CFG_DATA_TYPE_ARINC429 CFG_DATA_TYPE_CAN CFG_DATA_TYPE_ETH CFG_DATA_TYPE_VIDEO CFG_DATA_TYPE_TIME CFG_DATA_TYPE_BBM CFG_DATA_TYPE_FLEX CFG_DATA_TYPE_MULTIPLEXER

Page 64: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-7

linkmodultype8 (uint8) Link Module Type identifier.

CFG_LINK_MOD_TYPE_LMF1 CFG_LINK_MOD_TYPE_LMF2 CFG_LINK_MOD_TYPE_LMF4 CFG_LINK_MOD_TYPE_LMF8 CFG_LINK_MOD_TYPE_LMFGSS CFG_LINK_MOD_TYPE_LMR CFG_LINK_MOD_TYPE_LMF1G CFG_LINK_MOD_TYPE_MDR CFG_LINK_MOD_TYPE_EMU (emulated link module used for the

D4Launcher) CFG_LINK_MOD_TYPE_MDR8 CFG_LINK_MOD_TYPE_MDR2_HS CFG_LINK_MOD_TYPE_MDR8_HS

linkchainspeed8 (uint8) Link Chain Speed identifier.

CFG_LINK_CHAIN_SPD_800 CFG_LINK_CHAIN_SPD_1000 CFG_LINK_CHAIN_SPD_1600 CFG_LINK_CHAIN_SPD_2000

linkchainmode8 (uint8) Link Chain Mode identifier.

CFG_LINK_CHAIN_MODE_NO_HW: No hardware

CFG_LINK_CHAIN_MODE_OFF: No Modules found

CFG_LINK_CHAIN_MODE_DATA Data modules found

CFG_LINK_CHAIN_MODE_TIME Time module found (virtual)

CFG_LINK_CHAIN_MODE_MASTER We are master, slaves connected

CFG_LINK_CHAIN_MODE_SLAVE We are slave, master controls us

linkchaintype16 (uint16) Link Chain Type identifier.

Bit shift:

sCFG_LINK_CHAIN_TYPE_DATA sCFG_LINK_CHAIN_TYPE_MASTER sCFG_LINK_CHAIN_TYPE_SLAVE sCFG_LINK_CHAIN_TYPE_RESERVED

Bit width:

wCFG_LINK_CHAIN_TYPE_DATA wCFG_LINK_CHAIN_TYPE_MASTER wCFG_LINK_CHAIN_TYPE_SLAVE wCFG_LINK_CHAIN_TYPE_RESERVED

lm_options32 (uint32) Link Module Options for LMFx

LINK_MOD_OPT_ETH0: Ethernet0 interface exist LINK_MOD_OPT_ETH1: Ethernet1 interface exist LINK_MOD_OPT_USBH: USB Host interface exists LINK_MOD_OPT_USBT: USB Target interface exists LINK_MOD_OPT_FW: FireWire (IEEE1394b) interface exist LINK_MOD_OPT_SAS: SAS interface exists LINK_MOD_OPT_KNOWS_RND_SEEDS: Randomize seeds support LINK_MOD_OPT_SA_SUPPORT: Stand-alone recorder functions enabled. LINK_MOD_OPT_FAN Cooling fan exists

Page 65: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-8

modultype8 (uint8) Module Type identifier.

CFG_MOD_TYPE_DIC6 CFG_MOD_TYPE_DIC24 CFG_MOD_TYPE_CHG6 CFG_MOD_TYPE_DEBU CFG_MOD_TYPE_UAR100 CFG_MOD_TYPE_UAP100 CFG_MOD_TYPE_ARR100 CFG_MOD_TYPE_ARP100 CFG_MOD_TYPE_VCR100 CFG_MOD_TYPE_VCP100 CFG_MOD_TYPE_ANH100 CFG_MOD_TYPE_ANH101 CFG_MOD_TYPE_MRG100 CFG_MOD_TYPE_ETH100 CFG_MOD_TYPE_TIME CFG_MOD_TYPE_ASM100 CFG_MOD_TYPE_CAN4 CFG_MOD_TYPE_SGU9 CFG_MOD_TYPE_OUT6 CFG_MOD_TYPE_BBM100 CFG_MOD_TYPE_DIC24X CFG_MOD_TYPE_MIC6 CFG_MOD_TYPE_MAMU CFG_MOD_TYPE_MANA8 CFG_MOD_TYPE_MDSC32 CFG_MOD_TYPE_MVCR1 CFG_MOD_TYPE_MVCR2 CFG_MOD_TYPE_MVCR3 CFG_MOD_TYPE_MSTG2 CFG_MOD_TYPE_VCP200 CFG_MOD_TYPE_MVCR4 CFG_MOD_TYPE_MVCR5 CFG_MOD_TYPE_MEMU CFG_MOD_TYPE_MANA16 CFG_MOD_TYPE_TRM100 CFG_MOD_TYPE_TRM200 CFG_MOD_TYPE_TRM300 CFG_MOD_TYPE_MVCR6 CFG_MOD_TYPE_MVCRE CFG_MOD_TYPE_MANA12 CFG_MOD_TYPE_GIM282

Page 66: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-9

channeltype8 (uint8) Channel Type identifier. The IDs will only give a unique ID together with the moduletype8 code (they can have same codes for different main data type).

CFG_CH_TYPE_TIME CFG_CH_TYPE_DIC CFG_CH_TYPE_CHG CFG_CH_TYPE_EBU CFG_CH_TYPE_UAR CFG_CH_TYPE_ARR CFG_CH_TYPE_VCR CFG_CH_TYPE_ANH CFG_CH_TYPE_MRG CFG_CH_TYPE_ETH CFG_CH_TYPE_VCP CFG_CH_TYPE_ARP CFG_CH_TYPE_ASM CFG_CH_TYPE_UAP CFG_CH_TYPE_CAN CFG_CH_TYPE_OUT CFG_CH_TYPE_SGU CFG_CH_TYPE_VOI CFG_CH_TYPE_BBM CFG_CH_TYPE_FLEX CFG_CH_TYPE_MIC CFG_CH_TYPE_DSC CFG_CH_TYPE_STG CFG_CH_TYPE_PAR CFG_CH_TYPE_MC10T CFG_CH_TYPE_TRM CFG_CH_TYPE_MRG_OUT CFG_CH_TYPE_IEEE1394 CFG_CH_TYPE_GIN CFG_CH_TYPE_GRPM CFG_CH_TYPE_GOUT

Page 67: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-10

modulemaintype8 (uint8) Module Main-Type

CFG_MOD_MREV_DIC6B CFG_MOD_MREV_DIC6L CFG_MOD_MREV_MANA8 CFG_MOD_MREV_MANA8A CFG_MOD_MREV_MANA16_IEPE CFG_MOD_MREV_MANA16_AC CFG_MOD_MREV_MANA16_DC CFG_MOD_MREV_MANA12 CFG_MOD_MREV_DEBU_B CFG_MOD_MREV_DEBU_L CFG_MOD_MREV_CHG6 CFG_MOD_MREV_CHG6F CFG_MOD_MREV_DIC24AC CFG_MOD_MREV_DIC24DC CFG_MOD_MREV_DIC24X CFG_MOD_MREV_MIC6_L CFG_MOD_MREV_OUT6_B CFG_MOD_MREV_OUT6_L CFG_MOD_MREV_SGU9_L CFG_MOD_MREV_GIM282 CFG_MOD_MREV_GIM282C CFG_MOD_MREV_CAN4 CFG_MOD_MREV_CAN4F CFG_MOD_MREV_MCAN4 CFG_MOD_MREV_MRG100 CFG_MOD_MREV_MMRG8 CFG_MOD_MREV_MMRG8A CFG_MOD_MREV_UAR100 CFG_MOD_MREV_MUAR6 CFG_MOD_MREV_MUAR6F CFG_MOD_MREV_ARR100 CFG_MOD_MREV_MARR16 CFG_MOD_MREV_MARR16A CFG_MOD_MREV_VCR100 CFG_MOD_MREV_MVCR1 CFG_MOD_MREV_MVCR1A CFG_MOD_MREV_MVCR2 CFG_MOD_MREV_MVCR3 CFG_MOD_MREV_MVCR4 CFG_MOD_MREV_MVCR4A CFG_MOD_MREV_MVCR5 CFG_MOD_MREV_MVCR6 CFG_MOD_MREV_MVCRE

Page 68: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-11

CFG_MOD_MREV_ASM100 CFG_MOD_MREV_MUSM16 CFG_MOD_MREV_SOFTUART CFG_MOD_MREV_ETH100 CFG_MOD_MREV_METH2 CFG_MOD_MREV_METH2A CFG_MOD_MREV_METHSOFT CFG_MOD_MREV_TIME CFG_MOD_MREV_MTIME CFG_MOD_MREV_BBM100 CFG_MOD_MREV_MAMU CFG_MOD_MREV_MAMUA CFG_MOD_MREV_MMMMM_1E1E_BBBB CFG_MOD_MREV_MMMMM_1E1E_ABAB CFG_MOD_MREV_MMMMM_3E3E_BBBB CFG_MOD_MREV_MMMMM_3E3E_ABAB CFG_MOD_MREV_MMMMM_7E7E_BBBB CFG_MOD_MREV_MMMMM_7E7E_ABAB CFG_MOD_MREV_MAAAA_BBBB_BBBB CFG_MOD_MREV_MPAR CFG_MOD_MREV_MCH10T CFG_MOD_MREV_MMMEE_7EBB_ABAA CFG_MOD_MREV_MNUAE_BTBB_BBBB CFG_MOD_MREV_MAAAA_BBBB_AAAA CFG_MOD_MREV_MMMSS_77BB_AABB CFG_MOD_MREV_MCH10TA CFG_MOD_MREV_MUUUU_TTTT_BBBB CFG_MOD_MREV_MAAEE_BBBB_BBBB CFG_MOD_MREV_MAAAE_BBBB_BBBB CFG_MOD_MREV_MMMUE_3ETB_ABAA CFG_MOD_MREV_MUUUU_TTTT_AAAA CFG_MOD_MREV_MSAEE_BBBB_BBBB CFG_MOD_MREV_MTVME_TM7B_BBAA CFG_MOD_MREV_MTVMD_TM7B_BBAB CFG_MOD_MREV_MNNEE_NNBB_NNFF CFG_MOD_MREV_MMMAA_77BB_BBBB CFG_MOD_MREV_MFFFF_IIII_BBBB

modulesubtype8 (uint8) Module Sub-Type

CFG_MOD_SREV_DIC6_LINK CFG_MOD_SREV_DIC6_USB_ONLY

CFG_MOD_SREV_MIC6 CFG_MOD_SREV_MIC6_USB_ONLY

CFG_MOD_SREV_MMRG8_100 CFG_MOD_SREV_MMRG8_75 CFG_MOD_SREV_MUAR6_TRA CFG_MOD_SREV_MUAR6_DIR CFG_MOD_SREV_MAMU_TRA_100 CFG_MOD_SREV_MAMU_DIR_100 CFG_MOD_SREV_MAMU_TRA_75 CFG_MOD_SREV_MAMU_DIR_75

Page 69: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-12

supported8 (uint8) Supported Flag.

CFG_NOT_SUPPORTED CFG_SUPPORTED

calibmode8 (uint8) Calibration Mode.

CAL_MODE_AUTO_OFF CAL_MODE_AUTO_ON ( currently not supported!) CAL_MODE_UNKNOWN

calibtype8 (uint8) Calibration Type.

CAL_CURR_RANGE CAL_ALL_RANGES CAL_TYPE_UNKNOWN

componentid32 (uint32) Component Identifier. The ID assigned to the particular component:

CID_CTRL_FPGA_<n> CID_CTRL_CPLD_<n> CID_CTRL_FW CID_SUBMOD__FPGA_<n> CID_IO_FPGA_<n> CID_IO_CPLD_<n> CID_IO_FW CID_SID_<n> CID_CTRL_MOD_SLOT CID_FPGA_BLOCK_<n> CID_FW_BLOCK_<n> CID_LM_FPGA CID_LM_FPGA_TYPE CID_LM_CPLD CID_LM_FW CID_LM_SUB_FW CID_LM_SUB_CPLD CID_LM_MAIN_FW1 CID_LM_TIME_FW CID_LM_DATA_FW CID_MCRC_FW CID_MCRC_SUB_FW CID_MCRC_BUILD

enabled8 (uint8) Enabled Flag.

PAR_DISABLED PAR_ENABLED PAR_ENABLED_FOR_PLAY PAR_ENABLED_FOR_BOTH PAR_UNKNOWN

Page 70: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-13

yesno8 (uint8) Feature Exists / Not Exists

PAR_NO PAR_YES PAR_UNKNOWN

replay_assignment32 (uint32) The channel replayed by an output channel codes as follows:

If the value is below 0x00010000 (in other words Bits 31-16 are all zero), then the value is directly the replayed channel id.

If the value is above 0x00ffffff but below 0x02000000 (in other words Bits 31-24 are 0x01), then Bits 23-16 code for the DATA TYPE of the channel to be replayed (For the currently defined data types Bits 18-16 have to be zero, as different values in this bits code for different versions of the same principal data type). Bits 15-0 give the channel number of that type. As an example 0x01080005 indicates the 5th DCM channel of the recording (PCMIN-5 in the syntax of the .ASSIGN command)

All other values (0x00010000-0x00ffffff and 0x02000000-0xffffffff) are reserved for extensions.

displaymode8 (uint8) Display Mode

DP_MODE_AUTO - display & LEDs are switched off after a given time determined by ‘Display Parameter’ in msec.

DP_MODE_ON - display & LEDs are always on. DP_MODE_OFF - display & LEDs are always off. DP_FIX_TEXT - 4 characters are displayed determined by

‘Display Parameter’ in 8 bit ASCII coding. DP_MODE_UNKNOWN

Note: modes ‘DP_MODE_OFF’ and ‘DP_MODE_AUTO’ are available from firmware version:

3.02 – DIC6, CHG6, DEBU, MIC6, DIC24, DIC24Plus

3.05 – OUT6, GIM282

autocal_mode8 (uint8) Autocalibration Mode for DIC6, CHG6, DEBU, MIC6, SGU9, DIC24, DIC24Plus and GIM282

AUTO_CAL_OFF – only command triggered calibration AUTO_CAL_ON – automatic calibration after parameter change

and startup AUTO_CAL_UNKNOWN

Note: function is available from firmware version: 3.00 – DIC6, CHG6, DEBU, MIC6, DIC24, DIC24Plus

3.05 – GIM282

play_cal_mode8 (uint8) Play Calibration Mode for OUT6

ENABLE_PLAY_CALIB – enable calibration before Play start DISABLE_PLAY_CALIB – disable calibration before Play start PLAY_CALIB_UNKNOWN

Note: function is available from firmware version: 3.05 – OUT6

Page 71: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-14

anainselection8 (uint8) Analog Input Selection for DIC6 and DEBU

PAR_INPUT_SINGLE_ENDED PAR_INPUT_SYMMETRICAL PAR_INPUT_UNKNOWN

anainsensor8 (uint8) Input Sensor Type Selection for DIC6, DIC24 and DEBU

PAR_SENSOR_NORMAL PAR_SENSOR_TEDS PAR_SENSOR_UNKNOWN

dic6_power8 (uint8) Analog input power selection for DIC6, DIC24 and DEBU modules

PAR_ANA_POWER_NO PAR_ANA_POWER_ICP PAR_ANA_POWER_UNKNOWN

dic6_lpfil8 (uint8) Analog LP filter selection for DIC6 and DEBU

PAR_FILTER_NO PAR_FILTER_LP_500Hz (optional) PAR_FILTER_LP_1kHz (optional) PAR_FILTER_LP_4kHz (optional) PAR_FILTER_LP_UNKNOWN

dic6_hpfil8 (uint8) Analog HP filter selection for DIC6 and DEBU

PAR_FILTER_NO PAR_FILTER_AC_0_2Hz PAR_FILTER_HP_22Hz (optional) PAR_FILTER_HP_UNKNOWN

anh_lpfil8 (uint8) Analog LP filter selection for DIC6 and DEBU

PAR_FILTER_ANH_LP_1P25MHZ PAR_FILTER_ANH_LP_10MHZ PAR_FILTER_LP_UNKNOWN

anh_hpfil8 (uint8) Analog HP filter selection for DIC6 and DEBU

PAR_FILTER_ANH_AC PAR_FILTER_ANH_DC PAR_FILTER_HP_UNKNOWN

chg6_lpfil8 (uint8) Analog LP filter selection for CHG6

PAR_FILTER_NO PAR_FILTER_LP_500Hz (optional) PAR_FILTER_LP_1kHz (optional) PAR_FILTER_LP_2kHz (optional) PAR_FILTER_LP_5kHz (optional) PAR_FILTER_LP_UNKNOWN

chg6_hpfil8 (uint8) Analog HP filter selection for CHG6

PAR_FILTER_AC_1Hz PAR_FILTER_HP_0_2Hz (optional) PAR_FILTER_HP_UNKNOWN

Page 72: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-15

fanmode8 (uint8) Fan Mode selection for CHG6F

FAN_MODE_AUTO, FAN_MODE_ON, FAN_MODE_OFF, FAN_MODE_UNKNOWN

dic6_specials8 (uint8) Analog Input Special Processing

PAR_SPECIALS_NO PAR_SPECIALS_JOIN PAR_SPECIALS_UNKNOWN

dic6_opmode8 (uint8) Analog operation mode selection

PAR_ANAMODE_NORMAL PAR_ANAMODE_RPM PAR_ANAMODE_UNKNOWN

mic6_hpfil8 (uint8) Analog HP filter selection for MIC6

PAR_FILTER_AC_0_2Hz PAR_FILTER_HP_22Hz PAR_FILTER_HP_UNKNOWN

mic6_polar8 (uint8) Polarization power selection for MIC6

PAR_POLAR_POWER_0V PAR_POLAR_POWER_200V PAR_POLAR_POWER_UNKNOWN

mic6_preamp8 (uint8) Preamplifier power selection for MIC6

PAR_PREAMP_POWER_28V PAR_PREAMP_POWER_PM60V PAR_PREAMP_POWER_UNKNOWN

Milcoupling8 (uint8) Input / Output coupling of a MIL 1553 channel

PAR_COUPLING_DIRECT PAR_COUPLING_TRANSFORMER PAR_COUPLING_UNKNOWN

mil_filter_mode8 (uint8) MIL 1553 Filter Type

ALL_TYPE (all messages) RTRT_ONLY (RT-RT transfer, only Transmit command defined) TR_REC_ONLY (RT-RT excluded) RTRT_RECEIVE_TRANSMIT (RT-RT with receive and transmit commands both defined) MIL_FILTER_UNKNOWN

arinc_filter_mode8 (uint8) ARINC-429 Filter Mode

PAR_ARINC_FLT_OFF, default, filter off PAR_ARINC_FLT_EXCLUDE, exclude the specified labels PAR_ARINC_FLT_INCLUDE, include the specified labels PAR_ARINC_FLT_UNKNOWN

Page 73: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-16

discrete_op_mode8 (uint8) Discrete Input Operation Mode

OPMODE_EXTERNAL, OPMODE_CHANGE OPMODE_INTERNAL OPMODE_UNKNOWN

discrete_hold_mode8 (uint8) Discrete Input Debounce Mode

HOLD_MIN_PULSE (the change is not validated until pulse is stable up to the specified time, shorter glitches and spikes than specified time are filtered out)

HOLD_OFF_MODE = 1, (first edge taken, no change checked up to the hold time reached from here)

HOLD_MODE_UNKNOWN

discrete_sense_mode8(uint8) Discrete Sense Mode

SENSEMODE_GND_OPEN (internal pull up resistor)

SENSEMODE_SUPPLY_OPEN (internal pull down resistor)

SENSEMODE_UNKNOWN

discrete_threshold_mode8

(uint8)

Discrete Threshold Mode

THRESHOLD_MODE_A

THRESHOLD_MODE_B

THRESHOLD_MODE_UNKNOWN

can_bitrate32 (uint32) CAN Bitrate

Range for the Bitrate setting is between 6250 and 1000000 (bit/s); the CAN Controller supports 31 particular Bitrate settings; for different entered integer values, the CAN4 Module auto-selects the next possible setting; there are predefines for common Bitrates: CAN_BITRATE_HIGH (eq. 1000000 bit/s) CAN_BITRATE_MED (eq. 500000 bit/s) CAN_BITRATE_LOW (eq. 125000 bit/s) CAN_BITRATE_UNKNOWN

can_spnt8 (uint8) CAN Sampling Point Position in % (important for Resynchronization)

Percentage value can be between 15 and 90 (default: 50)

can_sjw8 (uint8) CAN Resynchronization jump width

Value can be between 0 and 3 time quanta (default: 0)

can_termination8 (uint8) CAN channel termination

CAN_TERM_DEFAULT (for Play: as recorded) CAN_TERM_OFF CAN_TERM_ON CAN_TERM_UNKNOWN

can_samplmode8 (uint8) Sampling Mode for incoming CAN messages

CAN_SAMPL_DIRECT CAN_SAMPL_3P CAN_SAMPL_UNKNOWN

Page 74: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-17

can_edgemode8 (uint8) Edge Mode tells which edges are used for CAN Resynchronization

CAN_EDGE_ONLY_RD CAN_EDGE_RD_DR CAN_EDGE_UNKNOWN

can_silentmode8 (uint8) CAN silent (listen-only) mode

CAN_SILENT_OFF CAN_SILENT_ON CAN_SILENT_UNKNOWN

ethernet_speed8 (uint8) Ethernet speed

PAR_ETH_AUTONEG PAR_ETH_FORCE1000MBPS PAR_ETH_FORCE100MBPS PAR_ETH_FORCE10MBPS PAR_ETH_LAST_SPEED

ethernet_conn (uint8) Ethernet connection mode

PAR_ETH_NORMAL PAR_ETH_BRIDGE PAR_ETH_LOOPBACK

ethernet_filter (uint8) Ethernet filter

PAR_ETH_NOFILTER PAR_ETH_FILTER_V1 PAR_ETH_FILTER_VERSION = 0x0F PAR_ETH_DOWNLINK_FLAG = 0x10, PAR_ETH_TRANSMIT_MSG_FLAG = 0x20

eth_flt_proto_type (uint8) Ethernet filter protocol type

PAR_ETH_FLT_ETHERNET PAR_ETH_FLT_IP_V4 PAR_ETH_FLT_TCP PAR_ETH_FLT_UDP PAR_ETH_FLT_UDP_CUTCH10

eth_flt_word_len (uint8) Ethernet filter word length

PAR_ETH_FLT_LEN_8=8 PAR_ETH_FLT_LEN_16=16 PAR_ETH_FLT_LEN_32=32

eth_flt_offset (uint8) Ethernet filter offset type

PAR_ETH_OFFSET_ETHERNET PAR_ETH_OFFSET_PAYLOAD

Page 75: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-18

val32 (fvalue32) Signed fraction of full scale: int32/2^31

or VAL32_UNKNOWN

gain32 (val32) The signed gain calibration value: Raw values acquired from the analog to digital converter are multiplied by 1+ (gain32 / 231) before being put into the measurement data stream.

or GAIN32_UNKNOWN

offset32 (val32) The signed offset calibration value. This signed value is added to each raw sample from the analog to digital converter before the value is committed to the measurement data stream.

or OFFSET32_UNKNOWN

pcmlevel8 (uint8) PCM Input Level

PAR_LEVEL_SYMMETRICAL PAR_LEVEL_SINGLE_ENDED PAR_LEVEL_SINGLE_ENDED_NOGND PAR_LEVEL_UNKNOWN

pcmcode8 (uint8) PCM Coding

PAR_CODE_NRZ-L PAR_CODE_NRZ-M PAR_CODE_NRZ-S PAR_CODE_BIPH_L PAR_CODE_BIPH_M PAR_CODE_BIPH_S PAR_CODE_INTERNAL PAR_CODE_OUT_OFF PAR_CODE_UNKNOWN

clockedge8 (uint8) PCM Clock Edge Selection

PAR_EDGE_FALLING PAR_EDGE_RISING PAR_EDGE_UNKNOWN

invert8 (uint8) PCM Data Invert Mode

PAR_NO_INVERT PAR_INVERT PAR_INVERT_UNKNOWN

inpcmterm8 (uint8) PCM Input Termination

PAR_TERMINATION_75 PAR_TERMINATION_100 PAR_TERMINATION_22k PAR_INVERT_UNKNOWN

Page 76: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-19

randomization8 (uint8) PCM Randomization Method

PAR_RANDOM_OFF PAR_RANDOM_F11 PAR_RANDOM_F15 PAR_RANDOM_F17 PAR_RANDOM_R11 PAR_RANDOM_R15 PAR_RANDOM_R17 PAR_RANDOM_UNKNOWN

gatedclock8 (uint8) PCM Output Data Gated

PAR_OUT_CLOCK_NORMAL PAR_OUT_CLOCK_GATED PAR_OUT_CLOCK_UNKNOWN

packingmode8 (uint8) PCM channel packing mode

PAR_PACKING_THROUGHPUT PAR_PACKING_PACKED PAR_PACKING_UNPACKED PAR_PACKING_UNKNOWN

align8 (uint8) PCM Word Alignment Type

PAR_MSB_FIRST PAR_LSB_FIRST PAR_ALIGNMENT_UNKNOWN

pcm_filter_mode8 (uint8) PCM Filter Mode

PCM_FLTM_OFF (filter defined, but turned off) PCM_FLTM_INCLUDE (selected words are included) PCM_FLTM_EXCLUDE (selected words are excluded)

pcm_filter_type8 (uint8) PCM Filter Type

PCM_FLTT_WORD_DECIMATION

vcr_input_output8 (uint8) Video Input/Output Selection

PAR_COMPOSIT PAR_S_VIDEO PAR_INOUT_UNKNOWN

vcr_bitratemode8 (uint8) Video Compression Bitrate Mode

PAR_COMPR_CBR PAR_COMPR_VBR PAR_COMPR_UNKNOWN

vcr_colorstandard8 (uint8) Video Color Standard

PAR_PAL PAR_NTSC PAR_SECAM PAR_PAL60 PAR_NTSC50 PAR_COLOR_STAND_UNKNOWN

Page 77: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-20

vcr_resolution8 (uint8) Video Resolution

PAR_RES_D1 PAR_RES_HD1 PAR_RES_SIF PAR_RES_UNKNOWN

vcr_gopstruct8 (uint8) Video GOP Structure

PAR_GOP_IIII PAR_GOP_IPPP PAR_GOP_IBPB PAR_GOP_IBBP PAR_GOP_UNKNOWN

vcr_audiobitrate16 (uint16) Audio Bitrate

PAR_ABITR_0 PAR_ABITR_32 PAR_ABITR_48 PAR_ABITR_56 PAR_ABITR_64 PAR_ABITR_80 PAR_ABITR_96 PAR_ABITR_112 PAR_ABITR_128 PAR_ABITR_160 PAR_ABITR_192 PAR_ABITR_224 PAR_ABITR_256 PAR_ABITR_320 PAR_ABITR_384 PAR_ABITR_UNKNOWN

vcr_audiomuxmode8 (uint8) Audio Multiplexing Mode

PAR_AMUX_OFF PAR_AMUX_CH1_TO_ALL PAR_AMUX_UNKNOWN

vcr_dcmnrz8 (uint8) DCM NRZ coding

PAR_DCMNRZ_OFF PAR_DCMNRZ_ON PAR_DCMNRZ_UNKNOWN

vcr_videomonmode8 (uint8) Video Monitor Output Mode

PAR_VMON_OFF PAR_VMON_DIRECT PAR_VMON_TIMESTAMP PAR_VMON_UNKNOWN

Page 78: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-21

vcr_color8 (uint8) Video Color (for overlayed timestamp and text)

PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA PAR_COLOR_UNKNOWN

vcr_flags (uint8) Video flags

FLAGS_INTERLACED

vcr_sdi_mode (uint8) Video SDI mode

SDI_MODE_SD SDI_MODE_HD SDI_MODE_3G SDI_MODE_6G

vcp_outputsel8 (uint8) Video Output Selection

PAR_COMPOSIT PAR_S_VIDEO PAR_COMPOSIT_S_VIDEO PAR_RGB PAR_OUTSEL_UNKNOWN

vcp_colorstandard8 (uint8) Video Color Standard

PAR_AUTO PAR_NTSC PAR_PAL PAR_SECAM PAR_COLOR_STAND_UNKNOWN

vcp_sourcesel8 (uint8) Video Source Selection

PAR_SRC_AUTO PAR_SRC_DATA PAR_SRC_DCM PAR_SRC_TESTPATTERN PAR_SRC_UNKNOWN

vcp_dcmterm8 (uint8) DCM Input Termination

PAR_TERM_OFF PAR_TERM_100OHM PAR_TERM_UNKNOWN

vcp_dcmlevel8 (uint8) DCM Input Level Selection

PAR_LEVEL_TTL PAR_LEVEL_RS422 PAR_LEVEL_UNKNOWN

Page 79: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-22

vcp_pidmode8 (uint8) PID Identification Mode

PAR_PID_HEIM PAR_PID_USER_DEFINED PAR_PID_UNKNOWN

Page 80: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-23

vcp_color8 (uint8)0 Video Colors

PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA PAR_COLOR_BLACK_TRANSP PAR_COLOR_WHITE_TRANSP PAR_COLOR_RED_TRANSP PAR_COLOR_GREEN_TRANSP PAR_COLOR_BLUE_TRANSP PAR_COLOR_YELLOW_TRANSP PAR_COLOR_CYAN_TRANSP PAR_COLOR_MAGENTA_TRANSP PAR_COLOR_UNKNOWN

anh_inputterm8 (uint8) ANH100/101 Input Termination

PAR_TERMINATION_75OFF PAR_TERMINATION_75SE PAR_TERMINATION_75SYMM PAR_TERMINATION_UNKNOWN

fibre_dtf8 (uint8) Fibre Channel Data Type Format

FC_DTF_PH

fibre_speed8 (uint8) Fibre Channel Frame Capture Speed

FC_SPEED_1GFC

4.3.3 Channel Status Bit Words

Name Description

timestatus32 (uint32) Time Channel Health Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: No External Time bit 3: Bad External Signal bit 4: Synchronize Failure

Busy bits: bit 8: Time syncing (new time source found, trying to validate)

Vendor specific bits: bit 16: 10PPS present bit 17: 1PPS present bit 18: Time jump occurred bit 19: Prevented a time jump seen on an external source (during

recording) by locking to the internal clock instead. bit 20: Invalid IRIG106 Day of Year value bit 21: IRIG106 Year decoding enabled and invalid year was received bit 22: Top priority time source lost bit 23: Relative counter synchronization pending (Reference Time

Counter Synchronization is in progress or failed) bit 28: Overtemperature Warning bit 31: Buffer Overflow

Page 81: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-24

irigstatus32 (uint32) External IRIG input status bits (bit 0 is the lsb)

bit 0: 1 pps input exists bit 1: 10 pps input exists bit 2: IRIG-A valid bit 3: IRIG-B valid bit 4: IRIG-G valid bit 5: year information is available in IRIG code

Vendor specific bits: bit 31: Buffer Overflow

asmstatus32 (uint32) External GPS input status bits (bit 0 is the lsb, the GPS channel is a special uart channel)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Bad Signal Error (i.e. UART framing error) bit 3: Data Content error (NMEA format not recognized, bad time

value etc.) Vendor specific bits:

bit 16: Start Error bit 17: Break Error bit 18: Framing Error bit 19: Parity Error bit 20: No Signal Error

bit 28: Overtemperature Warning bit 31: Buffer Overflow

anastatus32 (uint32) Analog Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: No Analog Signal bit 3: Bad Analog Signal (currently only analog overflow checked)

Busy bits: bit 8: Channel in calibration bit 9: Channel in setup bit 10: Channel in synch bit 12 Channel in ICP Power process (DIC6/DEBU6/MIC6)

Vendor specific bits: bit 16: No Measurement data are supported bit 17: Low Power Detection (DICx/DEBU/MIC/SGU) bit 18: Sensor Power Error (SGU bridge power overload, GIM282 ICP

low current detected) bit 19: Bridge Power Error (SGU) bit 20: Auto Zero Error (SGU) bit 21: Fan Locked (SGU) bit 22: Calibration Error bit 23: PowerError bit 28: Overtemperature Warning bit 31: Buffer Overflow

Note:

In case of SGU9: Channel in setup is set if the modul has something to do e.g. is in Calibration, AutoZero, BridgePowerSet, SetRange or has something in its queues.

Page 82: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-25

arincstatus32 (uint32) ARINC-429 Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Parity Error bit 3: Format Error bit 7: Watch Word Missing

Vendor specific bits: bit 28: Overtemperature Warning bit 31: Buffer Overflow

milstatus32 (uint32) MIL1553 Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Response Timeout Error bit 3: Format Error bit 4: Invalid Word Error bit 5: Word Count Error bit 7: Watch Word Missing

Vendor specific bits: bit 28: Overtemperature Warning bit 31: Buffer Overflow

pcmstatus32 (uint32) PCM Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Bad Clock Error bit 3: Bad Data Error bit 4: Minor Frame Sync Failure bit 5: Major Frame Sync Failure bit 6: Bit Synch Lock Failure bit 7: Watch Word Missing

Vendor specific bits: bit 16: Major Frame to Long bit 17: External Clock Timeout bit 18: No Data Input or Unstable bit 19: Bad Clock Edge bit 20: Packet Timeout bit 28: Overtemperature Warning bit 30: Buffer Underflow bit 31: Buffer Overflow

pcminfo32 (uint32) PCM Channel Information Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: PCM Synchron Word Detected bit 3: Minor Frame Locked bit 4: Major Frame Locked bit 5: Watch Word Detected

Vendor specific bits: bit 28: Overtemperature Warning bit 31: Buffer Overflow

Page 83: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-26

videostatus32 (uint32) Video Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: No Video Signal Error bit 3: Bad Video Signal Error bit 4: No Audio Signal Error bit 5: Bad Audio Signal Error

Vendor specific bits: bit 16: KLV FIFO Full Error (MVCR3 only) bit 17: KLV Length Error (MVCR3 only) bit 18: KLV Interlace Error (MVCR3 only) bit 19: KLV Checksum Error (MVCR3 only) bit 20: KLV Parity Error (MVCR3 only) bit 21: RTP Sequence Error (MVCRE only) bit 22: Video Frame Missing Error (MVCRE only) bit 23: Scaler Error (MVCR2, MVCR4 and MVCR6 only) bit 24: Scaler PLL lock Error (MVCR2, MVCR4 and MVCR6 only) bit 25: Scaler Loopback Error (MVCR2, MVCR4 and MVCR6 only) bit 26: FPGA Error bit 27: Video Encoder Error bit 28: Overtemperature Warning bit 29: Zero Bit Rate (MVCR-SDI4 only) bit 31: Buffer Overflow

canstatus32 (uint32) CAN Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Data Content Error bit 3: Bad Signal Error

Vendor specific bits: bit 16: Bus Disturbed bit 17: Error Passive bit 18: Bus Off bit 19: Stuff Error bit 20: Overload Error bit 21: Format Error bit 22: CRC Error bit 23: Bit Error bit 24: Acknowledge Error bit 28: Overtemperature Warning bit 31: Buffer Overflow

flexstatus32 (uint32) FlexRay Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error

Vendor specific bits: bit 16: Bus Speed Error bit 28: Overtemperature Warning bit 31: Buffer Overflow

Page 84: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-27

fibrestatus32 (uint32) Fibre Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error

Vendor specific bits: bit 16: Framing Error bit 17: CRC Error bit 18: Overrun Error bit 19: Format Error bit 20: Data Error bit 28: Overtemperature Warning bit 30: Buffer Underflow bit 31: Buffer Overflow

recorderstatus32 (uint32) Recorder Channel Status Bits (bit 0 is the lsb)

bit 0: Self-Test Error bit 1: Setup Error bit 2: Operation Failure bit 3: Media Busy bit 4: No Media bit 5: Media IO Error bit 6: Media Almost Full bit 7: Media Full

Vendor specific bits: bit 16: Mechanical Locking Failure bit 17: Power Redundancy Failure bit 18: General Warning (reason can be read from warning_flags) bit 28: Overtemperature Warning bit 31: Buffer Overflow

warningflags32 (uint32) Warning Flags, reason for recorderstatus32 Gen. Warning (bit 0 is the lsb)

bit 0: Module Position Changed bit 1: Bit rate too high bit 2: Low Power

4.3.4 Error Reporting

In case of errors the OID_ERROR message is returned – which returns a reason specific code for the reason of the error and a parameter for further identification.

Error Report 4.3.4.1

Associated IDC: IDC_ERROR_REPORT

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Error Reason Code

+4 Error Parameter (Error Reason Code dependent) It can be either a component ID, or the error position offset in bytes.

+8 Optional Parameter 1

+12 Optional Parameter 2

Page 85: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-28

Error Reason Codes

ERR_NOT_SUPPORTED Not supported information (IDC) is requested.

ERR_BAD_PARAMETER One or more field of the parameters sent with OID_SET is invalid. The Error Parameter will be set to the offset of one of the error position.

ERR_ARM_FAILED The OID_ARM command failed. The Error Parameter will be set to the Component ID of the failing part.

ERR_10PPS The 10 pps pulse is not equal of 1000000 count of the 10 MHz counter. The Error Parameter is the measured value.

ERR_INVALID_MSG_SYNCH Synchronic message pattern not found in the message.

ERR_INVALID_OID Invalid or not supported OID found.

ERR_INVALID_ADDRESS Message rejected because of an invalid address.

ERR_UNIT_IN_CALIBRATION Command can’t be executed because the unit is calibrating.

ERR_TIME_OUT Message timed out.

ERR_NOT_EXISTING Not existing device (e.g. SID, TEDS, etc. ).

ERR_INTERNAL_ERROR Internal communication error.

ERR_BUSY Device currently busy ( e.g. remote memory full)

ERR_INACTIVE Function or feature currently inactive (e.g. stand-alone recording)

ERR_PARAMETER_SIZE_BAD Parameter size bigger then HSD4_MAX_PARAM_SIZE

4.3.5 Broadcast Messages

Initialization of Free Running 10MHz Counter 4.3.5.1

The 10MHz counter is used to generate time stamps in accordance with Ch10 specifications.

Associated IDC: IDC_SYNCH_COUNTER

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Init Value, 64bit word

+4

Page 86: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-29

4.3.6 Configuration Information

Link Module Configuration 4.3.6.1

This information is part of the system configuration packet and appears every 1sec. in the data stream.

Associated IDC: IDC_LINK_MODULE_CONFIGURATION

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved (0)

Link Module Type (linkmodultype8)

num_of_slots (unit8_t) sub_type (uint8_t)

+4 Link Module Options (Link Module Specific) (lm_options32)

+8 Serial Number, binary number from the 6-digit production serial number

+12 Production Date, binary version of the 6 digit from the production Month.Year

+16 FPGA Version CPLD Version

+20 Firmware Main Version Firmware Sub Version

+24 48 bit MAC address for first Ethernet port (0x001450xxxxxx = Heim Systems)i

+28

+32 48 bit MAC address for the second Ethernet port

+36

+40 IEEE 1394 GUID (0x001450xxxxxxxxxx = Heim Systems)

+44

+48 Reserved1

+52

+56 Reserved2

+60

+64 Reserved3

+68

+72 Number of Subcomponent Entries ii *

+0 { Link Chain Number Link Chain Speed (linkchainspeed8)

Link Chain Mode (linkchainmode8)

+4 Link Chain Type (linkchaintype16)

Number of modules connected on this Link Chain }

Comments: i Only the lower significant 48 bits of the 64 bit field are used. ii The Number of followed structures (LinkChainConfig).

4.3.7 Module Configuration

This information is part of the system configuration packet and appears every 1sec. in the data stream.

Associated IDC: IDC_MODULE_CONFIGURATION

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

Page 87: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-30

bytes +0 +1 +2 +3

+0 Module Dataiii Type (datatype8)

Module Type (modultype8)

Module Main Type (modulmaintype8)

Module Sub Type (modulesubtype8)

+4 Module Options (Module Specific)

+8 Serial Number, binary number from the 6-digit production serial number

+12 Production Date, binary version of the 6 digit from the production month and year

+16 Hardware Main Version Hardware Sub Version

+20 Firmware Main Version Firmware Sub Version

+24 Number of Subcomponent Entries iv *

+0 { Channel Data Type (datatype8)

Channel Type (channeltype8)

Channel Sub Type Channel Revision Number

+4 Channel Options (Channel Specific, see 4.3.7.1)

+8 Record Capable (supported8)

Replay Capable (supported8)

Number of channels with the same data and channel type v. }

Comments: iii The Link mode type is CFG_DATA_TYPE_MULTIPLEXER iv The number of structures (ChannelConfig) with the same data and channel types. v E.g. 24 for a DIC24 module.

Channel Options 4.3.7.1

The Channel Options are logically OR’ed constants. To check if an option is set or not use calculation of the form “if(option & CONSTANT) …”

Channel Options for DIC6

CFG_CH_OPT_DIC6_LP The 500Hz, 1kHz and 4kHz LP filter exists

CFG_CH_OPT_DIC6_HP The 22Hz HP filter exists

Channel Options for CHG6

CFG_CH_OPT_CHG6_LP The 500Hz, 1kHz, 2kHz and 5kHz LP filter exists

CFG_CH_OPT_CHG6_HP The 0.2Hz (inp. range >= 200pC) and 1Hz HP filters exist

Version Information 4.3.7.2

This information is not part of the system configuration packet (i.e. has to be requested via remote command).

Associated IDC: IDC_COMPONENT_VERSIONS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Number of Component Description entries *

+0 {Component ID (componentid32)

+4 Length in bytes

+8 Component Version Data }

Page 88: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-31

4.3.8 Link Module Parameters

This information is part of the system configuration packet and appears every 1sec. in the data stream. It can be requested separately via remote command as well.

Link Module Parameters 4.3.8.1

Associated IDC: IDC_LINK_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled(1)vi revision_id tmats_ver clshdn_mode

+4 reserved (0)vii

+8 reserved (0)vii

+12 Netmask eth0 mask (uint32) (e.g. 0xfffff000 = 255.255.240.0)viii

+16 Ip address eth0 (uint32) (e.g.0x0b3b13ca = 11.59.19.202)

+20 fs_mode (uint8) default_eth_port base_port (uint16) (default = 5000)

+24 baudrate (uint32) (by default=115200)

+28 reserved (0) vii

+32 reserved (0)vii

+36 Net mask for eth1 (uint32) (e.g. 0xfffff000 = 255.255.240.0)ix

+40 Ip address eth1 (uint32) (by default = 11.59.19.200)

+44 reserved (0) vii

+48 reserved (0)vii

+52 reserved (0)

+56 serverip (uint32) ( by default = 11.59.17.1)

+60 reserved (0) vii

+64 reserved (0)vii

+68 reserved (0)

+72 gatewayip (uint32) ( by default = 11.59.16.51)

+76 enabled_interfaces (uint32)

+80 contact_mode (uint8) contact_power (uint8) contact_value (uint8) op_mode (uint8)

+84 replay_speedup (uint16) max_rec_file_size_div op_mode2 (uint8)

+88 dimming (uint8) default_fs sua apf rsl ser2mode

+92 feedback_options (uint32)

+96 media_almost_full_val (uint32)

+100 fan_control (uint16) media_almost_full_unit (uint8)

event_mode (uint8)

+104 block_control (uint16) block_delivery_timeout (>=100ms)

+108 analog_master_clock (uint32)

+112 reftime_synch_options (uint32)

+116 fallback_tmo (uint16) reserved (0)

Page 89: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-32

+120 reserved (0)

Comments: vi A Link Module can not be disabled. vii This is the preparation for IPv6. viii If IPv6 is used this field has a different meaning and belongs to the IPv6 address field.

revision_id (uint8) Parameter revision id number.

tmats_ver (uint8) Chapter 10 TMATS version (7, 9, 11, 15 and 17 are supported).

clshdn_mode (uint8) Clean shutdown mode (MDR only: select the most appropriate way to utilize the internal supercapacitor (HCAP) to guarantee clean closing of running record operations when the power supply gets interrupted):

0 = Normal operation: bridge as many repeated power interruptions shorter than 70 ms as possible (until the HCAP is totally drained in the worst case), do a clean shutdown when a power interruption lasts longer than 70 ms

1 = HCAP projection: estimate the left HCAP energy amount and start a clean shutdown when a power interruption lasts longer than 70 ms or when power is interrupted while the projected left HCAP energy is not sufficient to cleanly shutdown after bridging 70 ms – this mode could be used when the power supply is repeatedly interrupted multiple times for shorter than 70 ms during a short time frame, as it would still guarantee a clean shutdown before the HCAP is totally drained

2 = Immediate shutdown: do a clean shutdown when the power is interrupted for the first time (no bridging of 70 ms) – this mode could be used when the HCAP is aged and wouldn’t be sufficient to bridge 70 ms even when fully charged

fs_mode (uint8) Link module file system mode:

0 = Read only (default) 1 = Read and Write Access

Page 90: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-33

contact_mode (uint8) Operating mode of the contact remote interface. Currently the following modes are defined:

0 = PAR_CONTACT_CH10 – Chapter 10 Compatible 1 = PAR_CONTACT_LOOPBACK – for factory testing: contact

remote outputs reflect the current inputs 2 = PAR_CONTACT_EXT1 – event and locked input. 3 = PAR_CONTACT_NVG – MDR night vision goggles mode

brightness control on inputs 3 and 4. 4 = PAR_CONTACT_MCSR – MDR event output to control

MCSR event LED. 5 = PAR_CONTACT_TEST test mode. 6 = PAR_CONTACT_EXT2 – Multi recording mode 7 = PAR_CONTACT_SADR – Save Set Control input and

Media Almost Full output added. 8 = PAR_CONTACT_MDR – Multi Destination Recording

mode. Very similar to the PAR_CONTACT_EXT2 (Multi Recording) mode. But in contrast to this the recordings are made on different medias.

9 = PAR_CONTACT_D7000 – DATaRec-3 D7000 contact remote emulation.

-127 = Reserved for extensions. 128+x = PAR_CONTACT_TRANSPARENT_OUT+x – These

modes operate on the inputs side as mode x, but the outputs are controlled by the contact_value8 field.

255 = Don’t care.

contact_power (uint8) Contact remote power control:

0 = Contact remote power is off 1 = Default on (for the LMF that is 5 V, max 500 mA) 2-254 = Reserved for extensions 255 = Don’t care.

Page 91: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-34

op_mode (uint8) Operation mode bits:

Bit 0: Cold Start Option. If this bit is set the link module starts only if the minimum operating temperature (-15°C) is reached. In order that this bit works, it must be stored in the default save set.

Bit 1: UDP Broadcast Server enable. If this bit is set the UDP broadcast server is started. Use the IDC_UDPB_PARAMETERS to configure the server.

Bit 2: Enable Link Delay Compensation: When set the link characteristics of the link connections will be measured during Module startup. The resulting link delays will the be compensated in the measurement data. As the measurement process takes quite long this should be turned on only when the Increased precision is needed: For phase corrected analog sampling or when using extremely long link cables.

Bit 3: Link delay compensation factory mode: Do not use for data acquisition. This mode is used to calibrate the link delay measurement hardware – the Link delays are measured, but parts of the compensation algorithm are disabled, the acquired data will not always be properly aligned.

Bit 4: Front Panel Lock: If this bit is set the front panel buttons are locked. This bit can be saved into a save set. This lock can be removed by pressing the LMFx front panel button "A" and "B" simultaneously. On the MDR/AA300 front panel this lock can be removed by holding the button MODE longer than 5 seconds.

Bit 5: Time Lock Mode: If a stand-alone record is started (remote, contact remote or front panel) and this bit is set the time channel goes automatically into time lock mode (ITL = implied time lock).

Bit 6: Reserved. Bit 7: Enable Log Writer: If this bit is set all relevant warning, error

and important status changes are logged into a file located at the connected media (…/datarec/log/d4messages).

default_eth_port (uint8) Default Ethernet port for the link module:

0 = Eth0 is the default Ethernet Port (default). 1 = Eth1 is the default Ethernet Port.

enable_interfaces (uint32) Link module hardware enable bits (bit 0 is the lsb):

Bit 0: Eth0 (has no effect – port always enabled if revision_id is below 1)

Bit 1: Eth1 (has no effect – port always disabled if revision_id is below 1)

Bit 2: USB Host (Initiator) (planned) Bit 3: USB Target (planned) Bit 4: IEEE 1394 (planned) Bit 5: SAS (eSATA connector). Revision_id has to be = 1. Bit 6: SAS2 (first at D-Sub connector) Bit 7: SAS3 (second at D-Sub connector)

Bit 0, 1, and 5-6 are only effective if the revision_id field is 1 or higher.

Page 92: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-35

replay_speedup (uint16) Link module replay speed:

0 = Nominal speed

max_rec_file_size_div (uint8) Maximum recording file size:

00: max. recording file size is 2048MB (default). 01: max. recording file size is 1024MB. 02: max. recording file size is 512MB. 03: max. recording file size is 256MB. 04-22: max. recording file size is 256MB<<n (equates to 4GB - 1PB). 23: max. recording file size is unlimited.

These values are only target values. If the file system of the connected medium does not allow this, then the following recording file size limits apply:

EXT2: 2 TiB EXT3: 2 TiB NTFS: 2 TiB FAT16: 2 GiB FAT32: 2 GiB STANAG4575: unlimited

Page 93: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-36

op_mode2 (uint8) Further operation mode bits:

Bit 0: Default DFC ON. If this bit is set the data flow control is by default ‘up-stream enabled’ which means ‘record’ mode on. Otherwise the default setting is ‘up-stream’ and ‘down-stream’ disabled (idle mode). If this feature bit is set, after every record or playback the system is switched back into the 'record' mode.

Bit 1: Enable Event and Index Packets for Stand-Alone Recordings (see this document Chapter 7.). We support the indexing packet to index the time and event packets.

Bit 2: Enable Falling Contact Event: If this bit is set, an event data packet is also generated on the falling edge (contact opened) of the event signal at contact remote input. It follows that the events counter counts twice as fast as normal for the contact remote event.

Bit 3: Enable NVG Modus: If this bit is set the Night Vision Modus is activated.

Bit 4: Enable Recoding Loop: If this bit is set and during recording the medium is getting >= 95% full, then the oldest recorded file will be deleted and the current recording will be continued (see also rsl). If only the current recording remains, then no further old recording is deleted and the current recording ends when the medium is fully written. This feature is not available if the media format is STANAG4574.

Bit 5: Enable RSM106 Clock Set: If this bit is set and a RSM106 media is inserted, the time will be taken over from the media cartridge to the Link Module/MDR. The RSM106 media is a special IRIG-106 Chapter 10 media with a FireWire IEEE1394B interface which ones a battery buffered RTC clock.

Bit 6: Disable Extensions: If this bit is set the Disable Extension Mode is active. In this mode, the recorder behaves strictly following the requirements of the IRIG-106 Chapter 10 specification.

Bit 7: Reserved.

dimming (uint8) Link module front panel dimming:

254 = Black (display off) 0 = No dimming (full brightness) 255 = Don’t care.

default_fs (uint8) The default file system which is chosen in the case of the .ERASE command or the contact remote input ERASE or the front panel erase function in the case of a LMFx link module:

FSF_UNKNOWN = Unknown file system FSF_FAT32 = FAT32 default file system FSF_STANAG4575 = STANAG4575 file system (IRIG-106) FSF_EXT2_WINCOMPAT = EXT2 file system (Windows

compatible)

Page 94: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-37

sua (uint4) Start-Up Action at power on or meadium loaded:

0 = No action. 1 = Start recording only after power on (medium found after less

then 40 seconds after boot). 2 = Start recording each time a media is loaded. This includes

start recording after power on. 3-15 = Reserved.

apf (uint4) Action at Power Failure. Action in the event of power failure during recording:

0 = No action after power on. 1 = Continue recording after power on. 2-15 = Reserved.

rsl (uint4) Record Size Limiter. If nonzero, then, when reaching the size (128MB - 2TB), an ongoing recording will be interrupted and a new recording is started. In contrast to the normal maximum recording file size limit, here is the recording really stopped and a new recording is started including the TMATS packet. We can guarantee the time gap between the recordings is less then 3s. This feature makes only sense in combination with the Recording-Loop option (op_mode2):

0 = No Limit. 1-15 = 4TB>>n (equates to 2TB – 128MB)

ser2mode (uint4) Operating mode of the Serial 2 interface:

0 = Default: DATaRec AA300 front panel mode at 115200 baud.

1 = Recorder Status Auto-Report: In this mode the recorder status auto-report loop is enable. Every second a Binary message is sent out at 9600 baud over the second serial port (Serial 2) of the link module. This port is only available at LMF1G and LMR link module and LMFx with PC connector (see Chapter 4.3.30 Recorder Status Auto-Reporting Function).

2 = Serial 2 Mode 38400 baud: In this mode the Serial 2 interface is acting as an normal remote control interface with 38400 baud (1start, 8data, 1stop, no parity).

3 = Serial 2 Mode 4800 baud. 4 = Serial 2 Mode 9600 baud. 5 = Serial 2 Mode 19200 baud. 6 = Serial 2 Mode 57600 baud. 7 = Serial 2 Mode 115200 baud. 8-15 = Reserved. DSLM: If the mode is changed you have to save the set-up into the default save-set and the system has to be restarted to take effect.

Page 95: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-38

feedback_options (uint32) Link module feedback options:

Bit 0: Password Protection On. This bit is only used by the D4Recorder set-up tool. If this bit is set, requests related to the connected media like ‘delete’, ‘format’ or ‘declassify’ are password-protected. This prevents inadvertently delete the recordings. Furthermore, the write access to the Save Sets is password protected.

Bit 1: Disable front panel blinking. This bit is only used by MDR and GMDR recorders. It is used to disable blinking of front panel LEDs. When front panel blinking is disabled, the NVG Modus gets disabled implicitely (as blinking is needed to simulate colors not allowed when the NVG Modus is active).

Bit 2: Rotate front panel Display about 180 degrees (MDR only).

This bit is only used by MDR recorders. It is used to rotate the front panel Display about 180 degrees.

media_almost_full_val (uint32)

Media almost full threshold value: media almost full condition will be reported in recorderstatus32 when the remaining media space/time drops below media_almost_full_val times the unit media_almost_full_unit

fan_control (uint16) Link module fan control:

0 = Auto mode 1 = Overwrite mode. The fan can be controlled by a special

remote command (see IDC_FAN_CONTROL)

media_almost_full_unit (uint8)

Unit for media almost full threshold value:

0 = remaining time in seconds 1 = remaining space as absolute in Mbyte 2 = remaining space as percentage

event_mode (uint8) Event Mode:

0 = Normal Event Mode 1 = Start/Stop Event Mode Operation (MDR only, see Chapter

7.2.6)

block_control (uint16) Link module block control

Bit 0: Enable fill up blocks during record. After an adjustable timeout (block_delivery_timeout) two 32kByte block will be filled up with a filler packet. Therefore then the minimum bitrate is 4 Mbit/s. This filler packets are normal CH10 computer generated and user defined packets. To indicate those packets the IDC_FILL_PACKET is used.

block_delivery_timeout (uint16)

Time-out in milliseconds (>=100ms) when a data block should be closed and delivered to the internal main circular buffer (256MBytes). The default value here is 1000ms.

analog_master_clock (uint32)

MDR analog master clock in Hz. The sampling rate of the MDR signal modules can be synchronized to the analog master clock. The valid range for the analog master clock is between 12800001 Hz and 25600000 Hz.

Page 96: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-39

reftime_synch_options (uint32)

MDR modes for the synchronisation of the reference time counter:

Bit 0: Synchronize reference time counter to the frequnency of an external reference clock.

Bit 1: Analog channels align analog sampling and packet generation to PPS second change if possible.

fallback_tmo (uint16) MDR/GMDR front panel user inactivity time out in seconds, after which the Display falls back to the system screen:

FALLBACK_TMO_OFF = fallback deactivated FALLBACK_TMO_MIN = minimal accepted value (10s)

Note:

If a parameter is send with OID_SET and the revision_id number is smaller then the current revision id number the returned acknowledge is always OID_INFO and the revision_id field and the parameters are updated to the current revision id.

4.3.9 Module Parameters

This information is part of the system configuration packet and appears every 1sec. in the data stream.

DIC6, MIC6, OUT6, SGU9 Module Parameters 4.3.9.1

Associated IDC: IDC_ X*_MODULE_PARAMETERS, X* = DIC6, MIC6, OUT6 or SGU9

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12

ext_tpa(0) ext_tpb(0)

Calibration Mode (autocal_mode8)

(DIC6, MIC6, SGU9)

Play Calibration Mode (play_cal_mode8)

(only OUT6)

reserved(0)

CHG6 Module Parameters 4.3.9.2

Associated IDC: IDC_CHG6_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id1

+8 Display Parameter

+12 ext_tpa(0) ext_tpb(0)

Calibration Mode (autocal_mode8)

reserved(0)

+16 reserved(1) reserved(2) reserved(3)

Fan Mode2 (fanmode8)

+20 reserved(4)

Page 97: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-40

Notes:

1: If ‘revision_id’ is 0 (compatibility mode) then the last 2 words are not existing (offset +16 and +20), the total length of the message is 16 bytes. If ‘revision_id’ is 1 then the total length of the message is 24 bytes (supported from firmware version 2.46).

2: The Fan Mode function is only realized in CHG6F modules.

DIC24, DIC24X Module Parameters 4.3.9.3

Associated IDC: IDC_ X*_MODULE_PARAMETERS X* = DIC24, DIC24X

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 ext_tpa(0) ext_tpb(0)

Calibration Mode (autocal_mode8)

reserved(0)

+16 reserved(0) reserved(0) ICP and 10V Mode1 High Accuracy Mode2

Notes:

1: ICP and 10V input range can not be used together on a channel and for all channel combinations. That restriction is lifted by setting this module parameter to 1. Please contact Safran Data System before using this feature. The performance of the module can be less than specified in this mode.

2: This module parameter plays a role only in the 5V input range is 0 by default. Setting it to 1 will increase the power consumption of the module but also improve slightly the signal distortion figure.

DEBU Module Parameters 4.3.9.4

Associated IDC: IDC_ DEBU_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 ext_tpa(0) ext_tpb(0)

Calibration Mode (autocal_mode8)

reserved(0)

+16 reserved(0) reserved(0) reserved(0)

Second UART enabled (enable8)

GIM282 & GIM282C2F2 Module Parameters 4.3.9.5

Associated IDC: IDC_GIM282_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode(0) revision_id(0)

+8 Display Parameter

Page 98: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-41

+12 ext_tpa(0) ext_tpb(0)

Calibration Mode (autocal_mode8)

reserved(0)

+16 Main Sampling Rate in Hz (1000 – 1000000, in 1 Hz steps)

+20 reserved(0) reserved(0)

Case Connection Mode (case_conn8)

Fan Control Mode (fan_control8)

+24 reserved(0)

+28 reserved(0)

+32 reserved(0)

case_conn8 (uint8) Case Connection Mode:

CASE_SEPARATE - Case is not connected to GND CASE_TO_GND - Case is connected to GND CASE_UNKNOWN

fan_control8 (uint8) Fan Control Mode:

FAN_OFF = 0 - Fan is off FAN_MIN_SPEED = 1 - Fan is running at min. speed (1 %) Value = 2 - 99 - Fan is running at x % speed FAN_MAX_SPEED = 100 - Fan is running at max. speed (100 %) FAN_AUTO_MODE = 127 - Fan speed is controlled according to

internal temperature FAN_CTRL_UNKNOWN

MRG100 Module Parameters 4.3.9.6

Associated IDC: IDC_ MRG100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 reserved(0)

+16 reserved(0) reserved(0) Output Monitor Enabled (enabled8)

Output Monitor Channel (uint8)

TRM100 Module Parameters 4.3.9.7

Associated IDC: IDC_ TRM100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 reserved(0)

+16 ETH1 port function ETH2 port function PCM1 function PCM2 function

Page 99: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-42

ETHx port function

This parameter defines the function of the Ethernet ports of the module:

.Possible Values:

PAR_TRM_UDP (0): the port is used for Chapter UDP broadcast. PAR_TRM_GATEWAY(1): the port outputs the Ethernet Gateway

data stream defined for the MC10T channel. PAR_TRM_EXTRACT(2): the port extracts the raw messages from

the Ethernet Chapter 10 packets. PAR_TRM_ETH_ALL(3): the port outputs all of the previous 3

modes in the same time. PAR_TRM_ETH_OFF(4): the port is disabled.

PCMx port function

This parameter defines the function of the PCM ports of the module:

.Possible Values:

PAR_TRM_IN (0): the port is used for telemetry downlink input.. PAR_TRM_PCM_OUT(1): the port reproducing the selected PCM

channel bitstream. PAR_TRM_LOOPBACK(2): the serves as electrical loopback of the

telemetry downlink input. PAR_TRM_PCM_OFF(3): the port is disabled.

Time Module Parameters 4.3.9.8

Associated IDC: IDC_ TIME_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)x

usb_mode revision_id

+8 Display Parameterx

+12 reserved(0)

+16 mdr_gps_bridge reserved (0) reserved (0) reserved (0)

Comments: x Setting has no effect as the module has no own display.

mdr_gps_bridge (Only for recorders with internal GPS receive i.e. MDR):

Bridge the UART port of the internal GPS receiver with the external serial connector. The NMEA output of the internal receiver will be available on the external GPS connector and serial data send on that port will be send to the internal GPS receiver.

Enabling the bridge does not affect data recording function of the external GPS/UART port. If desired it is possible to record both the NMEA stream of the internal receiver and the commands send to it in two uart type channels.

Possible Values:

PAR_BRIDGE_OFF (0): bridge off, internal and external GSP serial channels can be used independently (default for units without internal receiver)

PAR_BRIDGE_ON (1): As described above (default for units with receiver)

PAR_BRIDGE_UNKNOWN (0xff): No change

Page 100: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-43

Page 101: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-44

VCR100 Module Parameters 4.3.9.9

Associated IDC: IDC_ VCR100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 reserved(0)

+16 DCM enabled

(enabled8)

Video Monitor Mode Ch34

(vcr_videomonmode8)

Video Monitor Mode Ch12

(vcr_videomonmode8)

Audio Mux Mode (vcr_audiomuxmode8)

VCP100 Module Parameters 4.3.9.10

Associated IDC: IDC_ VCP100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 reserved(0)

+16 reserved(0) reserved(0)

DCM Input Termination

(vcp_dcmterm8)

DCM Input Level (vcp_dcmlevel8)

ANH100 and ANH101 Module Parameters 4.3.9.11

Associated IDC: IDC_ X*_MODULE_PARAMETERS, X* = ANH100 or ANH101

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 reserved(0)

Page 102: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-45

MANA8, MANA8A, MANA16, MANA12, MANA4, MFHB6V Module 4.3.9.12Parameters

Associated IDC: IDC_ X*_MODULE_PARAMETERS, X* = MANA8, MANA16, MANA12, MANA4, MFHB6V

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0) reserved(0) reserved(0) revision_id

+8 reserved(0)

+12 reserved(0)

+16 AutoCalibration (eAutoCalibration)

+20

reserved

disable_power_on_self_test

(eDisablePowerOnSelfTest)(uint8)

reserved(0) reserved(0)

+24 reserved(0)

+28 reserved(0)

Note:

If Auto Calibration is AUTO_CALIB_ON and Channel is Enable and module temperature or sampling rate changed and module gets arm channel parameter, it does a calibration of the actual ranges. Note:

MFHB6V module has 6 MSGB channels (full and half bridge, voltage excitation)

eAutoCalibration

AUTO_CALIB_OFF

AUTO_CALIB_ON

eDisablePowerOnSelfTest (can be usefull in combination with start up action: record after power on)

POST_DEFAULT

POST_DISABLE

MANA6 Module Parameters 4.3.9.13

Associated IDC: IDC_MANA6_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0) reserved(0) reserved(0) revision_id

+8 Reserved

+12 reserved(0)

+16 AutoCalibration (eAutoCalibration)

+20

reserved

disable_power_on_self_test

(eDisablePowerOnSelfTest)(uint8)

reserved(0) reserved(0)

Page 103: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-46

+24 reserved(0)

+28 reserved(0)

+32 excitation_value_a

+36 excitation_value_b

+40 reserved(0)

+44 reserved(0)

+48 reserved(0)

+52 reserved(0)

Note:

If Auto Calibration is AUTO_CALIB_ON and Channel is Enable and module temperature or sampling rate changed and module gets arm channel parameter, it does a calibration of the actual ranges.

eAutoCalibration

AUTO_CALIB_OFF

AUTO_CALIB_ON

eDisablePowerOnSelfTest (can be usefull in combination with start up action: record after power on)

POST_DEFAULT

POST_DISABLE

Note:

The MANA6 module has two excitation voltage outputs. The output voltage can be selected in µV separately between 0… 20500000µV. The ouputs a designed for supplying active sensors.

excitation_value_a: voltage in uV for the first excitation voltage output

excitation_value_b: voltage in uV for the secound excitation voltage output

EXCITATION_VALUE_UNKNOWN = 0x7fffffff,

EXCITATION_VALUE_MAX_MANA6 = 20500000 // max 20.5 V on MANA6

EXCITATION_VALUE_MIN_MANA6 = 0 // min 0V on MANA6

MANAP Module Parameters 4.3.9.14

Associated IDC: IDC_MANAP_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0) reserved(0) reserved(0) revision_id

+8 Reserved

+12 reserved(0)

+16 AutoCalibration (eAutoCalibration)

+20

reserved

disable_power_on_self_test

(eDisablePowerOnSelfTest)(uint8)

reserved(0) reserved(0)

Page 104: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-47

+24 reserved(0)

+28 reserved(0)

+32 calibration_visible

(eCalibVis)

tolerant_mode

(eTolerant)

dithering

(eDithering)

scale_as_recorded

(eScaleAsRec)

+36 thd_compensation

(eTHDComp) reserved(0) reserved(0) reseved(0)

+40 harmonic_2nd harmonic_3rd

+44 reserved(0)

+48 reserved(0)

eCalibVis: shows the calibration signals on the outputs

CALIBRATION_NOT_VISIBLE

CALIBRATION_VISIBLE

CALIBRATION_VISIBLE_UNKNOWN

eTolerant: tries to play a stream although it's not 100% compatible

INTOLERANT

TOLERANT

TOLERANT_UNKNOWN

eDithering: enables dithering and noise shaping it has an impact on out of band noise

DITHERING_OFF

DITHERING_ON

DITHERING_UNKNOWN

eScaleAsRec: It tries to replays the recording with the real recorded voltage e.g. 6 mV recorded in a 10 mV range is given out as 6 mV even if the smallest output range is 1 V.

NO_SCALE

SCALE_AS_RECORDED

SCALE_UNKNOWN

eTHDComp: Tries to compensate the 2nd and 3rd harmonic by using the harmonic_2nd and the harmonic_3rd coefficient.

THD_COMPENSATION_OFF

THD_COMPENSATION_ON

MUSM16 Module Parameters 4.3.9.15

Associated IDC: IDC_ASM100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0) reserved(0) reserved(0) revision_id

+8 reserved(0)

+12 reserved(0)

Page 105: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-48

MDR Video Module Parameters 4.3.9.16

Associated IDC: IDC_MVCR1_MODULE_PARAMETERS, IDC_MVCR2_MODULE_PARAMETERS IDC_MVCR3_MODULE_PARAMETERS, IDC_MVCR4_MODULE_PARAMETERS, IDC_MVCR5_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0)

+8 reserved(0)

+12 reserved(0)

+16 reserved(0)

MDR Video Module MVCR SDI4 Parameters 4.3.9.17

Associated IDC: IDC_MVCR_SDI4_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved(0)

+4 reserved(0)

+8 reserved(0)

+12 reserved(0)

+16 fan_mode reserved(0) phys_loopback1 phys_loopback2

+20 reserved(0)

fan_mode (uint8) Fan Control Mode:

FAN_OPMODE_AUTO = 0 - Fan speed is controlled according to internal temperature FAN_OPMODE_OFF = 1 - Fan is off FAN_OPMODE_ON = 2 - Fan is on FAN_OPMODE_UNKNOWN = 0xFF

phys_loopback1 (uint8) Physical loopback on the first SDI input channel

phys_loopback2 (uint8) Physical loopback on the second SDI input channel

Page 106: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-49

ETH100 and METH2 Module Parameters 4.3.9.18

Associated IDC: IDC_ETH100_MODULE_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Baudrate in Baud

+4 UART mode (uartmode8)

Display Mode (displaymode8)

usb_mode revision_id

+8 Display Parameter

+12 External Test Pin A Control (uint8)

External Test Pin B Control (uint8)

Error IndicatorPin enable (uint8)

reserved(0)

Page 107: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-50

4.3.10 Channel Parameters

This information is part of the system configuration packet and appears every 1sec. in the data stream. It can be requested separately via remote command as well.

Note:

If a parameter is send with OID_SET and the revision_id number is smaller than the current revision id number the returned acknowledge is always OID_INFO and the revision_id field and the parameters are updated to the current revision id.

TIME, MTIME Channel Parameters 4.3.10.1

Associated IDC: IDC_TIME_CHANNEL_PARAMETERS

Contains all parameter for time code recording (and replay). The structure was extended in link module firmware release 2.47 and MDR firmware release 1.02. Earlier releases will return (and can handle) only the first 56 bytes of the structure. Later releases can handle both sizes of the structure, if the shorter version is used parameters from the long version will retain their current settings.

Unimplemented features are marked as grey, these fields should be handled as reserved fields (read/write 0). MTIME specific parameters have an mdr_ prefix.

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Enabled (enabled8) revision_id Time Channel Source ID

+4 Replayed Channel (replay_assignment32)

+8 Bitmask of allowed input sources (time_sources_mask32)

+12 Bitmask of sources allowed to tune 10 MHz oscillator (time_sources_mask32)

+16 Bitmask of non-warning sources (time_sources_mask32)

+20 Bitmask of sources allowed to set RTC and cartridge RTC (time_sources_mask32)

+24 time_packet_date_mode8 native_gps_mode8 time_format_switching_

mode8

glitch_tolerance8 (uint8,

in s)

+28 pps_input_polarity8

(clockedge8)

pps_input_mode8 pps_holdoff16 (uint16, µs)

+32 ext_resync_disabled rtc_uptime_enable input_accept_time8

(uint8, in s)

irig_input_version

+36 gps_input_format8 gps_serial_pps_mode8 gps_local_time_offset8

(in half hours)

gps_leap_seconds

+40 gps_serial_second_offset32 (int32, in microseconds)

+44 pps_output_polarity8

(clockedge8)

pps_output_mode8 pps_output_duty_ratio8 time_flags

+48 irig_output_mode8 irig_output_modulation8 top_priority_time_src irig_output_version

+52 gps_output_format mdr_nmea_src playonly_outputs play_prefix_seconds

+56 ptp_interface ptp_version ptp_flags ptp_subdomain

+60 ptp_strat_class ptp_sync_iv PTPv2 priority1 PTPv2 priority2

+64 ptp_utc_offset reserved (0) ptp_epoch_fixup

+68 ptp_ofm_shift

Page 108: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-51

+72 ts_offset_mask

+76 IRIG-B offset in 100ns

(ts_offset_comp[0], int16)

IRIG-A offset in 100ns

(ts_offset_comp[1], int16)

+80 IRIG-G offset in 100ns

(ts_offset_comp[2], int16)

ts_offset_comp[3]

+84 ts_offset_comp[4] ts_offset_comp[5]

+88 ts_offset_comp[6] ts_offset_comp[7]

+92 ts_offset_comp[8] ts_offset_comp[9]

+96 ntp_srv_ipv4

+100 ntp_bcast_ipv4

+104 ntp_flags ntp_stratum ntp_minpoll ntp_maxpoll

+108 reserved (0) reserved (0) reserved (0) mdr_gps_platform_model

Reserved (0): fields reserved for extensions, return 0 when read, should also be written with 0 on setting.

Page 109: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-52

time_sources_mask32 Bitmask for each available time-code source (default is RTC, PPS, all IRIG and Master enabled)

Bit0: Internal RTC Bit1: RTC from a Removable Media cartridge Bit2: IRIG-B Bit3: IRIG-A Bit4: IRIG-G Bit5: IEEE-1588 Time-Code Bit6: NTP Time-Code Bit7: GPS Time-Code Bit8: 10 pps Signal Bit9: 1 pps Signal Bit10: Synchronization link from other Link/Recorder Bit31: Unknown source

time_source_bits8 Bit indexes of the time_source_mask32 bits. sTS_INTERNAL_RTC sTS_RMM_RTC sTS_IRIG_B sTS_IRIG_A sTS_IRIG_G sTS_IEEE1588 sTS_NTP sTS_GPS sTS_10PPS sTS_1PPS sTS_MASTER sTS_UNKNOWN

time_packet_date_mode8 Date mode for the generation of time packets:

PAR_TIME_PCK_ALWAYS_IRIG_DAY PAR_TIME_PCK_ALWAYS_DAY_MONTH_YEAR PAR_TIME_PCK_AUTO (if no year sub-word in IRIG input then

IRIG_DAY, otherwise DAY_MONTH_YEAR)

native_gps_mode8

Format of the time packet (native or UTC) when recording GPS time:

PAR_TIME_PCK_GPS_UTC PAR_TIME_PCK_GPS_NATIVE_FROM_MESSAGES PAR_TIME_PCK_GPS_NATIVE_FROM_PARAM PAR_TIME_PCK_GPS_NATIVE_AUTO

time_format_switching_mode8 Not implemented, only the default: PAR_TIME_FSWITCH_LOCK_EXT. How the time packet format and src fields change according to the currently detected input.

PAR_TIME_FSWITCH_LOCK_EXT: lock on any external sourceand keep generating time packets in that format if external synchronization is lost.

PAR_TIME_FSWITCH_FREE: Switch according to detected input PAR_TIME_FORCED_nnn: Generate always nnn time packet

format (nnn: IRIGB, IRIGA, IRIGG, GPS, RTC, UTC)

Page 110: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-53

glitch_tolerance8 Not implemented. Fault tolerance for an already verified time-code signal (uint8 in seconds):

When a time code input signal is lost / becomes invalid, time packets will be generated with the same format, but a source indicating internal time for a grace period. This is done to ease later data evaluation, and in the expectation, that the external time code signal will be restored soon.

pps_input_mode8 Type of pps input handling

Bit0: 1=PPS required for valid time

pps_holdoff16 Hold off time for the pps input signal in us. Also sets the minimum impulse width, PPS impulse width should be bigger than the pps_holdoff value.

ext_resync_disabled Disable re-synchronization to external time sources during recording. Follow an external time, but if a coarse adjustment would be needed rather switch to the internal clock, don’t create a jump in the recorded time data. Note: Works automatically for stand alone recording. If recordings are made by an external program this program has to use the IDC_TIME_LOCKING to inform the time channel when recording start or stops.

PAR_EXTRESYNC_ENABLED (0): Always allow time synchronization (default)

PAR_EXTRESYNCH_DISABLED (1): Allow synchronization only when not recording

rtc_uptime_enable Enable “uptime” (time since power on) mode. In this mode the real time clock time info is not used, instead the system is using the free running 10 MHz counter to calculate time since power on. Time starts from 2000.01.01. 00:00. Works only until first external source synchronization (or PC side time update). If disabled before updating time to external source then RTC clock info is reapplied. Uptime is not written to RTC hardware.

PAR_UPTIME_DISABLED (0) PAR_UPTIME_ENABLED (1)

irig_input_version (uint8) Accepted IRIG time version.

PAR_TIME_IRIG_VERSION_98

PAR_TIME_IRIG_VERSION_04

PAR_TIME_IRIG_VERSION_AUTO (Both IRIG-200-98 and IRIG-200-06 is accepted)

Notes: PAR_TIME_IRIG_VERSION_06 was a typing error and is kept for backward compatibility. Use PAR_TIME_IRIG_VERSION_04 (with the same numerical value) instead, as it is referring to IRIG STANDARD 200-04 (There is no IRIG STANDARD 200-06).

Year information in IRIG200-04 is only two digit and there is no indication in the signal if it is present or not. Therefore a compromise was made to provide most useful synchronisation capabilities: Synchronisation will work for years 1970-1999 and 2001-2069 if the field is set to PAR_TIME_IRIG_VERSION_AUTO. Synchronisation to year 2000 is only possible for PAR_TIME_IRIG_VERSION_04, in AUTO mode ’00’ is detected as no year field.

gps_input_format8 Format used to decode the GPS Input Stream. UART means input is not

Page 111: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-54

meant to be processed as a series of NMEA strings. In AUTO mode both ZDA and RMC strings are searched for.

PAR_GPS_FMT_AUTO PAR_GPS_FMT_NMEA_RMC PAR_GPS_FMT_NMEA_ZDA PAR_GPS_FMT_UART

gps_serial_pps_mode8 Not implemented. Controls how the second’s change position is derived from GPS serial messages

PAR_GPS_SPPS_DEFAULT (pps if exists, NMEA if not) PAR_GPS_SPPS_LASTSECONDCHANGE (only pps) PAR_GPS_SPPS_NMEA_STARTBIT (only start bit of the NMEA) PAR_GPS_SPPS_UNKNOWN

gps_local_time_offset8 Local time is calculated as “received GPS time + (gps_local_time_offset * ½ hours)”

Notes:

It is strongly encouraged to use gps_local_time_offset=0, as using local time leads to various problems when using different time protocols or exchanging data with other sites.

Chapter10 time packets can only be recorded with GPS native or GPS UTC time. So if this offset is nonzero the time packet will indicate generic RTC time. If gps_local_time_offset is nonzero and GPS reception is lost the time in the time packets will jump accordingly. It would also be possible to implement a PAR_TIME_PCK_GPS_LOCAL_TIME mode, but this would be a nonconforming mode, as there is no way to encode this mode in the recorded time packets.

The Time generated on the IRIG Output will be local time, so if seamless switching over is required any connected IRIG generator needs to be run at local time – usage of radio transmitted IRIG timecode is generally not possible with local_time_offset!=0, as most transmitter wil supply UTC.

The behavior or ptp and ntp time protocols with local time offset is not defined. Currently these protocols will synchronize to UTC regardless of the gps_local_time_setting, but that may change with future firmware revisions.

gps_leap_seconds (int8) The leap seconds define the offset (in seconds) of the GPS time to UTC. This can be used to override leap second data in the received GPS serial data stream, or to supply this information when no such information is included in the selected GPS data format

In normal case GPS receivers output UTC corrected time in their RMC/ZDA messages so gps_leap_seconds should be set to 0 (default) on LMF modules or on MDR with external receiver. On MDR modules the default leap second value of the internal receiver is incorrect. Therefore the first few (up to 12.5) minutes of GPS time values may be off by 2 seconds. To avoid time jumps during the first minutes of the record the leap second value of the receiver is updated to the value set in gps_leap_seconds. Default is 17 leap seconds in 2015, a value of 0 also defaults to 17 leap seconds in MDR. In case a different (bigger) leap second value should be used, it’s best to store it in the saved setup. A smaller leap seconds value than the current known is considered as an old (expired) saved set and is updated automatically.

The native GPS mode changes the way how this field is processed. As of 2010-12-08 the following will happen if this field is nonzero and has the current number of leap seconds: internal time and IRIG output will run at

Page 112: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-55

TAI instead of UTC when synchronizing to a GPS time source. Time packets in the recording will indicate native GPS time instead of UTC from GPS. Synchronizing to other time sources (IRIG/PTP/NTP) is possible, but internal time will revert to UTC when switching over to those sources.

Note: Utilize this field with caution, as its effects may change in future firmware revisions.

pps_output_mode8 Type of PPS output

PAR_PPS_MODE_AUTO {As input / as recorded.} PAR_PPS_MODE_OFF PAR_PPS_MODE_1PPS PAR_PPS_MODE_10PPS

PPS output mode during playback is determined as follows: 1) whatever is forced as output currently (current parameter setup) 2) PAR_PPS_MODE_AUTO: whatever was forced as input during record

(as recorded setup) 3) AUTO in both input setups:

a) 1 PPS or 10 PPS if it was set as output during record b) 1 PPS as fallback if output was also AUTO during record.

pps_output_duty_ratio8 Active / inactive ratio of the generated 1/10 pps pulses in % (1-99). The

value 255 is used to indicate unknown / do not change.

time_flags Bit 0: PAR_TIMEFLAGS_MDR_GPS_EGNOS_ENABLE

MDR-only, not recommended: enable EGNOS message parsing (causes regular 16 second time offset errors due to a firmware fault in the integrated uBlox receiver but may improve GPS precision.) Bit 2-1: PAR_TIMEFLAGS_MDR_GPS_ANTENNA_POWER MDR-only, adjusts internal GPS receiver’s antenna voltage. 0 = default, power ON. 1 = 3.3V 2 = 5V 3 = power OFF Older MDR versions did not support antenna power selection (fixed 3.3V for LP638A and LP638B; fixed 5V for LP638C.) Antenna power bits reflect the actual voltage only if a non-default value was set before, otherwise the factory default is power on with default voltage (to avoid setup conflicts).The default voltage is 5V in case of adjustable antenna power (LP638D and up, or GMDR.) Bit 3: PAR_TIMEFLAGS_USE_OLD_TUNING A parameter to revert to the simple timekeeping algorithm used until MDR versions 2.xx. MDR versions 3.xx up implement advanced filtering methods on IRIG and PTP to reduce time generator output noise and improved precision, affecting flywheel mode as well (stand-alone timekeeping after time sources are removed). The implemented filters are slower to compensate offset jumps and source frequency drifts so when using time sources suspectible to such issues the old algorithm may yield better results. Bit 4:PAR_TIMEFLAGS_STRICT_IRIG_DAYOFYEAR Prevent auto-correcting invalid IRIG Day Of Year values (e.g. 00) to internal clock date, instead invalidate input, in order to support IRIG generators that present IRIG day of year 00 when there is no sync. Bit 5: PAR_TIMEFLAGS_MDR_IRIGIN_PWM Enable DC IRIG input on PPS input (also called as DCLS or B0xx… where 0 stands for “Pulse width code” as Modulation Frequency)

Page 113: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-56

irig_output_mode8 Type of IRIG signal generated.

PAR_IRIG_MODE_OFF PAR_IRIG_MODE_AUTO {As input / as recorded} PAR_IRIG_MODE_IRIG_B PAR_IRIG_MODE_IRIG_A PAR_IRIG_MODE_IRIG_G PAR_IRIG_MODE_IRIG_B_YEAR PAR_IRIG_MODE_IRIG_A_YEAR PAR_IRIG_MODE_IRIG_G_YEAR PAR_IRIG_MODE_UNKNOWN

irig_output_modulation8 IRIG output modulation: amplitude modulated sine wave (default) or pulse

width mode output (no modulation). PWM applies to MDR modules only and uses PPS output (normal PPS output is overridden and disabled if PWM is set).

PAR_IRIG_MODULATION_SINE PAR_IRIG_MODULATION_PWM

top_priority_time_src (uint8) Time sources have a fixed priority order (as described in 4.3.10.1.3 Source

priorities) which can be overridden with this field if multiple sources are necessary to be enabled and the original order does not fit the requirements.

PRIO_IRIG_NONWARNING Default, non-warning PRIO_GPS_PREC Source with PPS or with less than 5ms jitter on

UART PRIO_GPS_ANY Any valid NMEA source even jittery) PRIO_IEEE1588 PTP PRIO_IRIG IRIG (warns if lost)

If IEEE1588 is the top priority time source, it will use its own hardware timestamps instead of PPS even if that is enabled. See 4.3.10.1.3 Source priorities for further details. If top priority time source is lost, it triggers a warning signal in time channels status, bit 22: Top priority time source lost.

irig_output_version (uint8) Generated IRIG time version.

PAR_TIME_IRIG_VERSION_98

PAR_TIME_IRIG_VERSION_03

PAR_TIME_IRIG_VERSION_AUTO (As recorded, depend on the time packet)

Note: PAR_TIME_IRIG_VERSION_06 was a typing error and is kept for backward compatibility. Use PAR_TIME_IRIG_VERSION_04 (with the same numerical value) instead, as it is referring to IRIG STANDARD 200-04 (There is no IRIG STANDARD 200-06).

gps_output_format Type of generated GPS serial data stream. Same coding as

gps_input_format8, and additional possibility: PAR_GPS_FMT_LOOPBACK to electrically loop back the input. In loopback mode no NMEA time sentences will be generated. Note: Replaying of a recorded GPS UART stream has precedence over this setting – When Replay is active and the GPSOUT channel is enabled for play the GPS serial output will always replay the recorded GPS data stream

mdr_nmea_src Select the GPS (NMEA) synchronization source for units with internal GPS

receiver (MDR). PAR_NMEA_SRC_EXTERNAL (0):

Page 114: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-57

Use the external serial connector for NMEA synchronization (default if no internal receiver present)

PAR_NMEA_SRC_INTERNAL (1): Use the internal GPS receiver for NMEA synchronisation (default if internal receiver is present)

playonly_outputs Select which outputs are disabled for record (enabled for playback only).

Use case: systems used only for playback where a temporary actual time output would disturb normal playback operation. In those systems no output is generated when playback is stopped if all bits of this bitfield is enabled. Possible values:

PLAYONLY_IRIG PLAYONLY_PPS PLAYONLY_NMEA

and their binary combinations. By default all bits are 0 ensuring normal operation (enabled for record).

play_prefix_seconds Amount of seconds time output should start before recorded data. It is used

to fire up time output earlier than real data so external time decoders have time to synchronize to the play time before actual data is sent out on other channels. Maximum accepted value is 254.

Parameters added in the first extension of the structure:

ptp_interface Ethernet Interface to use for IEEE 1588 time protocol.

0 Auto (Uses the first enabled Ethernet interface – usually eth0) n>0 use the n-th Ethernet interface

ptp_version Version of the IEEE1588 Protocol to use. Currently the only allowed value

is 0 for IEEE 1588-2002. Extensions to never Versions of the protocol are possible, but currently not planned

ptp_flags Various binary settings controlling IEEE 1588 time synchronistation. Bit n

(Value 2n) controls:

/* Enable ptp epoch correction */ 0 aplly the fixup value in ptp_epoch_fixup to compensate for

non-standard PTP clocks. 1 Allow this unit to become PTP master. (Experimental feature,

as the precision of the synchronization has not been confirmed, and thus the reported clock quality is bogus)

2 Make this a preferred PTP master clock. 3 Not working yet: Reserved to enable automatic clock stratum

advertisement controlled by current clock synchronization source.

4 Enable offset from master shift for ptp. 5 Enable manual setting of utc for ptp master. 6 Always honor the transferred utc offset in ptp protocoll.

ptp_subdomain Not Implemented yet, supposed to specify the IEEE1588-2002 subdomain to

use. Currently only allowed value is 0 for ‘_DFLT’ subdomain.

ptp_strat_class Stratum to report for this clock (Default is 3). Interpretation may change for

IEE1588-2008 (Class instead of stratum), or when ptp_flag bit 3 is set.

ptp_sync_iv Not implemented yet: Reserved to control the sync interval, which would be

Page 115: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-58

2ptp_sync_iv. Currently the only allowed value is 1 for a sync interval of 2 seconds.

ptp_priority1 PTPv2 priority1 ptp_priority2 PTPv2 priority2 ptp_utc_offset Manual utc offset for ptp master. ptp_epoch_fixup Fix up value to adapt to a clock network not using the PTP epoch in the

synchronization messages. If bit 0 of ptp_flags is set the 8 bit signed value of this field will be added to each incoming PTP timestamp and subtracted from each outgoing PTP timestamp.

In other words the local clock will run ahead by the value of this field.

ptp_ofm_shift Offset from master shift for 1PPS correction.

ntp_srv_ipv4 Ipv4 address for syncing and setting time at boot.

ntp_bcast_ipv4 Ipv4 broadcast address for acting as an ntp broadcast server.

ntp_flags Flags controlling the NTP mode:

0 Sync to SNTP server at boot 1 Enable NTP sync 2 Enable NTP time serving 3 Enable NTP broadcast time serving

ntp_stratum Ntp server stratum, default should be 5.

ntp_minpoll Minpoll intervall default 6. Range: 4-6.

ntp_maxpoll Maxpoll intervall default 10. Range: 10-17.

mdr_gps_platform_model (MDR only) Select internal GPS dynamic platform model. Modules are shipped with PORTABLE as receiver default, and NO_CHANGE as MDR parameter default.

GPS_PLATFORM_NO_CHANGE GPS_PLATFORM_PORTABLE GPS_PLATFORM_STATIONARY GPS_PLATFORM_SEA GPS_PLATFORM_AUTOMOTIVE GPS_PLATFORM_AIRBORNE_1G GPS_PLATFORM_AIRBORNE_2G GPS_PLATFORM_AIRBORNE_4G.

Page 116: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-59

Prior to 3.10 the only way to select the proper dynamic platform model was to use the u-center application (with Time Module set to GPS bridged mode) and adjust the UBX-CFG-NAV5 setting, then save the configuration to flash. These models are described in details in the u-blox Protocol Specifications, Platform settings section:

4.3.10.1.1 Time source selection

The recorder will select the highest priority connected time source present in allowed_sources mask, time sources disabled in this mask are not used for internal time synchronization and as time packet source. Time sources have a fixed synchronization priority. If the selected source is missing from acceptable_sources (non-warning sources) it will cause NO_EXTSIGNAL health warning.

The acceptable_sources makes it possible to either have or disable warnings in case of internal time (TS_INTERNAL_RTC): if it is disturbing to have health warning and red Time LED when external sources are missing (e.g. right after startup) then TS_INTERNAL_RTC bit should be set in acceptable_sources.

External time sources are not re-synchronized in time locking mode if lost, but current external source is kept as long as it is producing valid time values.

4.3.10.1.2 Time source validation

Valid input sources should be within tuning range, which is ±5 ms/sec (no more jitter than 5 ms per second), and should contain continuous time information. Jumps in time (e.g. more than 1 second increase in IRIG-B) invalidates the given source. The way time sources are accepted as “trusted” input depends on input type.

IRIG inputs have a 3 second grace period while time values should be stable both in 10 MHz count difference (frequency) and time value difference (1 second increase in IRIG time fields each second) to be accepted.

GPS/NMEA source is accepted after 2 valid NMEA time sentences. For proper GPS synchronization PPS input is highly recommended.

PPS source is considered valid after two (holdoff-filtered) signals that are within tuning range, 10PPS is accepted only after 1 second length of properly timed signals (over 10 signals). If PPS is disconnected, it will be used as timestamp source for another 10 seconds preventing IRIG to take precedence in order to keep its higher precision time synchronization when sync cables are disconnected one after the other. (MDRs prior to 3.xx series required the strict order of disconnecting IRIG first, then PPS to keep PPS precision during flywheel operation.)

PTP and NTP sources are jitter-attenuated before synchronized to/recorded.

4.3.10.1.3 Source priorities

Time sources have fixed priorities which may be overridden by parameter top_priority_time_src. Time stamp values and the corresponding free running 10 MHz counter values have separate priority levels.

Page 117: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-60

Time source priorities, decreasing order:

Time sources 10 MHz counter sources

SLAVE (DSLM)

- PPS

IRIG

NMEA -

PTP

NTP

Internal RTC

Example: PPS is used as a high priority 10 MHz counter source, but it does not contain other time information. If only IRIG is connected then both the time value (day, hours, minutes, seconds) and the relative counter value is taken from the given IRIG source. But if PPS is also connected, as a higher priority 10 MHz counter source its value will override the one from the IRIG source.

Time channel accepts $GPRMC and $GPZDA NMEA 0183 sentences. NMEA messages may have huge jitter as in normal case a separate PPS contains the exact time info, the message is only a “description” of the given time instance. For precise GPS synchronization PPS signal of the receiver must be connected (internally connected in MDR), otherwise the system will keep counting seconds based on its own “best guess” frequency, and will adjust time info if internal clock is off by more than 2 seconds, but not align seconds’ change to NMEA messages. The ‘precise’ GPS sources (with PPS or with less than 5 milliseconds of UART jitter on NMEA messages) are distinguished from NMEA-only sources with big jitter in their messages even in top priority time source selection.

Selected top priority time source (if not IRIG) will be inserted after slave source. IRIG and other input sources are shifted down in the priority queue.

Example for modified time source priorities: if required time synchronization is PTP backed by PPS-less GPS, then one must disable IRIG and PPS but enable PTP and GPS as allowed source, and select PTP as top priority source. On the other hand if required time synchronization is GPS (with PPS) backed by PTP, then one must disable the IRIG in the allowed time sources and enable GPS, PTP and PPS. The default source priority order will guarantee that PTP time will only be used if GPS fails to synchronize, so top priority might be left on default IRIG.

4.3.10.1.4 Input delay compensation

Different signal levels and different cabling can cause significant time offset between the IRIG synchronization source and synchronized IRIG time. This offset can be compensated by ts_offset_comp.

Values enabled in ts_offset_mask (currently only IRIG B, A, G) will increment the input counter value for the given input source by the corresponding value in ts_offset_comp, measured in 100 ns.

4.3.10.1.5 Time packet format, source and contents

Packet format depends on last synchronized valid external format. On startup packets are recorded with Internal RTC format, internal source, day, month and year format. Once synchronized to some external source, corresponding format is set if available (IRIG A/B/G and NMEA – otherwise RTC), and source is marked as external. Packets with “IRIG day of year” are generated only in case of an IRIG source without year info.

If external synchronization source is lost then packet source turns from external to internal (flywheel), and packet format is kept. (This triggers the least amount of warnings in most IRIG Chapter 10 validators.) Packet format may change even without external source if a new parameter setup is received forcing a different external source. (To avoid mismatched TMATS in records where the single selected time source is connected only after the start of the record.)

Date format is automatically determined based on actual time source (by default). In case of IRIG/no year input it means time packets with IRIG Day of Year field, in all other cases day, month and year format. This behavior can be overridden by the time_packet_date_mode8 field to force a specific time packet date format.

Page 118: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-61

GPS Serial Channel Parameters 4.3.10.2

Associated IDC: IDC_GPS_PARAMETERS

Contains the general UART parameters for the GPS channels (recording of the serial data is independent from the usage of the GPS input as a time synchronization source)

The GPS channel is an instance of an UART channel; parameters are kept as compatible as possible, reserving fields, even if the GPS input can support only a few values:

Parameters:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Enabledxi (enabled8) revision_id Channel Source ID

4 Replayed Channel Assignment (replay_assignment32)

8 Input level (gps_level8)

Record with timestamps (chapter10

UART IPH bit)

reserved(0)

12 Threshold for Inter message gap [bit times]

16 input_baudrate_rate (gps_baudrate32 )

20 input_data_bits8 reserved(0) input_stopbits8 input_parity8

24 input_shift_direction8 input_polarity8 input_termination8 Output level (gps_level8)

28 replay Baud rate (gps_baudrate32 )

32 replay_data_bits8 reserved(0) replay_stopbits8 replay_parity8

36 replay_shift_direction8

replay_polarity8 error_reconstruction_mode

reserved(0)

Comments: xi If the GPS channel is enabled for replay it will have precedence. If an IRIG-J or NMEA signal is to be simulated from recorded time information only the GPS channel must be disabled for play.

Only the following parameters are supported: gps_level8 (uint8) GPS Input/Replay Level

PAR_UART_LEVEL_DEFAULT (as recorded for replay) PAR_UART_LEVEL_RS232 PAR_UART_LEVEL_RS422 PAR_UART_LEVEL_UNKNOWN

gps_baudrate32 (uint32) GPS Input/Replay Baudrate

PAR_UART_BAUD_DEFAULT (as recorded for replay) PAR_UART_BAUD_300 PAR_UART_BAUD_600 PAR_UART_BAUD_1200 PAR_UART_BAUD_2400 PAR_UART_BAUD_4800 (default for NMEA183) PAR_UART_BAUD_9600 PAR_UART_BAUD_19200 PAR_UART_BAUD_38400 PAR_UART_BAUD_57600 PAR_UART_BAUD_115200 PAR_UART_BAUD_UNKNOWN

Page 119: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-62

gps_databits8 (uint8) GPS Input/Replay Data Bits PAR_UART_DATABITS_DEFAULT (as recorded for replay) PAR_UART_DATABITS_7 PAR_UART_DATABITS_8 PAR_UART_DATABITS _UNKNOWN

gps_stopbits8 (uint8) GPS Input/Replay Stop Bits PAR_UART_STPBITS_DEFAULT (as recorded for replay) PAR_UART_STPBITS1 PAR_UART_STPBITS2 PAR_UART_STPBITS_UNKNOWN

gps_parity8 (uint8) GPS Input/Replay Parity PAR_UART_PARITY_DEFAULT (as recorded for replay) PAR_UART_PARITY_NO PAR_UART_PARITY_EVEN PAR_UART_PARITY_ODD PAR_UART_PARITY_UNKNOWN

all other fileds: 0 to signify default, or as recorded for replay parameters

Page 120: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-63

4.3.10.2.1 Serial input data

In RMC/ZDA mode data is not only recorded but if gps_input_format8 is set to RMC/ZDA modes and GPS synchronization is enabled then UART input is parsed for these specific NMEA messages.

On MDR the UART channel should be properly selected via mdr_nmea_src parameter.

4.3.10.2.2 Serial output data format and content

UART output settings are determined by GPS channel parameters, time channel parameters determine the content to be transmitted.

The time channel parameter gps_output_format determines whether RMC or ZDA messages are generated as simulated GPS time info, or normal UART operation is in effect (loopback or UART).

RMC and ZDA messages are aligned to the PPS edges in RMC/ZDA mode, but their precision is limited by the baud rate so using them alone for time synchronization is not recommended.

Playback (DataRec4 Link Module): UART output should be set for playing back data recorded on UART channels. RMC/ZDA setting will generate NMEA messages with valid playback timing but will not play back other possibly recorded UART data assigned to the channel.

4.3.10.2.3 Bridged mode (MDR-only)

MDR’s external UART channel is usable as a bridge to the internal GPS module if time module parameter mdr_gps_bridge is enabled.

In this case the internal ublox LEA-5H receiver is directly accessible via the u-center PC tool with a serial cable connecting the external UART connector and the PC. NMEA messages and internal GPS receiver’s baud rate are also adjustable via this tool. The internal GPS receiver’s baud rate is currently not interconnected with the MDR internal GPS channel’s baud rate so adjusting it is a two-step process: MDR internal GPS channel’s baud rate should be modified as well as u-blox baud rate via u-center in bridged mode.

In bridged mode the external GPS channel makes it possible to record the UART input on the external channel (e.g. anything sent from PC u-center tool to the module) whereas internal GPS channel’s record contains anything sent by the u-blox receiver (e.g. NMEA messages for time and location).

VOICE Channel Parameters 4.3.10.3

Voice channel parameters apply to LMF1G and MDR modules.

Associated IDC: IDC_VOICE_CHANNEL_PARAMETERS,

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Sampling Rate in Hz

+12 Input selection

(voice_selection8)

Sync sampling (voice_sync_sampling

8, MDR only)

reserved (0) Bandpass filter (voice_bandpass_filter8)

+16 reserved (0)

Mic. bias voltage (voice_mic_bias8,

LMF1G only)

Bits per sample (8 or 16)

Input range

+20 reserved (0)

+24 reserved (0)

+28 Output selection

(voice_selection8) Output range

Speaker gain (voice_speaker_gain8,

LMF1G only)

Loopback enable (voice_loopback8)

Page 121: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-64

voice_selection8 Input and output selections are bitfields. It is possible (though not supported by GUI for sake of simplicity) to intermix and record multiple inputs on a single channel, and also it is possible to drive multiple outputs from a single channel. The only restriction is that the two voice channels shall not drive the same output – if this is violated then setting one of the channels will disable the other channel’s output. MDR module output selection is only for loopback, LMF1G is for loopback and playback.

Input Output (loopback/play)

INOUT_OFF INOUT_HEADSET1 INOUT_HEADSET2 INOUT_UNKNOWN

LMF1G only: IN_MICRO IN_LINE

OUT_ASRECORDED LMF1G only:

OUT_SPEAKER

voice_mic_bias8 Microphone bias voltage applies to LMF1G modules only. Possible values:

BIAS_1_35V (default) BIAS_2_35V BIAS_UNKNOWN

voice_bandpass_filter8 Bandpass filter scales linearly with the sample rate. It filters below 200 Hz

and over 3600 Hz for a 8 kHz sample rate. It is off by default. BAND_OFF BAND_ON BAND_UNKNOWN

voice_sync_sampling8 MDR only, makes it possible to synchronize sampling rate with other analog

recorder modules if SAMPLING_MASTER_ANALOG is selected. In this case all sampling rate updates affect master analog sampling clock and therefore the sampling rate of other analog modules. In SAMPLING_ASYNC mode only a restricted set of sampling rates are possible, setting an unallowed sampling rate modifies the desired sampling rate to the nearest valid sampling rate. The two voice channels have a common sampling rate and also their voice_sync_sampling setting must be the same. SAMPLING_ASYNC SAMPLING_MASTER_ANALOG SAMPLING_UNKNOWN

voice_speaker_gain8 A 0..3dB adjustable gain on speaker input. (LMF1G only) GAIN_ASRECORDED GAIN_UNKNOWN GAIN_SKPMIN GAIN_SPKMAX

voice_loopback8 Voice loopback enable/disable. Prior to link module firmware version 2.65 and MDR firmware version 1.53 the loopback is a direct digital loopback (input signal sampled and regenerated). Later versions apply an extra per-range signal amplitude compensation to the sampled data. LOOPBACK_OFF LOOPBACK_ON LOOPBACK_UNKNOWN

Page 122: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-65

ANH100 and ANH101 Analog Channel Parameters 4.3.10.4

Associated IDC: IDC_X*_CHANNEL_PARAMETERS, X* = ANH100 or ANH101

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Sampling Rate in Hz

+12 Output Selection (Input Sel. +

“ASREC”. Play only)

Input Selection (anainselection8)

Low-pass Filter Selection (anh_lpfil8)

High-pass Filter Selection (anh_hpfil8)

+16 Output Range (Input Range + “ASREC”.

Play only)

Number of bits in the data words

Input Range in dB (int8)

Termination (anh_inputterm8)

ARINC-429 Record Channel Parameters 4.3.10.5

Module types: ARR100

Associated IDC: IDC_ARR100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

Module types: MARR16 and ARINC-429 channels of the MDR hybrid modules

Associated IDC: IDC_ARR100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Filter Mode (arinc_filter_mode8)

Reserved (0)

+8 Mask for Selected Labels 7..0

+36 Mask for Selected Labels 255..248

ARINC-429 Replay Channel Parameters 4.3.10.6

Associated IDC: IDC_ARP100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

Asynchron Serial Channel Parameters 4.3.10.7

Module types: ASM100, MUSM16 and and Asynchron Serial channels of the MDR hybrid modules

Page 123: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-66

Associated IDC: IDC_ASM100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Input Level (asm_level8)

IP Timestamps (asm_ip_timestamps8)

reserved (0)

+12 Message Gap (asm_gap32)

+16 Input Baudrate (asm_baudrate32)

+20 Input Data Bits (asm_databits8)

reserved (0) Input Stop Bits (asm_stopbits8)

Input Parity (asm_parity8)

+24 reserved (0) reserved (0) Input Termination (asm_termination8)

Replay Level (asm_level8)

+28 Replay Baudrate (asm_baudrate32)

+32 Replay Data Bits (asm_databits8)

reserved (0) Replay Stop Bits (asm_stopbits8)

Replay Parity (asm_parity8)

+36 reserved (0) reserved (0) reserved (0) Record error without data

MUSM16: record only

asm_ip_timestamps8 always enable

record_error_without_data implemented

1/0 0 is default | if set: MUSM16 generates packets without payload

and with parity error bit set, if any error occurs on serial lines

(this is not IRIG106-CH10 compliant)

ASM100: record / replay

asm_ip_timestamps8 implemented

record_error_without_data not implemented always 0

asm_baudrate32(uint32):

can be any integer baud rate between 112 and 2000000 baud

asm_level8 (uint8) ASM100 Input/Replay level: PAR_UART_LEVEL_DEFAULT (as recorded for replay) PAR_UART_LEVEL_RS232 PAR_UART_LEVEL_RS485 PAR_UART_LEVEL_UNKNOWN

asm_parity8 (uint8) ASM100 Input/Replay parity: PAR_UART_PARITY_DEFAULT (as recorded for replay) PAR_UART_PARITY_NO PAR_UART_PARITY_EVEN PAR_UART_PARITY_ODD PAR_UART_PARITY_MARK PAR_UART_PARITY_SPACE PAR_UART_PARITY_UNKNOWN

Page 124: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-67

asm_databits8 (uint8) ASM100 Input/Replay data bits: PAR_UART_DATABITS_DEFAULT (as recorded for replay) PAR_UART_DATABITS_5 PAR_UART_DATABITS_6 PAR_UART_DATABITS_7 PAR_UART_DATABITS_8 PAR_UART_DATABITS _UNKNOWN

asm_baudrate32 (uint32) ASM100 Input/Replay baud rate:

PAR_UART_BAUD_DEFAULT (as recorded for replay) PAR_UART_BAUD_112 PAR_UART_BAUD_150 PAR_UART_BAUD_225 PAR_UART_BAUD_300 PAR_UART_BAUD_450 PAR_UART_BAUD_600 PAR_UART_BAUD_900 PAR_UART_BAUD_1200 PAR_UART_BAUD_1800 PAR_UART_BAUD_2400 PAR_UART_BAUD_3600

PAR_UART_BAUD_4800 PAR_UART_BAUD_7200 PAR_UART_BAUD_9600 PAR_UART_BAUD_14400 PAR_UART_BAUD_19200 PAR_UART_BAUD_28800 PAR_UART_BAUD_38400 PAR_UART_BAUD_57600 PAR_UART_BAUD_76800 PAR_UART_BAUD_115200 (DEFAULT) PAR_UART_BAUD_230400 PAR_UART_BAUD_UNKNOWN

asm_stopbits8 (uint8) ASM100 Input/Replay stop bits: PAR_UART_STPBITS_DEFAULT (as recorded for replay) PAR_UART_STPBITS1 PAR_UART_STPBITS15 PAR_UART_STPBITS2 PAR_UART_STPBITS_UNKNOWN

asm_termination8 (uint8) ASM100 Input Termination for RS485: PAR_UART_TERM_DEFAULT (as recorded for replay) PAR_UART_TERM_HIGHZ PAR_UART_TERM_LOWZ PAR_UART_TERM_UNKNOWN

asm_gap32 (uint32) Gap length between two messages in bits (Valid Range: 1 - 255 bits)

asm_ip_timestamps8 (uint8) Enable (1) or Disable (0) the generation of intra packet timestamps for this channel.

CAN4 Channel Parameters 4.3.10.8

Module types: CAN4, MCAN4, GIM282C2F2

Associated IDC: IDC_CAN4_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Bitrate in bit/s (can_bitrate32)

+12 Sampling Point Pos. in % (can_spnt8)

Sync Jump Width (can_sjw8)

Sampling Mode (can_samplmode8)

Edge Mode (can_edgemode8)

+16 reserved (0) Silent Mode (can_silentmode8)

Channel Termination (can_termination8)

Replay Termination (can_termination8)

Page 125: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-68

Flexray Channel Parameters 4.3.10.9

Module types: CAN4, GIM282C2F2

Associated IDC: IDC_FLEX_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 Bitrate in bit/s (can_bitrate32)

+12 Reserved (0)

+16 reserved (0) reserved(0) Channel Termination (can_termination8)

reserved(0)

CHG6 Channel Parameters 4.3.10.10

Associated IDC: IDC_ CHG6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 reserved (0) reserved (0)

Low-pass Filter Select. (chg6_lpfil8)

High-pass Filter Select. (chg6_hpfil8)

+12 reserved (0) reserved (0)

Number of bits in the data words

Input Range in dB (int8)

+16 RPM Threshold in ± percent (int16) Special Processing (dic6_specials8)

Operation Mode (dic6_opmode8)

+20 RPM Holdoff in microseconds

MIC6 Channel Parameters 4.3.10.11

Associated IDC: IDC_ MIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 reserved (0)

Sensor Selection (anainsensor8)

reserved (0) High-pass Filter

Selection (mic6_hpfil8)

+12 reserved (0)

Input Power Mode1 (dic6_power8)

Number of bits in the data words

Input Range in dB (int8)

+16 RPM Threshold in ± percent (int16) reserved (0) Operation Mode (dic6_opmode8)

+20 RPM Holdoff in microseconds

+24 reserved (0) Polarization Power (mic6_polar8)

Preamplifier Power (mic6_preamp8)

Page 126: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-69

DEBU Digital Channel Parameters 4.3.10.12

Associated IDC: IDC_ DEBU_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

replay channel assignment ?

+4 Sampling Rate in Hz

+8 reserved (0)

User Delay for DEBU channels (int8)

Number of bits in the data words

Termination On (enabled8)

DIC6, DIC24 and DEBU Analog Channel Parameters 4.3.10.13

Associated IDC: IDC_X*_CHANNEL_PARAMETERS, X* = DIC6 or DIC24 or DEBU

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 Input Selection (anainselection8)

Sensor Selection (anainsensor8)

Low-pass Filter Selection (dic6_lpfil8)

High-pass Filter Selection (dic6_hpfil8)

+12 reserved (0)

Input Power Mode1 (dic6_power8)

Number of bits in the data words

Input Range in dB1 (int8)

+16 RPM Threshold in ± percent (int16)

Special Processing (dic6_specials8)

Operation Mode (dic6_opmode8)

+20 RPM Holdoff in microseconds

Note:

1: For DIC24 and DIC24X, ICP and 10V input range exclude mutually by default on every channel and for all channel combinations (see module parameter “ICP and 10V mode”)

GIM282 & GIM282C2F2 Channel Parameters 4.3.10.14

GIM282 module has 3 different types of physical I/O interfaces: Analog Input, Monitor Input and Generator Output. All Analog Input and Monitor Input interfaces are able to generate 2 datastreams in the same time: digitalized analog data and RPM data. Because of it the module has 22 Data Channels.

Data Channel

ID

Physical I/O Channel Type Associated IDC

CH1 - CH10 Analog Input CH1–CH8, Monitor Input CH1-CH2

Analog Input IDC_GIN_CHANNEL_PARAMETERS

CH11 - CH20 Analog Input CH1–CH8, Monitor Input CH1-CH2

RPM Input IDC_GRPM_CHANNEL_PARAMETERS

CH21 - CH22 Analog Output CH1-CH2 Generator Output

IDC_GOUT_CHANNEL_PARAMETERS

GIM282C2F2 module has 5 different types of physical I/O interfaces: Analog Input, Monitor Input, Generator Output, CAN Input and FlexRayInput. All Analog Input and Monitor Input interfaces are able to generate 2 datastreams in the same time: digitalized analog data and RPM data. Because of it the module has 26 Data Channels.

Page 127: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-70

Data Channel

ID

Physical I/O Channel Type Associated IDC

CH1 - CH10 Analog Input CH1–CH8, Monitor Input CH1-CH2

Analog Input IDC_GIN_CHANNEL_PARAMETERS

CH11 - CH20 Analog Input CH1–CH8, Monitor Input CH1-CH2

RPM Input IDC_GRPM_CHANNEL_PARAMETERS

CH21 - CH22 Analog Output CH1-CH2 Generator Output

IDC_GOUT_CHANNEL_PARAMETERS

CH23 – CH24 CAN Input CH1 - CH2 CAN Input IDC_CAN4_CHANNEL_PARAMETERS

CH25 – CH26 FlexRay Input CH1 - CH2 FlexRay Input IDC_FLEX_CHANNEL_PARAMETERS

Analog Input Channels:

Associated IDC: IDC_GIN_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate Divider (int32)

+8 reserved (0) Sensor Selection1 (gin_sensor8)

Low-pass Filter1 Selection (gin_lpfil8)

High-pass Filter1 Selection (gin_hpfil8)

+12 Monitor Mode1,2 (gin_mon_mode8)

Input Power Mode1 (gin_power8)

Number of bits in the data words1 (16 or 32)

Input Range in dB1 (gin_inp_range8)

+16 Module Sampling Rate (read only) (uint32)

+20 reserved (0) ICP Current Threshold (uint16)1

+24 reserved (0)

+28 reserved (0)

+32 reserved (0)

+36 reserved (0)

+40 reserved (0)

Note:

1: This parameter is common for the corresponding Analog Input and RPM Input (for data channel CH1 and CH11, CH2 and CH12, etc.) 2: Monitor Mode is only available at Monitor Input physical channels (data channel: ch9, ch10, ch19, ch20): disabled – input signal from BNC connector is processed, enabled – signal of corresponding Generator Output channel is processed (Monitor Input CH1 to Generator Output CH1, Monitor Input CH2 to Generator Output CH2)

RPM Input Channels:

Associated IDC: IDC_GRPM_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

Page 128: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-71

+4 Sampling Rate Divider (int32)

+8 reserved (0) Sensor Selection1 (gin_sensor8)

Low-pass Filter1 Selection (gin_lpfil8)

High-pass Filter1 Selection (gin_hpfil8)

+12 Monitor Mode1,2 (gin_mon_mode8)

Input Power Mode1 (gin_power8)

Number of bits in the data words1 (16 or 32)

Input Range in dB1 (gin_inp_range8)

+16 Module Sampling Rate (read only) (uint32)

+20 reserved (0) ICP Current Threshold (uint16)1

+24 reserved (0)

+28 RPM Threshold (int16) reserved (0) reserved (0)

+32 RPM Holdoff in microseconds (uint32)

+36 reserved (0)

+40 reserved (0)

+44 reserved (0)

+48 reserved (0)

Note:

1: This parameter is common for the corresponding Analog Input and RPM Input (for data channel CH1 and CH11, CH2 and CH12, etc.) 2: Monitor Mode is only available at Monitor Input physical channels (data channel: ch9, ch10, ch19, ch20): disabled – input signal from BNC connector is processed, enabled – signal of corresponding Generator Output channel is processed (Monitor Input CH1 to Generator Output CH1, Monitor Input CH2 to Generator Output CH2)

Sampling Rate Divider 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512

Channel Sampling Rate = Module Sampling Rate / Sampling Rate Divider

Note: Channel Sampling Rate can NOT be less than 1000 Hz. Because of this limitation not all of Divider values are available at every Module Sampling Rate.

gin_sensor8 (uint8) Input Sensor Type Selection

PAR_SENSOR_NORMAL : the content of TEDS vill NOT read

PAR_SENSOR_TEDS : content of TEDS will be read (available only if Analog HP filter selection is PAR_FILTER_AC_0_2HZ or PAR_FILTER_AC_2HZ)

PAR_SENSOR_UNKNOWN

gin_lpfil8 (uint8) Analog LP filter selection

PAR_FILTER_LP_NO PAR_FILTER_LP_500Hz (optional – not yet available) PAR_FILTER_LP_1kHz (optional – not yet available) PAR_FILTER_LP_5kHz (optional – not yet available) PAR_FILTER_LP_10kHz (optional – not yet available) PAR_FILTER_LP_UNKNOWN

Page 129: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-72

gin_hpfil8 (uint8) Analog HP filter selection

PAR_FILTER_HP_NO PAR_FILTER_AC_0_2HZ PAR_FILTER_AC_2HZ PAR_FILTER_HP_UNKNOWN

gin_mon_mode8 (uint8) Monitor Mode selection (only for Monitor Input CH1 – CH2)

PAR_MONITOR_DISABLE PAR_MONITOR_ENABLE PAR_MONITOR_UNKNOWN

gin_power8 (uint8) Analog input power selection

PAR_ANA_POWER_NO: ICP supply is OFF

PAR_ANA_POWER_ICP: ICP supply is ON (available only if Analog HP filter selection is PAR_FILTER_AC_0_2HZ or PAR_FILTER_AC_2HZ)

PAR_ANA_POWER_UNKNOWN

gin_inp_range8 (uint8) Analog Input Range selection

PAR_RANGE_50mV PAR_RANGE_100mV PAR_RANGE_200mV PAR_RANGE_500mV PAR_RANGE_1V PAR_RANGE_2V PAR_RANGE_5V PAR_RANGE_10V PAR_RANGE_20V PAR_RANGE_50V PAR_RANGE_UNKNOWN

Module Sampling Rate Read only copy of GIM282 Modul Parameter - Main Sampling Rate

ICP Current Threshold 0 - 10000 µA (resolution: 1 µA)

If PAR_ANA_POWER_ICP is selected than the channel is measuring the ICP supply current. If the measured value is smaller than the Threshold value than red LED will be on and the Sensor Power Error bit will be set in the Status and Measurement message of the given Analog Channel.

0 – ICP Current measurement is OFF

RPM Threshold -100 % to +100 % of the selected Range value (resolution: 1 %)

RPM Holdoff Holdoff in µsec ( 0 – 100000 µsec)

0 – Holdoff is deactivated. Generator Output Channels:

Associated IDC: IDC_GOUT_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

+8 reserved (0) Output Impedance reserved (0) Output Range in dB

Page 130: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-73

(gout_impedance8) (gout_range8)

+12 reserved (0) reserved (0) reserved (0)

+16 Output Sampling Rate (read only - uint32)

+20 Amplitude (uint32)

+24 Offset (uint32)

+28 Generator Type (gout_gen_type8)

Sweep Type (gout_sweep_type8)

Start Phase (uint16)

+32 Base / Start Frequency (uint32)

+36 Stop Frequency (uint32)

+40 Sweep Time (uint32)

+44 Duty Cycle (uint8) reserved (0) Fade Time (uint16)

+48 reserved (0)

+52 reserved (0) Trigger Channel (uint8)

Trigger Edge (gout_trig_edge8)

Trigger Level (int8)

+56 reserved (0)

+60 reserved (0)

+64 reserved (0)

+68 No. of Repeats (uint32)

+72 reserved (0)

+76 reserved (0)

+80 reserved (0)

+84 reserved (0)

Note:

Arbitrary Wave file download is decribed in chapter Write File - Downloading Arbitrary

Wave file to GIM282.

gout_impedance8 (uint8) Analog Output Impedance selection

OUT_IMPEDANCE_600_OHM OUT_IMPEDANCE_51_OHM OUT_IMPEDANCE_UNKNOWN

gout_range8 (uint8) Analog Onput Range selection

PAR_OUT_RNG_50mV PAR_OUT_RNG_100mV PAR_OUT_RNG_200mV PAR_OUT_RNG_500mV PAR_OUT_RNG_1V PAR_OUT_RNG_2V PAR_OUT_RNG_5V PAR_OUT_RNG_10V PAR_OUT_RNG_UNKNOWN

Page 131: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-74

Output Sampling Rate Sampling Rate of the Output Channels in Hz (125000 – 250000 Hz, depends on GIM282 Modul Parameter - Main Sampling Rate). Read only value!

Amplitude Amplitude of the generated signal. Accepted values in Hex: 0x00000000 – 0x80000000.

0x00000000 – 0% of the selected Range value

0x80000000 – 100% of the selectec Range value

Note: not used if DC or Arbitrary Waveform is selected as Generator Type

Offset Offset of the generated signal. Accepted values in Hex: 0x00000000 – 0x80000000.

0x00000000 – -100% of the selected Range value

0x40000000 – 0% of the selected Range value

0x80000000 – 100% of the selectec Range value

Note: not used if Arbitrary Waveform is selected as Generator Type

gout_gen_type8 (uint8) Analog Output Generator Type selection

GEN_TYPE_DC GEN_TYPE_SINE GEN_TYPE_SQUARE GEN_TYPE_TRIANGLE GEN_TYPE_SWEEP_SINE GEN_TYPE_WHITE_NOISE GEN_TYPE_ARBITRARY GEN_TYPE_UNKNOWN

gout_sweep_type8 (uint8) Analog Output Generator Sweep Type selection

SWEEP_TYPE_LIN SWEEP_TYPE_LOG SWEEP_TYPE_UNKNOWN

Start Phase Start phase of the generated signal. Accepted values: 0 – 36000 in 0.01°.

Note: only used if Sinus, Square or Triangle Wave is selected as Generator Type.

Base / Start Frequency Base frequency of the generated signal if Sinus, Square or Triangle Wave is selected as Generator Type.

Start Frequency of the generated sweep sinus signal if Sweep Sine is selected as Generator Type.

Accepted values: 1 – 40000 in Hz.

Note: not used if DC, White Noise or Arbitrary Waveform is selected as Generator Type.

Stop Frequency Stop Frequency of the generated sweep sinus signal if Sweep Sine is selected as Generator Type.

Accepted values: 2 – 40001 in Hz. Stop Frequency must be always bigger than Start Frequency.

Note: only used if Sweep Sine is selected as Generator Type.

Page 132: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-75

Sweep Time Time interval until sweep sinus generator reaches the stop frequency started from start frequency. Accepted values: 100 – 120000 in msec.

Note: only used if Sweep Sine is selected as Generator Type.

Duty Cycle Duty cycle of the generated square or triangle wave. Accepted values: 0 – 100 in %, resolution: 1%.

Note: only used if Square or Triangle Wave is selected as Generator Type.

Fade Time Fade In and Fade Out interval of the generated signal. Accepted values: 0 – 3000 in msec, resolution: 1 msec.

Notes:

Fade Out – before parameter change or synchronization the generated signal’s amplitude will be decreased until 0 in the defined interval.

Fade In – after parameter change or synchronization the generated signal’s amplitude will be increased from 0 to the defined amplitude in the defined interval.

Trigger Channel Trigger Source Input Channel:

0 – no any channel selected, trigger function is deactivated. 1 – 1st analog input channel selected (CH1) … 10 – 10th analog input channel selected (CH10) 255 – trigger source unknown

Note: Trigger mode can be activated for all generator channels separately by selecting a trigger source channel. Trigger source can be all Analog and Monitor Input channel. In trigger mode the generator channel will start or stop signal generation if the source channel signal reach the selected level with rising or falling edge according to Trigger Source Edge Selection and Trigger Level parameters.

gout_trig_edge8 (uint8) Trigger Source Edge Selection

START_TRIGGER_EDGE_RISING – start generator at input signal rising edge

START_TRIGGER_EDGE_FALLING – start generator at input signal falling edge

STOP_TRIGGER_EDGE_RISING – stop generator at input signal rising edge

STOP_TRIGGER_EDGE_FALLING – stop generator at input signal falling edge

TRIGGER_EDGE_UNKNOWN

Trigger Level Trigger Level at selected Source Input Channel. Accepted values: -100 – +100 in % of the selected Input Range, resolution: 1%.

Page 133: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-76

No. of Repeats Number of Repeats of the downloaded Arbitrary Waveform.

0 – continuous replay. 1 – replay only 1 time 2 – replay 2 times … 10000 – replay 10000 times

Note: only used if Arbitrary Waveform is selected as Generator Type. CAN Input Channels:

Associated IDC: IDC_CAN4_CHANNEL_PARAMETERS

Refer to Chapter CAN4 Channel Parameters.

Note: Replay Termination has no function at GIM282C2F2.

FlexRay Input Channels:

Associated IDC: IDC_FLEX_CHANNEL_PARAMETERS

Refer to Chapter Flexray Channel Parameters.

MANA8, MANA8A Analog Channel Parameters 4.3.10.15

Associated IDC: IDC_ DIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 Input Selection (anainselection8)

reserved(0) reserved(0) coupling8

+12 reserved (0) reserved (0)

Number of bits in the data words

Input Range in dB (int8)

+16 reserved(0) reserved(0) reserved(0)

+20…

reserved(0)

+32 sampling_rate_numerator

+36 sampling_rate_denominator

+40…

reserved(0)

+60 reserved(0)

Note:

Number of bits in the data word are fix 16.

coupling8 (uint8) PAR_COUPLING_DC

PAR_COUPLING_AC

Page 134: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-77

MANA16 Analog Channel Parameters 4.3.10.16

Associated IDC: IDC_ DIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 Input Selection (anainselection8)

reserved(0) reserved(0) coupling8

+12 reserved (0)

Input Power Mode

(dic6_power8) Number of bits in the

data words Input Range in dB

(int8)

+16 reserved(0) reserved(0) reserved(0)

+20…

reserved(0)

+32 sampling_rate_numerator

+36 sampling_rate_denominator

+40…

reserved(0)

+60 reserved(0)

Note:

Input selection is always PAR_INPUT_SINGLE_ENDED coupling is read only Input Power Mode is read only

MANA 12 Analog Channel Parameters 4.3.10.17

Associated IDC: IDC_ DIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8)

Revision_id

(anaeRevisionID8) ChannelID (uint16)

+4 Sampling Rate in Hz

+8 Input Selection (anainselection8)

reserved(0) reserved(0) reserved(0)

+12 reserved (0) reserved(0)

Number of bits in the data words

Input Range in dB (int8)

+16

RPM Threshold in ± percent (int16) reserved(0)

Operation Mode (dic6_opmode8)

+20 RPM Holdoff in microseconds

+24 pulses per rotation numerator

+28 pulses per rotation denominator

+32 sampling_rate_numerator

+36 sampling_rate_denominator

Page 135: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-78

+40…

reserved(0)

+60 reserved(0)

anaeRevisionID8 (uint8) Fractional Sampling Rate

NO_FRACTIONAL_SAMPLING_RATE

FRACTIONAL_SAMPLING_RATE

Note:

On MDR Analog Channels the revision_id field is used to mark the fractional sampling rate support. If the channel supports the fractional sampling rate method, it sets its default value to FRACTIONAL_SAMPLING_RATE.

If the channel gets a SET channel parameter with revision_id = NO_FRACTIONAL_SAMPLING_RATE, it changes its behavior to no fractional sampling rate support, until its get a SET channel parameter with FRACTIONAL_SAMPLING_RATE or a revert to default paramteres. This behavior is to be backward compatible with software which do not support fractional sampling rate.

If the revision_id is set to FRACTIONAL_SAMPLING_RATE, the channel does a plausibility check if the integer sampling rate and the fractional sampling rate which represented by the two fields sampling_rate_numerator divided by sampling_rate_denominator matches each other. If they matches it uses the fractional sampling rate, if not it uses the integer sampling rate, and lost the fractional sampling rate feature (backward compatibility).

To get the fractional sampling rate feature back, one way is to reset to firmware defaults, or a SET/ARM with a valid parameter set with the “revision_id is set to FRACTIONAL_SAMPLING_RATE” ,, or enable ‘analog align to PPS’ mode and disable it again.

Note:

On MANA12 Channel 9...12 can be used as RPM inputs.

On MANA6 Channel 5 & 6 can be used as RPM inputs.

Input selection is always PAR_INPUT_SINGLE_ENDED

The MANA6/12 modules calculates pulses per secound and rotations per minute on RPM

channels and send it as additional words with the channel status.

For further information on the data format see chapter RPM Signals

MANA 6 Analog Channel Parameters 4.3.10.18

Associated IDC: IDC_ DIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8)

Revision_id

(anaeRevisionID8) ChannelID (uint16)

+4 Sampling Rate in Hz(integer)

+8 Input Selection (anainselection8)

Sensor Selection (anainsensor8)

reserved(0) coupling8

+12 reserved (0)

Input Power Mode

(dic6_power8)

Number of bits in the data words

Input Range in dB (int8)

+16 RPM Threshold in ± percent (int16) reserved(0)

Operation Mode (dic6_opmode8)

+20 RPM Holdoff in microseconds

Page 136: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-79

+24 pulses per rotation numerator

+28 pulses per rotation denominator

+32 sampling_rate_numerator

+36 sampling_rate_denominator

+40…

reserved(0)

+60 reserved(0)

Note:

a MANA4 module have only the first 4 MANA6 channels of a MANA6 module

MSGB Analog Channel Parameters 4.3.10.19

Associated IDC: IDC_ DIC6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8)

Revision_id

(anaeRevisionID8) ChannelID (uint16)

+4 Sampling Rate in Hz(integer)

+8 Input Selection (anainselection8)

reserved(0) reserved(0) reserved(0)

+12 reserved (0)

Number of bits in the data words

Input Range in dB (int8)

+16 reserved(0) reserved(0) reserved(0)

+20…

reserved(0)

+32 sampling_rate_numerator

+36 sampling_rate_denominator

+40…

reserved(0)

+64 bridge_type

(eBridgeType)

bridge_power_mode

(eBridgePowerMode)

autozero

(eAutoZero)

shunt_calibration

(eShuntCalibration)

+68 bridge_power (µV or µA depend on input_powermode)

+72 shunt_resistance(eShunt)

+76 time_span_us (shunt calibration duration in µs)

+80…

Reserved(0)

+100 Reserved(0)

Page 137: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-80

ePower

(uint8)

eBridgeType

(uint8)

eBridgePowerMode

(uint8)

mAutoZero

(uint8)

eShuntCalibration

eShunt

(uint32_be)

Input power mode

PAR_ANA_POWER_NO

PAR_ANA_POWER_VOLTAGE

PAR_ANA_POWER_CURRENT

PAR_ANA_POWER_UNKNOWN

bridge_type

PAR_FULL_BRIDGE

PAR_HALF_BRIDGE

PAR_QUARTER_BRIDGE

PAR_BRIDGE_TYPE_UNKNOWN

bridge_power_mode

PAR_HIGH_ACCURACY // for strain gages ( ratiometric )

PAR_FAST // for active sensors ( non ratiometric devices )

PAR_BRIDGE_POWER_MODE_UNKNOWN

autozero Bitfield

bit 0: mAUTOZERO_OFFSET_ENABLE

bit 1: mAUTOZERO_BROADCAST_ENABLE

shunt_calibration

PAR_SHUNT_CALIBRATION_DISABLE

PAR_SHUNT_CALIBRATION_ENABLE

PAR_SHUNT_CALIBRATION_UNKNOWN

shunt_resistance

R100K

MANA OUT Analog Channel Parameters 4.3.10.1

Associated IDC: IDC_MANA_OUT_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8)

Revision_id

(anaeRevisionID8) ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Sampling Rate in Hz(integer)

+12 sampling_rate_numerator

+16 sampling_rate_denominator

+20 Output Range

(eRange)

Output Selection

(eOutSelection)

Operation Mode

(eOpmode)

Generator Wave Form

(eGenWaveForm)

+24 Generator Frequency (Hz) Generator Amplitude (mVp)

+28 Generator Offset (mV) reserved(0)

+32 Reserved(0)

… Reserved(0)

+52 Reserved(0)

eRange Output Ranges

(int8) PAR_RANGE_1V

Page 138: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-81

PAR_RANGE_2V

PAR_RANGE_5V

PAR_RANGE_10V

PAR_RANGE_ASREC

PAR_RANGE_UNKNOWN

eOutSelection Output Selection

(uint8) PAR_OUTPUT_SINGLE_ENDED

PAR_OUTPUT_ASREC

PAR_OUTPUT_UNKNOWN

eOpmode Operation Mode

(uint8) PAR_ANAMODE_NORMAL

PAR_ANAMODE_RPM

PAR_ANAMODE_ASREC

PAR_ANAMODE_UNKNOWN

eGenWaveForm Generator Waveform

(uint8) PAR_WAVE_FORM_SINUS

PAR_WAVE_FORM_SAWTOOTH

PAR_WAVE_FORM_TRIANGLE

PAR_WAVE_FORM_SQUARE

PAR_WAVE_FORM_DC

Note: The RPM Generator

If the generator is active and the operation mode RPM is selected than the module generates an RPM signal. In this case the gen_wave_form parameter selects the speed of this RPM signal. If gen_wave_form = 0 then the RPM signal is AnalogMasterClock/8.

0 = AMC/8 1 = AMC/16 2 = AMC/32 3 = AMC/64 4 = AMC/128

Note: supported Data Format

A MANA OUT channel should accept replay streams at the following formats.

Two’s complement data format. Analog Data Format 1. With only one or zero subchannels. With 8, 16 or 32 Bits per Sample in packed mode. It accepts RPM data like chapter 18, too.

All channels assigned to one Mana8-P module should have the same sampling rate and start position. This means they should be generated by one channel group.

MDSC32 Channel Parameters 4.3.10.2

Associated IDC: IDC_MDSC32_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 trigger enable mask (op mode change) (LSB is input 1, MSB is input 32)

+12 Operational Mode (discrete_op_mode8)

Input Clock Rising (clockedge8)

Discrete Hold Mode (discrete_hold_mode8)

Invert Output Clock invert8 (uint8)

+16 Internal Clock Rate in Hz

+20 Hold-Off Time or minimum pulse lenght in microseconds

Page 139: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-82

+24 Reserved (0)

+28 Reserved (0)

MMDSCT12 Channel Parameters (MEMU Discrete Slot DBB) 4.3.10.3

Associated IDC: IDC_MDSC32_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 trigger enable mask (op mode change) (LSB is input 1)

+12 Operational Mode (discrete_op_mode8)

Input Clock Rising (clockedge8)

Discrete Hold Mode (discrete_hold_mode8)

Invert Output Clock invert8 (uint8)

+16 Internal Clock Rate in Hz

+20 Hold-Off Time or minimum pulse lenght in microseconds

+24 Reserved (0)

+28 Reserved (0)

+32 Reserved (0)

+36 Reserved (0) Reserved (0) Reserved (0) Number of following input parameter-sets

(n) (fixed 12)

+40

+n*8

Sense mode

discrete_sense_mode8

Reserved (0) Reserved (0)

+44

+n*8

Threshold low to high in 10mV Threshold high to low in 10mV ( readonly )

MMDSC12 Channel Parameters (MEMU Discrete Slot DLB) 4.3.10.4

Associated IDC: IDC_MDSC32_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 trigger enable mask (op mode change) (LSB is input 1)

+12 Operational Mode (discrete_op_mode8)

Input Clock Rising (clockedge8)

Discrete Hold Mode (discrete_hold_mode8)

Invert Output Clock invert8 (uint8)

+16 Internal Clock Rate in Hz

+20 Hold-Off Time or minimum pulse lenght in microseconds

+24 Reserved (0)

+28 Reserved (0)

+32 Reserved (0)

Page 140: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-83

+36 Reserved (0) Reserved (0) Threshold mode

(discrete_threshold_mode8)

Number of following input parameter-sets

(fixed 1)

+40

Sense mode

discrete_sense_mode8

Reserved (0) Reserved (0)

+44 Threshold low to high in 10mV (read only) Threshold high to low in 10mV ( read only )

The threshold voltages are read only and depend on threshold mode and sense mode.

MMDSCO6 Channel Parameters (MEMU Discrete Slot DOB) 4.3.10.5

Associated IDC: IDC_MDSC32_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 trigger enable mask (op mode change) (LSB is input 1)

+12 Operational Mode (discrete_op_mode8)

Input Clock Rising (clockedge8)

Discrete Hold Mode (discrete_hold_mode8)

Reserver(0)

+16 Internal Clock Rate in Hz

+20 Hold-Off Time or minimum pulse lenght in microseconds

+24 Reserved (0)

+28 Reserved (0)

+32 Reserved (0)

+36 Reserved (0) Reserved (0) Reserved (0) Number of following input parameter-sets

(fixed 1)

+40 Reserved (0) Reserved (0) Reserved (0)

+44 Threshold low to high in 10mV (read only) Threshold high to low in 10mV ( read only )

MPAR Channel Parameters 4.3.10.6

Associated IDC: IDC_PAR_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Single Ended Input (enabled8)

8-Bit Mode (enabled8)

Reserved(0) Input Clock Rising (clockedge8)

+8 Operational Mode (discrete_op_mode8)

Input Clock Rising (clockedge8)

Single Ended Threshold in 0.1 V

330 Ohm Termination (enabled8)

Page 141: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-84

MSTG Channel Parameters 4.3.10.7

Associated IDC: IDC_STG_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

ETH100 Channel Parameters 4.3.10.8

Module Types: ETH100, METH2, Ethernet channels of the MDR Hybrid modules

Associated IDC: IDC_ETH100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Ethernet Speed (ethernet_speed8)

Connection (ethernet_conn8)

Force Half Duplex (enable8)

Filter (ethernet_filter8)

If the field Filter selects filters: 1)

+12 Total Length starting with Version (Header + Data +Padding)

+16 Version (must be 1) Filter Count (1 or 2) Protocol Type (eth_flt_proto_type8)

Reserved

+20 Filter Enable Mask

+24 Filter 1 Length

+28 Filter 1 Mask

+32 Filter 1 Offset

+36 Filter 1 Word Length (eth_flt_word_len8)

Filter 1 Offset Type (eth_flt_offset8)

Filter 1 Item Count

+40 …

+n -4

Filter 1 Data ((Filter 1 Word Length / 8 * Filter 1 Item Count) + Padding)

+n (optional) Filter 2 Length

+n +4

(optional) Filter 2 Mask

+n +8

(optional) Filter 2 Offset

+n +12

(optional) Filter 2 Word Length

(eth_flt_word_len8)

(optional) Filter 2 Offset Type

(eth_flt_offset8)

(optional) Filter 2 Item Count

+n +16

(optional) Filter 2 Data ((Filter 2 Word Length / 8 * Filter 2 Item Count) + Padding)

If the field Filter selects downlink definitions: 2)

+n +20

len (total length of downlink definitions that follow)

+n +24

downlink definition data 4)

Page 142: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-85

If the field Filter selects a transmit message: 3)

+n +20 +len

hdr_version (transmit message header

version)

enable (transmit message

enable/disable)

reserved (0) reserved (0)

+n +24 +len

rate (transmission rate in milliseconds, 0: send once after each connection)

+n +28 +len

frame_len (total length of transmit message frame that follows)

+n +32 +len

transmit message frame data (frame_len + padding)

hdr_version (uint8) Transmit message header version: PAR_ETH_TMH_V1

Notes: IDC_ETH100_CHANNEL_PARAMETERS structure is also used by the different main types of this module type (CFG_MOD_MREV_METH2, CFG_MOD_MREV_METHSOFT) and by Ethernet channels used in module type CFG_MOD_TYPE_MEMU. Parameters like “Force Half Duplex , Ethernet Speed , Connection “ are currently not evaluated by the CFG_MOD_MREV_METHSOFT module. 1) METH2A/MEMU advanced type Ethernet channels only. 2) MEMU CFG_MOD_MREV_MCH10T only. 3) METH2/MEMU Ethernet channels only. 4) An Ethernet downlink definition has the following structure: 2)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 qualifiers (stream format qualifier values)

+4

name (stream name bytes 0 to 31)

+36 MAC_dst (destination MAC address bytes 1 to 4)

+40 MAC_dst (destination MAC address bytes 5 to 6)

MAC_src (source MAC address bytes 1 to 2)

+44 MAC_src (source MAC address bytes 3 to 6)

+48 IP_dst (destination IP address)

+52 IP_src (source IP address)

+56 port_dst (destination port number) port_src (source port number)

+60 max_udp_size (maximum UDP size in bytes) tmats_rate (TMATS repetition rate in seconds)

+64 reserved (0)

+68 reserved (0)

Page 143: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-86

qualifiers (uint32) Stream format qualifier values: CSDQ_FORMAT_CH10 CSDQ_FORMAT_RAW

MRG100 PCM Channel Parameters 4.3.10.9

Associated IDC: IDC_MRG100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Input Level Selection (pcmlevel8)

Input Code Selection (pcmcode8)

Input Data Invert (invert8 )

Input Clock Rising (clockedge8)

+12 reserved(0) input_threshold (uint8) Input Termination (inpcmterm8)

Input Randomization (randomization8)

+16 Internal Clock in Hz

+20 Output Level Selection (pcmlevel8)

Output Code Selection (pcmcode8)

Output Data Invert (invert8)

Output Clock Rising (clockedge8)

+24 reserved(0) reserved(0) Output Gated Clock (gatedclock8)

Output Randomization (randomization8)

+28 reserved(0) reserved(0) reserved(0) reserved(0)

+32 reserved(0) reserved(0) reserved(0) reserved(0)

+36 reserved(0) reserved(0) reserved(0) reserved(0)

+40 reserved(0) reserved(0) reserved(0) reserved(0)

+44 Packed/Unpacked Mode (packingmode8)

32-bit Packing Mode (enable8)

Alignment Mode (align8)

Synch Word Bit Length in bits

+48 PCM Synch Word bits 63..32 (msb padded by 0s)

+52 PCM Synch Word bits 31..0 (msb padded by 0s)

+56 PCM Synch Word Mask bits 63..32 (msb padded by 0s)

+60 PCM Synch Word Mask bits 31..0 (msb padded by 0s)

+64 Number of Minor Frames to be in Synch Number of Minor Frames to be out of Synch

+68 SFID Enabled (enable8)

SFID Increment (int8)

Number of Minor Frames Per Major Frame

+72 SFID Data Word Address SFID Alignment Mode (align8)

SFID MSB Bit Position (uint8)

+76 SFID Mask

+80 SFID Value

+84 Watch Word Enable (enable8)

SFID Check Enable (enable8)

Watch Word SFID Value

+88 Watch Word Data Word Address reserved (0) reserved (0)

+92 Watch Word Mask

+96 Watch Word Value

+100 Number of Data Word Description Entries (number of different size data word groups)

Page 144: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-87

+104 Number of Data Words in This Group Number of Bits in the Data Word in This Group

… …

PCM Channel Parameters of the MDR 4.3.10.10

Module Types: MMRG8, PCM channels of the MDR Hybrid modules

Associated IDC: IDC_MRG100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Input Level Selection (pcmlevel8)

Input Code Selection (pcmcode8)

Input Data Invert (invert8 )

Input Clock Rising (clockedge8)

+12 reserved(0) input_threshold (uint8) Input Termination (inpcmterm8)

Input Randomization (randomization8)

+16 Internal Clock in Hz

+20 Output Level Selection (pcmlevel8)

Output Code Selection (pcmcode8)

Output Data Invert (invert8)

Output Clock Rising (clockedge8)

+24 reserved(0) reserved(0) Output Gated Clock (gatedclock8)

Output Randomization (randomization8)

+28 reserved(0) reserved(0) reserved(0) reserved(0)

+32 reserved(0) reserved(0) reserved(0) reserved(0)

+36 reserved(0) reserved(0) reserved(0) reserved(0)

+40 reserved(0) reserved(0) reserved(0) reserved(0)

+44 Packed/Unpacked Mode (packingmode8)

32-bit Packing Mode (enable8)

Alignment Mode (align8)

Synch Word Bit Length in bits

+48 PCM Synch Word bits 63..32 (msb padded by 0s)

+52 PCM Synch Word bits 31..0 (msb padded by 0s)

+56 PCM Synch Word Mask bits 63..32 (msb padded by 0s)

+60 PCM Synch Word Mask bits 31..0 (msb padded by 0s)

+64 Number of Minor Frames to be in Synch Number of Minor Frames to be out of Synch

+68 SFID Enabled (enable8)

SFID Increment (int8)

Number of Minor Frames Per Major Frame

+72 SFID Data Word Address SFID Alignment Mode (align8)

SFID MSB Bit Position (uint8)

+76 SFID Mask

+80 SFID Value

+84 Watch Word Enable (enable8)

SFID Check Enable (enable8)

Watch Word SFID Value

+88 Watch Word Data Word Address reserved (0) reserved (0)

+92 Watch Word Mask

+96 Watch Word Value

Page 145: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-88

+100 Number of Data Word Description Entries (number of different size data word groups)

+104 Number of Data Words in This Group Number of Bits in the Data Word in This Group

… …

Associated IDC: IDC_PCM_FILTER_PARAMETERS (MMRG8A only)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0

… reserved(0)

+32 nof_filters (max. 128) reserved(0)

+36

… nof_filters * sizeof(PCM filter definition) 1)

1) A PCM filter definition has the following structure:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Word sequence start word number Word sequence length

+4 Word sequence increment (step width) reserved(0)

+8 Frame sequence start minor frame ID Frame sequence length

+12 Frame sequence increment (step width) reserved(0)

+16 filter_mode (pcm_filter_mode8)

filter_type (pcm_filter_type8)

reserved(0) reserved(0)

MC10T Channel Parameters 4.3.10.11

Associated IDC: IDC_MC10T_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Replayed Channel Assignment (replay_assignment32)

+8 clock_rate (output clock frequency in Hz)

+12 Output Level Selection (pcmlevel8)

Output Code Selection (pcmcode8)

Output Data Invert (invert8)

Output Clock Rising (clockedge8)

+16 output_mode reserved(0) Output Gated Clock (gatedclock8)

Output Randomization (randomization8)

+20 Ethernet 1 Speed (ethernet_speed8)

Ethernet 1 Force Half Duplex (enable8)

Ethernet 2 Speed (ethernet_speed8)

Ethernet 2 Force Half Duplex (enable8)

+24 reserved (0)

+28 reserved (0)

+32 reserved (0)

+36 reserved (0)

+40 prot_version (used is_32bit (enable8) align_mode (align8) synch_len (synchron

Page 146: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-89

protocol version) word length in bits)

+44 synch_h (synchron word bits 32 to 63)

+48 synch_l (synchron word bits 0 to 31)

+52 synch_mask_h (synchron word mask bits 32 to 63)

+56 synch_mask_l (synchron word mask bits 0 to 31)

+60 reserved (0) reserved (0)

+64 fec_type (forward error correction type)

Interleave (number of interleaved blocks)

reserved (0) reserved (0)

+68 reserved (0)

+72 Number of Data Words in This Group Number of Bits in the Data Word in This Group

+76 nof_streams (number of downlink definitions that follow, maximum 4)

+80

nof_streams * sizeof(downlink definition) 1)

output_mode (uint8) Output modes: PAR_OUT_MODE_NORMAL PAR_OUT_MODE_PACKET PAR_OUT_MODE_CH4FRAME PAR_OUT_MODE_UNKNOWN

fec_type Forward error correction type: FEC_NO FEC_CCSDS_255_223

Interleave Number of interleaved blocks. 0 means no interleaving, maximum value is 8.

1) An MC10T downlink definition is derived from the Ethernet downlink definition, to which it adds the following parameters:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+72 ground_dest_enable reserved (0) reserved (0) reserved (0)

TRM100, TRM200 and TRM300 PCM Input Channel Parameters 4.3.10.12

Associated IDC: IDC_TRM_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved(0)

+4 reserved(0)

+8 Input Level Selection (pcmlevel8)

Input Code Selection (pcmcode8)

Input Data Invert (invert8 )

Input Clock Rising (clockedge8)

+12 reserved(0) input_threshold (uint8) Input Termination (inpcmterm8)

Input Randomization (randomization8)

+16 Internal Clock in Hz

+20 reserved(0) reserved(0) reserved(0) reserved(0)

Page 147: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-90

+24 reserved(0) reserved(0) reserved(0) reserved(0)

+28 reserved(0) reserved(0) reserved(0) reserved(0)

+32 reserved(0) reserved(0) reserved(0) reserved(0)

+36 reserved(0) reserved(0) reserved(0) reserved(0)

+40 prot_version (used protocol version)

is_32bit (enable8) align_mode (align8) synch_len (synchron word length in bits)

+44 synch_h (synchron word bits 32 to 63)

+48 synch_l (synchron word bits 0 to 31)

+52 synch_mask_h (synchron word mask bits 32 to 63)

+56 synch_mask_l (synchron word mask bits 0 to 31)

+60 Number of Minor Frames to be in Synch Number of Minor Frames to be out of Synch

+64 fec_type (forward error correction type)

Interleave (number of interleaved blocks)

reserved (0) reserved (0)

+68 reserved (0)

+72 Number of Data Words in This Group Number of Bits in the Data Word in This Group

MIL-1553 Channel Parameters 4.3.10.13

Module types: UAR100

Associated IDC: IDC_UAR100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 Input Coupling (milcoupling8)

Strict Error Checking (enabled8)

Reserved (0)

Module types: MUAR6 and MIL-1553 channels of the MDR hybrid modules

Associated IDC: IDC_UAR100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Reserved (0)

+8 Input Coupling (milcoupling8)

Strict Error Checking (enabled8)

Reserved (0)

+12 Include Type Filter (enabled8)

Reserved (0) Overwrite Data Word

+16 Number of MIL-1553 Filters

+12 Overwrite Mode (enabled8)

Message Type (mil_filter_type8)

Reserved(0) or the Receive Word for RT-RT message in Receive / Transfer filter mode

+16 Mask for the Command word

Command Word (for RT-RT transfer the Transmit Command Word)

Page 148: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-91

MIL-1553 Replay Channel Parameters 4.3.10.14

Associated IDC: IDC_ UAP100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

+8 Output Coupling (milcoupling8)

reserved (0) reserved (0)

OUT6 Analog Channel Parameters 4.3.10.15

Associated IDC: IDC_OUT6_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

+8 reserved (0) Output Selection (anainselection8 +

“ASREC”)

Output Range in dB (int8 + “ASREC”)

+12 reserved (0) reserved (0)

Operation Mode (dic6_opmode8)

SGU9 Analog Channel Parameters 4.3.10.16

Associated IDC: IDC_SGU9_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Sampling Rate in Hz

+8 reserved (0) reserved (0) reserved (0) reserved (0)

+12 reserved (0) reserved (0)

Number of bits in the data words

Input Range in dB (sgu_range8 )

+16 reserved (0) reserved (0) reserved (0)

+20 reserved (0)

+24 Bridge Type (sgu_bridge_type8 )

reserved (0) Bridge Power (uint16)

Bridge power supply, 0V -> 10V, 10mV steps

Page 149: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-92

sgu_range8 (int8) SGU9 input range

PAR_RANGE_1mV PAR_RANGE_2mV PAR_RANGE_5mV PAR_RANGE_10mV PAR_RANGE_20mV PAR_RANGE_50mV

PAR_RANGE_100mV PAR_RANGE_200mV PAR_RANGE_500mV PAR_RANGE_1V PAR_RANGE_2V PAR_RANGE_5V

sgu_bridge_type8 (uint8) SGU9 Bridge Type PAR_FULL_BRIDGE PAR_HALF_BRIDGE

VCR100 Channel Parameters 4.3.10.17

Associated IDC: IDC_VCR100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 Bitrate in kbps ( 1000 – 15000 ) Bitrate Mode (vcr_bitratemode8)

Input Selection (vcr_input_output8)

+8 GOP Size (1 – 252) GOP Structure (vcr_gopstruct8)

Resolution (vcr_resolution8)

Color Standard (vcr_colorstandard8)

+12 DCM Output Rising (clockedge8)

DCM NRZ coding (vcr_dcmnrz8)

Audio Bitrate (vcr_audiobitrate16)

+16 reserved(0) Timestamp Background Color

(vcr_color8)

Timestamp Color (vcr_color8)

Timestamp enabled (enabled8)

+20 Timestamp Horizontal Position Timestamp Vertical Position

+24 reserved(0) Text Background Color (vcr_color8)

Text Color (vcr_color8)

Text enabled (enabled8)

+28 Text Horizontal Position Text Vertical Position

+32 crossed_input reserved(0) reserved(0) reserved(0)

+36 reserved(0)

+40 reserved(0)

+44 reserved(0)

+48 No of Characters (1 – 80 )

+40 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

VCP100 Channel Parameters 4.3.10.18

Associated IDC: IDC_VCP100_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

Page 150: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-93

+8 reserved(0) Source Selection (vcp_sourcesel8)

Color Standard (vcp_colorstandard8)

Output Selection (vcp_outputsel8)

+12 reserved(0) reserved(0) DCM NRZ (vcr_dcmnrz8)

DCM Input Rising (clockedge8)

+16 PID Handling Mode (vcp_pidmode8)

reserved(0) PCR PID

+20 Video PID Audio PID

+24 reserved(0) Timestamp Background Color

(vcp_color8)

Timestamp Color (vcp_color8)

Timestamp enabled (enabled8)

+28 Timestamp Horizontal Position Timestamp Vertical Position

+32 reserved(0) Text Background Color(vcp_color8)

Text Color (vcp_color8)

Text enabled (enabled8)

+36 Text Horizontal Position Text Vertical Position

+40 reserved(0) reserved(0) reserved(0) reserved(0)

+44 No of Characters (1 – 80 )

+48 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

+0 No of Characters (1 – 80 )

+4 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

+N … Last Char Code Filler (0xff) Filler (0xff)

VCP200 Channel Parameters 4.3.10.19

Associated IDC: IDC_VCP200_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id reserved (0)

+4 Replayed Channel Assignment (replay_assignment32)

+8 dcm_term_low_z (enabled8)

Source Selection (vcp_sourcesel8)

Color Standard (vcp_colorstandard8)

reserved(0)

+12 dcm_in_single_ended (enabled8)

dcm_se_threshold in 0.1V steps

DCM NRZ (vcr_dcmnrz8)

DCM Input Rising (clockedge8)

+16 PID Handling Mode (vcp_pidmode8)

reserved(0) PCR PID

+20 Video PID Audio PID

+24 reserved(0)

+28 reserved(0)

+32 reserved(0)

+36 reserved(0)

Page 151: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-94

+40 reserved(0)

+44 reserved(0)

MVCR1 Channel Parameters 4.3.10.20

Associated IDC: IDC_MVCR1_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

+4 bitrate ( in kbps 2000 – 20000 ) bitrate_mode input_sel

+8 reserved(0) reserved(0) resolution color_stand

+12 reserved(0) reserved(0) audio_bitr (uint16)

+16 reserved(0) time_back_col time_char_col time_enable

+20 time_hor_pos (uint16) time_vert_pos (uint16)

+24 output _enabled text_back_col text_char_col text_enable

+28 text_hor_pos (uint16) text_vert_pos (uint16)

+32 crossed_input I_frames_only(0) I_frame_rate

+36 reserved (0)

+40 reserved (0)

+44 reserved (0)

+48 text_length (uint32)

+52 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

enabled Enabled Flag.

PAR_DISABLED Channel is disabled PAR_ENABLED Channel is enabled for recording PAR_UNKNOWN Unknown channel state

revision_id ( uint8) The current revision ID is 0.

ChannelID (uint16) DATaRec® 4 Channel ID is the big endian representation of the ID

used in Packet Header.

bitrate (uint16): The bit rate in the range of:

MVCR1_MIN_BITRATE to MVCR1_MAX_BITRATE.

bitrate_mode (uint8) The possible values are:

PAR_COMPR_CBR Constant bit rate PAR_COMPR_VBR Variable bit rate PAR_COMPR_CBR_NOFILLER PAR_COMPR_VBR_NOFILLER PAR_COMPR_UNKNOWN

Page 152: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-95

input_sel (uint8) The possible values are :

PAR_COMPOSIT PAR_S_VIDEO PAR_SCART PAR_RGB_SEPARATE_SYNC PAR_RGB_COMMON_SYNC PAR_RGB_SOG_SYNC PAR_YPBPR

resolution (uint8) Compressed Resolution:

PAR_RES_NORMAL Compressed resolution is source resolution PAR_RES_SCALE_DOWN Scale down to SD resolution, if possible PAR_RES_UNKNOWN setting

resolution (uint8) The possible values are:

PAR_RES_NORMAL PAR_RES_SCALE_DOWN HD to SD downscaling enabled PAR_RES_UNKNOWN

color_stand (uint8) The possible values are:

PAR_NTSC PAR_PAL PAR_1280_720_59P PAR_1280_720_50P PAR_1920_1080_59I PAR_1920_1080_50I PAR_1280_1024_60P PAR_1920_1080_60P PAR_1920_1080_50P PAR_1920_1080_59P PAR_1280_720_60P PAR_1920_1080_60I PAR_1920_1080_60P_B

PAR_1920_1080_50P_B PAR_1920_1080_59P_B PAR_1920_1080_23P PAR_1920_1080_24P PAR_1920_1080_25P PAR_1920_1080_29P PAR_1920_1080_30P PAR_1280_720_23P PAR_1280_720_24P PAR_1280_720_25P PAR_1280_720_29P PAR_1280_720_30P

audio_bitr (uint16) The possible values are:

PAR_ABITR_OFF PAR_ABITR_192 PAR_ABITR_UNKNOWN

output_enable (uint8) The possible values are:

PAR_ENABLED PAR_DISABLED PAR_UNKNOWN

time_back_col (uint8)

time_char_col (uint8)

The possible values are:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE

PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA PAR_COLOR_LAST PAR_COLOR_UNKNOWN

text_enable (uint8)

time_hor_pos (uint16) Timestamp horizontal position in pixels:

time_vert_pos (uint16) Timestamp vertical position in pixels:

crossed_input (uint8) PAR_CROSSED_IN_DISABLED Channel x input to channel x encoder.

PAR_CROSSED_IN_ENABLED Encoder connected to the other input channel of s channel pair.

PAR_CROSSED_IN_UNKNOWN

Page 153: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-96

I_frames_only (uint8) PAR_ALL_FRAMES Full video is recorded.

PAR_IFRAMES_ONLY Only I Frames are recorded

PAR_IFRAMES_AND_AUDIO Only I Frames and audio are recorded

PAR_IFRAMES_UNKNOWN

i_frame_rate (uint8) IDR frame decimation rate in ms:

500 ms – 10000 ms

text_length (uint32) Length of the inserted text

MVCR2, MVCR4 and MVCR5 Channel Parameters 4.3.10.21

Associated IDC: IDC_MVCR2_CHANNEL_PARAMETERS, IDC_MVCR4_CHANNEL_PARAMETERS, IDC_MVCR5_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled revision_id ChannelID

+4 bitrate bitrate_mode input_sel

+8 reserved(0) reserved(0) resolution color_stand

+12 color_stand_input scaling_mode audio_bitr

+16 audio_source time_back_col time_char_col time_enable

+20 time_hor_pos time_vert_pos

+24 reserved(0) text_back_col text_char_col text_enable

+28 text_hor_pos text_vert_pos

+32 crossed_input i_frames_only i_frame_rate

+36 reserved (0)

+40 reserved (0)

+44 reserved (0)

+48 start_hor start_ver

+52 input_size_hor input_size_ver

+56 scaled_size_hor scaled_size_ver

+60 reserved(0) edid_mode edid_standard_timing

+64 output_selection modline_flags modline_pclk

+68 modline_hdisp modline_hsynchstart

+72 modline_hsynchend modline_htotal

+76 modline_vdisp modline_vsynchstart

+80 modline_vsynchend modline_vtotal

+84 tune_enabled reserved(0) tune_swap_field tune_swap_color

+88 tune_vertical_field0 tune_vertical_field1

+92 tune_horizontal reserved(0)

+96 text_length (uint32)

Page 154: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-97

+100 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

enabled ( uint8) Enabled Flag.

PAR_DISABLED Channel is disabled PAR_ENABLED_FOR_RECORD Channel is enabled for recording PAR_UNKNOWN Unknown channel state

revision_id ( uint8) The current revision ID is 0.

ChannelID (uint16) DATaRec® 4 Channel ID is the big endian representation of the ID

used in Packet Header.

bitrate (uint16): Compressed video bit rate (kbit/s):

MVCR3_MIN_BITRATE = 2000 to MVCR3_MAX_BITRATE = 20000. If resolution is PAR_RES_SCALE_DOWN than the minimum bitrate is 500.

bitrate_mode (uint8) Bit rate mode:

PAR_COMPR_CBR Constant bit rate PAR_COMPR_CBR_NOFILLER Constant bit rate, filler data is removed PAR_COMPR_UNKNOWN Unknown bit rate mode setting

input_sel (uint8) Input selection :

PAR_SDI SDI input PAR_INOUT_UNKNOWN Unknown input selection setting

resolution (uint8) Compressed Resolution:

PAR_RES_NORMAL Compressed resolution is source resolution PAR_RES_SCALE_DOWN Scale down to SD resolution, if possible PAR_RES_UNKNOWN setting

color_stand (uint8) PAR_NTSC PAR_PAL PAR_1280_720_59P PAR_1280_720_50P PAR_1920_1080_59I PAR_1920_1080_50I PAR_1280_1024_60P PAR_1920_1080_60P PAR_1920_1080_50P PAR_1920_1080_59P PAR_1280_720_60P PAR_1920_1080_60I PAR_1920_1080_60P_B

PAR_1920_1080_50P_B PAR_1920_1080_59P_B PAR_1920_1080_23P PAR_1920_1080_24P PAR_1920_1080_25P PAR_1920_1080_29P PAR_1920_1080_30P PAR_1280_720_23P PAR_1280_720_24P PAR_1280_720_25P PAR_1280_720_29P PAR_1280_720_30P

color_stand_input(uint8) Color Standard:

PAR_SD_AUTO Auto color standard detection PAR_COLOR_STAND_UNKNOWN Unknown color standard

Page 155: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-98

Scaling_mode (uint8) Video scaling mode (only for MVCR2 and MVCR4)

PAR_SCALE_NOSCALING, If upscaling - black stripes around, if downscaling – cropped, windowbox

PAR_SCALE_KEEP_ASPECT_CROP, Scale, keep aspect ratio, and crop to have no black stripes pan and scan

PAR_SCALE_KEEP_ASPECT_STRIPES, Scale, Keep aspect ratio, and have some black stripes around if needed. letterbox

PAR_SCALE_FIT , Do not keep aspect ratio PAR_SCALE_ARBITRARY, Arbitrary scaling PAR_SCALE_UNKNOWN

audio_bitr (uint16) Audio bitrate:

PAR_ABITR_OFF Audio is not included in the output data PAR_ABITR_192 Audio is compressed to 192 kbit/s PAR_ABITR_UNKNOWN Unknown audio bitrate setting

audio_source (uint8) Audio source:

PAR_ASRC_ANALOG Analog audio input is used PAR_ASRC_EMBED Digital audio data embedded in SDI stream

is used PAR_ASRC_UNKNOWN Unknown audio source setting

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position in pixels:

time_vert_pos (uint16) Timestamp vertical position in pixels:

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position in pixels

text_vert_pos (uint16) User text vertical position in pixels

Page 156: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-99

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position in pixels:

time_vert_pos (uint16) Timestamp vertical position in pixels:

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position in pixels

text_vert_pos (uint16) User text vertical position in pixels

crossed_input (uint8) Crossed Input:

PAR_CROSSED_IN_DISABLED Channel x input to channel x encoder PAR_CROSSED_IN_ENABLED Encoder connected to the other input

channel of a channel pair PAR_CROSSED_IN_UNKNOWN Unknown Crossed Input setting

I_frames_only (uint8) PAR_ALL_FRAMES Full video is recorded.

PAR_IFRAMES_ONLY Only I Frames are recorded

PAR_IFRAMES_AND_AUDIO Only I Frames and audio are recorded

PAR_IFRAMES_UNKNOWN

i_frame_rate (uint8) IDR frame decimation rate in ms:

500 ms – 10000 ms

start_hor (uint16) – scaled_size_vertical (uint16)

Scaling parameters (available only for MVCR2 and MCR4)

output_sel (uint16) Selection of the analog loopback output.

PAR_COMPOSIT PAR_S_VIDEO PAR_SCART PAR_RGB_SEPARATE_SYNC PAR_RGB_COMMON_SYNC PAR_RGB_SOG_SYNC PAR_YPBPR

text_length (uint32) Length of user text:

Max. length is 60 characters.

Page 157: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-100

MVCR3 Channel Parameters 4.3.10.22

Associated IDC: IDC_MVCR3_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled revision_id ChannelID

+4 bitrate bitrate_mode input_sel

+8 reserved(0) reserved(0) resolution color_stand

+12 metadata_en klv_segm_en audio_bitr

+16 audio_source time_back_col time_char_col time_enable

+20 time_hor_pos time_vert_pos

+24 reserved(0) text_back_col text_char_col text_enable

+28 text_hor_pos text_vert_pos

+32 crossed_input i_frames_only i_frame_rate

+36 reserved (0)

+40 reserved (0)

+44 reserved (0)

+48 text_length (uint32)

+52 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

enabled ( uint8) Enabled Flag.

PAR_DISABLED Channel is disabled PAR_ENABLED_FOR_RECORD Channel is enabled for recording PAR_UNKNOWN Unknown channel state

revision_id ( uint8) The current revision ID is 0.

ChannelID (uint16) DATaRec® 4 Channel ID is the big endian representation of the ID

used in Packet Header.

bitrate (uint16): Compressed video bit rate (kbit/s):

MVCR3_MIN_BITRATE = 2000 to MVCR3_MAX_BITRATE = 20000. If resolution is PAR_RES_SCALE_DOWN than the minimum bitrate is 500.

bitrate_mode (uint8) Bit rate mode:

PAR_COMPR_CBR Constant bit rate PAR_COMPR_CBR_NOFILLER Constant bit rate, filler data is removed PAR_COMPR_UNKNOWN Unknown bit rate mode setting

input_sel (uint8) Input selection :

PAR_SDI SDI input PAR_INOUT_UNKNOWN Unknown input selection setting

Page 158: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-101

resolution (uint8) Compressed Resolution:

PAR_RES_NORMAL Compressed resolution is source resolution PAR_RES_SCALE_DOWN Scale down to SD resolution, if possible PAR_RES_UNKNOWN setting

color_stand (uint8) Color Standard:

PAR_SD_AUTO Auto color standard detection PAR_COLOR_STAND_UNKNOWN Unknown color standard

metadata_en (uint8) Metadata insertion to the output data:

PAR_META_DISABLED Metadata is not inserted PAR_META_ENABLED Metadata is inserted if it is available in the

input stream PAR_META_UNKNOWN Unknown metadata insertion setting

klv_segm_en (uint8) KLV data segmentation in the input stream:

PAR_KLV_SEGM_DISABLED input KLV data is not segmented PAR_KLV_SEGM_ENABLED input KLV data is segmented PAR_KLV_SEGM_UNKNOWN Unknown setting of KLV data

segmentation setting (not auto mode!)

audio_bitr (uint16) Audio bitrate:

PAR_ABITR_OFF Audio is not included in the output data PAR_ABITR_192 Audio is compressed to 192 kbit/s PAR_ABITR_UNKNOWN Unknown audio bitrate setting

audio_source (uint8) Audio source:

PAR_ASRC_ANALOG Analog audio input is used PAR_ASRC_EMBED Digital audio data embedded in SDI stream

is used PAR_ASRC_UNKNOWN Unknown audio source setting

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position in pixels:

time_vert_pos (uint16) Timestamp vertical position in pixels:

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position in pixels

Page 159: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-102

text_vert_pos (uint16) User text vertical position in pixels

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position:

0 – No. of horizontal pixels - 1

time_vert_pos (uint16) Timestamp vertical position:

0 – No. of vertical pixels - 1

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position:

0 – No. of horizontal pixels - 1

text_vert_pos (uint16) User text vertical position:

0 – No. of vertical pixels - 1

crossed_input (uint8) Crossed Input:

PAR_CROSSED_IN_DISABLED Channel x input to channel x encoder PAR_CROSSED_IN_ENABLED Encoder connected to the other input

channel of a channel pair PAR_CROSSED_IN_UNKNOWN Unknown Crossed Input setting

I_frames_only (uint8) PAR_ALL_FRAMES Full video is recorded.

PAR_IFRAMES_ONLY Only I Frames are recorded

PAR_IFRAMES_AND_AUDIO Only I Frames and audio are recorded

PAR_IFRAMES_UNKNOWN

i_frame_rate (uint8) IDR frame decimation rate in ms:

500 ms – 10000 ms

text_length (uint32) Length of user text:

Max. length is 60 characters.

Page 160: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-103

MVCR SDI4 Channel Parameters 4.3.10.1

Associated IDC: IDC_MVCR3_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled in_select ChannelID

+4 bitrate bitrate_mode input_sel

+8 reserved(0) reserved(0) record_adjust color_stand

+12 metadata_en klv_segm_en audio_bitr

+16 audio_source time_back_col time_char_col time_enable

+20 time_hor_pos time_vert_pos

+24 reserved(0) text_back_col text_char_col text_enable

+28 text_hor_pos text_vert_pos

+32 iframe_interval idr_interval nof_ref_frames nof_b_to_p

+36 reserved (0)

+40 time_font_size text_font_size reserved(0) low_latency

+44 input_hor_size input_ver_size

+48 input_frate100 input_specs reserved(0)

+52 record_hor_size record_ver_size

+56 target_frate100 record_specs reserved(0)

+60 video_codec audio_codec reserved(0) reserved(0)

+64 reserved(0)

+68

+100

reserved(0)

+104 reserved(0)

+108 text_length (uint32)

+112 1st Char Code 2nd Char Code 3rd Char Code 4th Char Code

… … … … …

… … Last Char Code Filler (0xff) Filler (0xff)

enabled ( uint8) Enabled Flag.

PAR_DISABLED Channel is disabled PAR_ENABLED_FOR_RECORD Channel is enabled for recording PAR_UNKNOWN Unknown channel state

in_select ( uint8) Channel mapping to physical I/O, MSB must be set to 1, so 0x80 + 0..3.

ChannelID (uint16) DATaRec® 4 Channel ID is the big endian representation of the ID

used in Packet Header.

Page 161: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-104

bitrate (uint16): Compressed video bit rate (kbit/s):

MVCRSDI4_MIN_BITRATE = 2000 to MVCRSDI4_MAX_BITRATE = 20000. If resolution is PAR_RES_SCALE_DOWN than the minimum bitrate is 500.

bitrate_mode (uint8) Bit rate mode:

PAR_COMPR_CBR Constant bit rate PAR_COMPR_CBR_NOFILLER Constant bit rate, filler data is removed PAR_COMPR_UNKNOWN Unknown bit rate mode setting

input_sel (uint8) Input selection :

PAR_SDI SDI input PAR_INOUT_UNKNOWN Unknown input selection setting

record_adjust (uint8) Adjustment flags to video record:

PAR_RECADJ_NORMAL Compressed resolution is source resolution PAR_RECADJ_RESCALE If set, change output video resolution to

target instead of recording as input. PAR_RECADJ_FRATE_DECIMATION Alter output frame rate by an integer

divider. PAR_RES_UNKNOWN Unknown setting

color_stand (uint8) Color Standard:

PAR_COLOR_STAND_AUTO Auto color standard detection PAR_COLOR_STAND_UNKNOWN Unknown color standard

metadata_en (uint8) Metadata insertion to the output data: (not implemented)

PAR_META_DISABLED Metadata is not inserted PAR_META_ENABLED Metadata is inserted if it is available in the

input stream PAR_META_UNKNOWN Unknown metadata insertion setting

klv_segm_en (uint8) KLV data segmentation in the input stream: (not implemented)

PAR_KLV_SEGM_DISABLED input KLV data is not segmented PAR_KLV_SEGM_ENABLED input KLV data is segmented PAR_KLV_SEGM_UNKNOWN Unknown setting of KLV data

segmentation setting (not auto mode!)

audio_bitr (uint16) Audio bitrate: (possible bitrates are in the 32..384 kbit/s range)

PAR_ABITR_OFF Audio is not included in the output data PAR_ABITR_192 Audio is compressed to 192 kbit/s PAR_ABITR_UNKNOWN Unknown audio bitrate setting

audio_source (uint8) Audio source:

PAR_ASRC_ANALOG1 Analog audio input is used PAR_ASRC_ANALOG2 Analog audio input is used PAR_ASRC_SDI1 Digital audio data embedded in SDI stream

1 is used PAR_ASRC_SDI2 Digital audio data embedded in SDI stream

2 is used PAR_ASRC_SDI3 Digital audio data embedded in SDI stream

3 is used PAR_ASRC_SDI4 Digital audio data embedded in SDI stream

4 is used PAR_ASRC_UNKNOWN Unknown audio source setting

Page 162: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-105

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position in pixels:

time_vert_pos (uint16) Timestamp vertical position in pixels:

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position in pixels

text_vert_pos (uint16) User text vertical position in pixels

time_back_col (uint8) Timestamp background color:

PAR_COLOR_TRANSPARENT PAR_COLOR_BLACK PAR_COLOR_WHITE PAR_COLOR_RED PAR_COLOR_GREEN PAR_COLOR_BLUE PAR_COLOR_YELLOW PAR_COLOR_CYAN PAR_COLOR_MAGENTA

PAR_COLOR_UNKNOWN Unknown color setting

time_char_col (uint8) Timestamp color: same values as ‘time_back_col’

time_enable (uint8) Timestamp insertion:

PAR_DISABLED Timestamp is not inserted PAR_ENABLED Timestamp is inserted PAR_UNKNOWN Unknown timestamp insertion setting

time_hor_pos (uint16) Timestamp horizontal position:

0 – No. of horizontal pixels - 1

time_vert_pos (uint16) Timestamp vertical position:

0 – No. of vertical pixels - 1

text_back_col (uint8) User text color: same values as ‘time_back_col’

text_char_col (uint8) User text color: same values as ‘time_back_col’

Page 163: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-106

text_enable (uint8) User text insertion:

PAR_DISABLED User text is not inserted PAR_ENABLED User text is inserted PAR_UNKNOWN Unknown user text insertion setting

text_hor_pos (uint16) User text horizontal position:

0 – No. of horizontal pixels - 1

text_vert_pos (uint16) User text vertical position:

0 – No. of vertical pixels - 1

iframe_interval (uint8) I-frame interval (in frames)

idr_interval (uint8) IDR frame interval in frames

nof_ref_frames (uint8) Number of reference frames

nof_b_to_p (uint8) B to P ratio, H264 only (in H265 it is set to 0)

time_font_size (uint8) Timestamp font size

text_font_size (uint8) User text font size

low_latency (uint8) 0 – disabled, 1- enable low latency mode

input_hor_size Input video horizontal resolution

input_ver_size Input video vertical resolution

input_frate100 Input frame rate × 100

input_specs Input video specifics; bit 0: 0 = progressive, 1 = interlaced input

record_hor_size Output (recorded) video horizontal resolution; applies only if record_adjust bit 0 (PAR_RECADJ_RESCALE) is enabled, otherwise as input

record_ver_size Output (recorded) video vertical resolution; applies only if record_adjust bit 0 (PAR_RECADJ_RESCALE) is enabled, otherwise as input

target_frate100 Target frame rate × 100, must be less than or equal to input; actual value will be nearest valid value calculated by dividing input frame rate with an integer

record_specs Record video specifics – progressive only, record_specs must be set to 0

video_codec PAR_VIDEOCODEC_H264 PAR_VIDEOCODEC_H265 PAR_VIDEOCODEC_UNKNOWN

audio_codec PAR_AUDIOCODEC_MPEG1_L2 PAR_AUDIOCODEC_AC3 PAR_AUDIOCODEC_UNKNOWN

text_length (uint32) Length of user text:

Max. length is 60 characters.

Fibre Channel Parameters 4.3.10.2

Module types: MFCR4

Associated IDC: IDC_FIBRE_CHANNEL_PARAMETERS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 enabled (enabled8) revision_id ChannelID (uint16)

Page 164: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-107

+4 fc_dtf (fibre_dtf8) fc_speed (fibre_speed8)

reserved

+8 reserved

+12 reserved

+16 reserved

Page 165: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-108

4.3.11 System Commands

This group contains commands and parameters, affecting the general operation of the system.

System Time 4.3.11.1

Associated IDC: IDC_SYSTEM_TIME

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0

timestamp (64bit word) +4

+8 year

Month

month day

+12 hour minute second flags

This command can be used in combination with OID_SET and OID_GET to get or set the system time of the unit.

timestamp: In the case of OID-SET the 'Timestamp' is a 64 Bit 10MHz counter moment, lying in the future, to which the time information should be valid.

In the case of OID_GET the ‘Timestamp was the exactly moment where the time information was valid.

Actual Time 4.3.11.2

Associated IDC: IDC_ACTUAL_TIME

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0

Actual Time +4

+8

+12 time_stamp (uint64)

+16

This command can only be used with OID_GET to get the actual time of the unit. This command can only be addressed to the link module.

Actual Time: Get current time:

A similar layout as the Time Packet has is used here (see 3.2Time Data Packets, Format 1). However the Channel specific dta word is stored in big endean format while it is little endean in the time packets. If the current time does not provide year information bytes 10 and eleven are not used and should not be interpreted.

Page 166: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-109

time_stamp (uint64): Relative time counter (10MHz counter) were the time information was/is valid. This time information is only valid if the bActualTimeValid bit is set in the module status (IDC_MODULE_STATUS see 4.3.19 Link-Module/Data-Module Status and Measurement)

Current Play Time 4.3.11.3

Associated IDC: IDC_PLAY_TIME

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0

current_play_time +4

+8

+12 time_stamp (uint64)

+16

This command can only be used with OID_GET to get the current play time of the unit if the play is running. This command can only be addressed to the link module.

current_play_time: Get current play time:

A similar layout as the Time Packet has is used here (see 3.2Time Data Packets, Format 1). However the Channel specific dta word is stored in big endean format while it is little endean in the time packets. If the current time does not provide year information bytes 10 and eleven are not used and should not be interpreted.

This time information is only valid if the bPlayTimeValid bit is set in the module status (IDC_MODULE_STATUS see 4.3.19 Link-Module/Data-Module Status and Measurement)

time_stamp (uint64): Relative time counter (10MHz counter) were the time information was/is valid.

Time locking 4.3.11.4

Associated IDC: IDC_TIME_LOCKING

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Disable external

resync (ext_resynch_mode)

Reserved (0) Reserved (0) Reserved (0)

Page 167: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-110

In certain cases it’s better not to have time jumps in time channel records caused by signal loss and recovery. To achieve it one must set the ext_resync_disabled parameter in time channel parameters, and then at the start of record set and arm an IDC_TIME_LOCKING message with use_ext_resync set to PAR_EXTRESYNCH_DISABLED.

If time was synchronized to an external source when time locking was armed, that synchronization source is kept as long as it does not become invalid. If external signal (1) was missing at arm, (2) it is lost or (3) “jumps”, time channel drops external source and locks to internal clock. After time locking is in effect, no external source synchronizations are attempted any more. Another IDC_TIME_LOCKING message is required to re-enable external time source synchronization once the record is done.

ext_resynch_mode: PAR_EXTRESYNCH_ENABLED – default (normal operation)

PAR_EXTRESYNCH_DISABLED – triggers time locking mode if ext_resync_disabled if time channel parameters is also set to PAR_EXTRESYNCH_DISABLED

Watchdog Reset 4.3.11.5

Associated IDC: IDC_WATCH_DOG_RESET

Supported OIDs: OID_SET, OID_ARM

Target Addresses: Link Module, Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 reserved (0)

This command will case a watchdog reset and the system will be rebooted. This command can be addressed to the link module and to the data modules.

time_stamp (uint64): Relative time counter (10MHz counter) when the watchdog reset should take effect.

qualifier If qualifier is:

WDQ_DELAY time_stamp = delay time for watchdog reset in 100ns

WDQ_TIME_STAMP time_stamp = absolute time for watchdog reset in 100ns

Save Parameter Set 4.3.11.6

Associated IDC: IDC_SAVE_SET

Supported OIDs: OID_SET, OID_GET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 set_num (uint32)

Page 168: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-111

+4 qualifier (uint32)

+8 reserved1 (0)

+12 reserved2 (0)

Save the current system parameters into the given save set. There are 16 (0-15) save sets. If this command is armed, all parameters of the link module, modules and all channels are stored into the given save set (flash memory). SAVE_SET0 is the default save set. Next time when the system is booted, the default save set will be sent to the modules/channels. If a medium is connected to the system and a save set file is found at /datarec/save_sets/save_set_000, this save set will take effect. The file format of this save set is identical with the IRIG106 Chapter 10 DATaRec

® 4 configuration packet.

set_num (uint32): The possible values are:

SAVE_SET0 Default save set

SAVE_SET1 First save set … SAVE_SET15 Last save set

qualifier (uint32) The qualifier bits are:

bSAVE_TO_MEDIA If this bit is set, the parameter set is saved to the selected media. The save set file name will be /datarec/save_sets/save_set_nnn. Where nnn is the save set number.

Restore Parameter Set 4.3.11.7

Associated IDC: IDC_RESTORE_SET

Supported OIDs: OID_SET, OID_GET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 set_num (uint32)

+4 qualifier (uint32)

+8 reserved1 (0)

+12 reserved2 (0)

Restore the given save set into the current system parameters. There are 16 (0-15) restore sets. If this command is armed, all matched parameters found in the given save set are send to the link module, modules and channels. If the bRESTORE_FROM_MEDIA qualifier bit is set, the restore set is taken from selected medium. The file name is /datarec/save_sets/save_set_nnn, where nnn is the restore set number. The IP addresses, network masks and port numbers of the link module parameters are not restorable. Those parameters are stored exclusively in an internal flash memory. This is done with every save set command.

set_num (uint32): The possible values are:

SAVE_SET0 Default save set

SAVE_SET1 First save set … SAVE_SET15 Last save set

Page 169: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-112

qualifier (uint32) The qualifier bits are:

bRESTORE_FROM_MEDIA If this bit is set, the parameter are restored from the selected media. The restore set file name will be /datarec/save_sets/save_set_nnn. Where nnn is the restore set number.

Note: The link module parameters block_control and block_delivery_timeout are not affected by this restore task. The default values remain. That means block_control = 0 (no fill packets) and the block_delivery_timeout will be overwritten with 1000ms. This action is taken to prevent the filling packets in the data stream of stand-alone recordings. These filling packets are a speciality of Safran Data Systems GmbH and are not IRIG106 standard conforming.

Clear Parameter Save Set 4.3.11.8

Associated IDC: IDC_CLR_SAVESETS

Supported OIDs: OID_SET, OID_GET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 set_num (uint32)

+4 qualifier (uint32)

+8 reserved1 (0)

+12 reserved2 (0)

Delete the given save set. There are 16 (0-15) save sets which can be deleted.

set_num (uint32): The possible values are:

SAVE_SET0 Default save set

SAVE_SET1 First save set … SAVE_SET15 Last save set

qualifier (uint32) The qualifier bits are:

bCLR_FROM_MEDIA If this bit is set, the save set found in /datarec/save_sets/save_set_nnn at the currently selected media will be removed. Where nnn is the set number.

Restore after Boot and After Media Load 4.3.11.9

After every system boot, and if a new medium is found the restore function is performed in the following way:

Page 170: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-113

Existing Save Sets 4.3.11.10

Associated IDC: IDC_SAVE_SET_LIST

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 flash_list (uint32)

+4 media_list (uint32)

+8 reserved1 (0)

+12 reserved2 (0)

With this command it is possible to figure out which save sets are exists in the system (non volatile flash memory) and which are exists on the currently connected media.

exsiting cion the specify the power on save set number. By default the power on save set number is 0. When using the IRIG-106 Chapter 10 .SETUP <n> command the power on save set number is also set.

Page 171: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-114

flash_list (uint32): The bit mask of existing save sets in the system.

b0 - b15 Bit n is set if save_set n exists with n from 0 to 15.

b16 - b30 Not used!

b31 Bit 31 is set if a factory save_set exists.

media_list (uint32) The bit mask of existing save sets on the current media.

b0 - b15 Bit n is set if save_set n exists with n from 0 to 15.

b16 - b31 Not used!

Power On Save Set 4.3.11.11

Associated IDC: IDC_POWER_ON_SAVE_SET

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 poss (uint8) reserved1 (0) reserved2 (0) reserved3 (0)

+4 reserved4 (0)

+8 reserved5 (0)

With this command it is possible to specify the power on save set number. By default the power on save set number is 0. When using the IRIG-106 Chapter 10 .SETUP <n> command the power on save set number is also set.

poss (uint8): The Power On Save Set number from 0 to 15.

Link Module Reset 4.3.11.12

Associated IDC: IDC_RESET

Supported OIDs: OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0)

+4 reserved2 (0)

This command resets all save sets on the link module. The save sets located on the connected medium are not involved. This command will set back also all other parameters stored on the link module. That brings the link module back into the delivery status.

Page 172: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-115

Link Module Fan Control 4.3.11.13

Associated IDC: IDC_FAN_CONTROL

Supported OIDs: OID_SET, OID_GET

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 mode (uint32)

+4 qualifier (uint32)

+8 reserved1 (0)

+12 reserved2 (0)

Only if the fan_control field in link module parameter (IDC_LINK_MODULE_PARAMETERS) is set to overwrite mode (1), the link module fan can be controlled by this remote command.

mode (uint32): The possible values are:

FAN_AUTO Default automatic fan control. The fan turns on at an internal temperature from 60 degree Celsius, and turns off at a temperature below 56 degree Celsius.

FAN_ON Permanent fan on (e.g. for test purpose)

FAN_OFF To switch off the fan for 10 minutes. For safety reasons it is not possible to switch off the fan permanently.

Note:

The fan can be switched off only for maximally 10 minutes. We can guarantee that the system will not be damaged. For safety reasons it is not possible to switch off the fan permanently. That means after expiration of 10 minutes the fan goes again into the automatic mode.

Link Module Fan Status 4.3.11.14

Associated IDC: IDC_FAN_STATUS

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 status (uint32)

+4 qualifier (uint32 reserved)

+8 tacho (uint32)

+12 temp (int32)

+16 pwm (uint32)

+20 reserved1 (0)

Page 173: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-116

+24 reserved2 (0)

Get current fan status.

status (uint32): The possible values are:

FANS_OFF Fan is off

FANS_ON Fan is on

tacho (uint32) Measured fan tachometer value in rotation per minute (rpm). If the fan is rotating the normal value is about 5300 rpm.

temp (int32) Measured internal link module temperature in degree Celsius.

pwm (uint32) Pulse-width modulation of the fan driver. A value of 0 means 0% and 255 means 100% pwm.

UDP Front-End Data Server Control (obsolete) 4.3.11.15

Associated IDC: IDC_UDPB_PARAMETERS

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

The source port of this server is 5006. For information please see 8.7 UDP Front-End Data Access Interface. This is an obsoltate IDC and shout not be used anymore. Only for backward compatibility reasons this IDC is still supported (see replacement 4.3.11.16 Extended UDP Front-End Data Server Control).

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 max_udp_size (uint32)

+4 tmats_interval (by default = 0) ifr (uint8) op_mode (uint8)

+8 reserved2 (0) (uint32)

+12 reserved3 (0) (uint32)

+16 nof_subcomponents (uint32)

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+4 destination_port (default = 2000) (uint32)

+8 channel_id (default = -1 for all channel IDs) (uint32) }

UDP IRIG-106 chapter 10 front-end data server configuration.

max_udp_size (uint32): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled.

ifr This field specifies the ethernet interface resource to be use for sending the UDP data stream. Whereat 0 specifies the first interface “eth0”, 1 the second interface “eth1” and so on. A value of 0xff (=255) means that the choice of the interface is done according to the routing table.

Page 174: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-117

op_mode (uint8) Operation mode bits:

b0-b6 = Not used.

b7 = bUDPM_EXT_CTRL: When this bit is set the whole IDC message will be ignored. That means the control of the UDP front-end server can then be done by the dot command .PUBLISH. In other words, if this bit is set and a save setup is performed then this IDC acts as a placeholder in this setup. The target is that a restore setup should not disturb a potential already running UDP front-end server.

nof_subcomponents (uint32): Number of following subcomponent entries structure.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

channel_id (uint32): Chapter 10 channel ID filter. It is a positive filter. Only the packets are sent, whose channel ID is located in this list (default = 0xffffffff means no filter).

When front-end data streaming started, the output data will not form a valid Chapter 10 file. It will not start with TMATS configuration packet followed by time – but the data sink will simply “join” to the data transfer stream. For more information about the data structure please see the documentation of IRIG-106 Chapter 10.3.11.1. If the tmats_inteval is activated (>0), the captured UDP stream can easily form a valid IRIG-106 Chapter 10 file by removing the first leading data up to the first TMATS packet.

Note:

This parameter is stored together with the setup.

Extended UDP Front-End Data Server Control 4.3.11.16

Associated IDC: IDC_UDPB_EXT_PARAMETERS

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

The source port of this server is 5006. For information please see 8.7 UDP Front-End Data Access Interface. This IDC is the replacement for the obsolate IDC_UDPB_PARAMETERS command.

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 max_udp_size (uint32)

+4 tmats_interval (by default = 0) ifr (uint8) op_mode (uint8)

+8 reserved2 (0) (uint32)

+12 reserved3 (0) (uint32)

+16 nof_subcomponents (uint32)

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+4 destination_port (default = 2000) (uint32)

+8

… name (string)

+36 }

Page 175: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-118

UDP IRIG-106 chapter 10 front-end data server configuration.

max_udp_size (uint32): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled.

ifr This field specifies the ethernet interface resource to be use for sending the UDP data stream. Whereat 0 specifies the first interface “eth0”, 1 the second interface “eth1” and so on. A value of 0xff (=255) means that the choice of the interface is done according to the routing table.

op_mode (uint8) Operation mode bits:

b0-b6 = Not used.

b7 = bUDPM_EXT_CTRL: When this bit is set the whole IDC message will be ignored. That means the control of the UDP front-end server can then be done by the dot command .PUBLISH. In other words, if this bit is set and a save setup is performed then this IDC acts as a placeholder in this setup. The target is that a restore setup should not disturb a potential already running UDP front-end server.

nof_subcomponents (uint32): Number of following subcomponent entries structure. The maximum number of subcomponents is 16.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

name (string): Unique name of a channel ID list (data stream definition). Names are supposed to be up to 32 byte long human readable strings, shorter names should be padded by zeroes. Only the packets are sent, whose channel ID is included in this channel ID list (see 4.3.14 Data Stream Definitions).

This binary command is exacly working like the previous command (4.3.11.15 UDP Front-End Data Server Control) with only one exception. Instead of the channel ID entry the name of a channel ID list has to be entered here (see 4.3.14 Data Stream Definitions). The channel ID list name must be specified in the system. Up to 16 lists can be specified here (nof_subcomponents <=16).

When front-end data streaming started, the output data will not form a valid Chapter 10 file. It will not start with TMATS configuration packet followed by time – but the data sink will simply “join” to the data transfer stream. For more information about the data structure please see the documentation of IRIG-106 Chapter 10.3.11.1. If the tmats_inteval is activated (>0), the captured UDP stream can easily form a valid IRIG-106 Chapter 10 file by removing the first leading data up to the first TMATS packet.

Note:

This parameter is stored together with the setup. This IDC_UDPB_EXT_PARAMETERS command has higher priority as the obsoluate IDC_UDPB_PARAMETERS command. It means if the “old” IDC is not found in a setup the new method is forced.

Page 176: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-119

UDP Recorded File Server Control 4.3.11.17

Associated IDC: IDC_UDP_FILE_SERVER

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

The source port of this server is 5008. For information please see 8.8 Recorded File Access Interface. UDP IRIG-106 chapter 10 recorded file server configuration:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 max_udp_size (uint16) tmats_interval (by default = 0) (uint16)

+4 op_mode (uint8) speed_mode (uint8) speed (uint16)

+8 ifr (uint8) reserved1 (0) (uint8) reserved2 (0) (uint16)

+12 reserved3 (0) (uint32)

+16 start_year (uint16) start_month (uint8) start_day (uint8)

+20 start_hour (uint8) start_minute (uint8) start_second (uint8) start_10ms (uint8)

+24 stop_year (uint16) stop_month (uint8) stop_day (uint8)

+28 stop_hour (uint8) stop_minute (uint8) stop_second (uint8) stop_10ms (uint8)

+32 {

… file_name (512 bytes)

+540 }

+544 nof_subcomponents (uint32)

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+4 destination_port (default = 2000) (uint32)

+8 nof_channel_ids (uint32)

+0 { channel_id (def. = -1 for no filter) reserved3 (0) (uint16) }}

max_udp_size (uint16): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled.

Page 177: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-120

op_mode (uint8): Operation mode bits:

b0 = bUDPM_ENABLE: General bit to start/stop the server. If the bit is set the sever is started and if the bit is cleared the server is stopped.

b1 = bUDPM_START_TIME_VALID: If this bit is set the START time entries are valid.

b2 = bUDPM_STOP_TIME_VALID: If this bit is set the STOP time entries are valid.

b3 = bUDPM_LOOP: When this bit is set and the end of file or the STOP time is reached, what ever comes first, the server will jump back to the beginning of the file and will start send the data from there. The START/STOP time will be considered.

b4 = bUDPM_FRONT_END: When this bit is set, the file_name, the bUDPM_LOOP bit, the speed entry and the START/STOP time values are ignored. The data do not come anymore from a file, instead of this the front-end data will be sent.

b5 = bUDPM_SIM_PLAY: When this bit is set, the UDP file server is working in a special mode. When this mode is enabled and when a stand-alone replay is performed, the same data will be streamed out simultaneously via UDP. In addition a channel ID filter can be used. The bit’s b1, b2, b3, b4 and b7 are not allowed to enable in addition.

b6 = Not used.

b7 = bUDPM_EXT_CTRL: When this bit is set the whole IDC message will be ignored. That means the control of the UDP file server can then be done by the dot command .ZDS_UDPFS. In other words, if this bit is set and a save setup is performed then this IDC acts as a placeholder in this setup. The target is that a restore setup should not disturb a potential already running UDP file server.

speed_mode (uint8): The speed_mode is a enumeration entry and determines how the speed parameter is interpreted:

0 = eUDPS_FLOOD: The speed entry is ignored and the date are send out as fast as possible.

1 = eUDPS_MULTIPLIER: The speed entry is interpreted as an multiplier factor of the original recorded bit rate. A speed value of 1 means that the data are sent at the original speed.

2 = eUDPS_DIVIDER: The speed entry is interpreted as an divider factor of the original recorded bit rate. A speed value of 2 means that the data are sent at the half of the original speed.

speed (uint16): The interpretation of this field depends on the speed_mode entry. Please refer above.

ifr This field specifies the ethernet interface resource to be use for sending the UDP data stream. Whereat 0 specifies the first interface “eth0”, 1 the second interface “eth1” and so on. A value of 0xff (=255) means that the choice of the interface is done according to the routing table.

start_... : Start streaming the recorded file beginning at this time stamp position. If this time stamp is not found in the selected file (file_name) this field will be ignored. If these fields are not to be used, bUDPM_START_TIME_VALID must be cleared in op_mode parameter.

Page 178: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-121

stop_... : Stop streaming the recorded file at this time stamp position. If this time stamp is not found in the selected file (file_name) this field will be ignored. If these fields are not to be used, bUDPM_STOP_TIME_VALID must be cleared in op_mode parameter.

file_name (char): There are 512 characters reserved for the file name. Since the file name is unique, the media ID are not specified. For the file name format see 4.3.26.1 Start Stand-Alone Record.

nof_subcomponents (uint32): Number of following subcomponent entries structure.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

nof_channel_ids (uint32): Number of the following channel id entries. If 0 the channel ID filter is disabled.

channel_id (uint16): Chapter 10 channel ID filter. It is a positive filter. Only the packets are sent, whose channel ID is located in this list (default = 0xffff means no filter).

When recorded data streaming started, the output data can form a valid Chapter 10 file. It will start with TMATS configuration packet followed by time – but the data sink will simply “join” to the data transfer stream. It depends on the capture method whether the result file will form a valid IRIG-106 Chapter 10 file. For more information about the data structure please see the documentation of IRIG-106 Chapter 10.3.11.1. If the tmats_inteval is activated (>0), the captured UDP stream can easily form a valid IRIG-106 Chapter 10 file by removing the first leading data up to the first TMATS packet.

Loop Back Function 4.3.11.18

Associated IDC: IDC_LOOP_BACK

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 qualifier (uint32)

+4 reserved1 (0)

+8 reserved2 (0)

Loop back function parameters:

qualifier (uint32): Bit definitions:

sEnable Enable loop back function if set.

sImplyDataFlowControl Implied data flow control is used. When this bit is set the DataFlowControl for all connected modules are controlled automatically.

When data loop back is activated, the data are read from the record modules and are looped back to the play modules. The max. bit rate is approx. the half of the max. system bit rate. In the case of record/replay modules, like a MRG100, a certain module can be either in record or in play modus. Record and play inside one module is impossible with this loop back function. The replay assignments of the modules with play capability are followed by the loop back function. The loop back transit delay is adjusted to 2000 ms.

Page 179: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-122

Note:

This parameter is a part of the save sets.

Clear Error 4.3.11.19

Associated IDC: IDC_ERROR_CLEAR

Supported OIDs: OID_SET, OID_ARM

Returned OIDs: OID_ACK

Target Addresses: Link Module, Module

This command has no payload. If this command is send all internal error status bits and all health bits will be cleared. The OID_SET and the OID_ARM command does the same. It is only needed to send one of them.

Ethernet Statistics 4.3.11.20

Associated IDC: IDC_ETH_STATISTICS

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 port (uint32)

+4 N_values (uint32)

+8 reserved2 (0)

+12 Statistic_counter (uint64)

+16

+20 Statistic_counter (uint64)

+24

Parameters:

port(uint32): Ethernet port for which to get the statistics

N_valuse (uint3) Maximal number of counters to return (OID_GET) or number of available counters (OID_INFO). Note this is not the actual number of counters returned, which can be calculated from the length field in the message header.

Statistic_counter[n] 64 bit unsigned counter values for various ethernet parameters.

This IDC is mainly intended for factory testing and explaining the meaning of all the statistic counters is beyond the scope of this documentation, not least because the meaning may change with recorder type and hardware/ software revision.

However as of 2015-03-06 all our recorders return the total received byte count in counter 21, the total received frame count in 22, and the number of received frames with a bad checksum in 23.

Page 180: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-123

4.3.12 User Annotation Data

Associated IDC: IDC_USER_ANNOTATION

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 annotation_size (uint32)

+4 revision_id reserved1 (0) reserved2 (0)

+8 offset (uint32)

+12 transfer_size (uint32)

+0 User Annotation Data

+4 …

Any information, also binary information, can be uploaded or downloaded to or from the link module. The user annotation data are stored binary in a volatile memory of the link module. As destination address only the link module is permitted. The maximum size of the user annotation data is 32 KiB (MAX_ANNOTATION_LENGTH). Because of the limited payload size of the remote instructions, the user annotation data can only be transferred to the link module in pieces to MAX_TX_ANNOTATION_LENGTH bytes each. At the end an OID_ARM must be sent, in order to indicate the end of the user annotation data. The user annotation data are a part of the configuration packet (computer generated packet) and therefore a component of the recorded data stream. In addition the user annotation data can be saved permanently to any save set. The user annotation data are stored in pieces of MAX_TX_ANNOTATION_LENGTH bytes in the configuration packet and in the save sets.

annotation_size (uint32): In the case of OID_GET this field specifies the current size of the user annotation data in bytes. In the case of OID_SET this field should be 0.

revision_id ( uint8) The current revision ID is 1. This revision is available since Link Module Version 2.54 and MDR Version 1.24. In the OID_GET message this file should always set to 0. The OID_INFO response will show which revision ID the firmware is supporting. It is the following:

Id = 0 -> MAX_ANNOTATION_LENGTH = 32KiB

Id = 1 -> MAX_ANNOTATION_LENGTH = 128KiB

offset (uint32) This field specifies the position inside of the user annotation data. This entry is used in order to be able to walk through the user annotation data for reading. On the other hand this field can be use in order to be able to append further user annotation data to existing data. This entry is needed in the case of OID_GET and OID_SET.

transfer_size (uint32) This entry specifies the number in byte of data payload follows. The maximum of this field is MAX_TX_ANNOTATION_LENGTH. This entry is needed in the case of OID_GET and OID_SET.

The total size of this command will be padded to 32 bit boundaries.

Note:

An OID_SET with offset and transfer_size of 0 will delete the current user annotation data.

Page 181: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-124

4.3.13 System Annotation Data

Associated IDC: IDC_SYSTEM_ANNOTATION

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 annotation_size (uint32)

+4 reserved1 (0)

+8 offset (uint32)

+12 transfer_size (uint32)

+0 System Annotation Data Structure

+4 …

A binary structured information can be uploaded or downloaded to or from the link module. The system annotation data are stored binary in a volatile memory of the link module. As destination address only the link module is permitted. The maximum size of the user annotation data is 32 KiB (MAX_ANNOTATION_LENGTH). Because of the limited payload size of the remote instructions, the system annotation data can only be transferred to the link module in pieces to MAX_TX_ANNOTATION_LENGTH bytes each. At the end an OID_ARM must be sent, in order to indicate the end of the system annotation data. The system annotation data are a part of the configuration packet (computer generated packet) and therefore a component of the recorded data stream. In addition the system annotation data can be saved permanently to any save set. The system annotation data are stored in pieces of MAX_TX_ANNOTATION_LENGTH bytes in the configuration packet and in the save sets.

annotation_size (uint32): In the case of OID_GET this field specifies the current size of the system annotation data in bytes. In the case of OID_SET this field should be 0.

offset (uint32) This field specifies the position inside of the system annotation data. This entry is used in order to be able to walk through the system annotation data for reading. On the other hand this field can be use in order to be able to append further system annotation data to existing data. This entry is needed in the case of OID_GET and OID_SET.

transfer_size (uint32) This entry specifies the number in byte of data payload follows. The maximum of this field is MAX_TX_ANNOTATION_LENGTH. This entry is needed in the case of OID_GET and OID_SET.

The total size of this command will be padded to 32 bit boundaries.

Note:

An OID_SET with offset and transfer_size of 0 will delete the current system annotation data.

Page 182: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-125

The system annotation structure 4.3.13.1

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 group_id (uint8) address_type (uint8) length (uint16)

+4 address

+8

+0 system annotation data

+4 …

Physical address type (ADDRESS_TYPE_PHISICAL)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0) reserved2 (0) subframe_id_counter link_id (uint8)

+4 link_chain (uint8) module (uint8) channel (uint16)

Channel ID address type (ADDRESS_TYPE_CHANNEL_ID)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0) reserved2 (0) subframe_id_counter reserved3 (uint8)

+4 reserved4 (uint16) channel_id (uint16)

group_id (uint8): The following group IDs exists:

GROUP_ID_DATA_SOURCE_ID Used for the channel naming.

GROUP_ID_SUBFRAME_ID_COUNTER_NAME

GROUP_ID_TMATS_PROGRAM_NAME max 16 character in TMATS

GROUP_ID_TMATS_TEST_ITEM max 64 character in TMATS

GROUP_ID_TMATS_COMMENTS_ITEM max. 1600 characters in TMATS

address_type (uint8) The following address types exists:

ADDRESS_TYPE_PHISICAL The address type is physical.

ADDRESS_TYPE_CHANNEL_ID The address type is channel ID based.

length (uint16) The length of the data. The address file is not included.

address One of the address structure as described above.

Page 183: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-126

4.3.14 Data Stream Definitions

Associated IDC: IDC_STREAM_DEFINITION

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0

name (string) …

+28

+32 offset (uint16) total_code_bytes (uint16)

+36 qualifiers (uint32)

+40 Reserved (uint32)

+44 ranges (uint16) singles (uint16)

+48 coded_members (variabl length given in total_code_bytes, first ranges, then single channes, rest is filled with bitmask codes)

zero_padding (in case total_code bytes is not dividable by 4)

name Unique name of the channel ID list (data stream definition) this IDC belongs to. Names are supposed to be up to 32 byte long human readable strings, shorter names should be padded by zeroes. A name consisting of all zero has a special meaning (see below)

offset Offset of the first data byte following the fixed part of the structure, in case the definition is plit into multiple IDCs

total_code_bytes Number of total code bytes following the fixed part (always dividable by 2)

qualifiers Qualifiers for the data, consists of the following sub fileds

Bits 31..24: An 8 bit revision counter

Bits 9..8: Merging Mode

Bits 7..0: Coding Format

The revision counter value is ignored on setting and on get a value will be returned that increments at each operation modifying the particular data stream. Thus the revision counter can be used to check if all segments of a stream definition split into multiple IDCs belong together.

The Merging Mode is only used on set operations allowing modification of existing sets (See below) and returned a zero during get

The coding format specifies the format of the data stream coding. Currently only format 0 (the one described here) is defined.

Remaining bits are reserved, should be ignored on read and set to zero on write.

ranges Number of range codings trhat follow the fixed part. Each range is coded as two 16 bit cahnnel id numbers, and specifies that all channels from the first up to and including the second one belong to the data stream. (Second number always bigger tan first one)

singles Number of single channel ids in the coded_member data. Each ‘single’ consists of a single 16 bit channel id number that belongs to the data stream

Page 184: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-127

coded_members Data specifying the channel ids that belong to the data stream. The data consists of ‘ranges’ channel range specifications (see above) followed by ‘singles’ (see above) single channel ids, the rest if the data up to ‘total_code_bytes’ is comprised of BitMask records (see below)

zero_padding One optional 16 bit zero to pad the structure to 32 bit words (only present in the last fragment of a data stream definition if ‘singles’ is odd)

The total size of this command will be padded to 32 bit boundaries.

BitMask Structure:

bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

bytes +0 +1

+0 First_channel_id (uint16)

+2 num_16_bit_words_following first_thre_bits

+4 mask_word (uint16)

First_channel_id Id of the first channel to be added to the data stream by this BitMask structure

offset Offset of the first data byte following the fixed part of the structure, in case the definition is plit into multiple IDCs

num_16_bit_words_following Number of full 16 bit mask_words that follow the 4 byte header. (Note: 13 bit Number, but never bigger as 4096)

first_three_bits The first thee bits of the bitmask defined by this BitMask structure. If bit 2 (value 8) of ‘first_thre_bits is set’ the channel with the id first_channel_id+1 also belongs to the data stream, if bit 1 is set first_channel_id+2 is included and for bit 0 first_channel_id+3 will be included.

This IDC is used to represent ‘data streams’ in other words a set of channel id’s. The streams can then be used to control data to be recorded, transmitted or otherwise processed.

Save sets and configuration packets can contain multiple IDC_STREAM_DEFINITION to define streams with different names. Multiple instances of the IDC will also be used to represent streams that are larger then the allowed maximal IDC size.

On the remote control interface IDC usage is as follows:

OID_GET will return a the header of the named DataStream and code words from the requested offset up to the maximum supported IDC size. (So repeated OID_GET requests with increasing ‘offset’ values have to be used to get all the data of a stream definition that does not fit a single IDC)

If no Data Stream with the given name exists a empty definition (total_code_bytes==0) will be returned. (Any undefined stream is considered to be the empty stream)

A special format can be used to get all defined (non-empty) data streams: For a GET request with the name field set to 32 zero characters the offset field will be taken as a data stream number and the info message returned will contain the name of that stream and (the start of) it's code bytes. If less then offset streams are defined an epty stream definition (with the name also still zero) will be returned in the OID_INFO message. Note: this can only be used with OID_GET, on OID_SET a valid name has to be used always.

For OID_SET a stream definition also has to be be send in pieces by using the offset field if it is to big for a single IDC. The transmitted segments have to sorted, complete and without gaps, or an error will be generated. Only one stream definition can be ‘open’ at a time so if multiple streams have to defined one has to download all segments of the first definition and aply them by sending an OID_ARM before data for the second definition can be send.

Alternatively streams may also be incrementally defined by using OID_SET/ARM sequences using the merge mode filed of the qualifiers word the following values can be used in this filed:

0: Merge mode SET: On OID_ARM the new stream definition replaces the existing stream definition of the same name (or creates a new one if none exists)

Page 185: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-128

1: Merge mode ADD: On OID_ARM the new stream definition is merged with the existing stream definition of the same name – new definition contains all channels that are either in the existing definition or the new one (or both). If no stream with the given name exists the result is te same as for merge mode SET.

2: Merge mode DEL: On OID_ARM channel s of the new stream definition are removed from the existing stream definition of the same name – the new definition contains all channels that are in the existing definition but not in the or the new one. If no stream with the given name exists nothing will happen as removing channels from an already empty stream leaves the stream empty.

There is an upper limit (currently 16) to the number of data streams that can be defined at any point in time. Whenever a Data Stream definition gets totally empty it will be removed from the system thus freeing space to define a stream with a different name. The easiest way to do this is to send an OID_SET with total_code_bytes==0 and the corresponding OID_ARM.

4.3.15 Environmental Measurement Data

This information is inserted as computer generated data packet into the data stream and can also be requested via remote command. It stores the measured values of temperature, air pressure and acceleration sensors and the main supply voltage values. Furthermore hardware status information is stored.

The information in the packet is structured into 4-word groups and is preceded by a 32-bit word specifying the number of measurements in the packet. Each group starts with a measurement identifier specifying the type of the measurement, the location of the sensor and a channel index. The second and third words contain the minimum and maximum values of the measurement in the last second. The fourth word contains the mean value. The units can be retrieved from the type of measurement.

The Environment Measurement Packet is recorded once every second. The packet does not necessarily contain measurements of all channels. If a sensor is not present or the measurement could not be done the channel is not represented in the packet. The channels are not guaranteed to be ordered by the ID.

Associated IDC: IDC_ENV_MEASUREMENT

Supported OIDs: OID_GET

Returned OIDs: OID_INFO

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 nof_measurements (uint32)

+4 type (uint8) unit (uint8) loc_id (uint8) ch_idx (uint8)

+8 min_value (int32)

+12 max_value (int32)

+16 mean_value (int32)

+20 …

nof_measurements (uint32) Informs about the number of 4-word group measurements that will follow. type (uint8) Measurement Type. Identifies the physical quantity to be measured. The

type indentifiers are as follows: 0x00 Acceleration (signed) 0x01 Pressure (unsigned) 0x02 Temperature (signed) 0x03 Voltage (signed) 0x04 Boolean value 0x05 Current (signed) 0xFE System specific value 0xFF Unknown value

Page 186: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-129

unit (uint8) The Measurement Unit identifies the unit of the measurement value depending on the Measurement Type. The unit identifiers are as follows: Type 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0xFE 0xFF

Unit code 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0xFE 0xFF

Physical Unit 0.1g (= approx. 0.981 m/s2) 10Pa 0.01K (0 means -273.15 °C) 10mV Boolean value (0 = false, 1 = true) % (percent) Count 10mA System specific value Unknown unit

loc_id (uint8) The location identifier specifies the part of device where the sensor is located or where the measurement takes place. These locations are as follows: 0x00 MDR system controller board 0x01 MDR Power supply board uC1 0x02 MDR Power supply board uC2 0x10 MDR Module 0 (Time Module) 0x11 MDR Module 1 (Module in Slot 1 or first virtual Module) 0x2F MDR Module 31 0x30 GMDR12 DDS slot 1 0x31 GMDR12 DDS slot 2 0xFF Location unknown

ch_idx (uint8) The channel index specifies a sequence number to the measurement and so the whole 32-bit word is a unique ID of the measurement. Channel indices are as follows: 0x00 X-axis acceleration 0x01 Y-axis acceleration 0x02 Z-axis acceleration 0x03 air pressure 0x04 temperature value number 1 0x05 temperature value number 2 0x06 input voltage number 1 0x07 input voltage number 2 0x08 FireWire voltage 0x09 converted voltage number 1 0x0A converted voltage number 2 0x0B converted voltage number 3 0x0C converted voltage number 4 0x0D converted voltage number 5 0x0E self test status 0x0F Boolean value number 1 0x10 Boolean value number 2 0x11 Boolean value number 3 0x12 Boolean value number 4 0x13 Boolean value number 5 0x14 module specific status value 1 0x15 module specific status value 2 0x16 SATA port 0 count of recoverable errors 0x17 SATA port 0 count of non recoverable errors 0x18 SATA port 1 count of recoverable errors 0x19 SATA port 1 count of non recoverable errors 0x1A nominal voltage 0x1B actual voltage 0x1C actual current 0x1D actual temperature 0xFF Unknown channel index

Page 187: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-130

min_value (uint32) Represents the minimum of the measured values in 32-bit signed integer format for the last second.

max_value (uint32) Represents the maximum of the measured values in 32-bit signed integer format for the last second.

mean_value (uint32) Represents the mean of the measured values in 32-bit signed integer format for the last second.

4.3.16 Channel Status and Measurement

This information is not part of the system configuration packet (i.e. has to be requested via remote command).

All fields from offset +4 onwards are only available starting with DSLM firmware release 2.38.

Time Input Status 4.3.16.1

Associated IDC: IDC_TIME_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Time Source Status Bits (timestatus32)

+4 Validated sources (time_sources_mask32)

+8 Synchronization in progress sources (not validated yet; time_sources_mask32)

+12 Actual time source (time_source_bits8)

Actual timestamp (time_source_bits8)

Flags (time_stat_flags16)

+16 Sources with invalid data format (UART parity error, IRIG unknown frequency etc.) (time_sources_mask32)

+20 Sources with invalid time information (day 32 etc.) (time_sources_mask32)

+24 Actual local clock offset from master time source [ns] (int64)

+32 Actual 10 MHz drift between local clock and master time source [ns/s] (int32)

+36 Variance (uint32)

+40 Satellites with SNR>45 dB

Satellites with SNR>40 dB

Satellites with SNR>35 dB

Visible satellites, SNR>0 dB

+44 last_ext_time_source_id (uint8)

last_ext_stamp_source_id (uint8)

reserved (uint16)

Reported satellite count is based on the NMEA GSV messages and is only filled with nonzero values if NMEA parsing is enabled on the UART input (RMC or ZDA as gps_input_format8 in time channel parameters).

Variance is a measure for the stability of the currently used Time Source and is calculated as PTP Variance (which is based on the Allan Variance) as suggested in the IEEE 1588 2008 standard in chapter 7.6.3.2. The unit of the reported Variance is ns², as it is the squared standard deviation.

Last external time and stamp IDs are updated whenever some external source is used as top priority time source, with the bit index of the given source. It is kept reported even after the given source is lost/invalidated. These fields make it possible to report single-sync events e.g. SNTP that happened during boot, even after the system continues running on NTP-adjusted flywheel internal time afterwards.

Page 188: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-131

time_stat_flags16 (uint16) Time statistics flags Bit 0: TIME_STATISTICS_VALID - time source statistics contain valid data Bit 1: TIME_FRAMEINFO_VALID - invalid time data frame/time info fields contain valid data Bit 2: EXTDATE_AVAILABLE - external time source has proper year, month and day information Bit 3: EXT_SYNC_DISABLED - time locked to internal time, synchronization to external sources is disabled Bit 4: TIME_EVER_SYNCED - set if at least one synchronization happened to some external source since boot Bit 5: PPS_SRC_GPSINT - set if PPS of internal GPS is used as PPS source – makes it possible to differentiate between internal/external PPS sources ([G]MDR only)

Status and Measurement of an Analog Channel 4.3.16.2

Associated IDC: IDC_ANA_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Analog Channel Status Bits (anastatus32)

+4 The most negative value of an analog channel during a period of time (val32)

+8 The most positive value of an analog channel during a period of time (val32)

+12 Calibration Process readiness (%)

Input Range of the recorded signal in dB1

(int8)

Output Range used for replay in dB1

(int8)

reserved(0)

Notes: 1 – used only in OUT6 modules

Extended Status and Measurement of an Analog Channel 4.3.16.3

Associated IDC: IDC_ANA_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+16 frequency in 10 mHz unit

+20 rotations per minute

+24 reserved(0) (28 byte)

Notes: Extended Status and Measurement of an Analog Channel is used only for MANA12 channel 9...12 and MANA6 channel 5 & 6

TEDS Sensor Information 4.3.16.4

Associated IDC: IDC_TEDS_SENSOR_INFO (address is a channel)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Unique Factory ID (8 bytes)

+8 Once programmable Application Register (8 bytes, not used)

+16 TEDS Info ( 32 bytes)

+48 Status reserved(0) reserved(0) reserved(0)

Page 189: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-132

Notes:

1 – Before firmware version 3.06 (DATaRec-4: DIC6, DEBU, MIC6, DIC24, DIC24Plus, GIM282) and firmware version 3.30.17 (MDR: MANA4/6) only DS2430A TEDS memory chip is supported. From firmware version 3.06 and 3.00.17 the following TEDS memory chips are supported: DS2406, DS2430A, DS2431, DS2433 and DS28EC20. 2 - If DS2406, DS2431, DS2433 or DS28EC20 TEDS chip is connected than only the 8 bytes Factory ID and the first 40 bytes of memory are reported because of the limited size of the message. (The complete memory of DS2430A chip is available with this message.) 3 – Command is obsolete! Use TEDS Sensor Information Extended command instead of

it!

TEDS Sensor Information Extended 4.3.16.5

Associated IDC: IDC_TEDS_SENSOR_INFO_EXT (address is a channel)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 total_len (bytes of data without this header)

+4 reserved (0)

+8 offset (bytes)

+12 transfer_len (bytes excluding this header)

+16 Unique Factory ID (8 bytes)

+24 data (length depend on TEDS chip type)

Notes:

1 – Message is supported from firmware version 3.06 (DATaRec-4: DIC6, DEBU, MIC6, DIC24, DIC24Plus, GIM282) and firmware version 3.30.17 (MDR: MANA4/6). The following TEDS memory chips are supported: DS2406, DS2430A, DS2431, DS2433 and DS28EC20. 2 - The memory size of some TEDS chips can be longer than the maximum message payload size. Because of this a 16 byte header (composed from total_ len, reserved, offset, and transfer_len) should follow the OID_GET command. The offset in bytes and the transfer_len should be sent, the total_len is not used in OID_GET command. The answer to the OID_GET is an OID_INFO which contains the header followed by the TEDS memory data. The total_len field contains the total length (without the header) of available data from the TEDS memory (it depends on the chip type). The offset is the requested offset, the transfer_len is the available max. data size transferred in this message. If a big memory chip is used, e.g. DS28EC20 it needs at least 3 transfers to get all the data. 3 – Recommended values: OID_GET – total_len: 0, reserved: 0, offset: 0, transfer_len : 1024 If TEDS chip is DS2430A: OID_INFO - total_len: 52, reserved: 0, offset: 0, transfer_len : 52 If TEDS chip is DS2431: OID_INFO - total_len: 144, reserved: 0, offset: 0, transfer_len : 144 If TEDS chip is DS28EC20: OID_INFO - total_len: 2632, reserved: 0, offset: 0, transfer_len : 1008 A 2nd OID_GET message must be sent: OID_GET – total_len: 0, reserved: 0, offset: 1008, transfer_len : 1024 OID_INFO - total_len: 2632, reserved: 0, offset: 1008, transfer_len : 1008 A 3rd OID_GET message must be sent: OID_GET – total_len: 0, reserved: 0, offset: 2016, transfer_len : 1024 OID_INFO - total_len: 2632, reserved: 0, offset: 2016, transfer_len : 616 No more OID_GET is necessary because all data is received (offset + transfer_len == total_len).

Page 190: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-133

Status and Measurement of a MIL1553 Channel 4.3.16.6

Associated IDC: IDC_MIL1553_BUS_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 MIL1553 Channel Status Bits (milstatus32)

+4 Bus Load of Bus A in 0.01 %

+8 Bus Load of Bus B in 0.01 %

Status and Measurement of an ARINC429 Channel 4.3.16.7

Version 1:

Associated IDC: IDC_ARINC429_BUS_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 ARINC-429 Channel Status Bits (arincstatus32)

+4 Bus Load in 0.01 %

Version 2:

Associated IDC: IDC_ARINC429_BUS_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 ARINC-429 Channel Status Bits (arincstatus32)

+4 Bus Load in 0.01 %

+8 Bus Speed High (bit 0 is set is high speed bus)

Status and Measurement of a MRG100 Channel 4.3.16.8

Version 1:

Associated IDC: IDC_PCM_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 PCM Channel Status Bits (pcmstatus32)

+4 Clock Rate in Hz

Version 2:

Associated IDC: IDC_PCM_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 PCM Channel Status Bits (pcmstatus32)

+4 Clock Rate in Hz

+8 PCM Channel Info Bits (pcminfo32)

+12 Number of Synchron Drops Number of Synchron Locks

Page 191: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-134

Status and Measurement of a CAN4 Channel 4.3.16.9

Associated IDC: IDC_CAN_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 CAN Channel Status Bits (canstatus32)

+4 Bus Load

Status and Measurement of a FLEX Channel 4.3.16.10

Associated IDC: IDC_FLEX_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 FLEX Channel Status Bits (flexstatus32)

+4 Bus Load

Status and Measurement of a ASM Channel 4.3.16.11

Associated IDC: IDC_ASM_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 ASM Channel Status Bits (asmstatus32)

+4 Bus Load

Status and Measurement of a GPS Channel 4.3.16.12

Associated IDC: IDC_GPS_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 GPS Channel Status Bits (asmstatus32)

+4 Bus Load

Status and Measurement of a Fibre Channel 4.3.16.13

Associated IDC: IDC_FIBRE_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Fibre Channel Status Bits (fibrestatus32)

+4 Bit Rate

Status and Measurement of an Video Channel 4.3.16.14

Version 1:

Associated IDC: IDC_VIDEO_CH_STATUS (VCR100)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Video Channel Status Bits (videostatus32)

+4 Video Bitrate in bit/s

Page 192: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-135

Version 2:

Associated IDC: IDC_VIDEO_CH_STATUS (MVCR1-5 and MVCRE)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Video Channel Status Bits (videostatus32)

+4 Video Bitrate in bit/s

+8 det_col_std flags Horizontal Resolution (MVCR2, MVCR4)

+12 Horizontal Front Pixels (MVCR2, MVCR4) Horizontal Synch Pixels (MVCR2, MVCR4)

+16 Horizontal Total Pixels (MVCR2, MVCR4) Vertical Resolution (MVCR2, MVCR4)

+20 Vertical Front Lines (MVCR2, MVCR4) Picture Clock in kHz (MVCR2, MVCR4)

+24 Frame Rate in 0.01 Hz (MVCR2, MVCR4) Interlaced=1 Progressive=0 (MVCR2, MVCR4)

+28 Reserved(0)

+32 Reserved(0)

+36 Reserved(0)

+40 Reserved(0)

Version 3:

Associated IDC: IDC_VIDEO_CH_STATUS (MVCR6)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Video Channel Status Bits (videostatus32)

+4 Video Bitrate in bit/s

+8 Input1: det_col_std Input1: flags Input2: det_col_std Input2: flags

Version 4:

Associated IDC: IDC_VIDEO_CH_STATUS (MVCR-SDI4)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Video Channel Status Bits (videostatus32)

+4 Video Bitrate in bit/s

+8 Detected horizontal resolution Detected vertical resolution

+12 Detected input frame rate * 100 Flags (vcr_flags8) SDI mode (vcr_sdi_mode8)

+16 Recorded horizontal resolution Recorded vertical resolution

+20 Recorded frame rate * 100 Average encoding latency in ms

+24 Encoding power consumption in mW Encoding temperature in dgK/100

+28 Reserved(0)

Page 193: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-136

Status and Measurement of a Recorder 4.3.16.15

Associated IDC: IDC_RECORDER_CH_STATUS (MVCR6)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Recorder Channel Status Bits (recorderstatus32)

+4 record_bit_rate

+8 play_bit_rate

+12 warning_flags (warningflags32)

4.3.17 Status and Measurement Setup Information

Associated IDC: IDC_STATUS_SETUP

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Status Repeating Rate in ms

+4 Error Level Mask (defined by .CRITICAL)

+8 Warning Level Mask

+12 Channel Error LED hold time in ms

+16 Channel LED Red Error condition level

+20 Channel hold time in ms for Most Positive/Negative Value

Page 194: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-137

4.3.18 General Behavior of the System in Case of Errors

Each new incoming error event retriggers the hold timer of the fault indication (Error LED and contact remote). If the error is of permanent nature, the error hold timer will be restarted in each status polling loop.

4.3.19 Link-Module/Data-Module Status and Measurement

This information is not part of the system configuration packet (i.e. has to be requested via remote command).

Module Status and Measurement 4.3.19.1

Associated IDC: IDC_MODULE_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved (uint32)

+4 status (uint32)

+8 time_stamp (uint64)

+12

+16 earliest_play_time (uint64)

+20

Error Event (assuming)

t

Status Polling Interval 1s

Error Hold Time 2s

(can be adjusted)

Health Bit (for external)

Read Health Status (e.g. D4Recorder)

Error LED (Contact Remote)

Event

Copy Error Bit (only internal)

Hold Time over

or

Re-Trigger Re-Trigger Re-Trigger Re-Trigger Re-Trigger Hold Time over

Page 195: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-138

status (uint32): Module Status:

bEarliestPlayTimeValid Earliest play time is valid

bInReplay Replay is running

bActualTimeValid IDC_ACTUAL_TIME is valid

bPlayTimeValid IDC_PLAY_TIME is valid

bReadyForPlayStart Ready for play start

time_stamp (uint64): Current free running relative time counter (10 MHz counter). In the case of a link module in slave mode this time stamp includes the slave offset compensation.

earliest_play_time (uint64): The earliest relative time counter (10 MHz) when the data module can start the (next) play. This value is valid when the bEarliestPlayTimeValid bit is set. The (next) play can be started when the bEarliestPlayTimeValid and the bReadyForPlayStart bit is set. When the link module is asked the biggest earliest_play_time from all modules is reported, but only if every bEarliestPlayTimeValid bit of all modules is set.

4.3.20 Calibration Execution

The Calibration can be started by an OID_ARM command with the following parameters.

Start Calibration with parameter passing 4.3.20.1

Associated IDC: IDC_EXEC_CALIBRATION

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Calib. Mode (calibmode8)

Calib. Type (calibtype8)

reserved (0) reserved (0)

Note:

1. Calibration mode “Auto On” is not supported.

2. From firmware 2.63: DIC6, CHG6, DEBU, MIC6, DIC24, and DIC24X/Plus modules start the calibration 500 ms after the last calibration command received. If a new calibration command (e.g. single channel calibration for another channel) is sent to a module less than 500 ms after the previous one, the module stores it and starts to wait again 500 ms. If the 500 ms timeout is over then the module executes the collected commands in one shot. All kind of command combination is allowed (single channel or all channels, actual range or all ranges).

3. Firmwares before version 2.63: a new single channel calibration execution request will be rejected while another earlier started calibration is being executed

4. SGU9, MANA8, MANA8A, MANA16, MANA12:

calibration commands will be stored in a queue and executed consecutive

4.3.21 Calibration Information

This information is enclosed in a computer generated data packet (in accordance with Ch.10 specifications), and is inserted in the data stream only when considered necessary, e.g. immediately after the end of calibration.

Page 196: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-139

Calibration Information of an Analog Channel in the Current Range 4.3.21.1

Associated IDC: IDC_ANALOG_CALIBRATION (address is a channel)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Gain Correction Value (gain32)

+4 Offset Correction Value (offset32)

Extended Calibration Information of an Analog Channel in the Current Range 4.3.21.2

Associated IDC: IDC_ANALOG_EXTEND_CALIBRATION (address is a channel)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Gain Correction Value, lower 32 bits

+4 Offset Correction Value, lower 32 bits

+8 Gain Correction Value, higher 32 bits

12 Offset Correction Value, higher 32 bits

Note:

The interpretation according to (gain32) applies here as well, even though 64bits per value are used.

Calibration of a Module Calibration Unit 4.3.21.3

Associated IDC: IDC_ANALOG_CALUNIT_CALIBRATION (address is a module)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Gain Correction Value (gain32)

Charge Converter Calibration of a Charge Channel 4.3.21.4

Associated IDC: IDC_ANALOG_CHG_CALIBRATION (address is a channel)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Gain Correction High Amplification Ranges (gain32)

+4 Gain Correction Low Amplification Ranges (gain32)

4.3.22 Correcting Analog Data Based on TEDS Information

The DIC6, DIC24, GIM282, MANA4/6 modules can include analog input data calibration based on sensor calibration values – if this calibration value is stored in a TEDS sensor information according to a given way. This Chapter summarize the conditions to correct the analog data this way.

Identification of the TEDS information 4.3.22.1

There is a parameter for the DIC6, DIC24 and GIM282 modules called "AutoCalibration". The "AutoCalibration" parameter can be saved into the Link Module (system configuration operating mode) or in the module's EEPROM (stand-alone operating mode).

If the value of the "AutoCalibration" is set to true, and the "TEDS read out" channel parameter is set also true for a DIC6, DIC24 and GIM282 channel, then after power on and after changing any parameter which needs new calibration, the TEDS sensor will be read out automatically.

Page 197: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-140

If the "TEDS read out" channel parameter is set to true and the MANA4/6 modules get an ARM with one of the following IDCs: IDC_TEDS_SENSOR_INFO, IDC_DIC6_CHANNEL_PARAMETERS, IDC_ALL_PARAMETERS, the TEDs info on the corresponding channel will be read out and stored in the internal RAM.

After the TEDS info page is read, 32 byte data content is checked first for proper checksum: adding together all 32 bytes the lowest 8 bits of the sum shall be 0.

If the check-sum is correct, the sensor data information type is checked. 8 bits staring at address 74 shall be set to 111. The addressing is bit-stream based, the address 0 is the LSB of the first byte, address 7 is the MSB of the first byte.

ULONG GetTedsField( BYTE *teds, ULONG start, ULONG len ) { ULONG ret=0; ULONG pos = start; for( ULONG i=0; i<len; i++ ) { ret += ( ( teds[pos/8] >> ( (pos%8) ) ) & 1 ) << i; pos++; } return ret; } BOOL isTEDS111 = GetTedsField(teds,74,8) == 111;

Correction of the Analog Data 4.3.22.2

The nominal and calibrated sensor values are stored in position 128 and 160 on 32 bits:

ULONG real = GetTedsField(teds,128,32);

ULONG nominal = GetTedsField(teds,160,32);

Both the real and nominal gains are stord with IEE754 standard:

1

± MSB 8-bits exponent LSB MSB 23-bits mantissa LSB

Gain = 0.0001 *pow( 1.0002, (double) i);

If the nominal gain and real gain are within 20% then the correction will be calculated to all data:

recorded data = measured data / real gain * nominal gain

Identification of the Corrected Data 4.3.22.3

To be able to identify in the recorded data which channels are already corrected, and which are not with the TEDS111 sensor correction, the following identification method is used:

The Chapter 10 data header has a "Header Version" field. This is set now to 2 - which means "IRIG106-05" compatible. This is otherwise also the "Current Data Type" version in all following standards until 2015.

If the TEDS111 correction is applied on a given channel, on that channel the "Header Version" field will be set to 1 - which can be seen in every packet header.

On those channels, where for any reason the TEDS111 correction is not applied, the "Header Version" remains 2.

4.3.23 AutoZero Execution (SGU9 & MFHB6V only)

The AutoZero process can be started by an OID_ARM command. The commands are queued in the module. Channel broadcast is not supported.

Associated IDC: IDC_EXEC_SGU_AUTOZERO (address is a channel)

Page 198: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-141

4.3.24 Data Flow Control

The data flow control controls up and down-stream data flow. Currently one module can work only in one direction – they are working in “record” (up-stream data flow) or “replay” (down-stream data flow) mode – so setting both modes in the same time for one module will return an error. Otherwise different modules are able to work in different modes.

Control Up and Downstream Data Flow 4.3.24.1

Associated IDC: IDC_DATAFLOW_CONTROL (address is a module)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Up-stream enabled

(enable8) Down-stream enabled

(enable8) Up-stream buffer

Flush Down-stream buffer

Flush

4.3.25 Front-End Replay Control

Set Replay Time Stamping Offset 4.3.25.1

Associated IDC: IDC_PLAY_TIME_OFFSET (address is the link module)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 first_packet_time (uint64)

+4

+8 play_time_offset (uint64)

+12

+16 reserved (0)

+20 reserved (0)

first_packet_time (uint64): First play packet relative time counter (10MHz time stamp). This is the first packet which has to replay.

play_time_offset (uint64): Time offset to be added to the free running relative time counter (10MHz counter) to get the play wall clock. Hint: At nominal replay speed the offset is constant, at different speed replay the offset is changing.

Stop Front-End Replay Time Stamping 4.3.25.2

Associated IDC: IDC_PLAY_STOP_TIME (address is the data module)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 last_packet_time (uint64)

+4

+8 reserved (0)

+12

+16 flags (uint32)

Page 199: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-142

+20 reserved (0)

last_packet_time (uint64): Relative time counter (10 MHz time stamp) of the last packet which has to replay. Data packets with bigger relative time counter should not go outside until the marker data packet (EOD) and a new play offset time is arrived.

flags (uint32): sPSF_ABORT_PLAY Abort or stop at the given time play.

sPSF_TS_VALID Time stamp value is valid

sPSF_EMERGENCY_STOP Unconditional enter play idle mode after flushing any internal buffers.

Client Data Flow Control 4.3.25.3

Associated IDC: IDC_CLIENT_DATAFLOW_CONTROL (address is the link module)

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 packet_time (uint64)

+4

+8 reserved (0) downstream_enable

(uint8) reserved (0)

flush_downstream (uint8)

+12 client_type (uint8) reserved (0) reserved (0) reserved (0)

+16 reserved (0)

+20 reserved (0)

+24 reserved (0)

+28 addr3 (uint8) addr2 (uint8) addr1 (uint8) addr0 (uint8)

+32 client_id (uint32)

+36 reserved (0)

packet_time (uint64): Last play packet relative time counter (10MHz). If downstream is disabled, this is the relative time counter from the last packet to replay. Behind this packet a play end marker data packet (EOD) hast to be placed (See 4.3.25.4 Format of Front-End Play End Marker Packet).

downstream_enable (uint8): Down-Steam data flow enable

flush_downstream (uint8): Flush buffered down-stream data

client_type (uint8): Client type:

CLIENT_TYPE_IEEE1394 FireWire client

CLIENT_TYPE_TCP Ethernet TCP/IP client

CLIENT_TYPE_UDP Ethernet UDP client

CLIENT_TYPE_USB USB client

CLIENT_TYPE_SAS SAS client

CLIENT_TYPE_ALL Effecting all client

Page 200: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-143

addr0-addr3 (uint8): If client type is CLIENT_TYPE_TCP or CLIENT_TYPE_UDP this is the IP address of the client.

client_id (uint32): If more then one client with the same type is connected they can be differentiate by the client_id.

Format of Front-End Play End Marker Packet (EOD) 4.3.25.4

Msb lsb

31 16 15 0

Channel ID( 0x00) Packet Sync Pattern( 0xeb25)

Packet Header

Packet Length (0x00000020)

Data Length (0x00000008)

Data Type (0x00) Packet Flags (0x00) Sequence Number

(0x00) Data Type Version

(0x02)

Relative Time Counter (0x00000000)

Header Checksum (uint16) Relative Time Counter (0x0000)

Channel Specific Data (always 0x00000000) (uint32)

Packet Body Synch Word with value DATAREC4_SYNCH_WORD

(‘heim’) (uint32)

4.3.26 Stand-Alone Record, Erase and Delete Control

Start Stand-Alone Record 4.3.26.1

Associated IDC: IDC_START_RECORD

Supported OIDs: OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 reserved (0)

Page 201: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-144

This command (OID_ARM) will start a stand-alone record if a proper medium is connected to the system. We support currently USB, IEEE 1394, SATA and SAS disk devices. The disk must be formatted either with FAT32, EXT2 or with STANAG4575. If more then one medium is connected, the record file will be stored on the first medium on the first partition found in the system. The DATaRec

® 4 system is hot

pluggable. When a medium is connected later on, the record file will be stored on the first plugged medium on the first found partition on this medium. All records are stored in the ‘datarec’ folder. When a running record reaches the maximum file size (e.g. FAT32 by default = 2GByte), the current file will be closed, the file number will be increased by one, and a new file will be created. The recording file name format is as following:

YYYYMMDDhhmmss_rRRRRfFFF.ch10

were: YYYY = year MM = month DD = day hh = hour mm = minute ss = second RRRR = recording number FFF = file number (part of one recording)

E.g. 20080506135612_r0005f003.ch10 would be a valid record file name. If the medium is becoming full, the system will close the current file. If there is a further supported medium the record will be continued on the next medium. This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone record should start.

qualifier (uint32) If qualifier is:

bTimeStampValid The time_stamp field is valid if this bit is set. If the time_stamp field is not valid, the record will start immediately.

Stop Stand-Alone Recording 4.3.26.2

Associated IDC: IDC_STOP_RECORD

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 reserved (0)

This command (OID_ARM) will stop a running stand-alone record. The file will be closed; the record number will be increased by one for the next record. This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone record should stop.

qualifier (uint32) If qualifier is:

bTimeStampValid The time_stamp field is valid if this bit is set. If the time_stamp field is not valid, the record will stop immediately.

Page 202: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-145

Stand-Alone Erase Medium 4.3.26.3

Associated IDC: IDC_ERASE_MEDIA

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 opcode (uint32)

+16 fs_format (uint32)

+20 media_id (uint32)

+24 record_id (uint32)

+28 file_id (uint32)

+32 reserved1 (0)

+36 reserved2 (0)

This command (OID_ARM) deletes either the complete medium (=format) or only one or more records of the medium. The supported file system formats are F32 and EXT2. This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone erase should start.

qualifier (uint32) If qualifier is:

bTimeStampValid The time_stamp field is valid if this bit is set. If the time_stamp field is not valid, the erase will start immediately.

bMediaNumberValid The media_id field is valid if this bit is set. If this bit is not set, the medium found last is selected.

opcode (uint32) Operation code:

NO_ACTION Do nothing

ERASE_MEDIA The whole medium will be erased (formatted). The fs_format field is valid.

DELETE_RECORD A single record will be deleted. The field record_id is valid. All files which are belonging to this record are deleted.

DELETE_ALL_RECORDS All records on the medium will be deleted.

REPAIR_MEDIA Try to repair the medium (CheckDisk).

fs_format (uint32) The following file system format are available:

FSF_FAT32 FAT32 file system (default).

FSF_EXT2 EXT2 file system.

FSF_FAT16 FAT16 file system.

FSF_UNKNOWN Unknown file system format.

Page 203: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-146

media_id (uint32) Selects the medium (device/volume) to erase/delete (starts with 0). E.g. the first found partition on the first disk get the number = 0.

record_id (uint32) Number of a given record (starts counting with 0) on volume media_id.

file_id (uint32) File number of a given record (starts with 0)

File Delete By Name 4.3.26.4

Associated IDC: IDC_FILE_DELETE_BY_NAME

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 media_id (uint32)

+4 reserverd1 (0)

+8 reserved2 (0)

+12 name_length (uint32)

+0 File Name…

With this command it is possible to delete a file from media. This command can only be addressed to the link module.

media_id (uint32) This entry specifies the media ID (by default = 0).

name_length (uint32) File name length of the following entry in byte.

File Name (uint16) This is the file name of the recording which should be deleted on the given media (media_id). The maximum file name length is 512 bytes.

The total size of this command will be padded to 32 bit boundaries

Set Event while Stand-Alone Recording 4.3.26.5

If this remote command is send a Event packet (see IRIG-106 Ch 10.6.7.3) will be inserted into the data stream. This feature is only activated if the appropriate bit (Bit1) is set in the link module parameter op_mode2 (see 4.3.8.1 Link Module Parameters).

Associated IDC: IDC_SET_EVENT

Supported OIDs: OID_SET

Returned OIDs: OID_ACK, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0)

+4 reserved2 (0)

+8 reserved3 (0)

+12 reserved4 (0)

Page 204: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-147

Get Event Info 4.3.26.6

This remote command can be used to get the current total event number of the system.

Associated IDC: IDC_EVENT_INFO

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 qualifier (uint8) reserved1 (0) reserved2 (uint8) reserved3 (uint8)

+4 event_count (uint32)

+8 reserved4 (0)

+12 reserved5 (0)

qualifier (uint8) This entry specifies the event type to be returned:

eTotalEventCount The total number of current events of the system is returned. This command is equivalent with the IRIG-106 Ch10 .LASTEVENT ALL command.

eSerialEventCount The number of current event from type Serial is returned.

event_count (uint32) Number of event from type which is specified by the qualifier entry.

Stand-Alone Recording Trigger Function 4.3.26.7

Start and stop recording with signal dependent triggers and elapsed time trigger. When this trigger function is enabled and an analog channel maximum or minimum peak crosses a trigger level in positive or negative direction (the measurements are used not the samples), the stand-alone recording process is started. The level is defined in % of full scale of the given channel. Depending on the trigger mode the recording is stopped when the post trigger time is elapsed or the recording is stopped manually (IDC_STOP_RECORD). The trigger source can be a DIC6, DIC24, DIC24Plus, CHG6, MIC6, DEBU, SGU9, ANH100, ANH101, Voice or any MANA channel. To activate the trigger function these trigger parameters must be enabled and send followed by a OID_ARM command and then the Start Recording (IDC_START_RECORD) command must be performed. As of this moment the system is in “wait for trigger” mode (bWaitForTrigger see Stand-Alone Status 4.3.28.1). If the trigger condition gets true, the system will start a stand-alone recording automatically with the given parameters. If the TF_CONTINUE trigger flag is set and in combination with the Link Module parameter Start-Up Action “recording at power on” the system can run automatically from power on in the “wait for trigger” mode. If the IDC_STOP_RECORD is send during “wait for trigger” state the system is going into the stop mode. If the system is in recording state and the IDC_STOP_RECORD is sent, the system is going into the stop mode independent from the TF_CONTINUE flag and independent from the trigger condition.

Associated IDC: IDC_TRIGGER

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 pre_trigger_time post_trigger_time

+4 elaps_trigger_time flags reserved1 (0)

Page 205: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-148

+8 reserved2 (0)

+12 reserved3 (0)

+20 reserved4 (0)

+24 t0_type (uint16) t0_ch_id (uint16)

+28 t0_level (uint32)

+32 t0_reserved1 (uint32)

This command can only be addressed to the link module and is a part of the save_set.

Pre_trigger_time (uint16) (in seconds)

The recording starts before the trigger condition with the Pre-Trigger Time (in seconds). The maximum time is limited by the memory size – so will be bit rate dependent. A minimum buffer size of 512 KiB is reserved so that no data lost can occur during the start recording phase. The pre trigger buffer size is approximately 250MiB.

Post_trigger_time (uint16) (in seconds)

The recording stops after the Start Trigger with the Post Trigger Time (in seconds). If the Post-Trigger Time is 0 the post trigger time is infinite, so manual stop only.

Elaps_trigger_time (uint16) (in seconds)

The recording starts after the Elapse Trigger Time (in seconds) in the case if no other trigger condition occurs. The pre-trigger time is 0s and the post-trigger time is as specified.

flags (uint8_t) The following bits are defined:

bit0 TF_RE_TRIGGER if set the post-trigger time will be reset every time the trigger condition occurred. The re-trigger interval is 1s.

bit1 TF_CONTINUE if set and the recording has been finished the system will go again into the wait for trigger state.

t0_type (uint16) The trigger type can be:

TT_OFF Trigger is off

TT_ANALOG Analog trigger is on

t0_ch_id (uint16) The trigger channel:

0 – 65534: The channel ID of the trigger source

65535: 0xffff all channels are the trigger source

t0_level (uint32) The trigger level is defined in % of full scale of the given channel:

0x00000000: 0% of full scale

0xffffffff: 100% of full scale

Page 206: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-149

4.3.27 Stand-Alone Replay Control

Start Stand-Alone Replay 4.3.27.1

Associated IDC: IDC_START_PLAY

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 reserved (0)

This command (OID_ARM) will start a stand-alone replay if a proper file is found on the medium connected to the system. By default the first found file on the first found media will be selected. The IDC_FILE_SELECT_BY_NAME can be used to select a different file located on the disk. This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone replay should start.

qualifier (uint32) If qualifier is:

bTimeStampValid The time_stamp field is valid if this bit is set. If the time_stamp field is not valid, the replay will start immediately.

Stop Stand-Alone Replay 4.3.27.2

Associated IDC: IDC_STOP_PLAY

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 qualifier (uint32)

+12 reserved (0)

This command (OID_ARM) will stop a stand-alone replay if running This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone replay should stop.

qualifier (uint32) If qualifier is:

bTimeStampValid The time_stamp field is valid if this bit is set. If the time_stamp field is not valid, the replay will stop immediately.

Page 207: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-150

4.3.28 Stand-Alone Status

Stand-Alone Status 4.3.28.1

Associated IDC: IDC_STAND_ALONE_STATUS

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 time_stamp (uint64)

+4

+8 status (uint32)

+12 err_no (uint32)

+16 num_of_devices (uint16) num_of_volumes (uint16)

+20 selected_volume (uint16) progress (uint16)

+24 ch10_status (.STATUS)

+28 media_capacity (uint64)

+32

+36 rec_size (uint64)

+40

+44 remaining_media_capacity (uint64)

+48

+52 total_rec_size (uint64)

+56

+60 rec_remaining_time (uint32)

+64 rec_speed (uint32)

+68 record_id (uint32)

+72 file_id (uint32)

+76 play_remaining_time (uint32)

+80 play_speed (uint32)

+84 volume_fs_format (uint8_t) reserved1 (0) reserved2 (0)

+88 reserved3(0)

+92 reserved4 (0)

Page 208: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-151

This command (OID_GET) reports the current stand-alone record/replay/erase/declassify status. This command can only be addressed to the link module.

time_stamp (uint64): Relative time counter (10MHz counter) when stand-alone status was valid.

status (uint32) Status bits:

bRecord Stand-Alone record is running.

bPlay Stand-Alone replay is running.

bErasingMedia Stand-Alone erase process is running.

bMediaErased Media is successfully erases (declassified).

bSearch Search on media is running.

bSaEnabled Stand-Alone Recording feature enabled.

bLoopBack System is in Loop Back mode.

bCheckingFS Media file system check is running.

bSetUp Setup is running (Restore).

bWaitForTrigger The system is in “waiting for trigger” mode.

bUDPBroadcast IRIG-106 chapter 10 UDP server running (.PUBLISH).

bUDPFileServer IRIG-106 chapter 10 UDP file server running (.ZDS_UDPFS).

Error bits:

bRecordError During stand-alone record an error is occurred.

bPlayError During stand-alone replay an error is occurred.

bEraseError During erase/declassify process an error is occurred.

err_no (uint32) If one of the error bit above is set, the following reasons exists:

SAE_NO_ERROR No error

SAE_NO_FILE File does not exist.

SAE_MEDIA_FULL Media full while record.

SAE_WRITE_ERROR Media write error while record.

SAE_READ_ERROR Media read error while replay.

SAE_REGISTER_DS_ERROR Register dserver error (internal error).

SAE_MEM_ERROR Data memory error (internal shared memory error).

SAE_DATA_LOST Data lost while record. The system bit rate exceed the media bit rate.

SAE_ERASE_ERROR Media error while erasing

SAE_MEDIA_BUSY Media currently busy. A shout while later it makes sense to try again.

SAE_INTERNAL_ERROR Any internal error.

SAE_UNKNOWN_ERROR Unknown error.

num_of_devices (uint16) Number of found devices in the system not necessarily mountable. E.g. if one single disk (with one partition) is connected to the system, then num_of_devices = 2. One for the device and one for the partition.

num_of_volumes (uint16) Number of found volumes in the system. A volume (partition) is a formatted device, which has one of the supported file systems. E.g. if one single disk (with one partition) is connected to the system, then num_of_devices = 2 and num_of_volume = 1.

Page 209: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-152

selected_volume (uint16) That is the volume, on which the records are stored, or by that the records are played back. If no formatted device (volume) is found in the system this is the number of the selected device which can be e.g. erased.

progress (uint16) Progress indication of erase/declassify process. Whereas the value 0xffff is equivalent to 100 %.

ch10_status (uint32) Equivalent to .STATUS info. The format is 0xssnnccpp:

ss = Ch10 Status (e.g. 0x01 = Idle, see IRIG-106 Ch 6.8.3.30 )

nn = Number of channels with non critical bits set

cc = Number of channels with critival bits set

pp = Progress 0x00 = 0% and 0xff = 100%

media_capacity (uint64) Selected media capacity in bytes.

rec_size (uint64) Size of currently running record in bytes.

remaining_media_capacity (uint64)

Remaining media capacity in bytes.

total_rec_size (uint64) Equal to media_capacity – remaining_media_capacity

rec_remaining_time (uint32) Remaining recording time in seconds assumed the current bit rate is constant.

rec_speed (uint32) Current record speed in bytes per second.

record_id (uint32) Current record number of running record on the given media.

file_id (uint32) Current record split file number of running record on the given media.

play_remaining_time (uint32) Remaining play back time in seconds assumed the current bit rate in constant.

play_speed (uint32) Current replay speed in bytes per second.

volume_fs_format (uint8_t) Current volume file system format :

FSF_UNKNOWN

FSF_FAT32

FSF_EXT2

FSF_EXT3

FSF_NTFS

FSF_FAT16

FSF_EFAT

FSF_STANAG4575

FSF_NFS

FSF_EXT2_WINCOMPAT

4.3.29 Stand-Alone File Functions

Get First File 4.3.29.1

Associated IDC: IDC_GET_FIRST_FILE

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0)

+4 reserved2 (0)

Page 210: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-153

+8 media_id (uint32)

+12 reserved3 (0)

+16 reserved4 (0)

+20 file_size (uint64)

+24

+28 start_year (uint16) start_month (uint8) start_day (uint8)

+32 start_hour (uint8) start_minute (uint8) start_second (uint8) start_10ms (uint8)

+36 end_year (uint16) end_month (uint8) end_day (uint8)

+40 end_hour (uint8) end_minute (uint8) end_second (uint8) end_10ms (uint8)

+44 file_name (512 byte)

+552 …

With this command it is possible to get the first file name of the system. This command can only be addressed to the link module. If no file is found at all the structure is filled with zeros. After this command the IDC_GET_NEXT_FILE has to be used to get the further files. With this two command it is possible to scan the whole system for recorded files. In the end one will have a list of all the files found in the system.

media_id (uint32): This entry specifies the media ID (started with 0) were the file was found.

file_size (uint64) File size in bytes

start_... Start time of this file. That means the time of the first chapter 10 time packet in this file.

end_... Closing time of this file. That means the time of the last chapter 10 time packet in this file

file_name This is the file name. The size of this field is 512 bytes.

Get Next File 4.3.29.2

Associated IDC: IDC_GET_NEXT_FILE

Supported OIDs: OID_GET

Returned OIDs: OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0)

+4 reserved2 (0)

+8 media_id (uint32)

+12 reserved3 (0)

+16 reserved4 (0)

+20 file_size (uint64)

+24

Page 211: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-154

+28 start_year (uint16) start_month (uint8) start_day (uint8)

+32 start_hour (uint8) start_minute (uint8) start_second (uint8) start_10ms (uint8)

+36 end_year (uint16) end _month (uint8) end _day (uint8)

+40 end _hour (uint8) end _minute (uint8) end _second (uint8) end _10ms (uint8)

+44 file_name (512 byte)

+552 …

With this command it is possible to get the next file name of a the system. This command can only be addressed to the link module. If no next file is found the structure is filled with zeros. Before you can use this command you have to use the IDC_GET_FIRST_FILE command.

media_id (uint32): This entry specifies the media ID (started with 0) were the file was found.

file_size (uint64) File size in bytes

start_... Start time of this file. That means the time of the first chapter 10 time packet in this file.

end_... Closing time of this file. That means the time of the last chapter 10 time packet in this file

file_name This is the file name. The size of this field is 512 bytes.

File Select By Name 4.3.29.3

Associated IDC: IDC_FILE_SELECT_BY_NAME

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 media_id (uint32)

+4 offset (uint32)

+8 reserved1 (0)

+12 name_length (uint32)

+0 File Name…

With this command it is possible to select a file for stand-alone replay. This command can only be addressed to the link module.

media_id (uint32): This entry specifies the media ID (by default = 0).

offset (uint32) This entry specifies the starting point (in bytes) within a file of where a replay should start (by default = 0).

name_length (uint32) File name length of the following entry in byte.

File Name (uint16) This is the file name of the record to be replayed on the given media ID.

The total size of this command will be padded to 32 bit boundaries

Page 212: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-155

Search for Time and Date 4.3.29.4

Associated IDC: IDC_SEARCH_TIME_DATE

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved1 (0)

+4 year (uint16) month (uint8) day (uint8)

+8 hour (uint8) minute (uint8) second (uint8) 10ms (uint8)

+12 reserved2 (0)

With this command it is possible to search for a given time and date for stand-alone replay. This command can only be addressed to the link module. On success the file is selected and the file offset is determined. The result can be controlled with the IDC_FILE_SELECT_BY_NAME command by using the OID_GET operation. The next Stand-Alone Replay which is started will begin exactly at this position.

4.3.30 Recorder Status Auto-Reporting Function

We have a possibility to monitor the operation of the recorder. The recorder sends out its status via an RS232/RS422 at the second serial port. The status is updated every second. The format of the status is a fixed format based on our DATaRec- 4 binary message format (see Chapter 4 The DATaRec® 4 Remote Commands). The binary structures are embedded in the standard DATaRec

® 4 ASCII remote control command. Currently

only one message is defined for general purpose binary message transfer: “bin”. The binary information starts with the <esc> character – followed by a 32-bit big-endian length field. Then any DATaRec

® 4 Binary Message

(see 4.2) can be sent (also as Big-Endian). The transfer finishes with the standard <cr> <lf> characters.

bin<esc><32-bit-big-endian-length><big-endian- DATaRec® 4-Binary-Message><cr><lf>

The maximum size of the recorder status message is 2 Kbytes. The standard baud rate of the RS232 stream is 9600 baud. This feature can be enabled by ser2mode = 1 of the Link Module Parameters (see 4.3.8.1). To activate this feature this mode must be saved into the default save-set, and the system must be restarted. The DATaRec

® 4 binary recorder status auto-reporting message has the following format:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Synch Word (0x55555555)

+4 Operation ID (0x00001005)

+8 Sequence Number (0xffffffff)

+12…

Information Header (4 x 32-bit)

+28 Information Unit (Variable Length)

Parameters:

Synch Word: Fix synch word = MSG_SYNCH_WORD (0x55555555) help resynchronization in a circular buffer.

Operation ID: Each message is identified by a unique Operation ID (OID). To each OID an action is assigned. OID_INFO (0x00001005) is used for the auto reporting

Page 213: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-156

message. For detailed description see DATaRec® 4 Programming Manual

Chapter 4.2.1.

Sequence Number: The Sequence Numbers for Auto Reporting Messages (unrequested answers) are always 0xffffffff.

Information Header: 4 x 32 bits. See DATaRec® 4 Programming Manual Chapter 4.2.2

Information Data: Variable length. See DATaRec® 4 Programming Manual Chapter 4.3

The structure of the information header of an auto reporting message is as follows:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 IDC_CH_STATUS_LIST (0x00100228)

+4 Length of the Information Data in bytes

+8 0 0 0 0

+12 0xfe 0xfe 0xfffe

This header is followed by the Information data:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 PCM Sync Pattern (0xfa6b2840)

+4 Recorder Status (.STATUS)

+8 Media Size (64 bit)

+12

+16 Year Month Day

+20 Hour Minute Second Flags

+24 System Health (.HEALTH 0)

+28 System Measurement

+32 Time Health (.HEALTH 1)

+36 Time Measurement

+40 GPS Health (.HEALTH 2)

+44 GPS Measurement

+48 Voice Channel 1 (.HEALTH 3)

+52 Voice Channel 1 Measurement

+56 Voice Channel 2 (.HEALTH 4)

+60 Voice Channel 2 Measurement

+64 External Channel 1 (.HEALTH 5)

+68 External Channel 1 Measurement

Page 214: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-157

+m External Channel n Health (.HEALTH <n+2>)

+m+4 External Channel n Measurement

The beginning of the information will contain system information – later a fixed length field is added to each channel.

In a system which consists of 100 channels, the size of the message would be 86 byte + n * 8 = 886 bytes.

PCM Sync Pattern (32bit): PCM synchronization pattern (0xfa6b2840).

Recorder Status (32 bit) Recorder status (see IRIG 106-07 Chapter 6.8.3.30):

b31-b24 -> Status code see IRIG 106-07 Chapter 6 Table 6-18

b23-b16 -> Total counter of non critical warnings

b15-b8 -> Total counter of critical warnings

b7-b0 -> Progress (0x00 = 0%, 0xff = 100%)

Media Size (64 bit) Media capacity in bytes

Date and Time (64 bit) Date and time in binary coded.

System Health (32 bit) See Irig-106-09 Chapter 6 Table 6-17

System Measurement (32bit) System record bit rate in bytes per second

Time Health (32 bit) See Irig-106-09 Chapter 6 Table 6-17

Time Measurement (32 bit)

GPS Health (32 bit) See Irig-106-09 Chapter 6 Table 6-17

GPS Measurement (32 bit)

Channel n Health (32 bit) See Irig-106-09 Chapter 6 Table 6-17

Channel n Measurement (32 bit)

The information is based on the IRIG-106 Chapter 6 ‘.’ Commands – basically the information output by the .STATUS, .MEDIA, .HEALTH and .TIME commands.

The measurements content for a specific channel type is unique. Example for status content:

PCM bit rate in bit per second

Ethernet bit rate in bits per second

MIL 1553 bus load, resolution is 0.01%

ARINC-429 bus load, resolution is 0.01%

Analog signal amplitude, fraction of full scale

Generally the 32 bit measurement value of the recorder status auto-reporting message corresponds always to the first measurement value of a given channel (see 4.3.16 Channel Status and Measurement)

The constant information part is 84 bytes followed by + 8 bytes per channels which is dependent on the number of channels available. At the end the <cr><lf> is append to comply the remote message. The length of the frame is fixed and is dependent on the number of channels. The 2 Kbyte buffer size limitation would allow outputting a frame with approx. 100 channels.

Page 215: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-158

By selecting specific words is the status message block, one can pick the desired status content from the message block / frame – e.g. System status, number of fatal errors, used media, the byte contains the fatal error bits of a PCM .HEALTH, the measurement of a MIL1553 channel – which is bus load, or total bit rate of one or more Ethernet channel.

This recorder status auto-reporting mode is a part of the Save-Set and will automatically activated at the next power-on if it was programmed so.

4.3.31 Telemetry Downlink Measurements and On-Board Recorder Status

The Telemetry Receive modules (TRMxxx and MTVME-RGGG on MDR) are able to deliver on-board system status and downlink statistics.

Three categories of information are available:

- On-board recorder status (.health and mesaurements), rate: every 1 s - On-Board recorder configuration (channel types, names), rate: every 5 s - Telemetry downlink status (data transferred, errors detected and corrected), rate: every 1 s

The information is available 2 different ways:

- On the TRM100 and MTVME-RGGG modules, if Chapter 10 UDP streaming mode is enabled on an Ethernet interface, the information above will be streamed out automatically as defined for UDP streaming of Chapter 10 packets. The on-board recorder status information is sent out as Chapter 10 UART Data Packet, the rest of information is sent out as Chapter 10 Computer Generated Data packet, the same way as defined in Chapter 3.5.1 “Computer Generated Data Packets Format 0, User Defined”.

- The information can also required by the standard binary commands (OID_GET) with the IDCs: o IDC_EXT_TRM_STATUS_LIST (on-board status), o IDC_EXT_TRM_CONFIGURATION, IDC_EXT_TRM_ANNOTATION (configuration), o IDC_TM_CH_STATUS, IDC_TRM_MEASUREMENTS,

IDC_EXT_TRM_CH10_PACKETS, (status measurements)

Extended Information Method 4.3.31.1

The maximum size of a binary message is 512 bytes. If a message content is larger than this block, the information will be segmented, and sent in parts, with the following header in front of the real content:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Total Length of the Information (in bytes, excluding these headers)

+4 reserved (0)

+8 Offset in the Information Structure (bytes)

+12 Transfer Length of this Information Part (in bytes, excluding these headers)

On-Board Recorder Status 4.3.31.2

The on-board recorder status information is available only, if the first channel of the Soft UART Module (desribed in Chapter 5.2) is enabled and included in the telemetry downlink stream. This channel dlivers the full system status information as Chapter 10 UART Data Packet, as described in Chapter 4.3.30 „Recorder Status Auto-Reporting Function“.

The binary message version of the on-board recorder status information is formed so, that its content is the data part of the UART packet, and the message is transmitted via the extended information method described in 4.3.31.1 with IDC_EXT_TRM_STATUS_LIST.

Compressed On-Board Configuration 4.3.31.3

For understanding the on-board recording status, as a minimum the channel types must be known. The most important channel information is available from the on-board recorder as follows:

Page 216: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-159

Associated IDC: IDC_TRM_CONFIGURATION, or IDC_EXT_TRM_CONFIGURATION

The IDC_EXT_TRM_CONFIGURATION is transmitted via extended information method described in 4.3.31.1.

bits 31 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Reserved(0) Number of Channels (N)

+4 Enable for Ch1 Data Type for Ch1 Channel Id for Ch1

+8 Enable for Ch2 Data Type for Ch2 Channel Id for Ch2

...

N*4+4 Enable for ChN Data Type for ChN Channel Id for ChN

If user channel names are available on the on-board recorder, they will be transmitted with the following structure:

Associated IDC: IDC_ TRM_ANNOTATION, or IDC_EXT_TRM_ANNOTATION

The IDC_EXT_TRM_ANNOTATION is transmitted via extended information method described in 4.3.31.1 .

bits 7 (msb) (lsb) 0

+0 Type (0)

+1 Channel Id for Ch1 (bits 15..8)

+2 Channel Id for Ch1 (bits 7..0)

+3 Name1[0]

+4 Name1[1]

+5 Name1[2]

+M+3 Name1[M]

+M+4 Zero Termintion (0)

...

+K+0 Type (0)

+K+1 Channel Id for ChN (bits 15..8)

+K+2 Channel Id for ChN (bits 7..0)

+K+3 NameN[0]

+K+4 NameN[1]

+K+5 NameN[2]

+K+3+L NameN[L]

+K+4+L Zero Termintion (0)

Telemetry Downlink Measurements 4.3.31.4

Page 217: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-160

The status of the telemetry receive channels is available as follows:

Associated IDC: IDC_TM_CH_STATUS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 PCM Channel Status Bits (pcmstatus32)

+4 Received clock rate in Hz

+8 PCM Channel Info Bits (pcminfo32)

+12 Number of Synchron Drops Number of Synchron Locks

+16 Received Chapter 10 normal data rate in Hz

+20 Detected maximum Latency in 100 ns counts

+24 Received Chapter 10 low latency data rate in Hz

+28 Received Raw Ethernet (gateway) data rate in Hz

+32 Received fill data rate in Hz

+36 Number of Ch7 packets received with error

+40 Number of bits corrected by the Golay code

+44 Reserved(0) Most recent time bits 47..32

+48 Most recent time bits 31..0 (as the on-board recorder 10 MHz count)

+52 Reserved(0)

Additionally a telemetry downlink cummulated statistics information is available:

Associated IDC: IDC_TRM_MEASUREMENTS

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Total telemetry downlink bytes received (bits 63..32)

+4 Total telemetry downlink bytes received (bits 31..0)

+8 Total Chapter 10 normal data bytes received (bits 63..32)

+12 Total Chapter 10 normal data bytes received (bits 31..0)

+16 Total Chapter 10 urgent data bytes received (bits 63..32)

+20 Total Chapter 10 urgent data bytes received (bits 31..0)

+24 Total fill bytes received (bits 63..32)

+28 Total fill bytes received (bits 31..0)

+32 Total number of TM PCM frames received

+36 Total number of bits corrected by the Golay code

+40 Total number of Chapter 7 packets received

+44 Total number of Chapter 7 packets dropped

+48 Total number of Chapter 10 packets received

Page 218: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-161

+52 Total number of Chapter 10 packets received with header error

+56 Total number of Chapter 7 packets received with header checksum error

+60 Total number of Chapter 7 packets received with data checksum error

+64 Total number of Chapter 7 packets dropped

+68 Total number of Reed-Solomon symbols corrected

+72 Total number of Reed-Solomon bits corrected 0 to 1

+76 Total number of Reed-Solomon bits corrected 1 to 0

+80 Total number of Reed-Solomon symbol correction failed

+84 Drop Mode Reserved(0) Reserved(0)

+88 Reserved(0)

+92 Reserved(0)

+96 Reserved(0)

+100 Reserved(0)

+104 Reserved(0)

Associated IDC: IDC_TRM_CH10_PACKETS or IDC_EXT_TRM_CH10_PACKETS

The IDC_EXT_TRM_CH10_PACKETS is transmitted via extended information method described in 4.3.31.1 .

bits 31 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Number of Chapter 10 Channel Ids seen (N)

4+0 Channel Id 1 TM receiving Delay in ms for Id1

4+4 Total Number of packets received for Id1

4+8 Number of packets Received with header checksum error for Id1

4+12 Number of packets Received with data checksum error for Id1

4+16 Number of packets dropped for Id1

...

K+0 Channel Id N TM receiving Delay in ms for IdN

K+4 Total Number of packets received for IdN

K+8 Number of packets Received with header checksum error for IdN

K+12 Number of packets Received with data checksum error for IdN

K+16 Number of packets dropped for IdN

where K = (N-1)*20 + 4

Page 219: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-162

4.3.32 Write File

Associated IDC: IDC_WRITE_FILE

Supported OIDs: OID_SET

Returned OIDs: OID_ACK, OID_ERROR

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 reserved (0) Format

(wr_file_format8) Mode

(wr_file_mode_bits16)

+4 File Size (uint32)

+8 File ID (uint32)

+12 Offset (uint32)

+16 Length (uint32)

+20 Chunk byte 0 Chunk byte 1 Chunk byte 2 Chunk byte 3

… …

… Chunk byte n-3 Chunk byte n-2 Chunk byte n-1 Chunk byte n

… Checksum (uint32)

wr_file_format8 (uint8) Write File Format

BIN reserved

BIN_SREC reserved

ARBITRARY download arbitraty waveform for GIM282 module generator output

wr_file_mode_bits16 (uint16) Write File Mode Bits

OPEN_FILE bit 0 : beginning of the file CLOSE_FILE bit 1 : end of the file FILE_SIZE_VALID bit 2 : File Size information is valid in

this command.

File Size (uint32) File Size in bytes

The size of the file must be sent to the module with FILE_SIZE_VALID flag. The size of Write File command is limited: the file must be splitted into max. 1 kbyte chunks.

File ID (uint32) File Identification: must be written to 0.

Offset (uint32) Chunk start position relative to the file beginning (in bytes).

Length (uint32) Chunk size in bytes.

Checksum (uint32) Sum of all bytes of the File calculated in 32 bit.Must be included at the end of the last chunk only.Length of the Checksum must be added to Length of the last check but not to the File Size.

Page 220: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-163

Downloading Arbitrary Wave file to GIM282 4.3.32.1

Each generator output channel has 64 Mbytes waveform memory. First the Arbitrary Wave file must be downloaded to this memory with IDC_WRITE_FILE commands, then replay can be started with selection GEN_TYPE_ARBITRARY as Generator Type. Replay will be repeated according parameter No. of Repeats.

The format of the Arbitrary Wave file is a subset of standard .WAV file:

• Fixed point • Mono • 16 or 32 bit samples

4.3.33 Auto Ranging Fuction

Function is supported by channels CH1 – CH10 of GIM282 and GIM282C2F2 modules only!

This function helps to select automatically the appropriate / optimal input range for the given input signals.

Process is the following:

1. Connect sensor / signal to the input channels: use as high signal level as you want analyse / record later.

2. Send “IDC_ANALOG_AUTORNG_START” command for the selected channel or for all channels.

3. Module waits 500 ms after the command received: during this time the same command is accepted for other channels.

4. Module changes the input range of the selected channels to maximum (50 V – GIM282).

5. Module measures the incoming signal level and stores the maximum value of it.

6. If “IDC_ANALOG_AUTORNG_STOP” command received or timeout happened than the module stops the level measurement.

7. Module changes to the possible smallest range according to measured maximum level for all selected channel.

8. The selected input range is queried with command: “OID_GET” – “IDC_GIN_CHANNEL_PARAMETERS”

Associated IDC: IDC_ANALOG_AUTORNG_START

Supported OIDs: OID_SET

Returned OIDs: OID_ACK, OID_ERROR

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Timeout(uint32)

+4 reserved0 (0)

+8 reserved1 (0)

+12 reserved2 (0)

Timeout (uint32) Wait time in msec. If the time expires than the module executes an internal “IDC_ANALOG_AUTORNG_STOP” command: stops level measurement and adjust the appropriate input range.

Page 221: DATaRec 4 Series

DATaRec-4 Programming Manual The DATaRec-4 Remote Commands

Page 4-164

Associated IDC: IDC_ANALOG_AUTORNG_STOP

Supported OIDs: OID_SET

Returned OIDs: OID_ACK, OID_ERROR

Command must send without data body. Command stops signal level measurement for all channels (doesn’t matter which channel was selected).

Page 222: DATaRec 4 Series

DATaRec-4 Programming Manual Synthesized Modules

Page 5-1

5 Synthesized Modules

5.1 Ethernet packet recording with ETH software module (MDR only) The ETH Software Module (METHSOFT) is a virtual module that is capable of recording Ethernet packets. The network interface of the Main Frame is set to ‘promiscuous mode’ to capture Ethernet packets. Each in/outgoing Ethernet packet (excepting packets which are containing “localhost” or the Mainfraime MAC as source/dest address) is captured. The METHSOFT – module appears as a normal (hardware) module in the “Treeview” of the “D4Record” utility and could be controlled by the setup dialog (Channel parameters are similar to the ETH100 module. Currently, only “Channel enable/disable” parameter is used).

Limitations/Remarks: There is no guarantee that every packet “on wire” is captured. ETHSOFT-module is based on software, so the capturing process depends on CPU power and interrupt latency. If the system is already heavily in use, Ethernet packets could be lost. The Software mechanism is only capable of capturing healthy packets. Erroneous packets will be discarded and not recorded!! The CRC of each packet is not recovered but is recalculated after packet reception within the software. Communication Ethernet packets (e.g. D4Recoder) are filtered and not recorded (we have only one physically Ethernet port that is shared for capturing and communication). Timestamp accuracy (RTC) of Ethernet packets could be dither between 1 ms. Time accuracy depends on the internal used / supported time-stamping mode (software timestamping or hardware timestamping).

5.2 Soft UART Module Since MDR version 1.60 and LMFx version 2.68 we implemented a new synthetic module with 8 UART channels whereat only the first channel is enabled by default. We call it Soft UART module because it is based purely on software.

The first channel of this module is a status logging channel for debugging proposes. The format of this data is the same format what is used for the second serial interface if the ser2mode is set to “Recorder Status Auto-Report” (see chapter 4.3.8.1 Link Module Parameters). The format is described at chapter 4.3.30 Recorder Status Auto-Reporting Function. The remaining 7 channels are currently unused.

All setups made before this releases will cause a “config conflict”. This is only a hint that there are some new channels exists without matching the setup file (save_set_000). To get rid of this warning, once you have to save the setup as default.

Page 223: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-1

6 IRIG-106 Chapter 6 Remote Commands

6.1 General Description In this section all supported Irig106 Chapter 6 Remote Commands (also known as “Dot Commands”) are described. For detailed information and samples please refer to the document “Telemetry Standard RCC Document 106-09, Chapter 6”.

Supported Irig106 Remote Commands:

Command Parameters Vendor

specific Description

.ASSIGN [dest-id] [src-id] Assign replay (output) channels to source (input) channels

.CRITICAL [n [mask]] Specify and view masks that determine which of the .HEALTH status bits are critical warnings.

.DATE [start-date] Specify setting or displaying date from recording device.

.DECLASSIFY * Secure erase the recording media.

.DUB [filename] * Same as .PLAY but with internal clock.

.ERASE Erases and formatting the recording media. In the case of the synchronous mode this command will erase and format both media (Master and Slave).

.EVENT [text string] Display event table or add event to event table. In the case of the synchronous mode the event packet will be inserted on the Master and Slave chassis.

.FILES * Display information about each recorded file.

.HEALTH [feature] Display detailed status of the recorder system. In the case of the synchronous mode the health of both chassis are reported.

.HELP Display table of ‘dot’ commands

.IRIG106 Return supported version number of IRIG-106 Recorder Command and Control Mnemonics.

.LASTEVENT [keyword] Display last entry of the event table

.MEDIA [drive-id] Display media usage summary. In synchronous mode the drive-id specifies the Master (=0) or the Slave (=1) media.

.PUBLISH [keyword] [parameter]

Configure, start and stop live data over the recorder ethernet interface

.PLAY [filename] * Reproduce recorded data of assigned output channels.

.RECORD * Start a recording. In the case of the synchronous mode, this command will start a recording on both chassis (Master and Slave).

.RESET Perform software initiated system reset.

Page 224: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-2

.SETUP [n] Display or select 1 of 16 (0…15) preprogrammed data recording formats.

.STATUS Display the current system status.

.STOP [mode] Stop current recording, playback or both. In the case of synchronous mode this command will stop the recordings of the Master and the Slave chassis.

.TIME [start-time] Display or set the internal system time.

.TMATS {mode} [n] Write, read, save, or get TMATS file.

.ZDS_AUTOZERO * Start auto zero for all channels.

.ZDS_ERASE [drive-id] * This is a special command only used for the synchronous mode. Starts the erasing and formatting of the specified media. "0" is selecting the media in the Master chassis and "1" is selecting the media in the slave chassis. If no parameter is given both media are erased and formatted.

.ZDS_LIST_USER_DATA * This command shows all files located in the /data directory of the NAND flash file system.

.ZDS_PWRCTRL [LIST|ON|OFF|CYCLE] {module}

* Control power of modules supporting this feature.

.ZDS_REMTIME * Return remaining record time in seconds.

.ZDS_SHUNTCAL * Start the shunt calibration for all channels.

.ZDS_STATUS [chassis-id] * This is a special command only used for the synchronous mode. Display the status of single chasses. If chassis-id = 0 the Master chassis is addressed and if chassis-id = 1 the Slave chassis is addressed.

.ZDS_UDPFS * Start/stop udp fileserver

Table 51 Supported Irig106 Remote Commands

Parameters in braces “{}” are required. Parameters in brackets “[]” are optional. When optional parameters are nested (“[xxx [yy] ]”), the outer parameter (xxx) must be specified in order to also specify the inner parameter (yy).

Note:

According to “Telemetry Standard RCC Document 106-09, Chapter 6” some commands marked with `*` differ from the implementation or are vendor specific extensions!!

6.2 Differences of “Telemetry Standard RCC Document 106-09,

Chapter 6” The following section list decisions that have been made where IRIG106 is unclear and does not define a definite behaviour, or where the recorder can not implement a given feature. But be advised that these implementation aspects may be changed, if a later revision of the IRIG106 standard will specify them.

Page 225: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-3

6.2.1 .DECLASSIFY

The .DECLASSIFY command is supported in the case if an appropriate SSD drive is connected (e.g. TCS Proteus Plus). Otherwise this commad works like .ERASE.

6.2.2 .DUB

.DUB currently works like .PLAY

6.2.3 .FILES

The response of .FILES looks like:

1 20101129122718_r0001f000.ch10 0 123456789 333-12:27:18 333-12:27:24

Parameters:

1st: File number (starting with 1).

2nd: Filename of record.

3rd: Current media id (starting with 0).

4th: Size of record file in bytes.

5th: Start day and time of recording.

6th: Stop day and time of recording.

6.2.4 .LASTEVENT

This command is a vendor specific command and is working like the .EVENT command except that only the last entry of the event list is reported. If the command is followed by the "ALL" parameter, in the calculation of the events the other event sources like front panel or contact remote events are also be included. If the last entry is assigned to one of those event sources, the following string will be added automatically to the entry. In the case of an contact remote event the text will be "discrete" and in the case of a front panel event the text will be "front panel".

6.2.5 .PUBLISH

Additionatly to the standard parameters we do support also an interface parameters indicated by “I” followed by the interface number. With this parameters you can specify the ethernet interface over which the UDP packets are sent. The syntax is as follows:

.PUBLISH <Command> <IP> <Port> <Interface> <ChannelIDList>

For example:

.PUBLISH START 11.59.17.1 2000 I1 1-2 4 5-6

*

The parameters are:

<Command> mandatory START/STOP (none for get list) <IP> mandatory Destination IP address <Port> mandatory Port number <Interface> optional Interface number I0 = ”eth0”, I1 = ”eth1” <ChannelIDList> mandatory Channels (e.g. 1-2 4 5-6 or ALL)

Examples:

.PUBLISH

11.59.17.1 2000 I1 1-2 4 5-6

*

Note:

In the case, the interface is 0, the output is equivalent to the standard and the “I” parameters is suppressed!

Page 226: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-4

6.2.6 .PLAY

.PLAY only supports a valid filename as a parameter. Without giving a parameter .PLAY starts playback of the first record file if no recording was issued since recorder power-on else starts playback of last recording.

6.2.7 .RECORD

.RECORD currently does not support any parameter. File naming is implemented to be automated.

6.2.8 .SETUP

The .SETUP <n> command will do a .TMATS GET <n> as a side effect – making the restored TMATS available for inspection by .TMATS READ.

.SETUP without parameters will append ‘MODIFIED’ to the returned actual save set command if parameters have been modified (for example using DATaRec4 command) since the last .SETUP <n> command. To indicate that the actual setup is based on, but no longer identical to the setup contained in that file.

.SETUP will append ‘NOT_INTERNAL’ to the returned current setup information, if the current-set was restored from any other place than one of the internal non-volatile setup files. (For example if setup was read from removable media).

The current setup number will be retained over power cycling. In other words: if .SETUP <n> has been used the <n> will be the power on default setup until another .STEUP <m> command is used. Note: if DATaRec4 style commands (IDC) are used to restore a save the power on default save set number is not automatically changed. The DATaRec4 control protocol offers a separate IDC to control the power on default save set independently from restoring one.

.SETUP <n> will only report an error if restore is attempted from a non-existing or uninitialized save set. If the save set exists, but does not fit to the current hardware configuration of the recorder (or violates TMATS syntax) .SETUP will apply as much as possible of the setup information and return with the normal ‘*’ prompt. To detect such errors .HEALTH 0 needs to be checked.

6.2.9 .ZDS_RESTORE

The .ZDS_RESTORE <n> command will do the same as the .SETUP <n> does, except that is does not store the <n> as the new default setup number. The .ZDS_RESTORE without parameters is not supported. This command is currently also working in the same way as the .TMATS GET <n> command. The reason for the implementation of this new command is to be independent from syntax interpretation of the IRIG-106 committee about the original command.

6.2.10 .TMATS

If a new TMATS is written to the recorder internal file representing the current setup – the one that would be returned by a .SETUP command without parameters – it will be immediately applied. In other words a .TMATS SAVE <n> will do an implied .SETUP <n> if <n> is the current setup

.TMATS GET has been extended with two vendor specific keywords:

.TMATS GET GENERATED will generate a standardized TMATS that contains the necessary (and only the necessary) keys for the currently installed modules and their setup and copy that to the temporary buffer.

Page 227: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-5

6.2.11 Overview .TMATS and .SETUP

Page 228: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-6

6.2.12 .ZDS_UDPFS

The .ZDS_UDPFS command shall be utilized for configuring, starting and stopping UDP uni-, multi-, or broadcast of recorded data in IRIG106 chapter 10 section 10.6 packet format over any IP interface from the recorder. The command has the following syntax:

.ZDS_UDPFS <Command> <IP> <Port> [Interface] <FileName> [>StartTime] [<StopTime] [Speed]

<ChannelIDList>

For example:

.ZDS_UDPFS START 11.59.17.1 2000 20120105140517_r0000f000.ch10 >2012-01-05_23:14:15 <2012-01-

06_01:23:10 M2 1-2 4 5-6

*

The parameters are:

<Command> mandatory START/STOP/SHUTTLE/SET/(none for get list) <IP> mandatory Destination IP address (only available with START/SHUTTLE) <Port> mandatory Port number (only available with START/SHUTTLE) [Interface] optional Interface number I0=”eth0”, I1=”eth1” <FileName> mandatory Record file to broadcast (only available with START/SHUTTLE) [>StartTime] optional Start time (only available with START/SHUTTLE) [<StopTime] optional Stop time (only available with START/SHUTTLE) [Speed] optional Transmit speed (possible characters F, D, M, B) (only available with

START/SHUTTLE/SET) <ChannelIDList> mandatory Channels (format like in .PUBLISH e.g. 1-2 4 5-6, ALL) (only available

with START/STOP/SHUTTLE)

The commands and there possible keywords:

.ZDS_UDPFS START <IP> <Port> [Interface] <FileName> [>StartTime] [<StopTime] [Speed]

<ChannelIDList>

.ZDS_UDPFS SHUTTLE <IP> <Port> [Interface] <FileName> [>StartTime] [<StopTime] [Speed]

<ChannelIDList>

.ZDS_UDPFS STOP <ChannelIDList>

.ZDS_UDPFS SET B<n>

Page 229: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-7

<Command> One of START/STOP/SHUTTLE/SET or nothing

<IP> and <Port> The <IP> and <Port> parameter defines the destination IP address and port number of the UDP file server.

[Interface] This is an optional parameter to select the ethernet interface. The format is I<n> where I0 = ‘eth0’ and I1 = ‘eth1’.

<FileName> Record <FileName> to stream. The dot command .ZDS_UDPFS accepts also the file name format FILE<nnnn>. The first file which matches the recoding number <nnnn> will be selected:

• Format 1: 20120105140517_r0000f000.ch10

• Format 2: FILE<nnnn>

[>StartTime] >yyyy-mm-dd_hh:mm:ss

[<StopTime] <yyyy-mm-dd_hh:mm:ss

<ChannelIDList> The <ChannelIDList> parameter can be:

• The keyword “ALL” meaning all available channel IDs.

• The decimal representation of one single channel ID IAW IRIG106 chapter 10 section 10.6.1.1.b

• A range of channel ID groups connected together by “-“ character, it selects all channels within the specified range.

• More than one channel ID or channel ID groups separated by white space characters.

[Speed] The optional [Speed] parameter:

F Flood, data is sent out as fast as possible.

M<n> Multiplied by n; data is sent out as original recorded bit rate multiplied by n.

D<n> Divided by n; data is sent out as original recorded bit rate divided by n.

B<n> Fixed bit rate n Mbit/s; data are sent out with a bit rate of <n> Mbit/s. It is the bit rate behind the channel filter.

The .ZDS_UDPFS command without any parameter returns the streaming channel IDs and their destinations.

Examples:

.ZDS_UDPFS SHUTTLE 11.59.17.15 2000 I1 FILE0 M1 ALL

*

.ZDS_UDPFS SHUTTLE 11.59.17.11 2000 I0 FILE0 M1 1-4 6 7 8

*

.ZDS_UDPFS

11.59.17.11 2000 I1 20120309101010_r0000f000.ch10 SHUTTLE M1 1-4 6-8

11.59.17.15 2000 20120309101010_r0000f000.ch10 SHUTTLE M1 ALL

*

.ZDS_UDPFS STOP 4-7

*

.ZDS_UDPFS

11.59.17.11 2000 I1 20120309101010_r0000f000.ch10 SHUTTLE M1 1-3 8

11.59.17.15 2000 20120309101010_r0000f000.ch10 SHUTTLE M1 1-3 8

*

.ZDS_UDPFS STOP 8

*

Page 230: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-8

.ZDS_UDPFS

11.59.17.11 2000 I1 20120309101010_r0000f000.ch10 SHUTTLE M1 1-3

11.59.17.15 2000 20120309101010_r0000f000.ch10 SHUTTLE M1 1-3

*

.ZDS_UDPFS STOP ALL

*

.ZDS_UDPFS

*

UDP Job Queues 6.2.12.1

The UDP file server is able to handle job queues. If the UDP file server is running and a new .ZDS_UDPFS START message is arriving with a different file name, instead of stopping the current task the new setup will be queued as a job. When the current streaming job is done the next job will be performed and so on. The files are in the same order streamed in which the orders are received (FIFO). If a file is totally drained this file will removed from the job queue. The maximum number of jobs in the queue is only limited by the system memory and should be in the range of several 100 jobs. Because of this job queue feature in contrast to the .PUBLISH command we overwrite always the list of destinations and channel IDs. A side effect of this, you can stop single channels with the START command, by omission of individual channel IDs. This is a contrast to the .PUBLISH command. The front-end UDP server (.PUBLISH) did not support the queuing feature.

Optional Parameters 6.2.12.2

The optional parameter B<n> is of global nature. The streaming speed will be set immediately for the current running job and for all next queued jobs if exist. With the SET command you are able to adjust the streaming speed without disruption of the data stream. B0 is allowed and acts as a pause in the data stream.

Note:

In the case, the interface is I0, the “I” parameter is suppressed in the output because it is the default!

6.2.13 .ZDS_REMTIME

.ZDS_REMTIME returns a decimal value <n>, which is the calculated remaining record time in seconds. The command currently does not support any parameter.

6.2.14 .ZDS_AUTOZERO

.ZDS_AUTOZERO starts auto zero for all channels (currently this command applies to MDR Strain Gage module types).

6.2.15 .ZDS_SHUNTCAL

.ZDS_SHUNTCAL starts shunt calibration for all channels (currently this command applies to MDR Strain Gage module types).

Page 231: DATaRec 4 Series

DATaRec-4 Programming Manual IRIG-106 Chapter 6 Remote Commands

Page 6-9

6.2.16 .ZDS_LIST_USER_DATA

.ZDS_LIST_USER_DATA shows all files located in the /data directory (partition) of the NAND flash file system. This command helps to verify the proper functioning of the DFUD (Delete Flash User Data) tool. Example: *.ZDS_LIST_USER_DATA

/data

0 bytes .log_enabled

/data/.config_snmp

4 bytes .config_faultLoggingLevel

4 bytes .config_faultNotificationLoggingLevel

661 bytes snmpd.conf

/data/log

272 bytes .opcounter

3421 bytes d4messages

/data/save_sets

5180 bytes save_set_000

*

6.2.17 .ZDS_PWRCTRL

.ZDS_PWRCTRL controls power of modules to which power control can be applied (like Tegra type modules, e. g. MVCR-SDI4, which have a power supervisor). The command needs parameters.

Example (list modules supporting power control, returned module numbers can be used with other commands):

.ZDS_PWRCTRL LIST

Module 0 Slot 3

*

Example (power off module 0, not specifying a module number means all power control capable modules): .ZDS_PWRCTRL OFF 0

*

Example (power on all power control capable modules): .ZDS_PWRCTRL ON

*

Example (power cycle (power off and immediately on) module 0): .ZDS_PWRCTRL CYCLE 0

*

6.3 Irig106 Remote Commands Error Codes

Table 52 Irig106 Remote Commands error codes

Error Description Conditions

00 INVALID COMMAND Command does not exist.

01 INVALID PARAMETER Parameter is out of range or wrog alphanumeric type.

02 INVALID MODE Command cannot be executed in the current state.

03 NO MEDIA Recording media is dismounted or not installed.

04 MEDIA FULL Command cannot be executed because there is no free space available on the recording media.

05 COMMAND FAILED Command failed to execute for any reason other than those listed above.

Page 232: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-1

7 Indexing Method

7.1 General Description The following is a implementation which allows for a IRIG 106-09 Chapter 10 recording to experience an abrupt recording shut down and lose the minimum of data while keeping the compliance. We support the indexing packet to index the time and event packets.

7.2 IRIG-106 Chapter 10 Event Packets

7.2.1 Event Types

We only support the event type “E”. Type “E” stands for external event. That makes us compatible with the DATaRec-3 series.

The TMATS equivalent:

R-x\EV\E:T; R-x\EV\T-1:E; R-x\EV\T-2:E; R-x\EV\T-3:E; R-x\EV\T-4:E; R-x\EV\T-5:E; R-x\EV\T-6:E; R-x\EV\T-7:E; R-x\EV\T-8:E;

We support 8 different external event sources. We call them “Discrete”, “Serial”, “Front”, “DiscreteOpen”, “FrontStart”, “FrontStop”, “AutoZero” and “ShuntCalibration”. We call the event “Discrete” if a change (contact closed) has been occurred at the “Event” contact remote interface. We call the event “DiscreteOpen” if the contact has been opened at the “Event” contact remote interface. A serial event occurs if an .EVENT <string> remote command arrives. It does not matter through which interface the remote command came. And finally a front event arises when on the front panel the “Event” button is pressed. The AutoZero and ShuntCalibration Events occurs by dot commands .ZDS_AUTOZERO, .ZDS_SHUNTCAL or by binary commands IDC_AUTOZERO_BROADCAST, IDC_SHUNT_CALIBRATION_BROADCAST or by contact remote inputs 3 and 4 if contact remote mode is set to Mode 10 (Strain Gage).

The TMATS equivalent:

R-x\EV\N:8; R-x\EV\ID-1:Discrete; R-x\EV\ID-2:Remote; R-x\EV\ID-3:Front; R-x\EV\ID-4:DiscreteOpen; R-x\EV\ID-5:FrontStart; R-x\EV\ID-6:FrontStop; R-x\EV\ID-7:AutoZero; R-x\EV\ID-8:ShuntCalibration; R-x\EV\D-1:Contact Remote Interface Closed; R-x\EV\D-2:Remote Interface; R-x\EV\D-3:Front Panel; R-x\EV\D-4:Contact Remote Interface Opened; R-x\EV\D-5:Front Panel Start; R-x\EV\D-6:Front Panel Stop; R-x\EV\D-7:Auto Zero Broadcast; R-x\EV\D-8:Shunt Calibration Broadcast;

Page 233: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-2

Note:

The event source ID-4 “DiscreteOpen” is only activated if the Bit 2 is set in op_mode2 parameter of the IDC_LINK_MODULE_PARAMETERS (see 4.3.8.1). If this feature is activated the total event counter counts twice as fast as normal for the contact remote event.

The event source ID-5 “FrontStart” and source ID-6 “FrontStop” are only enabled if the Start/Stop Event Mode is activated (only MDR, see Chapter 7.2.6).

7.2.2 Event Priority

We support only priority 3. In priority 3 events are only captured during recordings and not captured between recordings.

The TMATS equivalent:

R-x\EV\P-1:3; R-x\EV\P-2:3; R-x\EV\P-3:3; R-x\EV\P-4:3; R-x\EV\P-5:3; R-x\EV\P-6:3; R-x\EV\P-7:3; R-x\EV\P-8:3;

7.2.3 Event Mode

There is no mode defined for event type “E”.

7.2.4 IRIG-106 Chapter 6 .EVENT Remote Command

We support the .EVENT command as it is defined in IRIG-106 Chapter 6.8.3.12. In addition to that we capture this remote event (event ID = 2) together with the exact time stamp and insert an event packet into the recording.

7.2.5 Structure of IRIG-106 Chapter 10 Event Packets

31 24 23 16 15 8 7 0

+0 +1 +2 +3

Channel ID (0x00) Sync Pattern (0xeb25)

Packet Length

Data Length

Data Type (0x02) Packet Flag (0x00) Sequence Number Data Type Version (0x03)

Relative Time Counter (LSLW)

Header Checksum Relative Time Counter (MSLW)

I Reserved (0x000) REEC

Intra-Packet Time Stamp for Event 1 (LSLW)

Intra-Packet Time Stamp for Event 1 (MSLW)

(Optional) Intra-Packet Data Header for Event 1 (LSLW)

(Optional) Intra-Packet Data Header for Event 1 (MSLW)

Res (0x0) O Event Count Event Number

.

.

.

Page 234: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-3

Intra-Packet Time Stamp for Event n (LSLW)

Intra-Packet Time Stamp for Event n (MSLW)

(Optional) Intra-Packet Data Header for Event n (LSLW)

(Optional) Intra-Packet Data Header for Event n (MSLW)

Res (0x0) O Event Count Event Number

Intra-Packet Data Header (I=0) (Bit31)

Indicates the presence of the Intra-Packet Data Header. 0 = Index Intra-Packet Data Header Not Present 1 = Index Intra-Packet Data Header Present The Intra-Packet Data Header feature is not supported.

Reserved (0) (Bits 30-12) Reserved for future growth and shall be zero filled.

Recording Event Entry Count (REEC) (Bits 11-0)

Are an unsigned binary that identifies the count of recording event entries included in the packet.

Intra-Packet Time Stamp for Event (8 Bytes)

Indicates the time tag of the Recording Event Entry. It is the 48-bit Relative Time Counter that corresponds to the Event Entry with bits 31 to 16 in the second long word zero filled. This will be the Packet Header Relative Time Counter value.

(Optional) Intra-Packet Data Header for Event (8 Bytes)

The Intra-Packet Data Header feature is not supported.

Reserved (0) (Bits 31-29) Reserved for future growth and shall be zero filled.

Event Occurrence (O=1) (Bit 28) Indicates Event Occurrence State. 0 = Indicates the event occurred after the .STOP command and before

the .RECORD command. 1 = Indicates the event occurred after the .RECORD command and

before the .STOP command. Only mode O=1 is supported.

Event Count (Bits 27-12) An unsigned binary that identifies the count of up to 65,535 occurrences of an individually defined event (as defined by Event Number in the following paragraph). Event occurrence counts shall begin at 0x0 for the first occurrence of an individual event type (identified by the Event Number). The event count can roll over to 0x0 and begin to count up again. The event count applicability is for each Event Period of Capture as defined in IRIG-106 Chapter 10 paragraph 10.6.7.3c. The Event Count shall start from 0x0 at the beginning of each Event Period of Capture incrementing at n+0x1 to 0xFFFF for each event occurrence. If the event count reaches 0xFFFF within the Event Period of Capture it shall roll over to 0x0.

Event Number (Bits 11-0) An unsigned binary that identifies 4096 individual events types defined in the corresponding setup record Recording Event Number. The Event Number shall begin at 0x0 for the first event type defined in the setup record and increment n+1 for the next event type defined in the setup record.

7.2.6 Start/Stop Event Mode Operation on MDR

The MDR Start/Stop Event Mode Operation can be selected by the link module parameter event_mode . It provides the user an ability to specifically mark times of interest during a mission. The mission runs in the Chapter 10 recording are identified by a “FrontStart” event at the beginning of the time of interest and a

Page 235: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-4

“FrontStop” event to denote the end time of interest. The “FrontStop” event will be generated automatically after the “FrontStart” event has occurred and a pre-defined Start/Stop timer period runs down. In the manual mode (man), a second push of the MDR front panel EVENT button will create a “FrontStop” event.

The events will be counted so that both a “FrontStart” and “FrontStop” event will have the same event number. The “FrontStart” and “FrontStop” events will be inserted to denote the beginning and the end of the event / mission run. In other words, a “FrontStart” event count #1 will also have a “FrontStop” event count #1 if a timed or manual “FrontStop” event occurs before the recording is stopped. The next mission run will be denoted by the next “FrontStart” and “FrontStop” event pair with count #2 and so on. If the recording is stopped after the “FrontStart” event and before the “FrontStop” event has been generated, it will be missing from the recording.

When the Start/Stop Mode is active, events can only be inserted when the recorder is in record mode. In stop mode events will not be recorded. The only active event source is the MDR front panel EVENT button, the Serial, Ethernet, and External Contact Remote Discrete events are disabled.

In record mode, the duration of the timer is selectable from the MDR front panel by pressing the RECORD button. The first push of the RECORD button will place the recorder in record mode. Subsequent pressing of the RECORD button toggles between: 10s, 20s, 30s, 40s, 50s, 60s and man (manual mode). The “FrontStart”

event will be inserted and the Start/Stop timer gets active when the EVENT button is pressed. In manual mode the “FrontStop” event is generated by a second EVENT button. With this together the manual mode can be considered as an infinite length timer. If the Start/Stop timer is running, the “FrontStop” event can manually be activated by pressing the EVENT button (this interrupts the Start/Stop timer). Furthermore the RECORD button will be ignored if a Start/Stop timer is running. Thus the Start/Stop Event Mode settings are disabled while an Start/Stop timer is active.

Once the Start/Stop Event Mode Operation is selected, the standard display screen of the MDR front panel:

S T P 4 h 2 1 2 : 3 4 : 5 6 0 1 2

Status Rem.T. Time Event

Will change to:

S T P 3 0 s 1 2 : 3 4 : 5 6 0 0 0

Status Duration Time Run

It means that in Start/Stop Event Mode the duration time will be displayed instead of the standard remaining time display. The event field shows the number of the “FrontStart” events. The display starts with 000. At activating the first event the event number changes from 000 to 001. The “FrontStop” events are not displayed. Between “FrontStart” and “FrontStop” event the duration field shows “run”.

Example:

S T P 3 0 s 1 2 : 3 4 : 5 6 0 0 0

RECORD button pressed:

R E C 4 0 s 1 2 : 3 4 : 5 6 0 0 0

EVENT button pressed (“FrontStart” event):

R E C r u n 1 2 : 3 4 : 5 6 0 0 1

40 second time passed (automatic “FrontStop” event):

R E C 4 0 s 1 2 : 3 4 : 5 6 0 0 1

RECORD button pressed 3x:

R E C m a n 1 2 : 3 4 : 5 6 0 0 1

EVENT button pressed (“FrontStart” event):

R E C r u n 1 2 : 3 4 : 5 6 0 0 2

EVENT button pressed again (manual “FrontStop” event):

R E C m a n 1 2 : 3 4 : 5 6 0 0 2

Page 236: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-5

(Time display will be incremented in between)

If a new recording is starting, the event generation is starting again with event number 000.

7.3 IRIG-106 Chapter 10 Index Packets Computer Generated Data Packets Format 3, Recording Index. This defines an index packet for an individual recording file used for direct access into the recording file. Recording Index packets will be enabled when Recording Event packets are enabled. We support the indexing packet to index the time and event packets. The index type is “T”. “T” stands for time. The index interval time is 1s.

The TMATS equivalent:

R-x\IDX\E:T; R-x\IDX\IT:T; R-x\IDX\ITV:1000000;

There are two types of index packets. Root Index Packets and Node Index Packets.

7.3.1 Node Index Packets

Node Index Packets contain Node Items structures containing information about the location of data packets throughout the recording. The index entry exists for each Time Data Packet and Event Data Packet in the recording. Node Index Packets are produced at the Time Packets. So the Node Index Packet rate is the same as the Time Packet rate (e.g. 1s in the case of RTC or IRIG-B time source). A single Node Index Packet will always point to the last Time Packets and if exists to the last Event Packets of the last elapsed interval. For more detail see 7.3.2.1 to 7.3.2.3. If the number of entries in the Node Index packet would exceeds 128 then a Major Root Index packet will be inserted (refer 7.3.2.1).

Structure of IRIG-106 Chapter 10 Node Index Packets 7.3.1.1

31 24 23 16 15 8 7 0

+0 +1 +2 +3

Channel ID (0x00) Sync Pattern (0xeb25)

Packet Length

Data Length

Data Type (0x03) Packet Flag (0x00) Sequence Number Data Type Version (0x03)

Relative Time Counter (LSLW)

Header Checksum Relative Time Counter (MSLW)

T F I Reserved (0x000) Index Entry Count

(Optional) Node File Size (LSLW)

(Optional) Node File Size (MSLW)

Intra-Packet Time Stamp for Node Index 1 (LSLW)

Intra-Packet Time Stamp for Node Index 1 (MSLW)

(Optional) Intra-Packet Data Header for Node Index 1 (LSLW)

(Optional) Intra-Packet Data Header for Node Index 1 (MSLW)

Reserved (0) Data Type Channel ID

Data Packet Offset Index 1 (LSLW)

Data Packet Offset Index 1 (MSLW)

.

.

Page 237: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-6

.

Intra-Packet Time Stamp for Node Index n (LSLW)

Intra-Packet Time Stamp for Node Index n (MSLW)

(Optional) Intra-Packet Data Header for Node Index n (LSLW)

(Optional) Intra-Packet Data Header for Node Index n (MSLW)

Reserved (0) Data Type Channel ID

Data Packet Offset Index n (LSLW)

Data Packet Offset Index n (MSLW)

Index Type (T=1) (Bit 31) Indicates the type of index packet. 0 = Root Index (see 7.3.2) 1 = Node Index

Node File Size Present (F=0) (Bit 30)

Indicates if the file size at the time the index packet was created is present. 0 = File Size Not Present 1 = File Size Present The Node File Size feature is not supported (F=0).

Intra Packet Data Header (I=0) (Bit 29)

Indicates the presence of the Intra-Packet Data Header. 0 = Index Intra-Packet Data Header Not Present 1 = Index Intra-Packet Data Header Present The Intra Packet Data Header feature is not supported (I=0).

Reserved (0) (Bits 28-16) Reserved for future growth and shall be zero filled.

Index Entry Count (Bits 15-0) Indicates the unsigned binary value of the number of index entries included in the packet. An integral number of complete index entries will be in each packet.

(Optional) Node File Size (8 Bytes) This feature is not supported.

Intra-Packet Time Stamp (8 Bytes) Indicates the time tag of the Recording Index Entry. It is the 48-bit Relative Time Counter that corresponds to the Index Entry, with bits 31 to 16 in the second long word zero filled. For Node Index Packets this corresponds to the first bit in the packet body of the packet associated with the Node Index Item.

(Optional) Intra-Packet Data Header (8 Bytes)

This feature is not supported.

Reserved (0) (Bits 31-24) Reserved for future growth and shall be zero filled.

Data Type (Bits 23-16) An unsigned binary that identifies a value representing the type and format of the data packet associated with this Node Index Item.

Channel ID (Bits 15-0) An unsigned binary that identifies a value representing the Packet Channel ID for the data packet associated with this Node Index Item.

Data Packet Offset (8 Bytes) An unsigned binary that identifies the zero based byte offset from the beginning of the recording file to the point in the file at which the Data Packet Sync Pattern (0xEB25) begins for this Node Index Packet item.

Page 238: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-7

7.3.2 Root Index Packets

Root Index Packets contain zero based byte offset entries that are the beginning of Node Index Packets. The last entry will be an offset to the beginning of a previous Root Index Packet if there are more than one Root Index Packets, or to the beginning of the Root Index Packet itself, if this Root Index Packet is either the first Root Index Packet of the recording or the only Root Index Packet. Root Index Packets will not contain filler in the packet trailer and will contain a 32-bit data checksum in the packet trailer. There are to different types of Root Index Packets, minor and major Root Index Packets. There is no structural difference or specific identifier for major/minor root packets in IRIG106 Chapter 10. They are only referenced as such in this methodology to provide functional identifications.

Major Root Index Packets 7.3.2.1

Major Root Index Packets are produced at a given frequencies. The major Root Index Packet rate is 60s and located at Time Packets. If the number of entries in the Node Index would exceeds 128 we force inserting a Node Index Packets followed by a Major Root Index Packets, even when the 60 second time frame was not reached. The first Root Index Packet in a recording is a major root which contains a self pointer. Between two major Root Index Packets are the minor Root Index Packets. A major Root Index Packet is the last packet in a recording. Major Root Packets are pointing to the last Node Index Packet and to the previous major Root Packets. They do not point to minor Root Index Packets.

Minor Root Index Packets 7.3.2.2

Minor Root Index Packets are produced at the Time Packets. So the minor Root Index Packets rate is the same as the Time Packet rate. Minor Root Index Packets points onto the same things as the major Root Index Packets are doing it. The only difference is that no major Root Index Packet is pointing on them. Reference the following packet diagram:

Major/Minor Root Index Packet Concept 7.3.2.3

The aim is for the case of abrupt interruption of the recording, losing as little data as possible without injuring the required index structure of IRIG-106 Chapter 10. As can be seen in the previous figure, it does not matter where a recording is interrupted abruptly, and at worst case only lose data on a period equal to the Time Packet rate. The last packet would be a Root Index Packet per the requirements of IRIG106-09 Chapter 10.

When recursively traversing the root chain if the recording ended on a major Root Index Packet, it would point to the next major Root Index Packet and so on until the last root in the recursive chain (first Root Index Packet in the recording) which points to itself. If the recording stops on a minor Root Index Packet it contains a pointer to the previous major which again provides recursive traversal of the major root chain.

= Node Packets = Event Packets = Time Packets

= TMATS Packet = Major/Minor Root Packets

Minor Root Packet Rate = Time Packet Rate

Major Root Packet Rate Time Packet Rate

= Data Packets

Page 239: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-8

As a further point to this concept is a dedicated handling of the Node Index Packets. All Node Index Packets produced after a major Root Index Packet includes a growing number of entries for the previous time period. Therefore the last Node Index Packet before the major Root Index Packet will contain all entries for all Time and Event Packets after the previous major Root Index Packet. The next Node Index Packet will begin a new count of Time and Event Packet entries (see figure 2.1).

Structure of IRIG-106 Chapter 10 Root Index Packets 7.3.2.4

31 24 23 16 15 8 7 0

+0 +1 +2 +3

Channel ID (0x00) Sync Pattern (0xeb25)

Packet Length

Data Length

Data Type (0x03) Packet Flag (0x00) Sequence Number Data Type Version (0x03)

Relative Time Counter (LSLW)

Header Checksum Relative Time Counter (MSLW)

T F I Reserved (0x000) Index Entry Count

(Optional) Root File Size (LSLW)

(Optional) Root File Size (MSLW)

Intra-Packet Time Stamp for Node Index 1 (LSLW)

Intra-Packet Time Stamp for Node Index 1 (MSLW)

(Optional) Intra-Packet Data Header for Node Index 1 (LSLW)

(Optional) Intra-Packet Data Header for Node Index 1 (MSLW)

Node Index Offset 1 (LSLW)

Node Index Offset 1 (MSLW)

.

.

.

Intra-Packet Time Stamp for Node Index n (LSLW)

Intra-Packet Time Stamp for Node Index n (MSLW)

(Optional) Intra-Packet Data Header for Node Index n (LSLW)

(Optional) Intra-Packet Data Header for Node Index n (MSLW)

Node Index Offset n (LSLW)

Node Index Offset n (MSLW)

Intra-Packet Time Stamp for Root Index (LSLW)

Intra-Packet Time Stamp for Root Index (MSLW)

(Optional) Intra-Packet Data Header for Root Index (LSLW)

(Optional) Intra-Packet Data Header for Root Index (MSLW)

Root Index Offset (LSLW)

Root Index Offset (MSLW)

Page 240: DATaRec 4 Series

DATaRec-4 Programming Manual Indexing Method

Page 7-9

Index Type (T=0) (Bit 31) Indicates the type of index packet. 0 = Root Index 1 = Node Index

Root File Size Present (F=0) (Bit 30)

Indicates if the file size at the time the index packet was created is present. 0 = File Size Not Present 1 = File Size Present The Root File Size feature is not supported (F=0).

Intra Packet Data Header (I=0) (Bit 29)

Indicates the presence of the Intra-Packet Data Header. 0 = Index Intra-Packet Data Header Not Present 1 = Index Intra-Packet Data Header Present The Intra Packet Data Header feature is not supported (I=0).

Reserved (0) (Bits 28-16) Reserved for future growth and shall be zero filled.

Index Entry Count (Bits 15-0) Indicates the unsigned binary value of the number of index entries included in the packet. An integral number of complete index entries will be in each packet.

(Optional) Root File Size (8 Bytes) This feature is not supported.

Intra-Packet Time Stamp for Node Index (8 Bytes)

Indicates the time tag of the Recording Index Entry. It is the 48-bit Relative Time Counter that corresponds to the Index Entry, with bits 31 to 16 in the second long word zero filled. For Node Index Packets this corresponds to the first bit in the packet body of the packet associated with the Node Index Item.

(Optional) Intra-Packet Data Header for Node Index (8 Bytes)

This feature is not supported.

Node Index Offset (8 Bytes) An unsigned binary that identifies the zero based byte offset from the beginning of the recording file to the point in the file at which the Data Packet Sync Pattern (0xEB25) begins for this Node Index Packet item.

Intra-Packet Time Stamp for Root Index (8 Bytes)

Indicates the time tag of the Recording Index Entry. It is the 48-bit Relative Time Counter that corresponds to the Index Entry, with bits 31 to 16 in the second long word zero filled. For Node Index Packets this corresponds to the first bit in the packet body of the packet associated with the Node Index Item.

(Optional) Intra-Packet Data Header for Root Index (8 Bytes)

This feature is not supported.

Root Index Offset (8 Bytes) An unsigned binary that identifies the zero based byte offset from the beginning of the recording file to the point in the file at which the previous Root Index Packet begins, if there are more than one (1) Root Index Packets or to itself, if it is the first or only Root Index Packet.

Page 241: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-1

8 Gigabit Ethernet Interface

8.1 General Description This chapter describes the communication primitives used to access the DATaRec

® 4 devices over the Ethernet

network interface. The network access is supported via reliable (request–answer–acknowledge) 10/100/1000 Base-T connection by using the TCP/IP protocol, and also unreliable via UPD protocol. The interface allows remote control of the DATaRec

® 4 systems and supports data transfer in Front-End mode.

The network feature will work up to the bandwidth limitation of the Ethernet. Current measurements resulted in that we reach a data transmission rate of approx. 600 Mbit/s for TCP/IP connections.

8.2 Addressing An IP address and routing information can be assigned statically to the recorder (see IDC_LINK_MODULE_PARAMETERS). Static IP addresses are sufficient in the environment we use the system – usage of dynamic addressing like DHCP would cause additional issues like finding algorithms over network for the system. The default IP address is 11.59.19.202 (Net Mask 255.255.240.0).

The DATaRec® 4 system remote control and the data access are accessible by different ports and protocols. The

proposed port assignments are also static. The proposed static port numbers are:

Port Protocol Description

80 HTTP Web Server with Java remote control applet (D4Recorder)

5001 TCP/IP TCP/IP port for remote access

5002, 5007 TCP/IP TCP/IP port for data access

5006 UDP UDP port for streaming live UDP data in IRIG-106 Chapter 10 Format

5008 UDP UDP port for file server. The UDP file server can be used to send existing recordings via UDP stream. The data format is IRIG-106 Chapter 10 conform.

8.3 Big-Endian "Big-Endian" Describes a computer architecture in which, within a given multi-byte numeric representation, the most significant byte has the lowest address (the word is stored ‘big-end-first’). Most processors, including the IBM 370 family, the PDP-10, the Motorola microprocessor families, and most of the various RISC designs are big-endian. Big-endian byte order is also sometimes called network order:

Byte3 Byte2 Byte1 Byte0

Base Address+0 -> Byte3 Base Address+1 -> Byte2 Base Address+2 -> Byte1 Base Address+3 -> Byte0

8.4 Web Server You can reach the web server through the well known port 80. The HTTP protocol is used for the transmission. If the system is well configured simply enter http://11.59.19.202 into your normal web browser (Firefox, Microsoft Internet Explorer, Netscape …) to reach the web server of the link module. This is the home page of the system.

8.4.1 Java Applet D4Recorder

On the homepage of the link module you will find the java applet D4Recorder. With this applet you are able to remote control the system and set up the module and channel parameters. The SUN Java Run Time Environment Version 6 (1.6) or higher is needed to get the applet running. For more information about the D4Recorder Java tool please refer to the ‘JavaSetupManual’ documentation.

Page 242: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-2

8.5 Ethernet Remote Control Interface

You can reach the remote server through the port 5001. The TCP/IP protocol is used for the transmission. The remote server port uses a bi-directional connection. Any character sequence you send is executed as a command

by the DATaRec® 4 system. The generated answers are sent back over the same connection.

8.6 Front-End Data Access Interface via TCP/IP The port number for this Server is 5002. The connection to the data server via TCP/IP is reliable point to point connection, therefore after establishing a connection over TCP/IP data port, checked data streaming can be achieved.

Until the connection exists, the data structure will never be violated. If the physical cable is disconnected or the connection disturbed the logical TCP/IP connection will either resume undisturbed or if the connection was forcefully closed after a timeout a reconnect is anyway needed which will re-synchronize the frames.

At opening the TCP/IP connection the data streaming is starting automatically with the most recent data. As default all channels are selected to be sent.

8.7 UDP Front-End Data Access Interface The port number for this server is 5006. This server is sending the data packets synchronously to the IRIG-106 Chapter10 data format. Please refer to IRIG-106 Chapter 10.3.11 ‘Recorder Data Streaming Transport’. In contrast to the normal TCP/IP server at port 5002, this server can be started automatically, without using a software application. To have this feature you have to set the Bit1 in op_mode of the link module parameters (refer 4.3.8.1 IDC_LINK_MODULE_PARAMETERS) and saved it into the default save set (=0). Next time when the system is booted the UDP server start to stream automatically. To configure the front-end data UDP server see 4.3.11.15 (IDC_UDPB_PARAMETERS).

In addition it is possible to control this server by sending an UDP START or STOP command. Each UDP command starts with an 8-byte header, followed by the additional parameters. The Byte order is "Big-Endian".

8.7.1 Start Front-End Data Server via UDP Message

In addition to the Bit1 in op_mode of the link module parameters (refer 4.3.8.1) the system can be put in data streaming mode by sending a UDP START command packet. From that moment on the system will emit data packets on his own. Because the UDP protocol is an link less connection the data streaming continues even when the connection between the system and data sink is broken

Page 243: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-3

To start the front-end data server the following UDP command has to be sent:

Byte 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

0 C/D Res. command (0)

2 tmats_packet_interval

4 High additional_parameter_length

(16 + 2 * n)

6 Low

8 High max_data_packet_size (bytes)

10 Low

12 High destination_port

(e.g. 4000)

14 Low

16 High destination_ip_address

(e.g.10.10.10.255 = 0x0a0a0aff)

18 Low

20 High number_of_channel_ids

(n)

22 Low

24 1. channel_id

… …

22+m n. channel_id

C/D This field specified whether it is a command or data packet. Set C/D to 1 to indicate as command.

command This field specified the operation code. Set to 0 for start streaming command.

tmats_packet_interval TMATS packet interval in seconds. If 0 no TMATS packet is generated. If this feature is turned on (> 0) and the interval has elapsed, then every time a IRIG-106 Ch10 Computer Generated TMATS packet is inserted into the data stream.

additional_parameter_length This field specifies the length of the additional parameters. It can be 0, 16 or 16 + 2*n.

max_data_packet_size: This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

destination_port: This field specifies the destination port to that the UDP packets will be sent.

Page 244: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-4

destination_ip_address: Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, uincasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

number_of_channels_ids: Number of channel ID´s whose packages are to be sent. If 0 all packets are sent. (no filter).

channel_id It is a positive list. Only the packets are sent, whose channel ID is located in this list.

m = 2*n in bytes

This command assumes IPV4 addressing. New command will be added later to support IPV6 addressing if needed. The UDP data server can send the data to any specified port and IP address including multicast, unicast and broadcast addresses.

8.7.2 Stop Front-End Data Server via UDP Message

To stop data streaming the following command has to be sent:

Byte 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

0 C/D Res. command (1)

2 (0)

4 High Additional Parameter Length (0)

6 Low

C/D This field specified whether it is a command or data packet. Set C/D to 1 to indicate as command.

command This field specified the operation code. Set to 1 for stop streaming command.

additional_parameter_length This field specifies the length of the additional parameters. For the STOP command it hast to be 0.

8.7.3 Start Front-End Data Server with Flush Front-End Buffers via UDP Message

This command first flushes the system front-end buffer before the UDP server starts to stream the data. The command code is 3. All other parameters are identical with the parameters for the START command at 8.7.1 (Start Front-End Data Server via UDP).

Page 245: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-5

8.8 Recorded File Access Interface via UDP

The port number for this server is 5008. This server is sending the data packets from 8.8.1.1an existing, previously recorded file, synchronously to the IRIG-106 Chapter10 data

format. Please refer to IRIG-106 Chapter 10.3.11 ‘Recorder Data Streaming

Transport’. To control the UDP recorded file server see 4.3.11.16 Extended UDP

Front-End Data Server Control

Associated IDC: IDC_UDPB_EXT_PARAMETERS

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

The source port of this server is 5006. For information please see 8.7 UDP Front-End Data Access Interface. This IDC is the replacement for the obsolate IDC_UDPB_PARAMETERS command.

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 max_udp_size (uint32)

+4 tmats_interval (by default = 0) ifr (uint8) op_mode (uint8)

+8 reserved2 (0) (uint32)

+12 reserved3 (0) (uint32)

+16 nof_subcomponents (uint32)

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+4 destination_port (default = 2000) (uint32)

+8

… name (string)

+36 }

UDP IRIG-106 chapter 10 front-end data server configuration.

max_udp_size (uint32): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled.

ifr This field specifies the ethernet interface resource to be use for sending the UDP data stream. Whereat 0 specifies the first interface “eth0”, 1 the second interface “eth1” and so on. A value of 0xff (=255) means that the choice of the interface is done according to the routing table.

Page 246: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-6

op_mode (uint8) Operation mode bits:

b0-b6 = Not used.

b7 = bUDPM_EXT_CTRL: When this bit is set the whole IDC message will be ignored. That means the control of the UDP front-end server can then be done by the dot command .PUBLISH. In other words, if this bit is set and a save setup is performed then this IDC acts as a placeholder in this setup. The target is that a restore setup should not disturb a potential already running UDP front-end server.

nof_subcomponents (uint32): Number of following subcomponent entries structure. The maximum number of subcomponents is 16.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

name (string): Unique name of a channel ID list (data stream definition). Names are supposed to be up to 32 byte long human readable strings, shorter names should be padded by zeroes. Only the packets are sent, whose channel ID is included in this channel ID list (see 4.3.14 Data Stream Definitions).

This binary command is exacly working like the previous command (4.3.11.15 UDP Front-End Data Server Control) with only one exception. Instead of the channel ID entry the name of a channel ID list has to be entered here (see 4.3.14 Data Stream Definitions). The channel ID list name must be specified in the system. Up to 16 lists can be specified here (nof_subcomponents <=16).

When front-end data streaming started, the output data will not form a valid Chapter 10 file. It will not start with TMATS configuration packet followed by time – but the data sink will simply “join” to the data transfer stream. For more information about the data structure please see the documentation of IRIG-106 Chapter 10.3.11.1. If the tmats_inteval is activated (>0), the captured UDP stream can easily form a valid IRIG-106 Chapter 10 file by removing the first leading data up to the first TMATS packet.

Note:

This parameter is stored together with the setup. This IDC_UDPB_EXT_PARAMETERS command has higher priority as the obsoluate IDC_UDPB_PARAMETERS command. It means if the “old” IDC is not found in a setup the new method is forced.

UDP Recorded File Server Control (IDC_UDP_FILE_SERVER).

In addition it is possible to control this server by sending an START or STOP UDP command packet. Each UDP command starts with an 8-byte header, followed by the additional parameters. The Byte order is "Big-Endian".

8.8.2 Control Recorded File Server via UDP Message

The system can be put in recorded file streaming mode by sending the following binary 8.8.2.1message. The binary control message structure is exactly the same massage what is

used to control the server by using the binary remote message. Please refer to 4.3.11.16

Extended UDP Front-End Data Server Control

Associated IDC: IDC_UDPB_EXT_PARAMETERS

Supported OIDs: OID_GET, OID_SET, OID_ARM

Returned OIDs: OID_ACK, OID_INFO, OID_ERROR

Target Addresses: Link Module

The source port of this server is 5006. For information please see 8.7 UDP Front-End Data Access Interface. This IDC is the replacement for the obsolate IDC_UDPB_PARAMETERS command.

Page 247: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-7

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 max_udp_size (uint32)

+4 tmats_interval (by default = 0) ifr (uint8) op_mode (uint8)

+8 reserved2 (0) (uint32)

+12 reserved3 (0) (uint32)

+16 nof_subcomponents (uint32)

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+4 destination_port (default = 2000) (uint32)

+8

… name (string)

+36 }

UDP IRIG-106 chapter 10 front-end data server configuration.

max_udp_size (uint32): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled.

ifr This field specifies the ethernet interface resource to be use for sending the UDP data stream. Whereat 0 specifies the first interface “eth0”, 1 the second interface “eth1” and so on. A value of 0xff (=255) means that the choice of the interface is done according to the routing table.

op_mode (uint8) Operation mode bits:

b0-b6 = Not used.

b7 = bUDPM_EXT_CTRL: When this bit is set the whole IDC message will be ignored. That means the control of the UDP front-end server can then be done by the dot command .PUBLISH. In other words, if this bit is set and a save setup is performed then this IDC acts as a placeholder in this setup. The target is that a restore setup should not disturb a potential already running UDP front-end server.

nof_subcomponents (uint32): Number of following subcomponent entries structure. The maximum number of subcomponents is 16.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

name (string): Unique name of a channel ID list (data stream definition). Names are supposed to be up to 32 byte long human readable strings, shorter names should be padded by zeroes. Only the packets are sent, whose channel ID is included in this channel ID list (see 4.3.14 Data Stream Definitions).

This binary command is exacly working like the previous command (4.3.11.15 UDP Front-End Data Server Control) with only one exception. Instead of the channel ID entry the name of a channel ID list has to be entered

Page 248: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-8

here (see 4.3.14 Data Stream Definitions). The channel ID list name must be specified in the system. Up to 16 lists can be specified here (nof_subcomponents <=16).

When front-end data streaming started, the output data will not form a valid Chapter 10 file. It will not start with TMATS configuration packet followed by time – but the data sink will simply “join” to the data transfer stream. For more information about the data structure please see the documentation of IRIG-106 Chapter 10.3.11.1. If the tmats_inteval is activated (>0), the captured UDP stream can easily form a valid IRIG-106 Chapter 10 file by removing the first leading data up to the first TMATS packet.

Note:

This parameter is stored together with the setup. This IDC_UDPB_EXT_PARAMETERS command has higher priority as the obsoluate IDC_UDPB_PARAMETERS command. It means if the “old” IDC is not found in a setup the new method is forced.

UDP Recorded File Server Control. The START command is reflected by an non empty destination address list (nof_subcomponents>0). To STOP the server the destination address list must be empty (nof_subcomponents=0). If the server is started from that moment on the system will emit data packets on his own. Because the UDP protocol is an link less connection the data streaming continues even when the connection between the system and data sink is broken

To control the recorded file server the following UDP command packet has to be sent:

bits 15 (msb) 8 7 (lsb) 0

bytes +0 +1

+0 max_udp_size (uint16)

+2 tmats_interval (by default = 0) (uint16)

+4 op_mode (uint8) speed_mode (uint8)

+6 speed (uint16)

+8 reserved1 (0) (uint16)

+10 reserved2 (0) (uint16)

+12 reserved3 (0) (uint16)

+14 reserved4 (0) (uint16)

+16 start_year (uint16)

+18 start_month (uint8) start_day (uint8)

+20 start_hour (uint8) start_minute (uint8)

+22 start_second (uint8) start_10ms (uint8)

+24 stop_year (uint16)

+26 stop_month (uint8) stop_day (uint8)

+28 stop_hour (uint8) stop_minute (uint8)

+30 stop_second (uint8) stop_10ms (uint8)

+32 { file_name (512 bytes)

Page 249: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-9

+542 }

+544 msb

nof_subcomponents (uint32)

+546 lsb

+0 { destination_ip ( by default = 11.59.31.255) (uint32)

+2 lsb

+4 msb

destination_port (default = 2000) (uint32)

+6 lsb

+8 msb

nof_channel_ids (uint32)

+10 lsb

+0 { channel_id (def. = -1 for no filter) (uint16)

+2 reserved5 (0) (uint16) }}

max_udp_size (uint16): This field specifies the maximum payload size of a UDP packet including the IRIG-106 Transfer Header with a size of 4 or 12 bytes (see IRIG-106-09 chapter 10.3.11.1).

tmats_interval (uint16): This field specifies the interval with which the TMATS packets are inserted into the UDP data stream. The unit here is in seconds. If the value is 0 this feature is disabled. In the case that a smaller bit rate compared to the original bit rate is desired (divider > 1 or bit rate < original bit rate), we can not guarantee that the given interval can be met. This is related to the requirement, that the TMATS packets need to be always immediately in front of a time packet (IRIG106 Ch10).

op_mode (uint8): Operation mode is a bit mask with the following bits:

b0 = bUDPM_ENABLE: This is the Enable bit for the UDP file server. If this bit is set then the UDP file server will be started. If this bit is cleared then the UDP file server will be stopped..

b1 = bUDPM_START_TIME_VALID: If this bit is set the START time entries are valid.

b2 = bUDPM_STOP_TIME_VALID: If this bit is set the STOP time entries are valid.

b3 = bUDPM_LOOP: When this bit is set and the end of file or the STOP time is reached, what ever comes first, the server will jump back to the beginning of the file and will start send the data from there. The START/STOP time will be considered.

b4 = bUDPM_FRONT_END: When this bit is set, the file_name, the bUDPM_LOOP bit, the speed entry and the START/STOP time values are ignored. The data do not come anymore from a file, instead of this the front-end data will be sent.

Page 250: DATaRec 4 Series

DATaRec-4 Programming Manual Gigabit Ethernet Interface

Page 8-10

speed_mode (uint8): The speed_mode is a enumeration entry and determines how the speed parameter is interpreted:

0 = eUDPS_FLOOD: The speed entry is ignored and the date are send out as fast as possible.

1 = eUDPS_MULTIPLIER: The speed entry is interpreted as an multiplier factor of the original recorded bit rate. A speed value of 1 means that the data are sent at the original speed.

2 = eUDPS_DIVIDER: The speed entry is interpreted as an divider factor of the original recorded bit rate. A speed value of 2 means that the data are sent at the half of the original speed.

3 = eUDPS_BITRATE: The speed entry is interpreted as a bit rate value in Mbit/s. In this mode the server tries to send the data with this specified bit rate. This works only up to the maximum achievable bit rate of the system.

speed (uint16): The interpretation of this field depends on the speed_mode entry. Please refer above.

start_... : Start streaming the recorded file beginning at this time stamp position. If this time stamp is not found in the selected file (file_name) this field will be ignored. If these fields are not to be used, bUDPM_START_TIME_VALID must be cleared in op_mode parameter.

stop_... : Stop streaming the recorded file at this time stamp position. If this time stamp is not found in the selected file (file_name) this field will be ignored. If these fields are not to be used, bUDPM_STOP_TIME_VALID must be cleared in op_mode parameter.

file_name (char): There are 512 characters reserved for the file name. Since the file name is unique, the media ID are not specified. For the file name format see 4.3.26.1 Start Stand-Alone Record.

nof_subcomponents (uint32): Number of following subcomponent entries structure.

destination_ip (uint32): Destination IPv4 address 4 bytes are used for the IP address field. Multicasting, unicasting or broadcasting can be handled by specifying appropriate IP addresses (e.g. broadcast address 11.59.31.255, if the network mask is 255.255.240.0 (by default).

destination_port (uint32): This field specifies the destination port to that the UDP packets will be sent.

nof_channel_ids (uint32): Number of the following channel id entries. If 0 the channel ID filter is disabled.

channel_id (uint16): Chapter 10 channel ID filter. It is a positive filter. Only the packets are sent, whose channel ID is located in this list (default = 0xffff means no filter).

This command assumes IPV4 addressing. New command will be added later to support IPV6 addressing if needed. The UDP recorded file server can send the data to any specified port and IP address including multicast, unicast and broadcast addresses.

8.8.3 Stop Recorded File Server via UDP

To stop the file server the above described message with an empty destination address list (nof_subcomponents = 0) has to be send. Here the file name and all the other parameters must not be specified.

Page 251: DATaRec 4 Series

DATaRec-4 Programming Manual Configurable Contact Remote Interface

Page 9-1

9 Configurable Contact Remote Interface

9.1 Configurations Currently the following Modes can be configured:

• Mode 0 is IRIG-106 Chapter 10

• Mode 1 is the loop back mode for testing

• Mode 2 is basically identical with IRIG-106 Chapter 10 Mode with some changes

• Mode 3 is the MDR NVG (Night Vision Goggles) mode, which is active when a NVG mode front panel is connected to the MDR

9.2 Pin Definitions

9.2.1 DATaRec® 4 Link Module

All outputs are open drain signals, active low. For example when record is running the Record output will be pulled to ground with a current limit of 60 mA. When record is not running the pin is floating. An external pull-up resistor should be provided.

The input pins are also low active and should be pulled to ground to activate them. When left open an internal current source (1 mA limit) will pull the pins to 5 V. A function will be activated if the corresponding pin is pulled below 4.7 V. This should be done using a switch, relay, open drain FET or similar. The inputs can also tolerate higher voltages of up to 40 V so for example direct connection to 28 V Aircraft power is possible.

9.2.2 MDR

All outputs are open drain signals, active low. For example when record is running the Record output will be pulled to ground with a current limit of 150 mA. When record is not running the pin is floating. An external pull-up resistor should be provided with a maximum voltage of 36 V.

The input pins are also low active and should be pulled to ground to activate them. When left open an internal current source (1 mA limit) will pull the pins to 3.5 V. A function will be activated if the corresponding pin is pulled below 3.0 V. This should be done using a switch, relay, open drain FET or similar. The inputs can also tolerate higher voltages of up to 35 V so for example direct connection to 28 V Aircraft power is possible.

9.2.3 Pin Out

This pin out below is valid for connector C-REM on the LMF2FE, LMF4FE, LMFGSS and MDR and connector PC+Media on the LMF1G and LMR modules:

Page 252: DATaRec 4 Series

DATaRec-4 Programming Manual Configurable Contact Remote Interface

Page 8-2

Recorder Type Function

Contact

Name

LMF2FE,

LMF4FE

and

LMFGSS

LMF1G

and LMR MDR

Mode 0

(IRIG-106 Ch10)

Mode 1

(Loop Back)

Mode 2

(Extended Mode)

Mode 3

(MDR NVG)

Mode 4

(MDR MCSR)

Mode 5

(Test)

Mode 6

(MDR Multi

Recording Mode

(Ext.2))

Mode 7

(MDR SADR)

Input 1 CRP1 02 CRP 11 CRP 14 Record4 Output 1 Record4 Record4 Record4 Record4 Record File 117 Record4

Input 2 CRP 03 CRP 06 CRP 29 Erase4,5 Output 2 Erase4,5 Erase4,5 Restore Setup Ctrl 115 Reserved Erase4,5 Event8

Input 3 CRP 04 CRP 01 CRP 13 Declassify4,5 Output 3 Declassify4,5 Brightness Ctrl 114 Restore Setup Ctrl 215 Reserved Declassify4,5 Restore Setup Ctrl 1

15

Input 4 CRP 05 CRP 12 CRP 28 BIT4,6 Output 4 BIT2,5 Brightness Ctrl 214 Restore Setup Ctrl 315 Reserved Record File 218 Restore Setup Ctrl 2

15

Input 5 CRP 06 CRP 07 CRP 12 Enable4 Output 5 Enable4 Enable4 Reserved Reserved Enable4 Restore Setup Ctrl 315

Input 6 CRP 12 CRP 02 CRP 27 Stop4,7 Output 6 Event8 Event8 Event8 Play16 Event8 Reserved

Input 7 CRP 13 PCP3 25 NC2 Event8 Output 7 Locked11 Reserved Reserved Reserved Reserved Reserved

Input 8 NC2 PCP 26 NC2 Reserved Reserved PowerOK12 Reserved Reserved Reserved Reserved Reserved

Output 1 CRP 07 CRP 13 CRP 09 Record Status Input 1 Record Status Record Status Record Status Reserved Record Status19 Record Status

Output 2 CRP 08 CRP 08 CRP 24 Erase Status Input 2 Erase Status Erase Status Erase Status Reserved Erase Status Erase Status

Output 3 CRP 09 CRP 03 CRP 08 Declassify Status Input 3 Declassify Status Declassify Status Declassify Status Reserved Record1 Status20 Event Status

Output 4 CRP 10 CRP 14 CRP 23 BIT Status Input 4 BIT Status BIT Status BIT Status Reserved BIT Status Time Source Locked29

Output 5 CRP 11 CRP 09 CRP 07 Fault Status Input 5 Fault Status Fault Status Fault Status Fault Status Fault Status Fault Status

Output 6 CRP 15 CRP 04 CRP 22 Reserved Input 6 EOM13 NVG Mode On30 Event Status EOM13 Record2 Status21 MAF Status22

Output 7 CRP 16 CRP 10 NC2 Reserved Input 7 Locked Status Reserved Reserved Reserved Reserved Reserved

GND CRP 14 CRP 15 CRP 11 GND GND GND GND GND GND GND GND

Power CRP 01 CRP 05 CRP 10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10

Page 253: DATaRec 4 Series

DATaRec-4 Programming Manual Configurable Contact Remote Interface

Page 8-2

Recorder Type Function

Contact

Name

LMF2FE

,

LMF4FE

and

LMFGSS

LMF1G

and LMR MDR

Mode 8

(Multi Dest. Rec.)

Mode 9

(D7000)

Mode 10

(Strain Gage)

Mode 11

(MFCR1)

Input 1 CRP1 02 CRP 11 CRP 14 Record Media 123 Record4 Record4 Record4

Input 2 CRP 03 CRP 06 CRP 29 Erase4,5 Erase4,5 Erase4,5 Erase4,5

Input 3 CRP 04 CRP 01 CRP 13 Declassify4,5 Declassify4,5 AutoZero27 Declassify4,5

Input 4 CRP 05 CRP 12 CRP 28 Record Media 224 BIT4,6 ShuntCal28 BIT4,6

Input 5 CRP 06 CRP 07 CRP 12 Enable4 Enable4 Enable4 Enable4

Input 6 CRP 12 CRP 02 CRP 27 Event8 Event8 Event8 Manual Load 33

Input 7 CRP 13 PCP3 25 NC2 Reserved Reserved Reserved Reserved

Input 8 NC2 PCP 26 NC2 Reserved Reserved Reserved Reserved

Output 1 CRP 07 CRP 13 CRP 09 Record Status19 Record Status Record Status Record Status

Output 2 CRP 08 CRP 08 CRP 24 Erase Status Erase Status Erase Status FC Fail Status 31

Output 3 CRP 09 CRP 03 CRP 08 Record1 Status20 Ready/Declassify2 Reserved FC On Status 32

Output 4 CRP 10 CRP 14 CRP 23 BIT Status Data Flow/BIT26 BIT Status Time Source Locked 29

Output 5 CRP 11 CRP 09 CRP 07 Fault Status Fault Status Fault Status Fault Status

Output 6 CRP 15 CRP 04 CRP 22 Record2 Status21 MAF Status22 Event Status EOM13

Output 7 CRP 16 CRP 10 NC2 Reserved Reserved Reserved Reserved

GND CRP 14 CRP 15 CRP 11 GND GND GND GND

Power CRP 01 CRP 05 CRP 10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10 SW Switchable9,10

Page 254: DATaRec 4 Series

DATaRec-4 Programming Manual Configurable Contact Remote Interface

Page 8-3

Note:

1 CRP = C-REM Pin 2 NC = Not Connected 3 PCP = PC + Media Pin 4 If multiple inputs are activated the priority is Declassify, Erase, Record, Stop and BIT. For example

Declassify + Record + Enable will start Declassify.

5 The Erase and Declassify functions are only started if the Enable input is also activated. 6 BIT = Build in Test. 7 Emergency Stop input is needed for a non standard GSS variant with stand-alone record watch dog feature. 8 If this contact is closed, a computer generated EVENT package is inserted into the data stream (see 6.2). 9 Power supply for contact remote circuits. The LMF modules supply 5 V with a current limit of 500 mA. 10 The MDR supply is 5 V with a current limit of 1 A. 11 If the contact remote interface is in mode 2 and the locked input is open bit

MECHA_LOCKING_FAILURE is set in the recorder health status (see 4.3.16.11 Status and Measurement of a Recorder).

12 Power Redundancy OK input. If the contact remote interface is in mode 2 and this contact is not closed the corresponding health bit (POWER_REDUNDANCY_FAILURE) is set (see 4.3.16.11 Status and Measurement of a Recorder).

13 EOM = End Of Media. 14 NVG Brightness Control 1 (left digit) + 2 (right digit) combinations: 00 – off (NVG Brightness Control

turned off, Link Module parameter dimming has priority), 10 – low, 01 – middle, 11 – high. 15 Save Set Control 1 (least significant digit) to 3 (most significant digit) examples: 000 – restore Save Set 0,

011 – restore Save Set 3. Save Sets will be restored from Media if existing, otherwise from internal Flash. 16 Start stand-alone replay (only DSLM). 17 Contact input is assigned to the first of two recording processes (Channel ID group name “Rec1”). 18 Contact input is assigned to the second of two recording processes (Channel ID group name “Rec2”). 19 This is the over all Record Status. If at least one record process is running, this output is set. 20 This status output is reflecting the state of the 1st recording process. 21 This status output is reflecting the state of the 2nd recording process. 22 MAF = Media Almost Full. If the media almost full status is reached this output will begin to flash. If the

media full status is reached, this output is steady on. The level for the almost full indication can be adjusted by the link module parameter (see 4.3.8.1 Link Module Parameters).

23 Contact input is assigned to the first of two possible recording processes (Channel ID group name “Rec1”). This recording is forced to the first internal media (e.g. CF card). If no internal media is connected, then no recording is started.

24 Contact input is assigned to the second of two possible recording processes (Channel ID group name “Rec2”). This recording is forced to the first network attached media (e.g. MCSRe). If no network attached media is connected, then no recording is started.

25 If Ready/Declassify output is steady on it indicates the MDR has successfully completed power-up boot cycle with READY status indicating unit is ready for subsequent discrete input selections. If this output is flashing it indicates the recorder is declassifying the media.

26 Data Flow/BIT output is flashing if data are writing to media (Data Flow). BIT is steady on if the BIT process is running.

27 Start Auto Zero on all channels. 28 Start Shunt Calibration on all channels. 29 External time source locked. True if any external time source is enabled, detected, and N consecutive values

are consistent (value and timing). N=2 for GPS, N=1 for SNTP, and N=3 for all other sources. 30 NVG Mode enabled (Front Panel Night Vision Goggle compatibility allowing configurable dimming and

omitting colors with red portions). 31 MFCR1: active output indicates Fibre Channel Error status 32 MFCR1: active output indicates Fibre Channel Connection is ON status 33 MFCR1: activates the programming of the MFCR1 setup on the Fibre Channel Bus

Page 255: DATaRec 4 Series

DATaRec-4 Programming Manual LED Color Codes

Page 10-1

10 LED Color Codes

10.1 Link Module LEDs

LED Name Color Description

S1 White Front panel menu mode is selected.

S2 Green Any process in action, e.g. Erase is running.

S3 Red There was an critical error found in the system. A health bit of at least one channel is set and the appropriate critical mask bit is set (see 4.3.16 Channel Status and Measurement). The link module itself is here regarded as an channel.

PC No function

Media Green FireWire (1394b) media found at port 0, 1 or 2.

Time1 Black (off) No synchronization source present.

Yellow Solid Time sync in progress (IRIG/PPS).

Green Blink 1 PPS or 10 PPS validated.

Green Solid IRIG A/B/G valid.

Blue Solid GPS (NMEA) valid.

Blue Solid Clock system is synchronized to external clock signal.

Cyan Blink PTP (IEEE1588) valid.

Cyan Solid Slave sync (time from master link module)

Red Sync error (e.g. bad frames)

LAN Yellow 100 Mbit Ethernet connection established.

Green 1000 Mbit Ethernet connection established.

USB H Green USB media found.

USB T No function

1394b Green FireWire (1394b) media found at port 0, 1 or 2.

L1-L4 Green Link chain active. Synchronization locked in the case of an sync. port (Master/Slave).

Red Any error on link chain. Synchronization failed in the case of an sync. port (Master/Slave).

Comments: 1Highest priority signal will be displayed first (from high to low: Slave, IRIG, GPS, PTP, IRIG sync, PPS, PPS sync). Blinking frequency is 1 Hz, different blinking frequency may mean cabling/time source error.

Page 256: DATaRec 4 Series

DATaRec-4 Programming Manual LED Color Codes

Page 10-1

10.2 General Rules for Modules Flashing is not planned to use now – we reserve them for later extension – LED color codes are steady ON.

Generally the following colors are used if they exist (other colors should be restricted for very special cases):

Black (off) The channel is inactive.

Green The channel is active, data recording is running, no error.

Red Any error on the channel: analog overflow, bus error, no PCM, module self-test error, invalid setup. Data may be recorded, but invalid. The hold time for errors are settable by IDC_MEAS_SETUP LED_hold_time – the default is 1s.

Blue The channel is active, data replay is running, no error. For record only module Blue is the same meaning as Green, but can show some special mode (e.g. RPM for analog).

Yellow The channel is active, data recording is running, but some data warning or the channel is in special state.

10.3 Power-On Self Test During power-on self test all modules should turn on all basic LED colors for at least 1 second to be able to check if they are properly soldered and functioning.

10.4 The special cases for the modules The special cases for the modules are:

ANH100 Black (off) The channel is disabled.

Green The channel is active, record (2 x input LEDs).

The loopback is active during recording (2 x output LEDs).

Red Overflow (2 x input LEDs).

Blue The channel is active, replay (2 x output LEDs).

DIC6 Black (off) The channel is disabled.

Green The channel is active.

Red Overflow.

Blue The channel is in RPM mode

DEBU Black (off) The channel is disabled.

Green The channel is active.

Red Overflow.

Blue The channel is in RPM mode

Page 257: DATaRec 4 Series

DATaRec-4 Programming Manual LED Color Codes

Page 10-2

CHG6 Black (off) The channel is disabled.

Green The channel is active.

Red Overflow.

Blue The channel is in RPM mode

DIC24 Black (off) The channel is disabled.

Green The channel is active.

Red Overflow.

extra LED Green ICP is ON at any channel.

Blue RPM is ON at any channel (if no ICP is ON).

MRG100 Black (off) The channel is disabled.

Green The channel is active, record.

Red No external clock.

Blue The channel is active, replay.

Yellow Record but Sub frame ID or Watchword is missing in case of Packed/Unpacked mode.

VCR100 Black (off) The channel is disabled.

Green The channel is active, record.

Yellow Wrong video format input.

Red No video input.

VCP100 Black (off) The channel is disabled.

Green The channel is active, DCM input.

Blue The channel is active, replay.

Red No video output, but channel is enabled.

UAR100 Black (off) The channel is disabled.

Green The channel is active.

Red Bus Error.

Blue Reserved for later usage of filtering or RT operation.

UAP100 Black (off) The channel is disabled.

Red Bus Error.

Blue The channel is active in play mode

Yellow The channel is active in pattern generator mode

Page 258: DATaRec 4 Series

DATaRec-4 Programming Manual LED Color Codes

Page 10-3

ARR100 Black (off) The channel is disabled.

Red Bus Error.

Green The record is active, High Speed

Yellow The record is active, Low Speed

ARP100 Black (off) The channel is disabled.

Red Bus Error.

Green The replay is active, High Speed

Yellow The replay is active, Low Speed

ETH100 Black (off) No link or negotiation failed.

LAN Yellow 10 Mbit

(upper LED) Green 100 Mbit

Cyan 1000 Mbit

ETH100 Black (off) The channel is disabled or there is no traffic.

ACT Green The channel is active while record.

(lower LED) Red Overflow or bus error.

Blue The channel is active while replay.

Yellow Data error during record or playback.

CAN4 Black (off) The channel is disabled.

Green The channel is active, record.

Blue The channel is active, replay.

Red Overflow or bus error.

ASM100 Black (off) The channel is disabled.

Green The channel is active, record.

Blue The channel is active, replay.

Red Overflow or bus error.

Page 259: DATaRec 4 Series

DATaRec-4 Programming Manual How to Start a Playback

Page 11-1

11 How to Start a Playback

11.1 How to Start a Front-End Playback

In the following we will describe how a front-end playback can be started.

11.1.1 The Simple Method

The easiest way to start a playback is to simply send the recording data to the link module. Which interface (Ethernet, FireWire, USB, or SAS) is used here does not matter. The link module is controlling the whole playback. For example in the case of the Ethernet interface it could be done with the following command:

netcat 11.59.19.202 5007 <[path_to_file] >/dev/zero

Netcat is a computer networking program for reading from and writing network connections using TCP or UDP.

11.1.2 The PC Controlled Method

If the PC controlled method is desired the following steps must be performed sequentially.

• Do the Playback channel assignment setup by adjusting the ‘Replayed Channel Assignment’ entry of the channel parameters. Only the channels with replay capability have this field.

• Send DFC ‘uptream_enable’ = off for the signal modules having recording capability and to the link module, too.

• Send DFC ‘downstream_enable” = on for the signal modules having playback capability and planned to perform playback by the application.

• Send DFC ‘downstream_enable’ = on for the link module • Start to send continuously playback data to the link module and poll parallel the link module to get the

‘Earliest Play Time Ready’ condition using the IDC_MODULE_STATUS (OID_GET) command. • When the “Earliest Play Time Ready’ condition is set then take the “Earliest Play Time” and offset it

minimum 2 seconds to send the play time offset (IDC_PLAY_TIME_OFFSET) to link module (OID_SET/OID_ARM).

• The link module receiving the play time offset starts the play. • Keep continuously running the playback data sending and poll the link module using the

IDC_MODULE_STATUS to monitor the play state. The reconstructed play time can be requested with the IDC_PLAY_TIME command.

• Stopping of play is initiated by sending and IDC_PLAY_STOP_TIME to the link module. There are three choices: Stop play at a given poly time stamp (discarding any data with a higher RTC stamp that has already been send to the link module). It can be stopped as soon as possible or it can be stopped after all data transmitted to the link module has been output. To stop at a given time set both the PSF_ABORT_PLAY and PSF_TS_VALID flags in the message. If play should be stopped as fast as possible set only the PSF_ABORT_PLAY flag. If neither flag is set all data that has been written to the link module will be replayed before play stops.

• When the stop command is accepted (the OID_ACK for it has been received) then the ‘End Of Play’ packet has to be inserted into the data stream. The application cannot send any other data after the ‘End Of Play’ packet. (To be precise: Any data that is send after it will be buffered to be used when play is re-started)

• Poll the link module using the IDC_MODULE_STATUS to get informed when the play is completed and send DFC ‘downstream_enable’ = off to the link and signal modules.

Page 260: DATaRec 4 Series

DATaRec-4 Programming Manual How to Start a Playback

Page 11-1

11.2 How to Start a Stand-Alone Playback

In the following we will describe how a Stand-Alone Playback can be started. The following steps must be performed sequentially.

• Do the Playback channel assignment setup by adjusting the ‘Replayed Channel Assignment’ entry of the channel parameters. Only the channels with replay capability have this field.

• Determine the recordings located on the connected media by using the IDC_GET_FIRST_FILE and IDC_GET_NEXT_FILE commands (see 4.3.29 Stand-Alone File ).

• Select a file to be played back by using the IDC_FILE_SELECT_BY_NAME command (see 4.3.29.3 File Select By Name).

• Send IDC_START_PLAY to start the playback (see 4.3.27.1 Start Stand-Alone Replay). • The playback can be monitored by checking the Stand-Alone Status. The IDC is

IDC_STAND_ALONE_STATUS (see 4.3.28 Stand-Alone Status). • Send the IDC_STOP_PLAY command to stop playback (see 4.3.27.2 Stop Stand-Alone Replay).

Page 261: DATaRec 4 Series

DATaRec-4 Programming Manual How to Flush the Internal Circular Data Buffer

Page 12-1

12 How to Flush the Internal Circular Data Buffer

In the following we will describe how the internal circular data buffer can be flushed. The following steps must be performed sequentially.

• Switch off the DFC (Data Flow Control), ‘upstream_enable’ = off for all connected modules (IDC_DATAFLOW_CONTROL see 4.3.24).

• Read the main data in a loop as fast as possible and throw them away. Do this until you did not get anymore data. At this point the internal main data circular buffer is empty. In rare cases, may still some data can be in the DMA queue in front of the circular buffer.

• Now you must wait for the block_delivery_timeout time (default = 1000ms see 4.3.8.1 Link Module Parameters).

• Read the main data in a loop again as fast as possible. Do this until you did not get anymore data.

Thus, the flush is finalized. Now you can be sure there are no longer data stored in the system.

Page 262: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-1

13 Brief Description SNMP This describes in short terms the implementation of SNMP for the DATaRec 4 Series.

13.1 Files on the Target The following files needs to be installed on the link module; this is typically done with the firmware update:

13.1.1 /lib/libdl.so.2

This is a system library needed by the snmp agent.

13.1.2 /usr/local/share/snmp/snmpd.conf

The basic configuration file. The current version allows all access to the group public, since no further security settings are required.

13.1.3 /usr/local/sbin/snmp

The binary agent itself. This binary contains the implementation for all used mibs.

13.2 Accessing SNMP In professional applications an own client is used with the SNMP.

For testing purpose the SNMP protocol can be accessed through any standard tool, for example the command line tools for windows or linux.

It is recommended to use a GUI Tool; they are able to load a MIB with all definitions and commands.

13.3 Using a MIB browser The MIB-Browser from iReasoning has an intuitive GUI. Start the software and load the needed MIBs. At least these are FTI-MIBv.1.1.mib and HEIM-LMF.mib.

Every parameter appears in the MIB tree on the left. Clicking on it will show a brief description of value ranges, data types and comments.

Page 263: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-2

13.4 Command Line Tools Basic functionality can be presented by the command line tools, like the net-snmp project is providing. The most primitive tool is the snmpget. This can be used, to access every value, even the values inside tables. Example: How to examine the remaining capacity of the second partition on a link module with the ip address 11.59.19.202:

snmpget -v 2c -c public 11.59.19.202 1.3.6.1.4.1.35360.1.1.1.1.1.6.2

This command will return the value in Mbytes.

13.5 Debugging The debugging is done with the debugging console of the link module (connector HDP). The agent shows a short message on every access. It is foreseen, that the agent writes these messages in temporary log file /var/log/snmpd.log, but this feature is disabled to save RAM space.

13.6 Supported SNMP Versions The implementation of the snmp protocol supports both version SNMPv1 and SNMPv2c in coexistence. In the future it may be configured to support SNMPv3 too, if a higher level of security is required.

13.7 Specified and implemented objects The first MIB is the FTI-SNMP. This will define the following Airbus branch:

1.3.6.1.4.1.airbus(11348).fti(6)

This simple branch contains 11 readable objects and 2 objects for read and write.

13.7.1 Manufacturer

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiManufacturer(1)

Page 264: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-3

Type DisplayString(SIZE(1..50))

Access R

Description Manufacturer name of the monitored equipment, “Safran Data Systems GmbH”

13.7.2 Title

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiTitle(2)

Type DisplayString(SIZE(1..50))

Access R

Description Title of the monitored equipment, “Removable Media Recorder and NAS”

13.7.3 Type

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiType(3)

Type DisplayString(SIZE(1..20))

Access R

Description Type of the monitored equipment, “AA300”

13.7.4 Software Version

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiSoftwareVersion(4)

Type DisplayString(SIZE(1..20))

Access R

Description Software Version, this is the firmware Version, which is reported by the remote interface in the form Major.Minor, e.g. “2.38”

13.7.5 Hardware Version

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiHardwareVersion(5)

Type DisplayString(SIZE(1..20))

Access R

Description Hardware Version, this is the FPGA Version, which is reported by the remote interface in the hex form Major.Minor, e.g. “1.66”. This is the same form, like the link module displays on the front panel, when starting.

13.7.6 Serial Number

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiSerialNumber(6)

Type DisplayString(SIZE(1..20))

Access R

Description The serial number of the link module, e.g. “41335 – 072008”

Page 265: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-4

13.7.7 System Up Time

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiSysUpTime(7)

Type TimeTicks

Access R

Description Time in seconds since the start-up. This time is defined as the moment, when the snmp agent is initialized.

13.7.8 Status

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiStatus(8)

Type INTEGER {0: statusOK, 1:statusWarning, 2:statusKO}

Access R

Description The operation status of the link module. The status represents the stand alone status of the link module. In most cases the status KO is similar to a red LED on the link module.

13.7.9 OID System Manufacturer

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiMonitoring(1).ftiOidSystemManufacturer(9)

Type DisplayString(SIZE(1..64))

Access R

Description This is a link to the manufacturer branch. This value is “1.3.6.1.4.1.35360.1”. This OID is the root of the specific branch for the link module

13.7.10 Reset

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiCommand(2).ftiReset (1)

Type INTEGER {0: function is implemented, 1: Software reset request, 2: function is not implemented}

Access R/W

Description Command to reboot the system software. This function is implemented and on request it does a watchdog reset

13.7.11 Reboot

OID 1.3.6.1.4.1.airbus(11348).fti(6).ftiCommand(2).ftiReboot (2)

Type INTEGER {0: function is implemented, 1: Reboot request, 2: function is not implemented}

Access R/W

Description Command to reboot the system. This function is implemented and on request it does a watchdog reset (same like Reset)

Page 266: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-5

13.8 Manufacturer specific This branch contains all specific parameters and commands for the HEIM Link Module. Below the OID, which is reserved for the company Safran Data Systems GmbH, the branch 1 is added. This ensures that any device, developed in the future can have its own branch.

13.8.1 MediaPartitionTable

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1)

Type Sequence of PartitionTableEntry

Access R

Description This table contains information for all mounted partitions, such as available capacity and type of file system.

13.8.2 Fields of the partition table

LineNo 13.8.2.1

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.1

Type Integer

Access R

Description Line number in the table. This is an index and can be used, to access a specific line directly.

PartitionName 13.8.2.2

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.2

Type DisplayString 1..20

Access R

Description Mounted name of the partition. By default this name has the form “sda1”, but it can have any other system defined form like “Video”.

PartitionDevice 13.8.2.3

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.3

Type DisplayString 1..20

Access R

Description Device or drive name, where the partition resides. This is the device name like “sda”, it is independent from the mount name.

PartitionVolume 13.8.2.4

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.4

Type Integer

Page 267: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-6

Access R

Description Number of the volume. This number may not be unique on one system, when more than one drive is mounted.

PartitionCapacity 13.8.2.5

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.5

Type Mbytes

Access R

Description Total size of the partition in Mbytes (1000 * 1000).

PartitionRemainingCapacity 13.8.2.6

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.6

Type Mbytes

Access R

Description Available size of the partition in Mbytes (1000 * 1000).

PartitionRemainingPerCent 13.8.2.7

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.7

Type Integer

Access R

Description The remaining Capacity of the partition in percent.

PartitionFsType 13.8.2.8

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.8

Type DisplayString 1..20

Access R

Description Type of the file system. This is a textual information like “EXT3”, “MSDOS” or “NTFS”

PartitionFileNodes 13.8.2.9

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.9

Type Integer

Access R

Description Total count of file nodes in this partition. Note that not all file systems supports the count of file nodes. If the file system is for example MSDOS, this value is 0.

Page 268: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-7

PartionFreeNodes 13.8.2.10

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaPartitionTable (1).1.10

Type Integer

Access R

Description Count of free file nodes in this partition. Note that not all file systems supports the count of file nodes. If the file system is for example MSDOS, this value is 0.

This is the last field of the partition table. The next picture shows an example for such a table on

client side.

13.8.3 MediaCapacity

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaCapacity(2)

Type Mbytes

Access R

Description Total capacity of all connected media in Mbytes (1000 * 1000). Internal this value is calculated from the table of partitions.

13.8.4 MediaRemainingCapacity

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaRemainingCapacity(3)

Type Mbytes

Access R

Description Remaining capacity of all connected media in Mbytes (1000 * 1000)

13.8.5 MediaCountOfDrives

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaCountOfDrives(5)

Type Integer

Access R

Description Count of physical drives attached to the system and mounted .

13.8.6 MediaCountOfVolumes

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaCountOfVolumes(6)

Type Integer

Page 269: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-8

Access R

Description Count of volumes on all connected and mounted drives.

13.8.7 MediaFileID

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileID (7)

Type Integer

Access R

Description ID of the current record. When no record was started since the last reboot, this value is 0.

13.8.8 MediaRemainingPercent

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaRemainingPercent (8)

Type Integer

Access R

Description The remaining capacity on all connected drives in percent. Actually this is 100 * RemainingCapacity / TotalCapacity.

13.8.9 MediaFileTable

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10)

Type Sequence of File Table Entry

Access R

Description Table with all files on all connected media. The files are collected over the remote interface. This way it is ensured, on records and no other files are displayed.

13.8.10 Fields of the File Table

LineNo 13.8.10.1

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.1

Type Integer

Access R

Description Line number in this table. This is an index to access directly a line in the table.

FileName 13.8.10.2

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.2

Type DisplayString(SIZE(1..512))

Access R

Description The name of the file.

Page 270: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-9

MediaID 13.8.10.3

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.3

Type Integer

Access R

Description The ID of the media, where the file is stored. This identifies the partition. The ID itself is generated by the remote interface.

RecStart 13.8.10.4

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.4

Type DisplayString(SIZE(1..30))

Access R

Description Date and time when the record was started. The format is fixed as mm/dd/yyyy hh:mm:ss.

RecEnd 13.8.10.5

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.5

Type DisplayString(SIZE(1..30))

Access R

Description Date and time when the record was stopped. The format is fixed as mm/dd/yyyy hh:mm:ss.

FileSize 13.8.10.6

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.6

Type Mbytes

Access R

Description Size of the file in Mbytes (1000*1000)

FileID 13.8.10.7

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFileTable (10).1.7

Type Integer

Access R

Description A unique generated id to identify the record. This id can be used to select the record for replay. If one record has more than one file, all files do have the same id.

13.8.11 MediaFixPartitionTable

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11)

Type Sequence of FixPartitionTableEntry

Access R

Page 271: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-10

Description Fixed sized table with information for the mounted partitions. The size of this table is fixed to 14 lines and can be adjusted with the value sizeFixPartitionTable. If one partition does not exist or is not mounted, the size is reported as -1.

Other than the variable partition table, the volumes in this table are sorted by device name and volume number.

13.8.12 Fields of the partition table

LineNo 13.8.12.1

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmFixMediaPartitionTable (11).1.1

Type Integer

Access R

Description Line number in the table. This is an index and can be used, to access a specific line directly.

PartitionName 13.8.12.2

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmFixMediaPartitionTable (11).1.2

Type DisplayString 1..20

Access R

Description Mounted name of the partition. By default this name has the form “sda1”, but it can have any other system defined form like “Video”.

PartitionDevice 13.8.12.3

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.3

Type DisplayString 1..20

Access R

Description Device or drive name, where the partition resides. This is the device name like “sda”, it is independent from the mount name.

PartitionVolume 13.8.12.4

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.4

Type Integer

Access R

Description Number of the volume. This number may not be unique on one system, when more than one drive is mounted.

PartitionCapacity 13.8.12.5

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.5

Type Mbytes

Page 272: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-11

Access R

Description Total size of the partition in Mbytes (1000 * 1000).

PartitionRemainingCapacity 13.8.12.6

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.6

Type Mbytes

Access R

Description Available size of the partition in Mbytes (1000 * 1000).

PartitionRemainingPerCent 13.8.12.7

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.7

Type Integer

Access R

Description The remaining Capacity of the partition in percent.

PartitionFsType 13.8.12.8

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.8

Type DisplayString 1..20

Access R

Description Type of the file system. This is a textual information like “EXT3”, “MSDOS” or “NTFS”

PartitionFileNodes 13.8.12.9

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.9

Type Integer

Access R

Description Total count of file nodes in this partition. Note that not all file systems supports the count of file nodes. If the file system is for example MSDOS, this value is 0.

PartionFreeNodes 13.8.12.10

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation(1).dslmMedia (1).dslmMediaFixPartitionTable (11).1.10

Type Integer

Access R

Description Count of free file nodes in this partition. Note that not all file systems supports the count of file nodes. If the file system is for example MSDOS, this value is 0.

Page 273: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-12

13.8.13 SizeFixPartitionTable

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation (1).dslmMedia(1).dslmSizeFixPartitionTable(12)

Type Integer

Access R/W

Description Size of the fix partition table. This is initially 14 and can be adjusted as desired.

13.8.14 PartitionRefreshCycle

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation (1).dslmMedia(1).dslmPartitionRefreshCycle (13)

Type Integer

Access R/W

Description Refresh cycle for the partition tables. This is the time in seconds, this ensures the table is at least refresh in this cycle.

13.8.15 FileRefreshCycle

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation (1).dslmMedia(1).dslmFileRefreshCycle (14)

Type Integer

Access R/W

Description Refresh cycle for the file table. This is the time in seconds, this ensures the table is at least refresh in this cycle.

13.8.16 AutorunInfo

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmInformation (1).dslmConfiguration(2).dslmAutorunInfo(1)

Type DisplayString(SIZE(1..128)

Access R

Description Content of /var/lmf_autorun_snmp. This file is written by the autorun from config stick. Use the content to identify the type of this system

13.8.17 StatusStandAlone

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus (2).dslmStatusStandAlone(1)

Type Integer {standaloneStop(0), standalonePlay(1), standaloneRecord(2), standaloneError(3)}

Access R

Description Status as reported with the remote interface.

13.8.18 StatusSystemTableStatus

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus (2).dslmStatusSystemTableStatus (2)

Type Sequence of SystemTableStatusEntry

Access R

Page 274: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-13

Description Table with fields for the current state of all connected channels on all connected modules. This includes these fields: - Channel ID - Link Module ID - Link Chain No - Module No - Channel No - Module Type - Channel Type - Channel Status Vendor - Channel Status Busy - ChannelStatus Health

13.8.19 Fields of the StatusTable

LineNo 13.8.19.1

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.1

Type Integer

Access R

Description Line number inside this table. The line number is an index and can be used to access a desired line of the table.

LinkModuleID 13.8.19.2

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.2

Type Integer

Access R

Description ID of the connected link module. This value Is 0 for the first link module.

LinkChainNo 13.8.19.3

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.3

Type Integer

Access R

Description The number of the link chain, where the module is connected. This number is that printed on the front panel of the link module near the connector. The number 0 is for internal modules (time module). The number -2 is for channels, that don’t belong to a module. Currently this is used only for the internal recorder status.

ModuleNo 13.8.19.4

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.4

Type Integer

Access R

Description The number of the module within the link chain. This number starts with 0 for every link chain. The value -2 is used for the recorder status, which doesn’t belong to module.

Page 275: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-14

ChannelNo 13.8.19.5

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.5

Type Integer

Access R

Description The number of the channel within the module. This number starts with 0 for every module. The value -2 is used for the recorder status, which doesn’t belong to module.

ModuleType 13.8.19.6

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.6

Type DisplayString(SIZE(1..12))

Access R

Description Type of the module as String. This is used to identify a module quickly, when the table is read by humans.

ChannelType 13.8.19.7

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.7

Type DisplayString(SIZE(1..12))

Access R

Description Short name if the channel type.

ChannelStatusVendor 13.8.19.8

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.8

Type Integer

Access R

Description Bit coded status for the channel. In Appendix the details for every channel type is described.

ChannelStatusBusy 13.8.19.9

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.9

Type Integer

Access R

Description Bit coded status for the channel. In Appendix the details for every channel type is described.

ChannelStatusHealth 13.8.19.10

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2). dslmStatusSystemTableStatus (2).1.10

Type Integer

Access R

Description Bit coded status for the channel. In Appendix the details for every channel type is described.

Page 276: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-15

OverAllStatus 13.8.19.11

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmStatus(2).dslmStatusOverAllStatus (3)

Type Integer

Access R

Description ch10 Status, can be decoded as 0xssnnccpp where ss =recorder status (see enum eCh10Status) nn =number of channels with non critical warning bits cc =number of channels with critical warning bits pp =high byte of progress 0x00 -> 0%, 0xff -> 100%

13.8.20 StartRecord

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmStartRecord (1)

Type Integer {startRecordAvailable(0), startRecordRequest(1), startRecordNotImpemented (2) }

Access R

Description Starts the stand alone record on request. When recorded start is requested, the agent scans the configuration connected to the link module. For every module, which has recordable channels the data flow is switched on.

13.8.21 StartPlay

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmStartPlay (2)

Type Integer {startPlayAvailable(0), startPlayRequest(1), startPlayNotImpemented (2) }

Access R

Description Starts the stand alone play. When play start is requested, the agent scans the configuration connected to the link module. For every module, which has playable channels the data flow is switched on for the play direction.

13.8.22 Stop

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmStop (3)

Type Integer {stopAvailable(0), stopRequest(1), stopNotImpemented (2) }

Access R

Description Sends the request for stop record and stop play to the link module. If any process is running, this will be stopped. If neither play nor record is running, only the internal status flags are reset.

13.8.23 PlayFile

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmPlayFile (4)

Type DisplayString(Size(1..256))

Access R/W

Description This is the current file for replay. If this value is written (set), a file with the given name must exist on a connected media.

Page 277: DATaRec 4 Series

DATaRec-4 Programming Manual Brief Description SNMP

Page 13-16

13.8.24 PlayFileID

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmPlayFileID (5)

Type Integer

Access R/W

Description Get and Set the current play file. This id can be obtained by the file table. Each id identifies a unique record.

13.8.25 PlayStartTime

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmPlayStartTime (6)

Type DisplayString(SIZE(1..20))

Access R/W

Description Searches a specific start time in the recordings on connected media. If the entered time isn't found, search error is raised (standalone status). Ohterwise the next play starts at the specified point. The time must have the format mm/dd/yyyy hh:mm:ss

13.8.26 PlayStopTime

OID 1.3.6.1.4.1.heim(35360).dslm(1).dslmCommand(3).dslmPlayStopTime (7)

Type DisplayString(SIZE(1..20))

Access R/W

Description Set the desired stop time. The format is equal to PlayStartTime

13.9 Channels Status via SNMP Description of all status values inside the status table.

Every channel status is divided into three single fields: vendor, busy and health. The fields are divided as follows:

bits 31 (msb) 24 23 16 15 8 7 (lsb) 0

bytes +0 +1 +2 +3

+0 Vendor busy health

A few bits are common for allc hannel types:

Bit Field Description

0x02 Busy In Setup

0x04 Busy In Stopping

0x8000 Vendor Buffer Overflow

0x4000 Vendor Buffer Underflow

The remaining bits carry different meanings for each channel type.The coding is the same as used by the channel status IDCs or the .HEALTH command. Please consult Section 4.3.3 Channel Status Bit Words or 4.3.16 Channel Status and Measurement for more information.

Page 278: DATaRec 4 Series

DATaRec-4 Programming Manual RCC Telemetry Standard IRIG 106 Version Numbers

Page 14-1

14 RCC Telemetry Standard IRIG 106 Version Numbers

14.1 Table of IRIG-106 Version Numbers

The following table shows the different IRIG-106 Version numbers:

Document Name IRIG106 Version TMATS Revision Level

(G\106)

Highest Packet Header

Data Type Version

Setup Record

Channel Specific Data Word

IRIG-106-04 4 “04” 0x01 Reserved

IRIG-106-05 5 “05” 0x02 Reserved

IRIG-106-07 7 “07” 0x03 0x07

IRIG-106-09 9 “09” 0x04 0x08

IRIG-106-11 11 “11” 0x05 0x09

IRIG-106-13 13 “13” 0x06 0x0A

IRIG-106-15 15 “15” 0x07 0x0B

IRIG-106-17 17 “17” 0x08 0x0C

Note: For all IRIG-106 versions up to IRIG-106-17 the computer generated data packets (Setup Record or TMATS) always use the highest available data type version in the data packet header structure.

Page 279: DATaRec 4 Series

DATaRec-4 Programming Manual Tables

Page 15-1

15 Tables

15.1 Component Identification Codes

Recorder Family Front Display

Text SCSI Inquiry Vendor SCSI Inquiry Product Remote ID "?K" “Yxxx" Recorder Type

DATaRec-4 data 5 no display HEIM DATaRec-4 SMDATA 4

DATaRec-4 control 5 HEIM HEIM DATaRec-4 SMCTRL SM¬ 4

LMx data 5 no display HEIM DATaRec-4 LMDATA 4

LMx control 5 no display HEIM DATaRec-4 LMCTRL LMx 4

LMx media no display HEIM DATaRec-4 LMEDIA

MDR data 5 - HEIM DATaRec-4 MDRD 4

MDR control 5 - HEIM DATaRec-4 MDRC MDR 4

LMF2FE 5 LM2 4

LMF4FE 5 LM4 4

LMFGSS 5 LMG 4

LMF1G 5 LM1 4

LMR 5 LMR 4

Table 53 Recorder Identification Codes

Page 280: DATaRec 4 Series

DATaRec-4 Programming Manual Special Features for Advanced Users

Page 16-1

16 Special Features for Advanced Users

Attention:

The following described functions can potentially destroy the whole system/recorder. The functions described below are not suitable for normal users. They should only be used by users/programmers that know the system very well, and exactly know what to do.

16.1 Auto-Start Function

16.1.1 Auto-Start from Media

All our recorders have an auto-start function implemented. During the boot phase of the system, and at the time where the media is mounted it is also checked whether a file called ".lmf_autorun" exists on the media. If yes, this file (shell script) is executed. The system in looking for this script file at the following locations on the media:

1.) /mp/media/sda<x>/.lmf_autorun root directory of the media

2.) /mp/media/sda<x>/datarec/.lmf_autorun datarec directory of the media

where <x> is the media number.

The same procedure is performed at any time when a new medium is connected (hot plugging).

16.1.2 Auto-Start from Flash File System

In addition to the Auto-Start function from media the system is also looking at “/data/.lmf_autorun”. This is a separate partition (/data) on the flash file system with write permissions. By using the FTP access, it is possible to upload script files to this directory. Therefore it is needed to login at the FTP server as user="config" with password="config". The FTP user “config” has the write permission to the /data directory of the flash file sytem.

To prevent a dead lock, there is a protection function. Before the script file is executed it is checked whether a protection file called "/data/.lmf_autorun_lock" is existing. If yes, the script file is not executed. This can happen if a previous script file was unsuccessful executed. In a good case, that means the script file is executed successfully, the lock file is removed automatically by the system afterwards.

Page 281: DATaRec 4 Series

DATaRec-4 Programming Manual Built-In Tests (BIT) in the DATaRec® 4 and MDR

Recorder Family

Page 17-1

17 Built-In Tests (BIT) in the DATaRec® 4 and MDR

Recorder Family This chapter describes the implemented Built-In Tests in the DATaRec

® 4 and MDR recorder family. The built-

in tests are falling into 3 categories:

• PBIT (Power-On Built-In Tests). These tests are running during and after the power-on sequence and their error results are shown as system errors.

• CBIT (Continuous Built-In Tests). These tests are running during normal operation and their error results are shown as system errors.

• IBIT (Initiated Built-In Tests). These tests can be started by binary, serial, front panel, SNMP and contact remote commands and their results are shown on the remote interfaces.

17.1 PBIT (Power-On Build-In Test) PBITs are running simultaneously in every module and in the main frame (Link Module, MDR) during boot phase, which are checking the basic functions of the hardware. When the main frame is scanning for the connected modules one of the first actions is to ask every single signal module for the result of their self test. If a PBIT of a module has an error this will be reported to the main frame and the SELFTEST_ERROR health bit indication is set. If the appropriate critical mask bit is set (default) it will lead to a so called critical error. PBIT include:

• DRAM memory test • FPGA boot interface test • Flash memory checksum test • EEPROM/Flash stored setup consistency test • Basic communication tests for all communication interfaces (link between main frames and modules,

PCI bus, memory buses, etc) • Tests for all additional hardware components during their driver installation (UARTs, USB, IEEE1394,

eSATA, SAS, Ethernet, front panel) • LED and Interface test (DATaRec

® 4)

• LED and module specific self test (MDR)

If one of these tests fails, the main frames are reporting specific error indications on the front panel, such as “Module dead”, on the fatal error LED indications or on the fault indication at the C-Rem (discrete contact remote) interface.

In addition the MDR main frame and the DATaRec®4 Link Module write the BIT error information also in plain text into a log file. This log file is located in the flash file system of every recorder and can be found here:

/data/log/d4messages

This log file can be downloaded via FTP access.

17.1.1 DATaRec® 4 LED and Interface Self Test

For DATaRec® 4 modules the interface self test type is an internal communication test between the controller

part (connected to the link module) and the IO part (connected to the IO bus). In case it fails several reasons can be reported in the results, such as that it failed because it was started in a too cold environment. In this special case the link module is asking the particular module every 10s to see if the working temperature is reached.

17.1.2 MDR LED and Module Specific Self Test

The module specific self test type involves a set of module specific tests which differ between module types. Analog modules e.g. test the calibration unit.

17.2 CBIT (Continuous Built-In Test) During operation every module, also the MDR main frame and the DATaRec

® 4 Link Module, does permanent

self tests. Specific error conditions are reported using the Chapter 10 health bit mask. Both systems signal errors

Page 282: DATaRec 4 Series

DATaRec-4 Programming Manual Built-In Tests (BIT) in the DATaRec® 4 and MDR

Recorder Family

Page 17-2

via a red front panel LED either of the MDR recorder (System LED) or the DATaRec® 4 Link Module (S3

LED). Also the corresponding modules signal errors via a red LED.

These tests include:

• Over-temperature detection and logging • Communication between sub-components inside a signal module • Detection of hardware mal-functions (driver level errors, illegal hardware conditions) • Watch-Dog reset generation in case of the hardware hangs • Media test if a new media is connected

17.2.1 Media Self Test

Every time a medium is connected to the system, a media test for the connected media starts. If necessary a file system check is performed and inconsistencies are auto-corrected. In case that the media test fails the corresponding bit is set in the Chapter 10 health bit mask of the recorder channel – furthermore a red media LED on the front panel would signal the error. If the corresponding critical mask bit is set (default) the C-REM fault indication is active and the red system error LED (System LED or S3 LED) is on.

17.2.2 MDR Power Supply Self Test

The MDR Power Supply firmware monitors several parameters and auto-reports the test results to the MDR main frame. In case errors are detected the SELFTEST_ERROR health condition bit of the recorder channel is set. Furthermore the error reason is reported in the log file /data/log/d4messages in the form of a 16-bit mask, where the error text corresponds roughly to “MDRPWR [Sensor|Converter] self test failed (mask XXXX)”). A single bit in the bit mask corresponds to one of the following error conditions (LSB 0):

• MDRPWR Sensor

o Bit 0: Input voltage VCCIN1 high (> 36V)

o Bit 1: Input voltage VCCIN1 low (< 11V)

o Bit 2: Input voltage VCCIN2 behind Surge Stopper high (> 36V)

o Bit 3: Input voltage VCCIN2 behind Surge Stopper low (> 11V)

o Bit 4: Difference between VCCIN1 and VCCIN2 too big (> 1.6V)

o Bit 5: Surge Stopper error

o Bit 6: Storage Media voltage SMVCC high (> 36V)

o Bit 7: Storage Media voltage SMVCC low (< 11V)

o Bit 8: Difference between VCCIN2 and SMVCC too big (> 1V)

o Bit 9: Storage Media fault

o Bit 10: Acceleration sensor measurement not in valid range (+/- 16g)

o Bit 11: Pressure sensor measurement not in valid range (50kPa to 115kPa)

o Bit 12: Temperature sensor (MDR) measurement not in valid range (-55dgC to 150dgC)

o Bit 13: Temperature sensor (HCAP) measurement not in valid range (-55dgC to 150dgC)

o Bit 14-15: Reserved

• MDRPWR Converter o Bit 0: Converted voltage 1V2T invalid

o Bit 1: Converted voltage 1V2M invalid

o Bit 2: Converted voltage 1V8 invalid

o Bit 3: Converted voltage 2V5 invalid

o Bit 4: Converted voltage 3V3 invalid

o Bit 5-15: Reserved

17.3 IBIT (Initiated Built-In Test) Furthermore all systems have an IBIT infrastructure, which allows running self tests from remote clients using binary messages. The same infrastructure is used by the Dot-Command .BIT and the BIT C-Rem (discrete

Page 283: DATaRec 4 Series

DATaRec-4 Programming Manual Built-In Tests (BIT) in the DATaRec® 4 and MDR

Recorder Family

Page 17-3

contact remote interface) input, which start the complete set of implemented tests on the Link Module, MDR main frame and the signal modules.

The following binary messages for self tests are supported:

• Self tests can be set up using IDC_SELFTEST_PARAMETERS, which allows selecting and starting specific types of tests. Self test types are FPGA_REGISTERS, SDRAM, INTERFACE, CLOCK, LED, MOD_SPECIFIC, MEDIA and CONT_LED. Not all test types are implemented for both platforms.

• The self test state can be polled using IDC_SELFTEST_STATE. • The self test results can be retrieved using IDC_SELFTEST_RESULTS.

A subset of the tests available via the IBIT infrastructure is run as PBIT during the boot phase.

When an error occurs during a PBIT, CBIT or IBIT the Chapter 10 health condition bit SELFTEST_ERROR is set on the corresponding channel. In this case the recorder (Link Module, MDR) is treated as a “channel”. This is because the health bit infrastructure is channel oriented.

The following PBIT and CBIT operations are supported in the signal modules:

• Analog modules have a calibration system. The channels are calibrated after power-on and after every parameter change automatically. This calibration does also a hardware validation check - verifies, if the measured and calculated analog offset and gain values are within their expected range. If any analog or digital components are faulty, it will be recognized and reported as “Calibration Error” or “Hardware Error”.

• Some bus recording modules (e.g. ARINC429) have own test pattern generator functions - and the inputs of the signal interfaces can be connected to this built-in signal generators. During PBIT the modules are checking if the inputs are working properly, and giving “Self-Test Error” in case of troubles.

17.3.1 IBIT via MDR Front Panel

Supplementary to mentioned interfaces it is possible to start the following tests using the MDR front panel:

• BIT, either selectable by test type or all, can be run on the main frame and all modules • A main frame <–> module communication test can be run by pressing a three-button combination

(MODE + EVENT and then STOP). Errors would be directly shown on the Display

Page 284: DATaRec 4 Series

DATaRec-4 Programming Manual RPM Signals

Page 18-4

18 RPM Signals

In RPM mode, the input signal is amplified or attenuated according to the selected input range and afterwards compared to a threshold level (the dotted red line in the diagram). This threshold level can be programmed to be anywhere within the limits of the input range. The comparator output is sampled with 16 or 32 times the analog sampling rate, according to the "bits per sample" parameter. The sampled RPM signal passes both a digital hold off filter with programmable hold off time and a delay line. Subsequently, the RPM data is inserted into the data stream in the same ay as analog data, i.e. using 16 or 32 bit words.

For example a value of 0x1E07, in binary representation: 0b0001.1110.0000.0111, corresponds to an input signal which was at or above the threshold level at the sample position where the "ones" in the binary representations are located. This is not part of the IRIG106 chapter 10 standard. This format has advantages compared to only store the rotations per second in an analog format. This format is able to store a very big range. And with its pulses an analysis software is able to calculate the derivative.

To calculate the rotations per minute there exist principal two methods. The first is called normal direct frequency counting. It's only necessary to count the rising edges for a fixed time e.g. for one second. The counts directly correspond to the frequency. This method has two disadvantages. The resolution is only 1 Hz, and the number of digits depends on the input frequency. A 1 Hz input gives only one digit, a 1234 Hz input gives 4 digits. The second method is called reciprocal frequency counting. This method doesn’t counts the input signal it counts the period time between the events (the rising edges). The resolution corresponds to the sampling rate of the RPM signal, 16 or 32 times the analog sampling rate. If the channel runs with an analog sampling rate of 48 ksps in 16 Bit mode, the time resolution is

��∗�� ��=

��� ��= 1.3 µs. In this example the first period of the signal is 10 samples

from the first rising edge to the second. This results in a frequency of ��� ��

��=

76.8 kHz for the first period of input signal.

The RPMs calculates to ��� = ������ !" ∗ 60$%&

'()∗ ��*+�+����,-.-/,

The PulsesPerRotation depends on the sensor and gearbox.

0x1E07 0xFC0F 0xF801 0xF83F 0xC1F016Bit