[etherlab-users] Slave does not provide mailbox sync manager configurations
Zhiyong Weng
zhiyong.weng at gmail.com
Tue Feb 4 11:33:19 CET 2014
Hi ALL,
I am newbie for ethercat and trying to use etherlab to exchange data
with a motor.
After installing etherlab, I managed to read some device info from the
motor, with command line tools, like "ethercat slaves". also can conduct
SDO access successfully.
So I wrote a piece of code to send the PDOs. but failed and get errors
in syslog as below.
My guess is the motor's slave controller missing sync manager(2 and 3)
addresses in the SII, as it only show sm0, sm1.
But in the xml provied by vendor, it do has 4 sm. file attached.
Pls help!
Regards,
Max
Feb 4 17:59:12 MAX kernel: [13654.005940] EtherCAT DEBUG 0-0: *Slave does
not provide mailbox sync manager configurations.*
Feb 4 17:59:12 MAX kernel: [13654.005943] EtherCAT DEBUG 0-0: SM0: Addr
0x1800, Size 16, Ctrl 0x26, En 1
Feb 4 17:59:12 MAX kernel: [13654.005944] EtherCAT DEBUG 0-0: SM1: Addr
0x1900, Size 16, Ctrl 0x22, En 1
*sm info in xml: *
<Sm MinSize="6" MaxSize="40" DefaultSize="16" StartAddress="#x1800"
ControlByte="#x26" Enable="1">MBoxOut</Sm>
<Sm MinSize="6" MaxSize="40" DefaultSize="16" StartAddress="#x1900"
ControlByte="#x12" Enable="1">MBoxIn</Sm>
<Sm StartAddress="#x1600" ControlByte="#x24" Enable="1">Outputs</Sm>
<Sm StartAddress="#x1A00" ControlByte="#x10" Enable="1">Inputs</Sm>
*my PDO configure:*
const static ec_pdo_entry_reg_t domain1_regs[] = {
{AliasAndPositon, VendorID_ProductCode, 0x1A00, 4, &off_1A00},
{}
};
ec_pdo_entry_info_t duetfl80_channel1[] = {
{0x1A00, 4, 32} // modes_of_operation_display
};
static ec_pdo_info_t duetfl80_pdos[] = {
{0x1900,1 , duetfl80_channel1} // pdo index input 0x1A00?
};
static ec_sync_info_t duetfl80_syncs[] = {
{3, EC_DIR_INPUT, 1, duetfl80_pdos},
{0xff}
};
*ethercat slaves*
0 0:0 PREOP + 0x000000e4:0x00001133
*ethercat slaves -v*
=== Master 0, Slave 0 ===
Device: Main
State: PREOP
Flag: +
Identity:
Vendor Id: 0x000000e4
Product code: 0x00001133
Revision number: 0x00020000
Serial number: 0x00000000
DL information:
FMMU bit operation: no
Distributed clocks: no
Port Type Link Loop Signal NextSlave
0 N/A up open yes -
1 N/A down closed no -
2 N/A down closed no -
3 N/A down closed no -
Mailboxes:
Bootstrap RX: 0x0000/0, TX: 0x0000/0
Standard RX: 0x1800/16, TX: 0x1900/16
Supported protocols: CoE
*ethercat sii_read -v*
SII Area:
08 00 00 08 00 00 00 00 00 00 00 00 00 00 f5 00
e4 00 00 00 33 11 00 00 00 00 02 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 18 10 00 00 19 10 00 04 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20140204/a7fc269c/attachment-0002.htm>
-------------- next part --------------
Feb 4 18:31:17 MAX kernel: [15578.408560] EtherCAT: Requesting master 0...
Feb 4 18:31:17 MAX kernel: [15578.408570] EtherCAT DEBUG 0: IDLE -> OPERATION.
Feb 4 18:31:17 MAX kernel: [15578.408575] EtherCAT: Successfully requested master 0.
Feb 4 18:31:17 MAX kernel: [15578.408584] EtherCAT DEBUG 0: ecrt_master_create_domain(master = 0xffff880194dba000)
Feb 4 18:31:17 MAX kernel: [15578.408590] EtherCAT DEBUG 0: Created domain 0.
Feb 4 18:31:17 MAX kernel: [15578.408600] EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xffff880194dba000, alias = 0, position = 0, vendor_id = 0x000000e4, product_code = 0x00001133)
Feb 4 18:31:17 MAX kernel: [15578.408608] EtherCAT DEBUG 0: Creating slave configuration for 0:0, 0x000000E4/0x00001133.
Feb 4 18:31:17 MAX kernel: [15578.408616] EtherCAT DEBUG 0 0:0: Attached slave 0.
Feb 4 18:31:17 MAX kernel: [15578.408705] EtherCAT DEBUG 0 0:0: ecrt_slave_config_create_sdo_request_err(sc = 0xffff88010d69f000, index = 0x6061, subindex = 0x00, size = 1)
Feb 4 18:31:17 MAX kernel: [15578.408842] EtherCAT DEBUG 0 0:0: ecrt_slave_config_sync_manager(sc = 0xffff88010d69f000, sync_index = 1, dir = 2, watchdog_mode = 0)
Feb 4 18:31:17 MAX kernel: [15578.408859] EtherCAT DEBUG 0 0:0: ecrt_slave_config_pdo_assign_clear(sc = 0xffff88010d69f000, sync_index = 1)
Feb 4 18:31:17 MAX kernel: [15578.408873] EtherCAT DEBUG 0 0:0: ecrt_slave_config_pdo_assign_add(sc = 0xffff88010d69f000, sync_index = 1, pdo_index = 0x1900)
Feb 4 18:31:17 MAX kernel: [15578.408884] EtherCAT DEBUG 0 0:0: Loading default mapping for PDO 0x1900.
Feb 4 18:31:17 MAX kernel: [15578.408890] EtherCAT DEBUG 0 0:0: No default mapping found.
Feb 4 18:31:17 MAX kernel: [15578.408901] EtherCAT DEBUG 0 0:0: ecrt_slave_config_pdo_mapping_clear(sc = 0xffff88010d69f000, pdo_index = 0x1900)
Feb 4 18:31:17 MAX kernel: [15578.408917] EtherCAT DEBUG 0 0:0: ecrt_slave_config_pdo_mapping_add(sc = 0xffff88010d69f000, pdo_index = 0x1900, entry_index = 0x1A00, entry_subindex = 0x04, entry_bit_length = 32)
Feb 4 18:31:17 MAX kernel: [15578.408936] EtherCAT DEBUG 0: ecrt_master_slave_config(master = 0xffff880194dba000, alias = 0, position = 0, vendor_id = 0x000000e4, product_code = 0x00001133)
Feb 4 18:31:17 MAX kernel: [15578.408955] EtherCAT DEBUG 0 0:0: ecrt_slave_config_reg_pdo_entry(sc = 0xffff88010d69f000, index = 0x1A00, subindex = 0x04, domain = 0xffff8800a00d8c00, bit_position = 0xffff880095113ca4)
Feb 4 18:31:17 MAX kernel: [15578.408965] EtherCAT DEBUG 0: Domain 0: Added 4 bytes, total 4.
Feb 4 18:31:17 MAX kernel: [15578.409045] EtherCAT DEBUG 0: ecrt_domain_external_memory(domain = 0xffff8800a00d8c00, mem = 0xffffc9001a4ed000)
Feb 4 18:31:17 MAX kernel: [15578.409058] EtherCAT DEBUG 0: ecrt_master_callbacks(master = 0xffff880194dba000, send_cb = 0xffffffffa055e8e0, receive_cb = 0xffffffffa055f010, cb_data = 0xffff880194dba000)
Feb 4 18:31:17 MAX kernel: [15578.409069] EtherCAT DEBUG 0: ecrt_master_activate(master = 0xffff880194dba000)
Feb 4 18:31:17 MAX kernel: [15578.409081] EtherCAT DEBUG 0: Adding datagram pair with expected WC 1.
Feb 4 18:31:17 MAX kernel: [15578.409090] EtherCAT 0: Domain0: Logical address 0x00000000, 4 byte, expected working counter 1.
Feb 4 18:31:17 MAX kernel: [15578.409099] EtherCAT 0: Datagram domain0-0-main: Logical offset 0x00000000, 4 byte, type LRD.
Feb 4 18:31:17 MAX kernel: [15578.409107] EtherCAT DEBUG 0: Stopping master thread.
Feb 4 18:31:17 MAX kernel: [15578.409171] EtherCAT DEBUG 0: Master IDLE thread exiting...
Feb 4 18:31:17 MAX kernel: [15578.409246] EtherCAT 0: Master thread exited.
Feb 4 18:31:17 MAX kernel: [15578.409259] EtherCAT DEBUG 0: FSM datagram is ffff880194dba678.
Feb 4 18:31:17 MAX kernel: [15578.409265] EtherCAT 0: Starting EtherCAT-OP thread.
Feb 4 18:31:17 MAX kernel: [15578.409493] EtherCAT DEBUG 0: mmap()
Feb 4 18:31:17 MAX kernel: [15578.409503] EtherCAT DEBUG 0: Operation thread running with fsm interval = 4000 us, max data size=45000
Feb 4 18:31:17 MAX kernel: [15578.409513] EtherCAT WARNING 0: 1 datagram UNMATCHED!
Feb 4 18:31:17 MAX kernel: [15578.409528] EtherCAT DEBUG 0: Vma fault, virtual_address = 00007f41f1042000, offset = 0, page = ffffea0002ba5d00
Feb 4 18:31:17 MAX kernel: [15578.410993] EtherCAT DEBUG 0: Configuration changed (aborting state check).
Feb 4 18:31:17 MAX kernel: [15578.411002] EtherCAT WARNING 0: No app_time received up to now, but master already active.
Feb 4 18:31:17 MAX kernel: [15578.411011] EtherCAT DEBUG 0: Requesting OP...
Feb 4 18:31:17 MAX kernel: [15578.451070] EtherCAT DEBUG 0-0: Changing state from PREOP to OP.
Feb 4 18:31:17 MAX kernel: [15578.451088] EtherCAT DEBUG 0-0: Configuring...
Feb 4 18:31:17 MAX kernel: [15578.480615] EtherCAT DEBUG 0-0: Now in INIT.
Feb 4 18:31:17 MAX kernel: [15578.480617] EtherCAT DEBUG 0-0: Clearing FMMU configurations...
Feb 4 18:31:17 MAX kernel: [15578.490607] EtherCAT DEBUG 0-0: Clearing sync manager configurations...
Feb 4 18:31:17 MAX kernel: [15578.500603] EtherCAT DEBUG 0-0: Configuring mailbox sync managers...
Feb 4 18:31:17 MAX kernel: [15578.500605] EtherCAT DEBUG 0-0: Slave does not provide mailbox sync manager configurations.
Feb 4 18:31:17 MAX kernel: [15578.500608] EtherCAT DEBUG 0-0: SM0: Addr 0x1800, Size 16, Ctrl 0x26, En 1
Feb 4 18:31:17 MAX kernel: [15578.500610] EtherCAT DEBUG 0-0: SM1: Addr 0x1900, Size 16, Ctrl 0x22, En 1
Feb 4 18:31:17 MAX kernel: [15578.530592] EtherCAT DEBUG 0-0: Now in PREOP.
Feb 4 18:31:17 MAX kernel: [15578.530596] EtherCAT ERROR 0-0: Failed to determine PDO sync manager for FMMU!
Feb 4 18:31:19 MAX kernel: [15580.309499] EtherCAT 0: Releasing master...
Feb 4 18:31:19 MAX kernel: [15580.309505] EtherCAT DEBUG 0: ecrt_master_deactivate(master = 0xffff880194dba000)
Feb 4 18:31:19 MAX kernel: [15580.309508] EtherCAT DEBUG 0: Stopping master thread.
Feb 4 18:31:19 MAX kernel: [15580.309521] EtherCAT DEBUG 0: Master OP thread exiting...
Feb 4 18:31:19 MAX kernel: [15580.309529] EtherCAT 0: Master thread exited.
Feb 4 18:31:19 MAX kernel: [15580.309536] EtherCAT 0: Starting EtherCAT-IDLE thread.
Feb 4 18:31:19 MAX kernel: [15580.309638] EtherCAT DEBUG 0: OPERATION -> IDLE.
Feb 4 18:31:19 MAX kernel: [15580.309641] EtherCAT 0: Released.
Feb 4 18:31:19 MAX kernel: [15580.309647] EtherCAT DEBUG 0: Idle thread running with send interval = 4000 us, max data size=45000
Feb 4 18:31:19 MAX kernel: [15580.309655] EtherCAT DEBUG 0: UNMATCHED datagram:
Feb 4 18:31:19 MAX kernel: [15580.309657] EtherCAT DEBUG: 0A 1A 00 00 00 00 04 00 00 00 00 00 00 00 00 00
Feb 4 18:31:19 MAX kernel: [15580.309667] EtherCAT ERROR 0-0: Failed to receive AL state datagram: Datagram initialized.
Feb 4 18:31:19 MAX kernel: [15580.309674] EtherCAT DEBUG 0: Datagram ffff880194dba678 already queued (skipping).
Feb 4 18:31:19 MAX kernel: [15580.314352] EtherCAT DEBUG 0-0: Changing state from PREOP to PREOP (forced).
Feb 4 18:31:19 MAX kernel: [15580.314356] EtherCAT DEBUG 0-0: Configuring...
Feb 4 18:31:19 MAX kernel: [15580.314535] EtherCAT DEBUG 0-0: Now in INIT.
Feb 4 18:31:19 MAX kernel: [15580.314537] EtherCAT DEBUG 0-0: Clearing FMMU configurations...
Feb 4 18:31:19 MAX kernel: [15580.314652] EtherCAT DEBUG 0-0: Clearing sync manager configurations...
Feb 4 18:31:19 MAX kernel: [15580.314771] EtherCAT DEBUG 0-0: Configuring mailbox sync managers...
Feb 4 18:31:19 MAX kernel: [15580.314773] EtherCAT DEBUG 0-0: Slave does not provide mailbox sync manager configurations.
Feb 4 18:31:19 MAX kernel: [15580.314776] EtherCAT DEBUG 0-0: SM0: Addr 0x1800, Size 16, Ctrl 0x26, En 1
Feb 4 18:31:19 MAX kernel: [15580.314778] EtherCAT DEBUG 0-0: SM1: Addr 0x1900, Size 16, Ctrl 0x22, En 1
Feb 4 18:31:19 MAX kernel: [15580.315123] EtherCAT DEBUG 0-0: Now in PREOP.
Feb 4 18:31:19 MAX kernel: [15580.315125] EtherCAT DEBUG 0-0: Finished configuration.
Feb 4 18:31:19 MAX kernel: [15580.546388] EtherCAT WARNING: Datagram ffff880194dba678 (master-fsm) was SKIPPED 1 time.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Metronix_EtherCAT_DIS-2_V2p2.xml
Type: text/xml
Size: 37716 bytes
Desc: not available
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20140204/a7fc269c/attachment-0003.xml>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: etherlab_master.cpp
Type: text/x-c++src
Size: 9264 bytes
Desc: not available
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20140204/a7fc269c/attachment-0003.cpp>
More information about the Etherlab-users
mailing list