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

Stefan Löfgren stlo at dontdownload.com
Thu Mar 13 20:08:31 CET 2008


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?



"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.





---------- Original Message -----------
From: Phil Sutter <sutter at informatik.hs-furtwangen.de>
To: etherlab-users at lists.etherlab.org
Sent: Thu, 13 Mar 2008 17:00:28 +0100
Subject: Re: [etherlab-users] "Invalid mailbox configuration", how to configure?

> On Thu, Mar 13, 2008 at 04:04:23PM +0100, Stefan Löfgren wrote:
> > <Sm MinSize="16" MaxSize="50" DefaultSize="20" StartAddress="#x1800"
> > ControlByte="#x26" Enable="1">MBoxOut</Sm>
> > <Sm MinSize="16" MaxSize="50" DefaultSize="20" StartAddress="#x1832"
> > ControlByte="#x22" Enable="1">MBoxIn</Sm>
> 
> This is the information you need.
> 
> > Shouldn't this information be stored in the Eeprom? And how do I transfer this
> > information to the slave?
> 
> I'm quite sure there is a reason why you find this information in an
> XML-file. ;)
> 
> Did you try reading out the EEPROM via TwinCAT? There is a chance of
> writing a full EEPROM (including the missing information) via
> /sys/ethercat/master0/eeprom and having the device rescanned by the
> master after that.
> 
> > > Mar 13 15:31:46 lablinux kernel: EtherCAT ERROR: Failed to set PREOP 
> > > state, slave 0 refused state change (INIT + ERROR).
> > > Mar 13 15:31:46 lablinux kernel: EtherCAT ERROR: AL status message 0x0016:
> > > "Invalid mailbox configuration".
> > > 
> > > Mailboxes:
> > >   RX mailbox: 0x0000/0, TX mailbox: 0x0000/0
> > >   Supported protocols: CoE
> 
> Looks like the mailbox registers are missing in the slave's EEPROM. 
> In a previous mail to this list I explained how one could quick-fix these
> problems by manually filling in the information after the slave's EEPROM
> has been read out by the master.
> AFAIK there is no functionality to configure the mailbox from 
> outside of the master, yet.
> 
> Greetings, Phil
> _______________________________________________
> etherlab-users mailing list
> etherlab-users at lists.etherlab.org
> http://lists.etherlab.org/mailman/listinfo/etherlab-users
------- End of Original Message -------




More information about the Etherlab-users mailing list