Reply to topic

Contour ShuttlePro v2 not detected by Kdenlive

User avatar TheDiveO
Registered Member
Posts
148
Karma
0
I've just gotten my Contour ShuttlePro v2 jog dial. Plugged into an USB socket and the Linux kernel properly detects this USB device and assigns a device (udev) name. This is the relevant snippet from the kernel messages:
Code: Select all
[  670.684710] usb 2-1.6: new low-speed USB device number 5 using ehci-pci
[  670.781942] usb 2-1.6: New USB device found, idVendor=0b33, idProduct=0030
[  670.781947] usb 2-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  670.781950] usb 2-1.6: Product: ShuttlePRO v2
[  670.781953] usb 2-1.6: Manufacturer: Contour Design
[  670.786765] input: Contour Design ShuttlePRO v2 as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.6/2-1.6:1.0/input/input12
[  670.787116] hid-generic 0003:0B33:0030.0009: input,hidraw5: USB HID v1.10 Device [Contour Design ShuttlePRO v2] on usb-0000:00:1d.0-1.6/input0


I also have a udev rule in place, 99-shuttlepro.rules:
Code: Select all
ATTRS{name}=="Contour Design ShuttlePRO v2" MODE="0666"


Checking the /dev tree according to the information listed in the kernel messages, I see that my ShuttlePro has been mapped to
Code: Select all
/dev/input/by-path/pci-0000:00:1d.0-usb-0:1.6:1.0-event

which is in fact a link to
Code: Select all
/dev/input/event5


When I start Kdenlive and go into the general settings, I don't see my ShuttlePro listed in the jog dial section; in fact, no device is listed there at all. Could it be that Kdenlive expects the jog dial devices to pop up under a different set of names in the udev /dev tree?


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...
User avatar TheDiveO
Registered Member
Posts
148
Karma
0
I've found out that Kdenlive does seem to look for the wrong device names. If I manually create a link for a /dev/input/inputnumber to the correct event dev file, then Kdenlive immediately detects my ShuttlePro. To find out the correct name for a ShuttlePro on a particular system, list the /dev/input/by-id; this shows also my ShuttlePro v2:

Code: Select all
lrwxrwxrwx 1 root root 9 Feb  1 10:36 usb-Contour_Design_ShuttlePRO_v2-event-if00 -> ../event5


If I now set a link from, say input5 to event5, then Kdenlive is happily detecting the ShuttlePro. At least, I've got Kdenlive working with my new ShuttlePro v2. But this is not fully satisfying, as it requires setting up device links manually. Eeek.


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...
User avatar TheDiveO
Registered Member
Posts
148
Karma
0
Okay, fixed it myself. I've set up a 99-shuttlepro.rules as follows:
Code: Select all
ATTRS{name}=="Contour Design ShuttlePRO v2" MODE="0666" SYMLINK+="input/input%n"

This rule automatically creates the correct /dev/input/inputX and links it to the appropriate eventX device file. It's not perfect as it also creates a mouseX device file, but I can live with it.


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...
asilnevs
Registered Member
Posts
42
Karma
0
This is how I get it working:
sudo groupadd -f input
sudo gpasswd -a jef input
gksudo gedit /etc/udev/rules.d/99-input.rules
and put the next text in it:
KERNEL=="event*", NAME="input/%k", MODE:="660", GROUP="input"
KERNEL=="js*", NAME="input/%k", MODE:="664", GROUP="input"
Save this file and reboot the computer and the ShuttlePro v2 is available.
This comes from: viewtopic.php?f=265&t=114318
I'm very happy with the shuttlePro v2, it makes editing very fast and easy :)
User avatar TheDiveO
Registered Member
Posts
148
Karma
0
No need to reboot, just do a...
Code: Select all
#udevadm control --reload

...works like a charm, tested it myself as I didn't want to reboot during my experiments.


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...
User avatar TheDiveO
Registered Member
Posts
148
Karma
0
asilnevs wrote:This is how I get it working:
KERNEL=="event*", NAME="input/%k", MODE:="660", GROUP="input"
KERNEL=="js*", NAME="input/%k", MODE:="664", GROUP="input"

I would like to understand the rationale for these rules, can you help me? To me, the first rule seems to be unnecessary unspecific, kinda catch-all rule. It may cause havoc when I connect other input devices, such as my tablet...

And what is the second rule good for? What are js* devices?? I don't see them in my /dev/input branch, so why should I add rules that may do something else?


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...
asilnevs
Registered Member
Posts
42
Karma
0
Sorry, I can't help you with this because I'm not familiair with all those commands.
Maybe you can ask it in the topic that I mentioned before: viewtopic.php?f=265&t=114318
In that topic he also refers to:
http://osdir.com/ml/video.kino.devel/20 ... 00027.html
and
http://sourceforge.net/apps/mediawiki/g ... _udev_Rule
I hope that can help you.
User avatar TheDiveO
Registered Member
Posts
148
Karma
0
Another update: I've noticed that the Linux kernel renumbers input/event devices, especially when waking up from a system sleep or hibernation. In consequence, Kdenlive looses contact with my ShuttlePRO v2. I've solved this problem by setting a permanent symbolic link from /dev/input/input00 to /dev/input/by-id/usb-Contour_Design_ShuttlePRO_v2-event-if00. This solves the problem of Kdenlive finding only inputX devices and at the same time keeps the name input00 constant across the kernel renumbering devices as the link references the ShuttlePRO v2 by its identifier, not by its ever-changing device number.


TheDiveO on YouTube: diving videos and aerial (quadcopter) videos, all made with Kdenlive.
TheDiveO Blog: know-how about Protune-grading in Kdenlive, GoPro HD Hero 3, DJI Phantom Quadcopter, full face mask diving, and some more...

 
Reply to topic

Bookmarks



Who is online

Registered users: AGB, Azzart, Baidu [Spider], Bing [Bot], Bingy, colomar, Exabot [Bot], garthecho, Google [Bot], google01103, GreatEmerald, jensreuterberg, jstaniek, kainz.a, koriun, Kver, La Ninje, lazyit, Majestic-12 [Bot], MSN [Bot], Nuc!eoN, psbot [Picsearch], rulet111, scummos, SecretCode, Tuukka, undoshmulhe, Uri_Herrera, Yahoo [Bot]