Skip to main content

Transducer Services

The IEEE 1451.0 define the messages structure for messaging exchange.

info

The Message Structure is defined in the 11 Transducer Services. Check this IEEE 1451.0-2024.

Messages Type

The message exhange uses octets arrays reads from left to right. The message structure is defined as follows:

[octet 1] [octet 2] [octet N]

Message Types between NCAP and TIM

  • Command
  • Reply
  • TIM Announcement
  • TIM Notification

Messages Structure

It is composed by five octets: Table 64 and Table 65 - Transducer service message structure

  • Command class Id: defined in (Section 11.2, Table 69)
  • Command function Id: defined in (Section 11.2.2)
  • Transducer message type: defined in (Section 11.1.2)
  • Length (most significant octet)
  • Length (least significant octet)

Body

It is composed by octets Array:

  • UUID timId: defined in (Section 11.2, Table 69)
  • TransducerChannel Id: defined in (Section 11.2.2)
  • Message type-dependent body: Message class, function, Message type-dependent octets (defined in 11.1.3.)
  • ...

Replay Messages Structure

Header

  • same as before

Body

It is composed by octets Array:

  • UUID timId: defined in (Section 11.2, Table 69)
  • TransducerChannel Id: defined in (Section 11.2.2)
  • Success/Fail Flag: 1 for sucess and 0 for fail Message class, function, Message type-dependent octets (defined in 11.1.3.)
  • Reply message-dependent fields: defined in (Section 11.2)

Announcement Messages Structure

Header

  • same as before

Body

It is composed by octets Array: Table 67 - TIM announcement message structure

  • UUID timId: defined in (Section 11.2, Table 69)
  • TransducerChannel Id: defined in (Section 11.2.2)
  • Announcement message-dependent fields:: defined in (Section 11.2.8.2 or Section 11.2.8.5.)

Notification Messages Structure

Header

  • same as before

Body

It is composed by octets Array: Table 68 - TIM notification message structure

  • UUID timId: defined in (Section 11.2, Table 69)
  • TransducerChannel Id: defined in (Section 11.2.2)
  • Notification message-dependent fields:: defined in (Section 11.2.7.6.)

Commands Classes (CmdClassId)

  • Table 69 - Standard command classes
  • CommonCmd: Commands common to the TIM and TransducerChannel (1)
  • XdcrIdle: Transducer idle state (defined Table 80) (2)
  • XdcrOperate: Transducer operating state (3)
  • XdcrEither: Transducer either idle or operating state (4)
  • TIMsleep: Sleep state (5)
  • TIMActive: TIM active state commands (6)
  • AnyState: Any state (7)

Commands Function Identification (CmdFunctionId)

Table 70 - Common commands

  • CmdClassId: (1)
    • Query TEDS: (1)
    • Read TEDS segment: (2)
    • Write TEDS segment: (3)
    • Update TEDS: (4)
    • Run self-test: (5)
    • Write service request mask: (6)
    • Read service request mask: (7)
    • Read status-event register: (8)
    • Read status-condition register: (9)
    • Clear status-event register: (10)
    • Write status-event protocol state: (11)
    • Read status-event protocol state: (12)
    • TIM discovery: (13)
    • Transducer discovery: (14)

TEDS Commands and Replies

TEDS Access Code

Table 71 - Standard commands and replies

  • MetaTEDS: Meta TEDS (1)
  • MetaIdTEDS: MetaIdentification TEDS (2)
  • ChanTEDS: TransducerChannel TEDS (3)
  • ChanIdTEDS: TransducerChannel Identification TEDS (4)
  • CalTEDS: Calibration TEDS (5)
  • CalIdTEDS: Calibration identification TEDS (6)
  • EUASTEDS: End users’ application-specific TEDS (7)
  • FreqRespTEDS: Frequency response TEDS (8)
  • TransferTEDS: Transfer function TEDS (9)
  • CommandTEDS: Commands TEDS (10)
  • TitleTEDS: Location and title TEDS (11)
  • XdcrName: User’s transducer name TEDS (12)
  • PHYTEDS: PHY TEDS (13)
  • GeoLocTEDS: Geographic location TEDS (14)
  • UnitsExtension: Units extension TEDS (15)
  • SecurityTEDS: Security TEDS (16)
  • TimeSyncTEDS: Time Synchronous TEDS (17)

Query TEDS

  • TEDSAccessCode: (UInt8)

Replay Query TEDS

  • TEDSAttrib: TEDS attributes (UInt8) (defined Table 74)
  • TEDSStatus: TEDS status (UInt8)
  • TEDSSize: Current size of the TEDS (UInt32)
  • TEDSCkSum: TEDS checksum (UInt16)
  • maxTEDSSize: Maximum TEDS size (UInt32)

