<p>I think you're thinking of it wrong. The data isn't cleared, it's replaced by the actual value on the field bus. So, if you don't write the value out to update the field bus, then the packet gets returned with the value that is out there. </p>

<p>Thomas C Bitsky Jr<br>
Lead Developer and Application Engineer<br>
ADC | <a href="http://automateddesign.com">automateddesign.com</a><br>
(Sent from my mobile device.)</p>
<div class="gmail_quote">On Oct 6, 2012 4:14 AM, "Thomas Paoloni" <<a href="mailto:thomas@digithom.it">thomas@digithom.it</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all,<br>
<br>
even if I'm dealing with ethercat since more than one year, I'm in front of a very basic question ...<br>
As from I can see, the data in master->slave direction in the domain_pd area are not preserved from an update to another.<br>
I'mean that I need to write out data to domain_pd area at each cycle, even if I data is not changed and theoretically I don't need to update some parts of the pdo area.<br>
<br>
Just applying this to the basic example in examples/user<br>
<br>
void cyclic_task()<br>
{<br>
    int i;<br>
<br>
    // receive process data<br>
    ecrt_master_receive(master);<br>
    ecrt_domain_process(domain1);<br>
<br>
    // check process data state (optional)<br>
    check_domain1_state();<br>
<br>
    if (counter) {<br>
        counter--;<br>
    } else { // do this at 1 Hz<br>
        counter = FREQUENCY;<br>
<br>
        // calculate new process data<br>
        blink = !blink;<br>
    }<br>
<br>
    EC_WRITE_U8(domain1_pd + off_dig_out, blink ? 0x06 : 0x09);<br>
<br>
    // send process data<br>
    ecrt_domain_queue(domain1);<br>
    ecrt_master_send(master);<br>
}<br>
<br>
<br>
moving the EC_WRITE_U8 inside the if condition (after the blink=!blink) will not work, because the blink bit is cleared from the pdo area after the process data has been sent.<br>
<br>
This means that I should keep a copy of the process data and write it on the domain1_pd each time.<br>
Is this right or I'm missing something ?<br>
<br>
<br>
Thanks,<br>
Thomas.<br>
<br>
<br>
______________________________<u></u>_________________<br>
etherlab-users mailing list<br>
<a href="mailto:etherlab-users@etherlab.org" target="_blank">etherlab-users@etherlab.org</a><br>
<a href="http://lists.etherlab.org/mailman/listinfo/etherlab-users" target="_blank">http://lists.etherlab.org/<u></u>mailman/listinfo/etherlab-<u></u>users</a><br>
</blockquote></div>