[argyllcms] Re: Heuy Colorimeter under Linux-2.6.28

  • From: Andrew Douglas Pitonyak <apitonya@xxxxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Fri, 03 Jul 2009 01:10:17 -0400

On 07/02/2009 03:30 PM, Martin Cracauer wrote:
I can't seem to get the required /dev/ttyUSB0 entry for my Huey
colorimeter.

I have one of these

http://www.bhphotovideo.com/c/product/485807-REG/Pantone_MEU113_HueyPRO_Colorimeter.html

I am running Fedora Core 11 with 64-bit. As you can see, I am using kernal 2.6.29

$ uname -a
Linux andrew 2.6.29.4-167.fc11.x86_64 #1 SMP Wed May 27 17:27:08 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

Everything works great for me. Well, I everything but colprof. The Fedora version is broken, so I used another version that is fixed that I downloaded for this part. When I plugged in the device, this is what I saw ins /var/log/messages

usb 5-1: new low speed USB device using uhci_hcd and address 2
usb 5-1: New USB device found, idVendor=0971, idProduct=2005
usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 5-1: configuration #1 chosen from 1 choice

Based on y our link on the Ubuntu forums, the vendor and product IDs both look correct.

I do not see anything particular in my udev rules on Fedora to deal with this device. There was a time when I had trouble with a scanner in Fedora, so I used the following script:

****************

#!/bin/sh
# Set scanner vendor and product code as returned by lsusb.
scandevice=04b8:0122

scanner=`/sbin/lsusb -d $scandevice`
bus=`echo $scanner| sed -e s/Bus\ // -e s/\ Device.\*//`
device=`echo $scanner| sed -e s/Bus.\*Device\ // -e s/\:.\*//`
if [ "$bus" = "" ] | [ "$device" = "" ]
then
  echo "Unable to find scanner with vendor:product = $scandevice"
  exit 1
fi
chmod 666 /proc/bus/usb/$bus/$device
echo "Set access for $scandevice at /proc/bus/usb/$bus/$device"

*********************

I think, however, that this is a different problem for you.

I am sure I have the right udev entries, manually compared the device
id with `lsusb`.
The boring details are here:
http://ubuntuforums.org/showthread.php?t=1202725

I now believe that I have the problem referenced before on this
mailing list that the usb hid (human interface device) driver in Linux
grabs the Huey (which incorrectly claims to be a hid).  In older
kernel versions you solved that by adding the Huey to the blacklist in
usbhid/hid-quirks.c
//www.freelists.org/post/argyllcms/PATCH-usbhid-Blacklist-the-GretagMacbeth-Huey-display-colorimeter

However, that doesn't work anymore as of 2.6.28, HID_QUIRK_IGNORE is
gone.
More details:
http://ubuntuforums.org/showthread.php?t=1202755


So, questions:

1) anyone got in running in such a new kernel? How did you do it?

2) anyone with any kernel, can you tell me which usb modules you have
loaded? I have manually loaded the generic usb serial driver, to no
effect.

To clarify: I don't have the permissions problem that most people
have.  I don't even get any /dev entry at all.
I see, as I said, I think that you may have a different issue, but I am not an expert on this.

(1) Have you tried udevmonitor then plugged in the device?

[root@andrew andy]# udevmonitor
the program '/bin/bash' called 'udevmonitor', it should use 'udevadm monitor <options>', this will stop working in a future release
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[1246597389.183648] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1 (usb) KERNEL[1246597389.186560] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/5-1:1.0 (usb) KERNEL[1246597389.186674] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.3_ep81 (usb_endpoint) KERNEL[1246597389.186862] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/usb_endpoint/usbdev5.3_ep00 (usb_endpoint) UDEV [1246597389.229708] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1 (usb) UDEV [1246597389.234155] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/usb_endpoint/usbdev5.3_ep00 (usb_endpoint) UDEV [1246597389.264469] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/5-1:1.0 (usb) UDEV [1246597389.276826] add /devices/pci0000:00/0000:00:1a.2/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.3_ep81 (usb_endpoint)


Now, find out a bit more information:

$udevinfo -a -p /devices/pci0000:00/0000:00:1a.2/usb5/5-1

the program '/bin/bash' called 'udevinfo', it should use 'udevadm info <options>', this will stop working in a future release

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:1a.2/usb5/5-1':
    KERNEL=="5-1"
    SUBSYSTEM=="usb"
    DRIVER=="usb"
    ATTR{configuration}==""
    ATTR{bNumInterfaces}==" 1"
    ATTR{bConfigurationValue}=="1"
    ATTR{bmAttributes}=="80"
    ATTR{bMaxPower}=="100mA"
    ATTR{urbnum}=="6"
    ATTR{idVendor}=="0971"
    ATTR{idProduct}=="2005"
    ATTR{bcdDevice}=="0001"
    ATTR{bDeviceClass}=="00"
    ATTR{bDeviceSubClass}=="00"
    ATTR{bDeviceProtocol}=="00"
    ATTR{bNumConfigurations}=="1"
    ATTR{bMaxPacketSize0}=="8"
    ATTR{speed}=="1.5"
    ATTR{busnum}=="5"
    ATTR{devnum}=="3"
    ATTR{version}==" 1.10"
    ATTR{maxchild}=="0"
    ATTR{quirks}=="0x0"
    ATTR{authorized}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:1a.2/usb5':
    KERNELS=="usb5"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="  0mA"
    ATTRS{urbnum}=="50922"
    ATTRS{idVendor}=="1d6b"
    ATTRS{idProduct}=="0001"
    ATTRS{bcdDevice}=="0206"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="12"
    ATTRS{busnum}=="5"
    ATTRS{devnum}=="1"
    ATTRS{version}==" 1.10"
    ATTRS{maxchild}=="2"
    ATTRS{quirks}=="0x0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="Linux 2.6.29.4-167.fc11.x86_64 uhci_hcd"
    ATTRS{product}=="UHCI Host Controller"
    ATTRS{serial}=="0000:00:1a.2"
    ATTRS{authorized_default}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:1a.2':
    KERNELS=="0000:00:1a.2"
    SUBSYSTEMS=="pci"
    DRIVERS=="uhci_hcd"
    ATTRS{vendor}=="0x8086"
    ATTRS{device}=="0x3a39"
    ATTRS{subsystem_vendor}=="0x1043"
    ATTRS{subsystem_device}=="0x82d4"
    ATTRS{class}=="0x0c0300"
    ATTRS{irq}=="19"
    ATTRS{local_cpus}=="00000000,000000ff"
    ATTRS{local_cpulist}=="0-7"
ATTRS{modalias}=="pci:v00008086d00003A39sv00001043sd000082D4bc0Csc03i00"
    ATTRS{numa_node}=="0"
    ATTRS{enable}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{msi_bus}==""

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

I fear that this will only help you see what is noticed. I also see that the udev rules on Ubuntu are very different from Fedora.... sigh, I suppose I should go to sleep.

--
Andrew Pitonyak
My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
My Book: http://www.hentzenwerke.com/catalog/oome.htm
Info:  http://www.pitonyak.org/oo.php
See Also: http://documentation.openoffice.org/HOW_TO/index.html


Other related posts: