I don't use the EtherLAB suite either; just the master. Well, I'm attempting to. :-)
So, you just start put the master into Operation from the command line? I'll give that a try. >> Actually ecrt_master_send_ext isn't exported by cdev I had to build it as a kernel module. >> Can you try starting the master only? I'll give that a try right now. Thanks! On Wed, Aug 15, 2012 at 10:26 AM, Matthieu Bec <m...@gmto.org> wrote: > note that's using the master stack only. > > I don't use the EtherLAB suite. There could be an issue if it requests the > master and its internal loop doesn't "send_ext". Actually > ecrt_master_send_ext isn't exported by cdev so that could indeed be a > problem. > Can you try starting the master only? > > On 08/15/12 07:48, Matthieu Bec wrote: > >> I have an EL6614, besides starting the master (stable-1.5), configuring >> the network interface and bringing it up, nothing else is needed to get >> EOE connectivity. >> >> >> On 08/14/12 15:15, Thomas Bitsky, Jr. wrote: >> >>> Ok, so I made some progress, I think. I was able to build as a kernel >>> module and install the module. So long as the virtual interface (eoe0s7) >>> is not up, the program brings the network into Operation and scans at >>> 100Hz. >>> >>> Then, I issue # ifconfig eoe0s7 up >>> >>> About 20 seconds later, the entire system hangs and I need to reboot. >>> >>> In the kernel log, I am seeing this: BUG: scheduling while atomic: >>> swapper/0/0x10000100 >>> >>> My understanding is that occurred when using semaphores when spinlocks >>> should have been used in the master callbacks. I changed over the >>> program to spin locks, but the same thing occurred. >>> >>> I'm not sure what I could try other than falling back to 1.4.0 and >>> seeing if I'm just running into a stable-1.5 bug. I'm following the tty >>> examples in the directory very closely. Beyond changing the hardware >>> declarations to match the network, it's the same program. >>> >>> Does anyone have an EoE example they could share? >>> >>> Thanks! >>> T >>> >>> >>> On Tue, Aug 14, 2012 at 7:29 AM, Matthieu Bec <m...@gmto.org >>> <mailto:m...@gmto.org>> wrote: >>> >>> >>> Hello Thomas, >>> >>> it might be a simple network config problem: the IP address of your >>> virtual interface shouldn't be the same as your field device. Try >>> assigning it something different on the same subnet, e.g. >>> 192.168.127.1/8 <http://192.168.127.1/8> and check your routing >>> table is correct >>> >>> Regards >>> >>> On 08/13/12 22:21, Thomas Bitsky, Jr. wrote: >>> >>> 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. >>> >>> 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. >>> >>> I'm running on Ubuntu 10.04. I have not installed any real-time >>> extensions; I'm just working with EtherLAB right now. >>> >>> If I execute: >>> # ethercat eoe >>> >>> I get a listing for eoe0s7 as a virtual interface, and that it >>> is down. >>> >>> >>> So, I created in /etc/network the file ifcg-eoe0s7 with the >>> following >>> contents: >>> >>> IPADDRESS=192.168.127.254/8 <http://192.168.127.254/8> >>> <http://192.168.127.254/8> >>> STARTMODE=auto >>> >>> I restarted the computer. >>> >>> To raise the interface, I enter: >>> >>> # ifconfig eoe0s7 up >>> >>> The virtual interface goes up, and the LINK light on the >>> EL6601 goes >>> solid green. >>> >>> 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: >>> >>> >>> void send_callback(void *cb_data) >>> { >>> ec_master_t *m = (ec_master_t *) cb_data; >>> sem_wait(&mutex); >>> ecrt_master_send_ext(m); >>> sem_post(&mutex); >>> } >>> >>> >>> /*******************************__****************************** >>> **__******************/ >>> >>> >>> void receive_callback(void *cb_data) >>> { >>> ec_master_t *m = (ec_master_t *) cb_data; >>> sem_wait(&mutex); >>> ecrt_master_receive(m); >>> sem_post(&mutex); >>> } >>> >>> int >>> main(int argc, char **argv) >>> { >>> >>> ... >>> >>> // setup callbacks for EoE >>> ecrt_master_callbacks(master, send_callback, >>> receive_callback, master); >>> >>> ... >>> >>> } >>> >>> >>> >>> However, it won't build: >>> >>> durability.o: In function `send_callback': >>> /home/tbj/srcroot/durability/_**_src/durability.c:279: undefined >>> reference >>> to `ecrt_master_send_ext' >>> durability.o: In function `main': >>> /home/tbj/srcroot/durability/_**_src/durability.c:321: undefined >>> reference >>> to `ecrt_master_callbacks' >>> >>> >>> This is my makefile: >>> >>> CC = gcc >>> ETHERCAT_TOPDIR = /home/tbj/srcroot/ethercat >>> CFLAGS = -I$(ETHERCAT_TOPDIR)/include -g -O2 >>> LDFLAGS = -L$(ETHERCAT_TOPDIR)/lib/.libs -lethercat -lrt >>> >>> OBJECTS = durability.o >>> >>> durability.exe : $(OBJECTS) >>> $(CC) $(CFLAGS) $(OBJECTS) $(LDFLAGS) -o durability.exe >>> >>> %.o : %.c >>> $(CC) $(CFLAGS) -c $< >>> >>> >>> 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. >>> >>> Thanks in advance for any help. >>> >>> T >>> >>> >>> ______________________________**___________________ >>> etherlab-users mailing list >>> etherlab-users@etherlab.org <mailto:etherlab-users@** >>> etherlab.org <etherlab-users@etherlab.org>> >>> http://lists.etherlab.org/__**mailman/listinfo/etherlab-__** >>> users <http://lists.etherlab.org/__mailman/listinfo/etherlab-__users> >>> >>> <http://lists.etherlab.org/**mailman/listinfo/etherlab-**users<http://lists.etherlab.org/mailman/listinfo/etherlab-users> >>> > >>> >>> >>> >>> -- >>> Matthieu Bec GMTO Corp. >>> cell: +1 626 354 9367 <tel:%2B1%20626%20354%209367> P.O. Box >>> 90933 >>> phone: +1 626 204 0527 <tel:%2B1%20626%20204%200527> Pasadena, >>> CA 91109-0933 >>> >>> >>> >>> >>> -- >>> Thomas C. Bitsky Jr. >>> Lead Developer and Application Engineer >>> ADC | automateddesign.com <http://automateddesign.com> >>> P: 630-783-1150 F: 630-783-1159 M: 630-632-6679 >>> >>> ______________________________**_________________ >> etherlab-users mailing list >> etherlab-users@etherlab.org >> http://lists.etherlab.org/**mailman/listinfo/etherlab-**users<http://lists.etherlab.org/mailman/listinfo/etherlab-users> >> > > > -- > Matthieu Bec GMTO Corp. > cell: +1 626 354 9367 P.O. Box 90933 > phone: +1 626 204 0527 Pasadena, CA 91109-0933 > > -- Thomas C. Bitsky Jr. Lead Developer and Application Engineer ADC | automateddesign.com P: 630-783-1150 F: 630-783-1159 M: 630-632-6679
_______________________________________________ etherlab-users mailing list etherlab-users@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-users