<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:3.0cm 2.0cm 3.0cm 2.0cm;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-NZ link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='color:#1F497D'>Hi,<o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'>I’ve previously reported this issue and stated in general what needs to be done to resolve it (essentially, have a central dispatcher that’s responsible for retrieving mailbox contents from slaves and hand them off to the protocol-specific state machines from there, possibly making use of the mailbox state PDOs on those slaves that support it), but I don’t have any sort of implementation or plan for this at the moment, and it’s low on my list of things to look at because the only slaves I’m working with at the moment only support CoE (or only FoE in boot mode), so there’s no conflict.<o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'>Regards,<o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'>Gavin Lambert<o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> etherlab-dev-bounces@etherlab.org [mailto:etherlab-dev-bounces@etherlab.org] <b>On Behalf Of </b>Knud Baastrup<br><b>Sent:</b> Tuesday, 1 April 2014 03:57<br><b>To:</b> etherlab-dev@etherlab.org<br><b>Subject:</b> [etherlab-dev] Missing mailbox handler<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=DA>Hi<o:p></o:p></span></p><p class=MsoNormal><span lang=DA><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>I often get below SDO: Input/output error when using the EtherCAT command line tool while an EoE handler is running as well.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>~ # ethercat upload -p1 0xf101 1 -t uint8<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>Failed to upload SDO: Input/output error<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>Below is some debug info from the syslog where it seems like the SDO upload requested via the EtherCAT command line tool has been received by the EoE handler that have simply dropped the datagram due to wrong mailbox protocol. <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.140760+00:00 PCM51-sn214 kernel: [171153.189812] EtherCAT DEBUG 0: ecrt_master_sdo_upload(master = 0xc786e000, slave_position = 1, index = 0xF101, subindex = 0x01, target = 0xc7198720, target_size = 1, result_size = 0xc7909dc8, abort_code = 0xc7909dcc)<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.140845+00:00 PCM51-sn214 kernel: [171153.189865] EtherCAT DEBUG 0-1: Scheduling SDO upload request.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.140877+00:00 PCM51-sn214 kernel: [171153.191475] EtherCAT DEBUG 0-1: Processing SDO request...<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.140900+00:00 PCM51-sn214 kernel: [171153.191507] EtherCAT DEBUG 0-1: Uploading SDO 0xF101:01.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.140922+00:00 PCM51-sn214 kernel: [171153.191529] EtherCAT DEBUG 0-1: Upload request:<o:p></o:p></span></p><p class=MsoNormal><span lang=DA>2000-01-06T22:14:11.140945+00:00 PCM51-sn214 kernel: [171153.191544] EtherCAT DEBUG: 00 20 40 01 F1 01 00 00 00 00 <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.152670+00:00 PCM51-sn214 kernel: [171153.196476] EtherCAT WARNING 0-1: Other mailbox protocol response for eoe0s1.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.164709+00:00 PCM51-sn214 kernel: [171153.204544] EtherCAT ERROR 0-1: Reception of CoE upload response failed: No response.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>2000-01-06T22:14:11.164791+00:00 PCM51-sn214 kernel: [171153.212760] EtherCAT ERROR 0-1: Failed to process SDO request.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>I can see that somebody have added an FIXME comment in the code (ethernet.c),  but I wonder if anybody have already done some thoughts of a possible implementation or if anybody is already working on a solution ?<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#7F0055'>if</span></b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'> (mbox_prot != 0x02) { </span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#3F7F5F'>// EoE </span><b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#7F9FBF'>FIXME</span></b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#3F7F5F'> mailbox handler necessary</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'>   eoe-></span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#0000C0'>stats</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'>.<u>rx_errors</u>++;</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#7F0055'>#if</span></b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'> EOE_DEBUG_LEVEL >= 1</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'>   EC_SLAVE_WARN(eoe->slave, </span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#2A00FF'>"Other mailbox protocol response for %s.\n"</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:black'>, eoe->dev->name);</span><span lang=EN-US style='font-size:10.0pt;font-family:Consolas'><o:p></o:p></span></p><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#7F0055'>#endif<o:p></o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:Consolas;color:#7F0055'><o:p> </o:p></span></b></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>BR,  Knud Baastrup<o:p></o:p></span></p></div></div></body></html>