Read TEDS

  • TEDSAccessCode: (UInt8)
  • TEDSOffset: (UInt32)

Replay Read TEDS

  • TEDSOffset: (UInt32)
  • rawTEDSBlock: (OctetArray)

Write TEDS

  • TEDSAccessCode: (UInt8)
  • TEDSOffset: (UInt32)
  • rawTEDSBlock: (OctetArray)

Replay Write TEDS

  • No Replay

Update TEDS

  • TEDSAccessCode: (UInt8)

Replay Update TEDS

  • Same as Query TEDS

TIM Discovery

  • No Arguments

TIM Discovery Replay

  • timName: (_String)

TIM Transducer Discovery

  • UUID timId

TIM Discovery Replay

  • numOfTransducerChannels: (UInt8)
  • transducerChannelIDs: (UInt16Array)
  • transducerChannelNames: (StringArray)

Transducer Idle State

Table 81 - Transducer idle commands and replies

  • CmdClassId: (2)
    • Set TransducerChannel data repetition count: (1)
    • Set TransducerChannel pre-trigger count: (2)
    • AddressGroup definition:(3)
    • Sampling mode: (4)
    • Data Transmission mode: (5)
    • Buffered state: (6)
    • End-of-data-set operation: (7)
    • Actuator-halt operating mode: (8)
    • Edge-to-report: (9)
    • Calibrate TransducerChannel: (10)
    • Zero TransducerChannel: (11)
    • Write corrections state: (12)
    • Read corrections state: (13)
    • Write TransducerChannel initiate trigger state: (14)
    • Write TransducerChannel initiate trigger configuration: (15)

Set TransducerChannel data repetition count

  • repCount: (UInt16)

Set TransducerChannel data repetition count Replay

  • No Replay

Set TransducerChannel pre-trigger count

  • preTrigCount: (UInt16)

Set TransducerChannel data repetition count Replay

  • No Replay

AddressGroup definition

  • groupAdd: (UInt16)

AddressGroup definition Replay

  • No Replay

Sampling mode

  • sampleMode: (UInt8)

Sampling mode Replay

  • No Replay

Data Transmission mode

  • xmitMode: (UInt8)

Data Transmission mode Replay

  • No Replay

Buffered state

  • bufferOnOff: (Boolean)

Buffered state Replay

  • No Replay

End-of-data-set operation

  • endDataSetMode: (UInt8)

End-of-data-set operation Replay

  • No Replay

Actuator-halt operating mode

  • actuatorHalt: (UInt8)

Actuator-halt operating mode Replay

  • No Replay

Edge-to-report

  • edgeReported: (UInt8)

Edge-to-report Replay

  • No Replay

Calibrate TransducerChannel

  • No Command

Calibrate TransducerChannel Replay

  • No Replay

Zero TransducerChannel

  • No Command

Zero TransducerChannel Replay

  • No Replay

Write corrections state

  • correctState: (UInt8)

Write corrections state Replay

  • No Replay

Read corrections state

  • No Command

Read corrections state Replay

  • correctState: (UInt8)

Write TransducerChannel initiate trigger state

  • eventTrig: (Boolean)

Write TransducerChannel initiate trigger state Replay

  • No Replay

Write TransducerChannel initiate trigger configuration

  • initTrig: (Boolean)
  • initTrig.destId: (UUID)
  • initTrig.channelId: (UInt16)
  • initTrig.qosParams: (Struct)

Write TransducerChannel initiate trigger configuration Replay

  • No Replay

Transducer Operational State

Table 88 - Transducer operating state commands and replies

  • CmdClassId: (3)
    • Read TransducerChannel data-set segment: (1)
    • Write TransducerChannel data-set segment: (2)
    • Trigger command: (3)
    • Abort Trigger: (4)

Read TransducerChannel data-set segment

  • dataSetOffset: (UInt32)

Read TransducerChannel data-set segment Replay

  • readSensorOffset: (UInt32)
  • timestampFlag: (UInt8)
  • timestamp: (TimeInstance)
  • readSensorData: (Array UInt8)

Write TransducerChannel data-set segment

  • writeActuatorOffset: (UInt32)
  • timestampFlag: (UInt8)
  • timestamp: (TimeInstance)
  • readSensorData: (Array UInt8)

Write TransducerChannel data-set segment Replay

  • writeActuatorOffset: (UInt32)

Trigger command and Abort Trigger

  • No Command

Trigger command and Abort Trigger Replay

  • No Replay

Transducer Idle and Operational State

