Dienstag, 8. März 2011

Improved tactile feedback with the Community SSU

The latest version of hildon-desktop features experimental support for improved tactile feedback. What this means for you is that if you enable this feature, you will "feel" app menus and dialogs appearing and disappearing, just like on some Symbian^3 devices. It's disabled by default, but you could give it a try and see if it improves your experience.

First of all, you have to install the tactile helper from Extras-Devel (Git repository here). Then, you need to edit /usr/share/hildon-desktop/transitions.ini with a text editor as root and set the value of tactilepopups to 1 (i.e. change "tactilepopups = 0" to "tactilepopups = 1"). Save the file, and the changes should be applied instantly (if you have the latest version of the CSSU installed). Yes, I know that this forks a new process every time a feedback is played, but this keeps the architecture open for experimentation and prototyping of new ideas. It also didn't noticeably hurt my N900's battery life when used for a few days.

One further improvement would be to add support for "tactile" into Hildon, so that it vibrates when you press a button, but it doesn't vibrate if you touch a non-sensitive area of the UI (because right now, it vibrates on every touch when configured to do so, and that's not really tactile feedback of UI elements - you can "feel" the screen anyway, and it doesn't matter if the device registered your touch if the touch turned out to fall into a spot where no action will be carried out). I'm not sure if Qt Mobility's Feedback API already supports controlling the N900's vibra motor, but if not, there would be another great improvement opportunity.

The tactile helper can be easily integrated in other apps, the source should be trivial to understand, and easy to utilize in third party applications. It also comes with an example ('tactile-demo.py') that you can have a look at for a more elaborate example :)


timsamoff hat gesagt…

I was lucky enough to see some really innovative haptic response work done for Maemo 5 back at Nokia World 2009. Some of the UX that was created was so real, I enjoyed using the onscreen keyboard better than the hardware keyboard. Things like:

* Strong(ish) vibration when pressing down; a subtler vibration when releasing the button (lifting finger).

* Very light vibration when swiping screens; stronger vibration when swipe ended.

* Click vibration for menu buttons (similar to first description above), resulting in a unique vibration when menu was open.

* No vibration when clicking a null area of a menu and then subtle vibrations when the finger "dragged" over each menu item; followed by the button "release" vibration when a menu button was chosen (think "blind" usage).

* There were several examples of using haptics with sound effects in games as well (e.g., machine gun fire, getting hit by someone, etc.).

There were a few more examples, but I'm running out of memory. ;)

Onion hat gesagt…

Somekind of D-Bus service would be nicer and wouldn't need any ugly sudo hacks.

Markus hat gesagt…

It works, but it makes some high pitch squeaking noise on my phone... doesn't sound really healthy. Can it cause any hardware damage?

thp hat gesagt…

Markus: That high-pitch noises are simply the vibration motor. I don't think that it can cause damage to the hardware, but if you are unsure, please just don't use it :) That said, I'm using it myself and it has been working fine so far.

uros_vozdovac hat gesagt…

How to install tactile-helper with thumb? .deb says unable to install package...

thp hat gesagt…

@uros_vozdovac: In that case, you probably have to compile from source from here: https://github.com/thp/tactile