1 |
I'm trying to use an X-rite i1 Display 3 to calibrate my laptop screen in |
2 |
gnome 3 and running into some trouble. The color calibration settings |
3 |
screen opens up as soon as I plug in the calibrator, and the first error I |
4 |
see is after I've gone through all the options and clicked the start button |
5 |
to actually begin calibrating. |
6 |
|
7 |
At that point the error message is: |
8 |
|
9 |
An internal error occurred that could not be recovered. |
10 |
You can remove the calibration device. |
11 |
|
12 |
This error occurs immediately after clicking the button. |
13 |
|
14 |
So I googled around and I found a few links to folks having similar issues: |
15 |
|
16 |
[1]: https://github.com/hughsie/colord/pull/29 |
17 |
[2]: https://bugzilla.redhat.com/show_bug.cgi?id=1297167 |
18 |
[3]: https://bugzilla.redhat.com/show_bug.cgi?id=1000910 |
19 |
|
20 |
Out of those, the third seems to be the closest to the issue I'm having. |
21 |
From what I can see, the USB device is enumerated properly by the kernel: |
22 |
|
23 |
% dmesg # snipped the relevant stuff: |
24 |
[ 2406.995020] usb 1-1.2: new full-speed USB device number 8 using ehci-pci |
25 |
[ 2407.083266] usb 1-1.2: New USB device found, idVendor=0765, |
26 |
idProduct=5021 |
27 |
[ 2407.083275] usb 1-1.2: New USB device strings: Mfr=1, Product=2, |
28 |
SerialNumber=0 |
29 |
[ 2407.083279] usb 1-1.2: Product: i1Display3 Bootloader |
30 |
[ 2407.083283] usb 1-1.2: Manufacturer: X-Rite Inc. |
31 |
[ 2407.086060] hid-generic 0003:0765:5021.0004: hiddev0,hidraw0: USB HID |
32 |
v1.11 Device [X-Rite Inc. i1Display3 Bootloader] on |
33 |
usb-0000:00:1a.0-1.2/input0 |
34 |
[ 2407.842362] usb 1-1.2: USB disconnect, device number 8 |
35 |
[ 2408.019082] usb 1-1.2: new full-speed USB device number 9 using ehci-pci |
36 |
[ 2408.107524] usb 1-1.2: New USB device found, idVendor=0765, |
37 |
idProduct=5020 |
38 |
[ 2408.107531] usb 1-1.2: New USB device strings: Mfr=1, Product=2, |
39 |
SerialNumber=0 |
40 |
[ 2408.107535] usb 1-1.2: Product: i1Display3 |
41 |
[ 2408.107538] usb 1-1.2: Manufacturer: X-Rite, Inc. |
42 |
[ 2408.109804] hid-generic 0003:0765:5020.0005: hiddev0,hidraw0: USB HID |
43 |
v1.11 Device [X-Rite, Inc. i1Display3] on usb-0000:00:1a.0-1.2/input0 |
44 |
|
45 |
And udev seems to be happy about it: |
46 |
|
47 |
% udevadm monitor --environment --udev # plugging in the device: |
48 |
monitor will print the received events for: |
49 |
UDEV - the event which udev sends out after rule processing |
50 |
|
51 |
UDEV [3659.893310] add /class/usbmisc (class) |
52 |
ACTION=add |
53 |
DEVPATH=/class/usbmisc |
54 |
SEQNUM=3434 |
55 |
SUBSYSTEM=class |
56 |
USEC_INITIALIZED=3659893139 |
57 |
|
58 |
UDEV [3659.894709] add |
59 |
/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2 (usb) |
60 |
ACTION=add |
61 |
BUSNUM=001 |
62 |
DEVNAME=/dev/bus/usb/001/012 |
63 |
DEVNUM=012 |
64 |
DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2 |
65 |
DEVTYPE=usb_device |
66 |
DRIVER=usb |
67 |
ID_BUS=usb |
68 |
ID_MODEL=i1Display3_Bootloader |
69 |
ID_MODEL_ENC=i1Display3\x20Bootloader |
70 |
ID_MODEL_ID=5021 |
71 |
ID_REVISION=0001 |
72 |
ID_SERIAL=X-Rite_Inc._i1Display3_Bootloader |
73 |
ID_USB_INTERFACES=:030000: |
74 |
ID_VENDOR=X-Rite_Inc. |
75 |
ID_VENDOR_ENC=X-Rite\x20Inc. |
76 |
ID_VENDOR_FROM_DATABASE=X-Rite, Inc. |
77 |
ID_VENDOR_ID=0765 |
78 |
MAJOR=189 |
79 |
MINOR=11 |
80 |
PRODUCT=765/5021/1 |
81 |
SEQNUM=3431 |
82 |
SUBSYSTEM=usb |
83 |
TYPE=0/0/0 |
84 |
USEC_INITIALIZED=3659894455 |
85 |
... |
86 |
|
87 |
But the calibration isn't working. Here's the bit of the journal showing |
88 |
gnome complaining when I hit the start button: |
89 |
|
90 |
% journalctl -xb # here's the relevant part: |
91 |
Aug 30 22:36:23 luigi colord[1036]: (colord:1036): Cd-WARNING **: the child |
92 |
exited with return code 1 |
93 |
Aug 30 22:36:23 luigi gnome-session[1374]: (gnome-control-center:1829): |
94 |
color-cc-panel-WARNING **: calibration failed with code 1: argyll-spotread |
95 |
exited unexpectedly |
96 |
Aug 30 22:36:24 luigi colord[1036]: (colord:1036): Cd-WARNING **: no child |
97 |
pid to kill! |
98 |
Aug 30 22:36:24 luigi gnome-session[1374]: (gnome-control-center:1829): |
99 |
color-cc-panel-WARNING **: failed to start calibrate: failed to calibrate |
100 |
|
101 |
So when I saw that I started running argyll-spotread on its own to see if |
102 |
that would still fail: |
103 |
|
104 |
% argyll-spotread -v -D4 |
105 |
usb_check_and_add: found instrument vid 0x0765, pid 0x5020 |
106 |
new_inst: called with path '/dev/bus/usb/001/013 (X-Rite i1 DisplayPro, |
107 |
ColorMunki Display)' |
108 |
Connecting to the instrument .. |
109 |
i1d3_init_coms: called |
110 |
i1d3_init_coms: About to init USB |
111 |
usb_open_port: open port '/dev/bus/usb/001/013' succeeded |
112 |
i1d3_command: Sending cmd 'GetStatus' args '00 01 00 00 00 00 00 00' |
113 |
coms_usb_transaction: Submitting urb to fd 3 failed with -1 |
114 |
i1d3_command: response read failed with ICOM err 0x20000 |
115 |
coms_usb_transaction: Submitting urb to fd 3 failed with -1 |
116 |
i1d3_init_coms: failed with rv = 0x70062 |
117 |
Failed to initialise communications with instrument |
118 |
or wrong instrument or bad configuration! |
119 |
('Communications failure' + 'Communications failure') |
120 |
urb_reaper: cleared requests |
121 |
|
122 |
And when that happens I see this out in dmesg (the USB IDs may not line up |
123 |
since I plugged and unplugged this many times): |
124 |
|
125 |
% dmesg |
126 |
[ 232.711891] usb 1-1.2: usbfs: usb_submit_urb returned -28 |
127 |
[ 232.711910] usb 1-1.2: usbfs: usb_submit_urb returned -28 |
128 |
[ 232.784675] usb 1-1.2: reset full-speed USB device number 7 using |
129 |
ehci-pci |
130 |
|
131 |
My questions are: |
132 |
|
133 |
1. Has anyone successfully used this model of calibrator to successfully |
134 |
calibrate their display with the gnome tools? |
135 |
|
136 |
2. Am I missing some dependency or USE flag that isn't getting pulled in |
137 |
for me? Or maybe a kernel config option? |
138 |
|
139 |
Thanks everyone in advance for any help. |