Okay, so there are three issues here: 
     1. gnome-pilot restore doesn't work over usbserial 
     2. My Treo 700p doesn't work over usbserial 
     3. I can't get libusb to work at all
I'm afraid I confused this issue a bit, because I followed up on 1 with
gnome-pilot but then entangled 2 and 3 in the discussion.  I'm bringing
this back to pilot-link, and starting with 2 and 3, which are discussed
below.  I'm not going to attempt 1 again until something is working on
at least 2 and maybe 3.

On Fri, 2007-05-04 at 13:08 +0100, Matt Davey wrote: 
> On Fri, 2007-05-04 at 07:43 -0400, David A. Desrosiers wrote:
> > On Fri, 2007-05-04 at 06:21 -0400, Adam C Powell IV wrote:
> > > But the udev auto-loading visor is the only explanation that makes
> > > sense...  I just tried blacklisting visor and adding the
> > > 60-libpisock.rules file to /etc/udev/rules.d as described in the
> > > README, did /etc/init.d/udev restart (even rebooted), but it doesn't
> > > work: connecting the device always loads visor and interferes with
> > > libusb. :-(
> > 
> > A few things come to mind: 
> > 
> > If you blacklisted visor, removed it, restarted udev and its STILL
> > loading, then its being loaded by something else. A cron job? Something
> > else in /etc/modules? Something distribution-specific? I'd rgrep /etc/
> > for visor and see what comes up.

Here's what comes up: 
Binary file /etc/alternatives/emacs matches
/etc/hotplug/usb.distmap:visor                0x0003 0x082d   0x0100    0x0000  
     0x0000       0x00         0x00            0x00            0x00            
0x00            0x00            0x00000000
/etc/udev/rules.d/udev.rules:   ATTRS{product}=="Palm Handheld*|Handspring 
Visor|palmOne Handheld", \
/etc/udev/udev.rules:   ATTRS{product}=="Palm Handheld*|Handspring 
Visor|palmOne Handheld", \
/etc/udev/devfs.rules:  ATTRS{product}=="Palm Handheld*|Handspring 
Visor|palmOne Handheld", \
and a bunch of other irrelevants (dictionaries, gconf schemas)

udev.rules, devfs.rules, and rules.d/udev.rules all have this: 
SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", \
        ATTRS{product}=="Palm Handheld*|Handspring Visor|palmOne Handheld", \
                                        SYMLINK+="pilot"
and /dev/pilot is being created along with ttyUSB0 and 1 when I plug in
the 600 or 700p.

The 600 works fine with this.  But with the 700p when I pause gpilotd
and run:
pilot-xfer -p /dev/pilot -l
then it prompts me "Listening for incoming connection..." and I hit
hotsync on the Treo, nothing happens.

> re. distribution-specific: did you use the right location for your
> blacklist file?  Not sure what's right in your case... I guess you could
> restart udev and check the access time on your blacklist file gets
> updated (ls -lu).

I had used /etc/modprobe.d/ as mentioned in README.libusb and which has:
.          alsa-base-blacklist  blacklist-palm          pnp-hotplug
..         arch                 crypto                  sound
aliases    arch-aliases         display_class           sound.dpkg-old
alsa-base  blacklist            linux-sound-base_noOSS
I think this is the right place for it.

ls -lu does not give a new time for any of these when I restart udev,
but it gives the restart time on all files in /etc/udev/rules.d/
including 60-libpisock.rules

> > > Now I have another problem: a 700p which doesn't restore at all with
> > > usbserial.  I haven't seen anything on the pilot-link or gnome-pilot
> > > lists on this, and the web is not much help.
> > 
> > Did you add the 700p's vendor/prod structures to the .rules for for udev
> > using pilot-link? I don't think we've ever had a user with a 700p before
> > using udev, so that entry may need to be updated so that libusb can hook
> > in and handle it at connect time (likewise for the visor module, that'll
> > need to be updated and rebuilt as well; it doesn't require a kernel
> > rebuild, you can just build and install the patched module directly).

For the 700p with libusb, the ids are already in
the /usr/share/pilot-link/udev/60-libpisock.rules (distributed with
Debian pilot-link 0.12.1-5) which I had copied to /etc/udev/rules.d/

Also, the ID is the same as the Treo 650, which is already in
drivers/usb/serial/visor.h in Debian 2.6.18.

> Alternatively, you should be able to do:
> modprobe visor vendor=0x0830 product=0x61
> (use the correct vendor/product IDs for your 700p -- you can use lshal
> during a sync attempt to find the IDs).

It already loads visor when I plug in the 700p.  (Unlike the 300 and
600, the 700p identifies to the computer as soon as it's plugged in,
before hotsyncing.)

> > > If people have ideas on getting libusb to work I'm happy to keep
> > > trying for a couple of days, but fortunately they also gave me a fixed
> > > 600 to fall back on. 
> > 
> > If you rmmod visor, cradle your Palm device, and hit HotSync... does the
> > system log show any visor-related messages at all? If so, then I'd
> > backtrack from there and see why.

Here's what's in syslog (a superset of messages) when I rmmod visor;
rmmod usbserial and then plug in the 700p (without blacklisting udev or
including 60-libpisock.rules):

May  7 07:02:35 doorstop kernel: usbcore: deregistering driver visor
May  7 07:02:35 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
deregistering driver Handspring Visor / Palm OS
May  7 07:02:35 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
deregistering driver Sony Clie 3.5
May  7 07:02:35 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
deregistering driver Sony Clie 5.0
May  7 07:02:39 doorstop kernel: usbcore: deregistering driver 
usbserial_genericMay  7 07:02:39 doorstop kernel: 
drivers/usb/serial/usb-serial.c: USB Serial deregistering driver generic
May  7 07:02:39 doorstop kernel: usbcore: deregistering driver usbserial
May  7 07:04:39 doorstop kernel: usb 1-1.3: new full speed USB device using 
uhci_hcd and address 5
May  7 07:04:39 doorstop kernel: usb 1-1.3: configuration #1 chosen from 1 
choice
May  7 07:04:40 doorstop kernel: usbcore: registered new driver usbserial
May  7 07:04:40 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
support registered for generic
May  7 07:04:40 doorstop kernel: usbcore: registered new driver 
usbserial_generic
May  7 07:04:40 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
Driver core
May  7 07:04:40 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
support registered for Handspring Visor / Palm OS
May  7 07:04:40 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
support registered for Sony Clie 3.5
May  7 07:04:40 doorstop kernel: drivers/usb/serial/usb-serial.c: USB Serial 
support registered for Sony Clie 5.0
May  7 07:04:40 doorstop kernel: visor 1-1.3:1.0: Handspring Visor / Palm OS 
converter detected
May  7 07:04:40 doorstop kernel: usb 1-1.3: Handspring Visor / Palm OS 
converter now attached to ttyUSB0
May  7 07:04:40 doorstop kernel: usb 1-1.3: Handspring Visor / Palm OS 
converter now attached to ttyUSB1
May  7 07:04:40 doorstop kernel: usbcore: registered new driver visor
May  7 07:04:40 doorstop kernel: drivers/usb/serial/visor.c: USB HandSpring 
Visor / Palm OS driver
May  7 07:04:41 doorstop NetworkManager: <debug info>^I[1178535881.145291] 
nm_hal_device_added (): New device added (hal udi is 
'/org/freedesktop/Hal/devices/usb_device_830_61_PalmSN12345678').
May  7 07:04:41 doorstop NetworkManager: <debug info>^I[1178535881.212808] 
nm_hal_device_added (): New device added (hal udi is 
'/org/freedesktop/Hal/devices/usb_device_830_61_PalmSN12345678_if0').
May  7 07:04:41 doorstop NetworkManager: <debug info>^I[1178535881.370967] 
nm_hal_device_added (): New device added (hal udi is 
'/org/freedesktop/Hal/devices/usb_device_830_61_PalmSN12345678_if0_serial_usb_0').
May  7 07:04:41 doorstop NetworkManager: <debug info>^I[1178535881.460374] 
nm_hal_device_added (): New device added (hal udi is 
'/org/freedesktop/Hal/devices/usb_device_830_61_PalmSN12345678_if0_serial_usb_1').
May  7 07:04:41 doorstop NetworkManager: <debug info>^I[1178535881.633047] 
nm_hal_device_added (): New device added (hal udi is 
'/org/freedesktop/Hal/devices/usb_device_830_61_PalmSN12345678_usbraw').

With blacklist-palm and 60-libpisock.rules in place and udev restarted,
output is identical for both devices.

> > Also, make sure you're running a current version of udev. I'm running
> > 108-0ubuntu4 here and it works great. You don't need the latest bleeding
> > edge version (and DO NOT build it from source and try to install it
> > yourself, you will break things). You just need something current.

This is Debian etch 0.105-4 which is still the version in unstable.

> > If you're still having trouble, catch me/us on irc and we'll help
> > real-time; irc.pilot-link.org, port 6667 for cleartext, 994 for ircs.

Thanks, have to run now, but will try this evening or tomorrow morning.

Thanks for all the feedback and suggestions!  I'd love to have libusb
working for either of these guys, and hopefully to have the 700p working
somehow.  Then we can turn to gnome-pilot restore...

-Adam
-- 
GPG fingerprint: D54D 1AEE B11C CE9B A02B  C5DD 526F 01E8 564E E4B6

Welcome to the best software in the world today cafe!
http://www.take6.com/albums/greatesthits.html

_______________________________________________
gnome-pilot-list mailing list
gnome-pilot-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gnome-pilot-list

Reply via email to