|
From: Jon B. <jon...@gm...> - 2007-07-26 02:31:25
|
Hi Mike, Two of us at USC (myself and Jon Kelly) are going to have a go at getting the player segway driver working with that usb to can interface. Someone on the player-dev list has pointed us to a seway/usbcan driver which is in CARMEN, so we're going to use that and the current segway driver as our starting point. I'm traveling right now and won't be back in the states until august 7th, but as soon as i get back I'm going to put some serious time into getting this working. We'd love to work with you on this - we can setup a svn repository so that we can both modify the code. My biggest worry is that testing code will be annoying, since the segway doesn't last too long on one charge, and can't run while it is attached to power. Do you know if there is any way around this? It would be really nice to be able to attach an extension cord to the segway and run it off of a wall socket during testing. Jon On 7/19/07, Mike Vande Weghe <van...@cm...> wrote: > I'd be happy to work on this; I'm not very happy with the Kvaser interface to > the segway (we've been inducing ground faults), and I already have one of the > canusb units here. I should be able to start on this at the beginning of August. > > Mike > > > Jon Binney wrote: > > I'm not too familiar with fedora - but since the driver seems to be > > building correctly you should be about 90% of the way to having it > > working. If you copy the .o file into /lib/modules/2.4.20-8/pcmcia/, > > it still doesn't find it? > > > > We've also had problems with the lapcan driver, since kvaser hasn't > > updated it to newer linux kernels. Maybe if there are enough people > > who are interested, it might be worth looking into getting Player to > > work with CAN interfaces made by other vendors? When I posted about > > this a couple of monghts ago someone suggested looking at the devices > > available here: http://www.canusb.com/ > > > > Questions for everyone: > > Are there player drivers besides the segwayrmp which use CAN? > > > > How hard would it modify the driver(s) to use a USB-CAN interface from > > another company? > > (has this been done already?) > > > > Is anyone else interested in helping on this? I'll have some time to > > work on this starting at the end of august. > > > > Jon > > > > On 7/17/07, Dongqing <don...@gm...> wrote: > >> hi Jon, > >> Thanks for helping. > >> The following is the messages when compiling. > >> > >> [root@dhcp26p249 linuxcan_v2]# make lapcan_install > >> -------------------------------------------------------------------- > >> building CANLIB > >> -------------------------------------------------------------------- > >> cd canlib > >> cp ./canlib/Makefile_24 ./canlib/Makefile -f > >> cd .. > >> make -C canlib sub > >> make[1]: Entering directory `/home/segway/kvaser_lapcan/linuxcan_v2/canlib' > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> canlib.c > canlib.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> canlib.c | sed s/\\.o/.d/> canlib.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> linkedlist.c > linkedlist.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> linkedlist.c | sed s/\\.o/.d/> linkedlist.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> VCanFunctions.c > VCanFunctions.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> VCanFunctions.c | sed s/\\.o/.d/> VCanFunctions.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> ../common/osif_functions_user.c > ../common/osif_functions_user.d > >> cc -M -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> ../common/osif_functions_user.c | sed s/\\.o/.d/> > >> ../common/osif_functions_user.d > >> cc -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -Wall > >> -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 -fomit-frame-pointer > >> -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -D_REENTRANT -fPIC -c -o > >> canlib.o canlib.c > >> cc -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -Wall > >> -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 -fomit-frame-pointer > >> -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -D_REENTRANT -fPIC -c -o > >> linkedlist.o linkedlist.c > >> cc -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -Wall > >> -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 -fomit-frame-pointer > >> -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -D_REENTRANT -fPIC -c -o > >> VCanFunctions.o VCanFunctions.c > >> cc -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -Wall > >> -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 -fomit-frame-pointer > >> -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include -D_REENTRANT -fPIC -c -o > >> ../common/osif_functions_user.o ../common/osif_functions_user.c > >> cc -Wall -DCANLIB_NAME_STRING=\"libcanlib.so.1.0.1\" -O2 > >> -fomit-frame-pointer -DSPLIT -DLINUX=1 -D_LINUX=1 -I. -I../include > >> -shared -Wl,-soname,libcanlib.so.1 -o libcanlib.so.1.0.1 canlib.o > >> linkedlist.o VCanFunctions.o ../common/osif_functions_user.o -lc -lpthread > >> ln -sf libcanlib.so.1.0.1 libcanlib.so > >> ln -sf libcanlib.so.1.0.1 libcanlib.so.1 > >> make -C examples sub > >> make[2]: Entering directory > >> `/home/segway/kvaser_lapcan/linuxcan_v2/canlib/examples' > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> busparms.c -o busparms > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> readTimerTest.c -o readTimerTest > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> canmonitor.c -o canmonitor > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> writeloop.c -o writeloop > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> cancount.c -o cancount > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> simplewrite.c -o simplewrite > >> gcc -Wall -O2 -D_REENTRANT -I../../include -L.. -lcanlib -lpthread > >> listChannels.c -o listChannels > >> make[2]: Leaving directory > >> `/home/segway/kvaser_lapcan/linuxcan_v2/canlib/examples' > >> make[1]: Leaving directory `/home/segway/kvaser_lapcan/linuxcan_v2/canlib' > >> ---------------------------------- > >> installing CANLIB > >> ---------------------------------- > >> -------------------------------------------------------------------- > >> building LAPcan/LAPcanII > >> Kernel src: /usr/src/linux-2.4.20-8 > >> -------------------------------------------------------------------- > >> cd lapcan > >> cp ./lapcan/Makefile_24 ./lapcan/Makefile -f > >> make -C lapcan sub KV_DEBUG_ON=0 > >> make[1]: Entering directory `/home/segway/kvaser_lapcan/linuxcan_v2/lapcan' > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/osif_functions_pcmcia.c > ../common/osif_functions_pcmcia.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/osif_functions_pcmcia.c | sed s/\\.o/.d/ >> > >> ../common/osif_functions_pcmcia.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/osif_functions_kernel.c > ../common/osif_functions_kernel.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/osif_functions_kernel.c | sed s/\\.o/.d/ >> > >> ../common/osif_functions_kernel.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/VCanOsIf.c > ../common/VCanOsIf.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> ../common/VCanOsIf.c | sed s/\\.o/.d/ >> ../common/VCanOsIf.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> LapcanHWIf.c > LapcanHWIf.d > >> cc -M -I/lib/modules/`uname -r`/build/include > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> LapcanHWIf.c | sed s/\\.o/.d/ >> LapcanHWIf.d > >> make[1]: Leaving directory `/home/segway/kvaser_lapcan/linuxcan_v2/lapcan' > >> make[1]: Entering directory `/home/segway/kvaser_lapcan/linuxcan_v2/lapcan' > >> cc -Wall -D__KERNEL__ -DMODULE -fomit-frame-pointer -DSPLIT=1 > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> -I/lib/modules/`uname -r`/build/include -c -o LapcanHWIf.o LapcanHWIf.c > >> cc -Wall -D__KERNEL__ -DMODULE -fomit-frame-pointer -DSPLIT=1 > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> -I/lib/modules/`uname -r`/build/include -c -o ../common/VCanOsIf.o > >> ../common/VCanOsIf.c > >> cc -Wall -D__KERNEL__ -DMODULE -fomit-frame-pointer -DSPLIT=1 > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> -I/lib/modules/`uname -r`/build/include -c -o > >> ../common/osif_functions_kernel.o ../common/osif_functions_kernel.ccc -Wall > >> -D__KERNEL__ -DMODULE -fomit-frame-pointer -DSPLIT=1 > >> -I/home/segway/kvaser_lapcan/linuxcan_v2/include/ -DLINUX=1 -D_LINUX=1 > >> -I/lib/modules/`uname -r`/build/include -c -o > >> ../common/osif_functions_pcmcia.o ../common/osif_functions_pcmcia.cld -r > >> LapcanHWIf.o ../common/VCanOsIf.o ../common/osif_functions_kernel.o > >> ../common/osif_functions_pcmcia.o -o lapcan_cs.o > >> make[1]: Leaving directory `/home/segway/kvaser_lapcan/linuxcan_v2/lapcan' > >> cd .. > >> ---------------------------------- > >> installing LAPcan/LAPcanII > >> ---------------------------------- > >> ---------- installing lapcan ---------- > >> PCMCIA=yes > >> Shutting down PCMCIA services: cardmgr modules. > >> Starting PCMCIA services: cardmgr. > >> > >> It built the lapcan_cs.o modules. And I find it located in > >> /lib/modules/'uname -r'/kernel/drivers/pcmcia. > >> However, the system is trying to look at /lib/modules/'uname -r'/pcmcia. > >> In fact, there is no such a directory. I tried to make a diretory and copy > >> lapcan_cs.o there. > >> It didn't work yet. > >> > >> > >> Dongqing > >> > >> > >> Jon Binney-2 wrote: > >>> >From your log message, it looks like a problem with the driver, not > >>> the card. It's trying to load the kernel module for the driver, but > >>> can't find it. When you compiled the driver, it should have created > >>> the kernel module (lapcan_cs.o). > >>> > >>> When you install the driver, it ought to tell you which files it has > >>> compiled, and where it put them. Can you post the output you got > >>> during the install? > >>> > >>> Jon Binney > >>> > >>> On 7/17/07, Dongqing <don...@gm...> wrote: > >>>> Hi, > >>>> > >>>> I had nightmare to make the lapcan card work. > >>>> In different linux kernels, I tried to install this card, from redhat 9 > >>>> (kernel 2.4.20) to Ferda core 4(kernel 2.6.11). > >>>> This installation itself was smooth and no hint showing the error, > >>>> however, > >>>> after inserting the lapcan, the dmesg doesn't show the detection of the > >>>> card. > >>>> > >>>> I tried to look the messages as follows: > >>>> root@localhost pcmcia]# tail /var/log/messages > >>>> > >>>> Jul 16 15:31:43 localhost cardmgr[4471]: socket 1: Kvaser LAPcan II > >>>> Jul 16 15:31:43 localhost cardmgr[4471]: executing: 'modprobe lapcan_cs' > >>>> Jul 16 15:31:43 localhost cardmgr[4471]: + modprobe: Can't locate module > >>>> lapcan_cs > >>>> Jul 16 15:31:43 localhost cardmgr[4471]: modprobe exited with status 255 > >>>> Jul 16 15:31:43 localhost cardmgr[4471]: module > >>>> /lib/modules/2.4.20-8/pcmcia/lapcan_cs.o not available > >>>> Jul 16 15:31:44 localhost cardmgr[4471]: get dev info on socket 1 failed: > >>>> Resource temporarily unavailable > >>>> > >>>> I have no idea about the problems. > >>>> May be the card itself broken? > >>>> Thanks a lot. > >>>> > >>>> Dongqing > >>>> -- > >>>> View this message in context: > >>>> http://www.nabble.com/kvaser-Lapcan-installation-help-tf4091354.html#a11631618 > >>>> Sent from the playerstage-users mailing list archive at Nabble.com. > >>>> > >>>> > >>>> ------------------------------------------------------------------------- > >>>> This SF.net email is sponsored by DB2 Express > >>>> Download DB2 Express C - the FREE version of DB2 express and take > >>>> control of your XML. No limits. Just data. Click to get it now. > >>>> http://sourceforge.net/powerbar/db2/ > >>>> _______________________________________________ > >>>> Playerstage-users mailing list > >>>> Pla...@li... > >>>> https://lists.sourceforge.net/lists/listinfo/playerstage-users > >>>> > >>> ------------------------------------------------------------------------- > >>> This SF.net email is sponsored by DB2 Express > >>> Download DB2 Express C - the FREE version of DB2 express and take > >>> control of your XML. No limits. Just data. Click to get it now. > >>> http://sourceforge.net/powerbar/db2/ > >>> _______________________________________________ > >>> Playerstage-users mailing list > >>> Pla...@li... > >>> https://lists.sourceforge.net/lists/listinfo/playerstage-users > >>> > >>> > >> -- > >> View this message in context: http://www.nabble.com/kvaser-Lapcan-installation-help-tf4091354.html#a11649315 > >> Sent from the playerstage-users mailing list archive at Nabble.com. > >> > >> > >> ------------------------------------------------------------------------- > >> This SF.net email is sponsored by DB2 Express > >> Download DB2 Express C - the FREE version of DB2 express and take > >> control of your XML. No limits. Just data. Click to get it now. > >> http://sourceforge.net/powerbar/db2/ > >> _______________________________________________ > >> Playerstage-users mailing list > >> Pla...@li... > >> https://lists.sourceforge.net/lists/listinfo/playerstage-users > >> > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by DB2 Express > > Download DB2 Express C - the FREE version of DB2 express and take > > control of your XML. No limits. Just data. Click to get it now. > > http://sourceforge.net/powerbar/db2/ > > _______________________________________________ > > Playerstage-users mailing list > > Pla...@li... > > https://lists.sourceforge.net/lists/listinfo/playerstage-users > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Playerstage-users mailing list > Pla...@li... > https://lists.sourceforge.net/lists/listinfo/playerstage-users > |