Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
packet-ecatmb.h
1/* packet-ecatmb.h
2 *
3 * Copyright (c) 2007 by Beckhoff Automation GmbH
4 *
5 * Wireshark - Network traffic analyzer
6 * By Gerald Combs <[email protected]>
7 * Copyright 1998 Gerald Combs
8 *
9 * SPDX-License-Identifier: GPL-2.0-or-later
10 */
11#ifndef _PACKET_ECATMAILBOX_H_
12#define _PACKET_ECATMAILBOX_H_
13
14#include <ws_diag_control.h>
15DIAG_OFF_PEDANTIC
16
17/* Ensure the same data layout for all platforms */
18
22typedef struct TETHERNET_ADDRESS
23{
24 uint8_t b[6];
25} ETHERNET_ADDRESS, *PETHERNET_ADDRESS;
26
28#define ETHERNET_ADDRESS_LEN ((int) sizeof(ETHERNET_ADDRESS))
29
30
31/* EtherCAT mailbox protocol type identifiers */
32#define ETHERCAT_MBOX_TYPE_ADS 1
33#define ETHERCAT_MBOX_TYPE_EOE 2
34#define ETHERCAT_MBOX_TYPE_COE 3
35#define ETHERCAT_MBOX_TYPE_FOE 4
36#define ETHERCAT_MBOX_TYPE_SOE 5
37#define ETHERCAT_MBOX_TYPE_VOE 15
44{
45 uint16_t Control;
46 struct
47 {
48 uint16_t Channel : 6;
49 uint16_t Priority : 2;
50 uint16_t Type : 4;
51 uint16_t Counter : 3;
52 uint16_t Unsupported : 1;
53 } v;
55
56
67
68#define ETHERCAT_MBOX_HEADER_LEN ((int) sizeof(ETHERCAT_MBOX_HEADER))
69
70/* EoE*/
71#define ETHERNET_FRAMENO_MASK 0x0000000F
72
73#define EOE_TYPE_FRAME_FRAG 0 /* ETHERCAT_EOE_HEADER followed by frame fragment (ETHERCAT_EOE_TIMESTAMP may included) */
74#define EOE_TYPE_TIMESTAMP_RES 1 /* ETHERCAT_EOE_HEADER followed by ETHERCAT_EOE_TIMESTAMP */
75#define EOE_TYPE_INIT_REQ 2 /* ETHERCAT_EOE_HEADER followed by ETHERCAT_EOE_INIT */
76#define EOE_TYPE_INIT_RES 3 /* ETHERCAT_EOE_HEADER */
77#define EOE_TYPE_MACFILTER_REQ 4 /* ETHERCAT_EOE_HEADER followed by ETHERCAT_EOE_MACFILTER */
78#define EOE_TYPE_MACFILTER_RES 5 /* ETHERCAT_EOE_HEADER */
79
80#define EOE_RESULT_NOERROR 0x0000
81#define EOE_RESULT_UNSPECIFIED_ERROR 0x0001
82#define EOE_RESULT_UNSUPPORTED_TYPE 0x0002
83#define EOE_RESULT_NO_IP_SUPPORT 0x0201
84#define EOE_RESULT_NO_MACFILTERMASK_SUPPORT 0x0401
85
86
87/*typedef struct TETHERCAT_EOE_INIT
88{
89 uint32_t ContainsMacAddr :1;
90 uint32_t ContainsIpAddr :1;
91 uint32_t ContainsSubnetMask :1;
92 uint32_t ContainsDefaultGateway :1;
93 uint32_t ContainsDnsServer :1;
94 uint32_t ContainsDnsName :1;
95 uint32_t Reserved :26;
96 ETHERNET_ADDRESS MacAddr;
97 uint32_t IpAddr;
98 uint32_t SubnetMask;
99 uint32_t DefaultGateway;
100 uint32_t DnsServer;
101 char DnsName[32];
102} ETHERCAT_EOE_INIT, *PETHERCAT_EOE_INIT;*/
103#define ETHERCAT_EOE_INIT_LEN 58 /*sizeof(ETHERCAT_EOE_INIT)*/
104
109{
110 struct
111 {
112 uint16_t MacFilterCount : 4;
113 uint16_t MacFilterMaskCount : 2;
114 uint16_t Reserved1 : 1;
115 uint16_t NoBroadcasts : 1;
116 uint16_t Reserved2 : 8;
117 } v;
118 uint16_t Options;
120
121
131
133#define ETHERCAT_EOE_MACFILTER_LEN ((int) sizeof(ETHERCAT_EOE_MACFILTER))
134
135
143
145#define ETHERCAT_EOE_TIMESTAMP_LEN ((int) sizeof(ETHERCAT_EOE_TIMESTAMP))
146
147
152{
153 struct
154 {
155 uint16_t Fragment : 6;
156 uint16_t OffsetBuffer : 6;
158 uint16_t FrameNo : 4;
159 } v;
160 uint16_t Result;
162
163
168{
169 struct
170 {
171 uint16_t Type : 4;
172 uint16_t PortAssign : 4;
173 uint16_t LastFragment : 1;
174 uint16_t TimeStampAppended : 1;
175 uint16_t TimeStampRequested : 1;
176 uint16_t Reserved : 5;
177 } v;
178 uint16_t Info;
180
181
190
192#define ETHERCAT_EOE_HEADER_LEN ((int) sizeof(ETHERCAT_EOE_HEADER))
193
194/* CANopen*/
195#define ETHERCAT_COE_TYPE_EMERGENCY 1
196#define ETHERCAT_COE_TYPE_SDOREQ 2
197#define ETHERCAT_COE_TYPE_SDORES 3
198#define ETHERCAT_COE_TYPE_TXPDO 4
199#define ETHERCAT_COE_TYPE_RXPDO 5
200#define ETHERCAT_COE_TYPE_TXPDO_RTR 6 /* Remote transmission request of TXPDO (master requested)*/
201#define ETHERCAT_COE_TYPE_RXPDO_RTR 7 /* Remote transmission request of RXPDO (slave requested) */
202#define ETHERCAT_COE_TYPE_SDOINFO 8
203
208{
209 struct
210 {
211 uint16_t Number : 9;
212 uint16_t Reserved : 3;
213 uint16_t Type : 4;
214 } v;
215 uint16_t header;
217
219#define ETHERCAT_COE_HEADER_LEN ((int) sizeof(ETHERCAT_COE_HEADER))
220
221
228typedef union tSdoHeaderUnion
229{
230 struct
231 { /* Initiate Download Request (Ccs = 1) */
232 uint8_t SizeInd : 1;
233 uint8_t Expedited : 1;
234 uint8_t Size : 2;
235 uint8_t Complete : 1;
236 uint8_t Ccs : 3;
237 } Idq;
238
239 struct
240 { /* Initiate Download Response (Scs = 3) */
241 uint8_t Reserved : 5;
242 uint8_t Scs : 3;
243 } Ids;
244
245 struct
246 { /* Download Segment Request (Ccs = 0) */
247 uint8_t LastSeg : 1;
248 uint8_t Size : 3;
249 uint8_t Toggle : 1;
250 uint8_t Ccs : 3;
251 } Dsq;
252
253 struct
254 { /* Download Segment Response (Scs = 1) */
255 uint8_t Reserved : 4;
256 uint8_t Toggle : 1;
257 uint8_t Scs : 3;
258 } Dss;
259
260 struct
261 { /* Initiate Upload Request (Ccs = 2) */
262 uint8_t Reserved : 4;
263 uint8_t Complete : 1;
264 uint8_t Ccs : 3;
265 } Iuq;
266
267 struct
268 { /* Initiate Upload Response (Scs = 2) */
269 uint8_t SizeInd : 1;
270 uint8_t Expedited : 1;
271 uint8_t Size : 2;
272 uint8_t Complete : 1;
273 uint8_t Scs : 3;
274 } Ius;
275
276 struct
277 { /* Upload Segment Request (Ccs = 3) */
278 uint8_t Reserved : 4;
279 uint8_t Toggle : 1;
280 uint8_t Ccs : 3;
281 } Usq;
282
283 struct
284 { /* Upload Segment Response (Scs = 0) */
285 uint8_t LastSeg : 1;
286 uint8_t Bytes : 3;
287 uint8_t Toggle : 1;
288 uint8_t Scs : 3;
289 } Uss;
290
291 struct
292 { /* Abort Transfer (Ccs = 4) */
293 uint8_t Reserved : 5;
294 uint8_t Ccs : 3;
295 } Abt;
296
297 uint8_t CS;
299
300
311
312#define ETHERCAT_SDO_HEADER_LEN 8 /* sizeof(ETHERCAT_SDO_HEADER)*/
313
314#define SDO_CCS_DOWNLOAD_SEGMENT 0
315#define SDO_CCS_INITIATE_DOWNLOAD 1
316#define SDO_CCS_INITIATE_UPLOAD 2
317#define SDO_CCS_UPLOAD_SEGMENT 3
318#define SDO_CCS_ABORT_TRANSFER 4
319
320#define SDO_SCS_UPLOAD_SEGMENT 0
321#define SDO_SCS_DOWNLOAD_SEGMENT 1
322#define SDO_SCS_INITIATE_UPLOAD 2
323#define SDO_SCS_INITIATE_DOWNLOAD 3
324
325/* CoE SDO Information */
326#define ECAT_COE_INFO_OPCODE_LIST_Q 1
327#define ECAT_COE_INFO_OPCODE_LIST_S 2
328#define ECAT_COE_INFO_OPCODE_OBJ_Q 3
329#define ECAT_COE_INFO_OPCODE_OBJ_S 4
330#define ECAT_COE_INFO_OPCODE_ENTRY_Q 5
331#define ECAT_COE_INFO_OPCODE_ENTRY_S 6
332#define ECAT_COE_INFO_OPCODE_ERROR_S 7
333
334#define ECAT_COE_INFO_LIST_TYPE_LENGTH 0
335#define ECAT_COE_INFO_LIST_TYPE_ALL 1
336#define ECAT_COE_INFO_LIST_TYPE_PDOMAP 2
337#define ECAT_COE_INFO_LIST_TYPE_BACKUP 3
338
339#define ECAT_COE_INFO_OBJCODE_NULL 0
340#define ECAT_COE_INFO_OBJCODE_DOMAIN 2
341#define ECAT_COE_INFO_OBJCODE_DEFTYPE 5
342#define ECAT_COE_INFO_OBJCODE_DEFSTRUCT 6
343#define ECAT_COE_INFO_OBJCODE_VAR 7
344#define ECAT_COE_INFO_OBJCODE_ARRAY 8
345#define ECAT_COE_INFO_OBJCODE_RECORD 9
346
347#define ECAT_COE_INFO_OBJCAT_OPTIONAL 0
348#define ECAT_COE_INFO_OBJCAT_MANDATORY 1
349
350#define ECAT_COE_INFO_OBJACCESS_RO 0x07
351#define ECAT_COE_INFO_OBJACCESS_RW 0x3f
352
357{
358 uint16_t ListType;
359 struct
360 {
361 uint16_t Index[1];
362 } Res;
364
365
370{
371 uint16_t Index;
372 struct
373 {
374 uint16_t DataType;
375 uint8_t MaxSubIndex;
376 uint8_t ObjCode;
377 char Name[1];
378 } Res;
380
381
386{
387 uint16_t Index;
388 uint8_t SubIdx;
389 uint8_t ValueInfo;
393 struct
394 {
395 uint16_t DataType;
396 uint16_t BitLen;
397 uint16_t ObjAccess;
399 } Res;
401
402
411
412
424
425
429typedef union tSdoControlUnion
430{
431 struct
432 {
433 uint8_t OpCode : 7;
434 uint8_t InComplete : 1;
435 } v;
436 uint8_t Control;
438
439
450
452#define ETHERCAT_SDO_INFO_LISTREQ_LEN 6 /*offsetof(ETHERCAT_SDO_INFO_HEADER, anSdoInfoUnion.List.Res)*/
453
454
455/* FoE (File Access over EtherCAT) — OpMode values */
456#define ECAT_FOE_OPMODE_RRQ 1
457#define ECAT_FOE_OPMODE_WRQ 2
458#define ECAT_FOE_OPMODE_DATA 3
459#define ECAT_FOE_OPMODE_ACK 4
460#define ECAT_FOE_OPMODE_ERR 5
461#define ECAT_FOE_OPMODE_BUSY 6
463/* FoE error codes */
464#define ECAT_FOE_ERRCODE_NOTDEFINED 0
465#define ECAT_FOE_ERRCODE_NOTFOUND 1
466#define ECAT_FOE_ERRCODE_ACCESS 2
467#define ECAT_FOE_ERRCODE_DISKFULL 3
468#define ECAT_FOE_ERRCODE_ILLEAGAL 4
469#define ECAT_FOE_ERRCODE_PACKENO 5
470#define ECAT_FOE_ERRCODE_EXISTS 6
471#define ECAT_FOE_ERRCODE_NOUSER 7
472#define ECAT_FOE_ERRCODE_BOOTSTRAPONLY 8
473#define ECAT_FOE_ERRCODE_NOTINBOOTSTRAP 9
480{
481 uint32_t FileLength;
482 struct
483 {
484 uint16_t PacketNo;
485 uint16_t Reserved2;
486 } v;
487 uint32_t ErrorCode;
488 struct
489 {
490 uint16_t Done;
491 uint16_t Entire;
492 } v2;
494
495
504{
505 uint8_t OpMode;
506 uint8_t Reserved1;
508 /* typedef union tMailBoxDataUnion
509 {
510 char Name[] (RRQ, WRQ) rest of mailbox data
511 uint8_t Data[] (DATA) rest of mailbox data
512 char ErrorText[] (ERR) rest of mailbox data
513 } MailBoxDataUnion; */
515
517#define ETHERCAT_FOE_HEADER_LEN 6 /*sizeof(ETHERCAT_FOE_HEADER)*/
518
519
523typedef struct
524{
525 uint16_t Cmd;
526 uint16_t Size;
527 uint16_t AddressLW;
528 uint16_t AddressHW;
530
531/* SoE (Servo Drive Profile over EtherCAT) */
532#define ECAT_SOE_OPCODE_RRQ 1
533#define ECAT_SOE_OPCODE_RRS 2
534#define ECAT_SOE_OPCODE_WRQ 3
535#define ECAT_SOE_OPCODE_WRS 4
536#define ECAT_SOE_OPCODE_NFC 5
543{
544 struct
545 {
546 uint8_t OpCode : 3;
547 uint8_t InComplete : 1;
548 uint8_t Error : 1;
549 uint8_t DriveNo : 3;
551 uint8_t DataState : 1;
552 uint8_t Name : 1;
553 uint8_t Attribute : 1;
554 uint8_t Unit : 1;
555 uint8_t Min : 1;
556 uint8_t Max : 1;
557 uint8_t Value : 1;
558 uint8_t Reserved : 1;
559 } v;
560 struct
561 {
562 uint8_t Control;
563 uint8_t Element;
564 } v2;
566
567
572{
573 uint16_t IDN;
574 uint16_t FragmentsLeft;
576
577
585{
588 /* typedef union tMailBoxDataUnion
589 {
590 uint8_t Data[] rest of mailbox data if (Error==0)
591 uint16_t ErrorCode if (Error==1)
592 } MailBoxDataUnion; */
594
596#define ETHERCAT_SOE_HEADER_LEN ((int) sizeof(ETHERCAT_SOE_HEADER))
597
598
607
609#define ETHERCAT_VOE_HEADER_LEN 6 /*sizeof(ETHERCAT_VOE_HEADER)*/
610
620extern void init_mbx_header(PETHERCAT_MBOX_HEADER pMbox, tvbuff_t *tvb, int offset);
621
622DIAG_ON_PEDANTIC
623#endif /* _PACKET_ECATMAILBOX_H_ */
EtherCAT firmware update command header.
Definition packet-ecatmb.h:524
uint16_t AddressLW
Definition packet-ecatmb.h:527
uint16_t Cmd
Definition packet-ecatmb.h:525
uint16_t Size
Definition packet-ecatmb.h:526
uint16_t AddressHW
Definition packet-ecatmb.h:528
EtherCAT EoE (Ethernet over EtherCAT) mailbox header.
Definition packet-ecatmb.h:186
EoeHeaderDataUnion anEoeHeaderDataUnion
Definition packet-ecatmb.h:188
EoeHeaderInfoUnion anEoeHeaderInfoUnion
Definition packet-ecatmb.h:187
EtherCAT EoE (Ethernet over EtherCAT) MAC filter configuration.
Definition packet-ecatmb.h:126
EoeMacFilterOptionsUnion anEoeMacFilterOptionsUnion
Definition packet-ecatmb.h:127
ETHERNET_ADDRESS MacFilter[16]
Definition packet-ecatmb.h:128
ETHERNET_ADDRESS MacFilterMask[4]
Definition packet-ecatmb.h:129
EtherCAT EoE timestamp record.
Definition packet-ecatmb.h:140
uint32_t TimeStamp
Definition packet-ecatmb.h:141
EtherCAT FoE (File Access over EtherCAT) mailbox header.
Definition packet-ecatmb.h:504
uint8_t OpMode
Definition packet-ecatmb.h:505
FoeHeaderDataUnion aFoeHeaderDataUnion
Definition packet-ecatmb.h:507
uint8_t Reserved1
Definition packet-ecatmb.h:506
EtherCAT mailbox header, common to all mailbox protocol frames.
Definition packet-ecatmb.h:61
uint16_t Address
Definition packet-ecatmb.h:63
MbxHeaderControlUnion aControlUnion
Definition packet-ecatmb.h:65
uint16_t Length
Definition packet-ecatmb.h:62
EtherCAT CoE SDO (Service Data Object) header.
Definition packet-ecatmb.h:305
SdoHeaderUnion anSdoHeaderUnion
Definition packet-ecatmb.h:306
uint8_t SubIndex
Definition packet-ecatmb.h:308
uint16_t Index
Definition packet-ecatmb.h:307
uint32_t Data
Definition packet-ecatmb.h:309
EtherCAT SDO Information entry description payload.
Definition packet-ecatmb.h:386
uint16_t BitLen
Definition packet-ecatmb.h:396
uint8_t ValueInfo
Definition packet-ecatmb.h:389
uint8_t SubIdx
Definition packet-ecatmb.h:388
uint16_t DataType
Definition packet-ecatmb.h:395
struct TETHERCAT_SDO_INFO_ENTRY::@551 Res
uint16_t Index
Definition packet-ecatmb.h:387
uint16_t ObjAccess
Definition packet-ecatmb.h:397
EtherCAT SDO Information error response payload.
Definition packet-ecatmb.h:407
char ErrorText[1]
Definition packet-ecatmb.h:409
uint32_t ErrorCode
Definition packet-ecatmb.h:408
EtherCAT SDO Information mailbox header.
Definition packet-ecatmb.h:444
uint16_t FragmentsLeft
Definition packet-ecatmb.h:447
uint8_t Reserved
Definition packet-ecatmb.h:446
SdoControlUnion anSdoControlUnion
Definition packet-ecatmb.h:445
SdoInfoUnion anSdoInfoUnion
Definition packet-ecatmb.h:448
EtherCAT SDO Information list request/response payload.
Definition packet-ecatmb.h:357
uint16_t ListType
Definition packet-ecatmb.h:358
struct TETHERCAT_SDO_INFO_LIST::@549 Res
uint16_t Index[1]
Definition packet-ecatmb.h:361
EtherCAT SDO Information object description payload.
Definition packet-ecatmb.h:370
uint8_t ObjCode
Definition packet-ecatmb.h:376
uint16_t DataType
Definition packet-ecatmb.h:374
struct TETHERCAT_SDO_INFO_OBJ::@550 Res
uint8_t MaxSubIndex
Definition packet-ecatmb.h:375
char Name[1]
Definition packet-ecatmb.h:377
uint16_t Index
Definition packet-ecatmb.h:371
EtherCAT SoE (Servo Drive Profile over EtherCAT) mailbox header.
Definition packet-ecatmb.h:585
SoeHeaderDataUnion anSoeHeaderDataUnion
Definition packet-ecatmb.h:587
SoeHeaderControlUnion anSoeHeaderControlUnion
Definition packet-ecatmb.h:586
EtherCAT VoE (Vendor-specific over EtherCAT) mailbox header.
Definition packet-ecatmb.h:603
uint32_t VendorID
Definition packet-ecatmb.h:604
uint16_t VendorType
Definition packet-ecatmb.h:605
IEEE 802.3 Ethernet MAC address (6 octets).
Definition packet-ecatmb.h:23
uint8_t b[6]
Definition packet-ecatmb.h:24
Core tvbuff (testy virtual buffer) structure representing a region of packet data,...
Definition tvbuff-int.h:95
EtherCAT CoE (CANopen over EtherCAT) mailbox header.
Definition packet-ecatmb.h:208
uint16_t Reserved
Definition packet-ecatmb.h:212
struct TETHERCAT_COE_HEADER::@539 v
uint16_t Type
Definition packet-ecatmb.h:213
uint16_t header
Definition packet-ecatmb.h:215
uint16_t Number
Definition packet-ecatmb.h:211
Union providing typed access to the EoE header data word, interpreted by message type.
Definition packet-ecatmb.h:152
uint16_t FrameNo
Definition packet-ecatmb.h:158
uint16_t Fragment
Definition packet-ecatmb.h:155
uint16_t OffsetBuffer
Definition packet-ecatmb.h:156
struct tEoeHeaderDataUnion::@537 v
uint16_t Result
Definition packet-ecatmb.h:160
Union providing bit-field and raw access to the EoE header info word.
Definition packet-ecatmb.h:168
uint16_t Type
Definition packet-ecatmb.h:171
uint16_t Reserved
Definition packet-ecatmb.h:176
uint16_t Info
Definition packet-ecatmb.h:178
uint16_t TimeStampAppended
Definition packet-ecatmb.h:174
uint16_t TimeStampRequested
Definition packet-ecatmb.h:175
uint16_t LastFragment
Definition packet-ecatmb.h:173
uint16_t PortAssign
Definition packet-ecatmb.h:172
struct tEoeHeaderInfoUnion::@538 v
Union providing bit-field and raw access to EoE MAC filter options.
Definition packet-ecatmb.h:109
uint16_t NoBroadcasts
Definition packet-ecatmb.h:115
uint16_t MacFilterMaskCount
Definition packet-ecatmb.h:113
uint16_t Options
Definition packet-ecatmb.h:118
uint16_t MacFilterCount
Definition packet-ecatmb.h:112
struct tEoeMacFilterOptionsUnion::@536 v
uint16_t Reserved1
Definition packet-ecatmb.h:114
uint16_t Reserved2
Definition packet-ecatmb.h:116
Union providing typed access to the FoE header data word, interpreted by OpMode.
Definition packet-ecatmb.h:480
uint32_t FileLength
Definition packet-ecatmb.h:481
uint32_t ErrorCode
Definition packet-ecatmb.h:487
uint16_t Entire
Definition packet-ecatmb.h:491
uint16_t Reserved2
Definition packet-ecatmb.h:485
uint16_t Done
Definition packet-ecatmb.h:490
struct tFoeHeaderDataUnion::@554 v2
struct tFoeHeaderDataUnion::@553 v
uint16_t PacketNo
Definition packet-ecatmb.h:484
Union providing bit-field and raw access to the EtherCAT mailbox control word.
Definition packet-ecatmb.h:44
uint16_t Control
Definition packet-ecatmb.h:45
uint16_t Channel
Definition packet-ecatmb.h:48
uint16_t Counter
Definition packet-ecatmb.h:51
uint16_t Type
Definition packet-ecatmb.h:50
uint16_t Priority
Definition packet-ecatmb.h:49
uint16_t Unsupported
Definition packet-ecatmb.h:52
struct tMbxHeaderControlUnion::@535 v
Union providing bit-field and byte-level access to the SDO Information control octet.
Definition packet-ecatmb.h:430
uint8_t Control
Definition packet-ecatmb.h:436
struct tSdoControlUnion::@552 v
uint8_t OpCode
Definition packet-ecatmb.h:433
uint8_t InComplete
Definition packet-ecatmb.h:434
Union providing per-service-command bit-field access to the SDO command specifier byte.
Definition packet-ecatmb.h:229
uint8_t Bytes
Definition packet-ecatmb.h:286
uint8_t Scs
Definition packet-ecatmb.h:242
uint8_t LastSeg
Definition packet-ecatmb.h:247
uint8_t Reserved
Definition packet-ecatmb.h:241
uint8_t Size
Definition packet-ecatmb.h:234
uint8_t Toggle
Definition packet-ecatmb.h:249
uint8_t Expedited
Definition packet-ecatmb.h:233
uint8_t CS
Definition packet-ecatmb.h:297
uint8_t Complete
Definition packet-ecatmb.h:235
uint8_t Ccs
Definition packet-ecatmb.h:236
uint8_t SizeInd
Definition packet-ecatmb.h:232
Union providing typed access to all SDO Information payload variants.
Definition packet-ecatmb.h:417
ETHERCAT_SDO_INFO_ERROR Error
Definition packet-ecatmb.h:421
uint8_t Data[1]
Definition packet-ecatmb.h:422
ETHERCAT_SDO_INFO_OBJ Obj
Definition packet-ecatmb.h:419
ETHERCAT_SDO_INFO_LIST List
Definition packet-ecatmb.h:418
ETHERCAT_SDO_INFO_ENTRY Entry
Definition packet-ecatmb.h:420
Union providing bit-field and byte-level access to the SoE header control and element fields.
Definition packet-ecatmb.h:543
uint8_t Control
Definition packet-ecatmb.h:562
struct tSoeHeaderControlUnion::@556 v2
uint8_t Value
Definition packet-ecatmb.h:557
uint8_t Max
Definition packet-ecatmb.h:556
uint8_t DataState
Definition packet-ecatmb.h:551
uint8_t DriveNo
Definition packet-ecatmb.h:549
uint8_t Reserved
Definition packet-ecatmb.h:558
struct tSoeHeaderControlUnion::@555 v
uint8_t Name
Definition packet-ecatmb.h:552
uint8_t InComplete
Definition packet-ecatmb.h:547
uint8_t Unit
Definition packet-ecatmb.h:554
uint8_t Attribute
Definition packet-ecatmb.h:553
uint8_t Element
Definition packet-ecatmb.h:563
uint8_t OpCode
Definition packet-ecatmb.h:546
uint8_t Min
Definition packet-ecatmb.h:555
uint8_t Error
Definition packet-ecatmb.h:548
Union providing dual interpretation of the SoE header data word.
Definition packet-ecatmb.h:572
uint16_t FragmentsLeft
Definition packet-ecatmb.h:574
uint16_t IDN
Definition packet-ecatmb.h:573