<div dir="ltr">

<p class=""><span style lang="EN-US">Deall All,</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">I m trying
to Configure EL4008 analog terminal by Beckhoff using CAPI. When I insmod my
application then all the LEDS on the terminal glow and I am unable to control
it or change its status. My system works completely fine for Digital terminals
so there is no problem in the setup. I feel the Problem is in Configurations of
Pdo’s or size of bits . The size of the pdo bit for digital clamp is 1 bit for
analog it is 2. What should I do? What mistake am I committing?  Please
Advise.</span></p>

<p class=""><span style lang="EN-US">My system
details are as follows-</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">EtherCAT –
1.5</span></p>

<p class=""><span style lang="EN-US">Etherlab-
1.3</span></p>

<p class=""><span style lang="EN-US">Linux- Open
suse</span></p>

<p class=""><span style lang="EN-US">Linux
Kernel- 2.6.37.6 or 2.6.37.1.-1.2</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style="font-size:18pt" lang="EN-US">Code- </span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">#define
Beckhoff_EK1101 0x00000002, 0x044d2c52<br>
<br>
#define Beckhoff_EL4008 0x00000002, 0x0fa83052</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">#define
BuscouplerPos  0,0</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">#define
AnaOutSlavePos  0,2<br>
<br>
<br>
ec_pdo_entry_info_t slave_EL4008_pdo_entries[] = {<br>
    {0x7000, 0x11, 16}, /* Analog output */<br>
    {0x7010, 0x11, 16}, /* Analog output */<br>
    {0x7020, 0x11, 16}, /* Analog output */<br>
    {0x7030, 0x11, 16}, /* Analog output */<br>
    {0x7040, 0x11, 16}, /* Analog output */<br>
    {0x7050, 0x11, 16}, /* Analog output */<br>
    {0x7060, 0x11, 16}, /* Analog output */<br>
    {0x7070, 0x11, 16}, /* Analog output */<br>
    };<br>
<br>
ec_pdo_info_t slave_EL4008_pdos[] = {<br>
    {0x1600, 1, slave_EL4008_pdo_entries +0 }, /* RxPDO-Map OutputsCh.1
*/<br>
    {0x1601, 1, slave_EL4008_pdo_entries +1 }, /* RxPDO-Map
OutputsCh.2 */<br>
    {0x1602, 1, slave_EL4008_pdo_entries +2 }, /* RxPDO-Map
OutputsCh.3 */<br>
    {0x1603, 1, slave_EL4008_pdo_entries +3 }, /* RxPDO-Map
OutputsCh.4 */<br>
    {0x1604, 1, slave_EL4008_pdo_entries +4 }, /* RxPDO-Map
OutputsCh.5 */<br>
    {0x1605, 1, slave_EL4008_pdo_entries +5 }, /* RxPDO-Map
OutputsCh.6 */<br>
    {0x1606, 1, slave_EL4008_pdo_entries +6 }, /* RxPDO-Map
OutputsCh.7 */<br>
    {0x1607, 1, slave_EL4008_pdo_entries +7 }, /* RxPDO-Map
OutputsCh.8 */<br>
};<br>
<br>
<br>
ec_sync_info_t slave_EL4008_syncs[] = {<br>
    {0, EC_DIR_OUTPUT, 0},<br>
    {1, EC_DIR_INPUT, 0},<br>
    {2, EC_DIR_OUTPUT, 8,slave_EL4008_pdos + 0 ,EC_WD_ENABLE },<br>
    {3, EC_DIR_INPUT, 0},<br>
    {0xff}<br>
}; <br>
<br>
static unsigned int o_ana_out[8],  bo_ana_out[8];<br>
<br>
const static ec_pdo_entry_reg_t domain_EL4008_regs[] = {<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7000, 0x11, &o_ana_out[0],&bo_ana_out[0]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7010, 0x11, &o_ana_out[1],&bo_ana_out[1]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7020, 0x11, &o_ana_out[2],&bo_ana_out[2]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7030, 0x11, &o_ana_out[3],&bo_ana_out[3]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7040, 0x11, &o_ana_out[4],&bo_ana_out[4]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7050, 0x11, &o_ana_out[5],&bo_ana_out[5]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7060, 0x11, &o_ana_out[6],&bo_ana_out[6]},<br>
        {AnaOutSlavePos,  Beckhoff_EL4008,
0x7070, 0x11, &o_ana_out[7],&bo_ana_out[7]},<br>
{}<br>
};</span></p>

<p class=""><span style lang="EN-US"> </span></p>

<p class=""><span style lang="EN-US">Regards,</span></p>

<p class=""><span style lang="EN-US">Sanya </span></p>

</div>