1. Download the ndof_input.sh script from here, copy it inside /lib/udev/ and make sure it has execution rights:
Code: Select all
chmod a+x /lib/udev/ndof_input.sh
2. Add (as root) the following line to /etc/udev/rules.d/10-local.rules or create file if it doesn't exist:
Code: Select all
KERNEL=="event*", IMPORT{program}="ndof_input.sh %p", NAME="input/%k", GROUP="ndofusers", MODE="0644"
4. Disconnect and reconnect our device if you had it plugged in.
5. Open GIMP --> Prefs --> Input Controllers. Add the "Linux Input" entry to the panel on the right. Double-click on it to configure it.
6. Open the "Device" drop-down list, you should see your 3Dconnexion device. (If you don't, repeat step 4.) Select the device. The "State" label should update to something like "Reading from /dev/input/eventN"
7. Now we can map the actions to the events. This is kind of up to you, but anyway these are my favorites:
Event "Button 0" Action: "tools-paintbrush"
Event "Button 1" Action: "tools-airbrush"
Event "X Move Left" Action: "view-scroll-left"
Event "X Move Right" Action: "view-scroll-right"
Event "Y Move Forward" Action: "view-scroll-up"
Event "Y Move Back" Action: "view-scroll-down"
Event "Z Axis Turn Left" Action: "tools-paint-brush-scale-decrease"
Event "Z Axis Turn Right" Action: "tools-paint-brush-scale-increase"
8. Click OK and close all panels.
You now should be able to pan the image L/R/U/D if it's zoomed in, select your favorite tools with the SpaceNavigator buttons, and increase/decrease the brush sizes by twisting the knob left/right. A cool thing is that you can change the brush size and paint at the same time. Feel free to play around with the other actions, GIMP is fully configurable.
One problem with this solution is that the sensitivity and speed is not adjustable. I hope it's helpful anyway. Feel free to report any issues or improvements.