<br clear="all"><div>Hello! I'm new to using EtherLAB. I've got the master installed as a service, and it's communicating to the network fine. However, I'm having trouble getting the EoE feature up and running.</div>
<div><br></div><div>I have an Ethernet device in the field with the IP Address 192.168.127.254 that I need to communicate with through a web browser. I have an EL6601 that the master is able to see fine. When I put the network into Operation, the RUN light goes steady.</div>
<div><br></div><div>I'm running on Ubuntu 10.04. I have not installed any real-time extensions; I'm just working with EtherLAB right now.</div><div><br></div><div>If I execute:</div><div># ethercat eoe</div><div><br>
</div><div>I get a listing for eoe0s7 as a virtual interface, and that it is down.</div><div><br></div><div><br></div><div>So, I created in /etc/network the file ifcg-eoe0s7 with the following contents:</div><div><br></div>
<div><div>IPADDRESS=<a href="http://192.168.127.254/8">192.168.127.254/8</a></div><div>STARTMODE=auto</div></div><div><br></div><div>I restarted the computer.</div><div><br></div><div>To raise the interface, I enter:</div>
<div><br></div><div># ifconfig eoe0s7 up</div><div><br></div><div>The virtual interface goes up, and the LINK light on the EL6601 goes solid green.</div><div><br></div><div>However, I'm unable to ping 192.168.127.254, or get the pages it serves to pop up. So, I did more reading, and I think I need to do some function calls in the program. So, I added to my test program:</div>
<div><br></div><div><div><br></div><div>void send_callback(void *cb_data)</div><div>{</div><div>    ec_master_t *m = (ec_master_t *) cb_data;</div><div>    sem_wait(&mutex);</div><div>    ecrt_master_send_ext(m);</div>
<div>    sem_post(&mutex);</div><div>}</div><div><br></div><div>/*****************************************************************************/</div><div><br></div><div>void receive_callback(void *cb_data)</div><div>{</div>
<div>    ec_master_t *m = (ec_master_t *) cb_data;</div><div>    sem_wait(&mutex);</div><div>    ecrt_master_receive(m);</div><div>    sem_post(&mutex);</div><div>}</div><div><br></div><div><div>int </div><div>main(int argc, char **argv)</div>
<div>{</div></div><div><br></div><div>...</div><div><br></div><div><div> // setup callbacks for EoE</div><div> ecrt_master_callbacks(master, send_callback, receive_callback, master);</div></div></div><div><br></div><div>...</div>
<div><br></div><div>}</div><div><br></div><div><br></div><div><br></div><div>However, it won't build:</div><div><br></div><div><div>durability.o: In function `send_callback':</div><div>/home/tbj/srcroot/durability/src/durability.c:279: undefined reference to `ecrt_master_send_ext'</div>
<div>durability.o: In function `main':</div><div>/home/tbj/srcroot/durability/src/durability.c:321: undefined reference to `ecrt_master_callbacks'</div></div><div><br></div><div><br></div><div>This is my makefile:</div>
<div><br></div><div><div>CC = gcc</div><div>ETHERCAT_TOPDIR = /home/tbj/srcroot/ethercat</div><div>CFLAGS = -I$(ETHERCAT_TOPDIR)/include -g -O2</div><div>LDFLAGS = -L$(ETHERCAT_TOPDIR)/lib/.libs -lethercat -lrt</div><div>
<br></div><div>OBJECTS = durability.o</div><div><br></div><div>durability.exe : $(OBJECTS)</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>$(CC) $(CFLAGS) $(OBJECTS) $(LDFLAGS) -o durability.exe</div>
<div><br></div><div>%.o : %.c</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>$(CC) $(CFLAGS) -c $<</div></div><div><br></div><div><br></div><div>Can anyone tell me what I'm missing? I feel like I'm one step away from having this working, but I can't find anything else in any documentation that would lead me to the answer. </div>
<div><br></div><div>Thanks in advance for any help.</div><div><br></div><div>T</div>