Table 92 - Transducer either idle or operating commands and replies

  • CmdClassId: (4)
    • TransducerChannel Operate: (1)
    • TransducerChannel Idle: (2)
    • Write TransducerChannel trigger state: (3)
    • Read TransducerChannel trigger state: (4)
    • Read TransducerChannel data repetition count: (5)
    • Read TransducerChannel pre-trigger count: (6)
    • Read AddressGroup assignment: (7)
    • Read Sampling mode: (8)
    • Read data transmission mode: (9)
    • Read buffered state: (10)
    • Read end-of-data-set operation: (11)
    • Read actuator halt mode: (12)
    • Read edge-to-report mode: (13)
    • Read TransducerChannel initiate trigger state: (14)
    • Read TransducerChannel initiate trigger configuration: (15)
    • Device clear: (16)

TransducerChannel Operate

  • No Command

TransducerChannel Operate Replay

  • No Replay

TransducerChannel Idle

  • No Command

TransducerChannel Idle Replay

  • No Replay

Write TransducerChannel trigger state

  • trigState: (Boolean)

Write TransducerChannel trigger state Replay

  • No Replay

Read TransducerChannel trigger state

  • No Command

Read TransducerChannel trigger state Replay

  • trigState: (Boolean)

Read TransducerChannel datarepetition count

  • No Replay

Read TransducerChannel data repetition count Replay

  • repCount: (UInt16)

Read TransducerChannel pre-trigger count

  • No Replay

Read TransducerChannel pre-trigger count Replay

  • preTrigCount: (UInt16)

Read AddressGroup assignment

  • No Command

Read AddressGroup assignment Replay

  • grpAssignment: (UInt16)

Read Sampling mode

  • No Command

Read Sampling mode Replay

  • sampleMode: (UInt8)

Read data transmission mode

  • No Command

Read data transmission mode Replay

  • xmitMode: (UInt8)

Read buffered state

  • No Command

Read buffered state Replay

  • bufferOnOff: (Boolean)

Read end-of-data-set operation

  • No Command

Read end-of-data-set operation Replay

  • endDataSetMode: (UInt8)

Read actuator halt mode

  • No Command

Read actuator halt mode Replay

  • actuatorHalt: (UInt8)

Read edge-to-report mode

  • No Command

Read edge-to-report mode Replay

  • edgeReported: (UInt8)

RRead TransducerChannel initiate trigger state

  • No Command

Read TransducerChannel initiate trigger state Replay

  • eventTrig: (Boolean)

Read TransducerChannel initiate trigger configuration

  • No Command

Read TransducerChannel initiate trigger configuration Replay

  • initTrig: (Boolean)

Device clear

  • No Command

Device clear Replay

  • No Replay

TIM Sleep State

Table 94 - Sleep state commands and replies

  • CmdClassId: (5)
    • Wake-up: (1)

TIM Sleep State Replay

  • No Replay

TIM active state

Table 96 - TIM active state commands and replies

  • CmdClassId: (6)
    • Read TIM version: (1)
    • TIM Sleep: (2)
    • Store operational setup: (3)
    • Recall operational setup: (4)
    • Read IEEE 1451.0 Version: (5)
    • Event Notification: (6)
    • Set transducer event threshold: (7)

Read TIM version

  • No Command

Read TIM version Replay

  • timVersion: (UInt16)

TIM Sleep

  • No Command

TIM Sleep Replay

  • No Replay

Store operational setup

  • storState: (UInt8)

Store operational setup Replay

  • No Replay

Recall operational setup

  • storState: (UInt8)

Recall operational setup Replay

  • No Replay

Read IEEE 1451.0 Version

  • No Command

Read IEEE 1451.0 Version Replay

  • standardVersion: (UInt8)

Event Notification

  • No Command

Event Notification Replay

  • transducerChannelId: (UInt16)
  • transducerData: (_String)
  • transducerEventId: (UInt16)
  • eventTime: (TimeInstance)
  • transducerEventMsg: (_String)

Set transducer event threshold

  • transducerChannelId: (UInt16)
  • minValue: (_String)
  • maxValue: (_String)

Set transducer event threshold Replay

  • No Replay

TIM Any State

Table 99 - TIM any state commands and replies

  • CmdClassId: (7)
    • Reset: (1)
    • TIMAnnouncement: (2)
    • TIMHeartbeat: (3)
    • TIMDeparture: (4)
    • TransducerAnnouncement: (5)
    • TransducerDepature: (6)

Reset

  • No Command

Reset Replay

  • No Replay

TIM Announcement

  • No Command

TIM Announcement Replay

  • timName: (_String)
  • addressType: (AddressType)
  • address: (OctetArray)
  • timId: (UUID)

TIM Heartbeat

  • No Command

TIM Heartbeat Replay

  • timName: (_String)

TIM Departure

  • No Command

TIM Departure Replay

  • timName: (_String)

Transducer Announcement

  • No Command

Transducer Announcement Replay

  • transducerChannelName: (_String)

Transducer Depature

  • No Command

Transducer Depature Replay

  • transducerChannelName: (_String)

Messages Playground

Header

Body