Skip to content

Commit d0ac35b

Browse files
author
Theo
committed
master mailbox info structs
1 parent 819292b commit d0ac35b

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

include/kickcat/protocol.h

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -558,6 +558,90 @@ namespace kickcat
558558
std::string software_version;
559559
IdentityObject identity;
560560
};
561+
562+
// ETG1510
563+
struct ConfigurationData
564+
{
565+
uint8_t number_of_entries;
566+
uint16_t fixed_station_address;
567+
std::string type; // CA ?
568+
std::string name;
569+
uint32_t device_type;
570+
uint32_t vendor_id;
571+
uint32_t product_code;
572+
uint32_t revision_number;
573+
uint32_t serial_number;
574+
uint16_t mailbox_out_size;
575+
uint16_t mailbox_in_size;
576+
uint8_t link_status;
577+
uint8_t link_preset;
578+
uint8_t flags;
579+
uint16_t port_physics;
580+
uint16_t mailbox_protocol_supported;
581+
bool diag_history_object_supported;
582+
};
583+
584+
// ETG1510
585+
struct InformationData
586+
{
587+
uint8_t number_of_entries;
588+
uint16_t station_address;
589+
uint32_t vendor_id;
590+
uint32_t product_code;
591+
uint32_t revision_number;
592+
uint32_t serial_number;
593+
uint16_t dl_status_register;
594+
};
595+
596+
// ETG 1510
597+
struct DiagnosisData
598+
{
599+
uint8_t number_of_entries;
600+
uint16_t al_status;
601+
uint16_t al_control; /// RW / RO ?
602+
uint16_t last_al_status_code;
603+
uint8_t link_conn_status;
604+
uint8_t link_control; /// RW / RO ?
605+
uint16_t fixed_address_conn_port_0;
606+
uint16_t fixed_address_conn_port_1;
607+
uint16_t fixed_address_conn_port_2;
608+
uint16_t fixed_address_conn_port_3;
609+
uint32_t frame_error_counter_port_0;
610+
uint32_t frame_error_counter_port_1;
611+
uint32_t frame_error_counter_port_2;
612+
uint32_t frame_error_counter_port_3;
613+
uint32_t cyclic_wc_error_counter;
614+
uint32_t slave_not_present_counter;
615+
uint32_t abnormal_state_change_counter;
616+
bool disable_automatic_link_control; /// RW /RO ?
617+
uint32_t last_coe_soe_protocol_error;
618+
bool new_diag_message_available;
619+
};
620+
621+
struct DetectModulesCommand
622+
{
623+
uint8_t number_of_entries;
624+
char scan_command_request[2]; /// RW ?
625+
uint8_t scan_command_status;
626+
char scan_command_response[6];
627+
};
628+
629+
struct MasterDiagData
630+
{
631+
uint8_t number_of_entries;
632+
uint32_t cyclic_lost_frames;
633+
uint32_t acyclic_lost_frames;
634+
uint32_t cyclic_frames_per_second;
635+
uint32_t acyclic_frame_per_second;
636+
uint16_t master_state;
637+
};
638+
639+
struct DiagInterfaceControl
640+
{
641+
uint8_t number_of_entries;
642+
uint16_t reset_diag_info; /// RW
643+
};
644+
561645
}
562646

563647
// MAC addresses are not used by EtherCAT but set them helps the debug easier when following a network trace.

0 commit comments

Comments
 (0)