[etherlab-users] "Invalid mailbox configuration", how to configure?

Phil Sutter sutter at informatik.hs-furtwangen.de
Thu Mar 13 20:37:06 CET 2008


On Thu, Mar 13, 2008 at 08:08:31PM +0100, Stefan Löfgren wrote:
> hmm... No, I have not been using TwinCAT at all, yet...
> I changed the fsm_client.c to fill in the invalid data.
> After reading the eeprom data I changed the values to the correct ones.
> But this is not written back to the eeprom in the slave, right?
> Anyway it still gives the same error: "Invalid mailbox config"...
> The data needs to be written to the eeprom for the error to go away, right?
> This error is actually produced in the slave, and therefor the eeprom needs to
> be written, am I right? You said that there is a possibility to write the
> eeprom via /sys/ethercat/master0/slave000/eeprom, how? Or do I need TwinCAT to
> do this?

My slave works without having the data written back. Actually it isn't
possible at all to do that with it (because of size-limitation).
But maybe it works for your slave. With TwinCAT it should be possible to
save a binary EEPROM image including the data from the XML. You can cat
this file to the eeprom-attribute of your slave.

> "cat /sys/ethercat/master0/slave000/info" now gives:
> 
> Name:
> Vendor ID: 0x00000014
> Product code: 0x000006C9
> 
> State: INIT (PREOP)
> Flags: online, ERROR
> Ring position: 0
> Current consumption: 0 mA
> 
> Data link status:
>   Port 0 (unknown (255)) Link up, Loop open, Signal detected
>   Port 1 (unknown (255)) Link down, Loop closed, No signal
>   Port 2 (unknown (255)) Link down, Loop closed, No signal
>   Port 3 (unknown (255)) Link down, Loop closed, No signal
> 
> Mailboxes:
>   RX mailbox: 0x1832/20, TX mailbox: 0x1800/20
>   Supported protocols: CoE
> 
> Sync managers / PDO mapping:
>   SM0: addr 0x1100, size 8, control 0x20, enable
>     No PDOs mapped.

To me this looks like you forgot to add the sync managers for your
mailbox. Following an excerpt of of the same file on my system:

| Mailboxes:
|   RX: 0x1000/128, TX: 0x1100/128
|   Supported protocols: CoE
| 
| Sync managers / Pdo mapping:
|   SM0: addr 0x1000, size 128, control 0x26, enable
|     No Pdos mapped.
|   SM1: addr 0x1100, size 128, control 0x22, enable
|     No Pdos mapped.

I'm quite sure your XML contains Sm-entities for the registers 0x1832
and 0x1800.

Greetings, Phil



More information about the Etherlab-users mailing list