[APP] VibraFix - or stop haptic feedback on Defy

Search This thread

renyhp

New member
Feb 20, 2016
4
0
Sorry to appear to hijack the Vibrafix thread, but it seems this thread is commonly read by people with vibration related issues, so this may be beneficial to them...
You're right, but maybe at this very point, if Cynyx, or some admin, or whatever, wants us to move the conversation somewhere else, that's fine, I understand.

You can then use Tasker to set these settings for you using a ROOT command line just like for the chmod:
Code:
settings put system VIB_NOTIFICATION_MAGNITUDE 0
Which on the Samsung Touchwiz Roms will do exactly what you're asking for as long as you use Tasker to change that setting when you change profile.

Thank you so much! Now I understand how to do all that with Tasker. I have a little problem with the settings, though.

Use a file manager on your phone to copy the file /data/data/com.android.providers.settings/databases/settings.db to a PC (as it's much easier to look on the PC rather than a small phone screen), and then use a SQLite editor such as sqlitestudio (free download) to open the database and have a look in the three different tables system, secure, and global. There you will see all of the options which can be set, if you use the search function within the SQLite editor to search for "vib" then it will hopefully show you all of the vibrate settings. With luck, you'll find a setting named something like VibrateOnNotify which will stop your phone vibrating when it gets a notification by default.

I don't know if I'm doing something wrong or I'm very unlucky, but in the whole settings.db file, searching for "vib" I've found only the entries
Code:
vibrate_when_ringing
power_notification_vibrate
which, if I'm guessing right, are not what I'm searching for (btw they're both set to 0!).
Comparing with how many entries you did find, I thought that was very strange, and, taken by scepticism, I searched for vibration settings looking at all of them, one by one, but those are the only which to me seem to be vibration-related (apart from haptic feedback, in which I'm not interested though).
EDIT: I also tried setting VIB_NOTIFICATION_MAGNITUDE to 0 from shell (maybe this has created a new record in the database? Did I do something I shouldn't have done?) but phone still vibrates on getting notifications.
Sorry for not being able to go ahead by myself at this point :(
 
Last edited:

johnwigley

Member
Nov 5, 2006
22
12
Having thought about the easiest way to achieve what you want, I realised I'd missed a far simpler solution...

Install Xposed if you haven't already, then install GravityBox

From within GravityBox go to Ultimate Notification Control-> Default Settings, and then ENABLE "Override Vibrations", and set the vibration pattern to 0 as it explains in the text next to it.

Have a look at it's "Quiet Hours" options as well, as they can selectively disable notification or all vibrations on a timed basis or permanently.

I think that on it's own will do exactly what you want, without having to mess around with Tasker scripts or anything else, as it will suppress all notification vibrations except when the phone is on Vibrate only. There is an additional option to disable notification vibrate in Vibrate only as well should you wish to do that. There are probably other Xposed modules that will do exactly the same thing such as Xnotifications, but I know GravityBox will definitely do it.

You're right, but maybe at this very point, if Cynyx, or some admin, or whatever, wants us to move the conversation somewhere else, that's fine, I understand.



Thank you so much! Now I understand how to do all that with Tasker. I have a little problem with the settings, though.



I don't know if I'm doing something wrong or I'm very unlucky, but in the whole settings.db file, searching for "vib" I've found only the entries
Code:
vibrate_when_ringing
power_notification_vibrate
which, if I'm guessing right, are not what I'm searching for (btw they're both set to 0!).
Comparing with how many entries you did find, I thought that was very strange, and, taken by scepticism, I searched for vibration settings looking at all of them, one by one, but those are the only which to me seem to be vibration-related (apart from haptic feedback, in which I'm not interested though).
EDIT: I also tried setting VIB_NOTIFICATION_MAGNITUDE to 0 from shell (maybe this has created a new record in the database? Did I do something I shouldn't have done?) but phone still vibrates on getting notifications.
Sorry for not being able to go ahead by myself at this point :(
 
  • Like
Reactions: renyhp

renyhp

New member
Feb 20, 2016
4
0
Install Xposed if you haven't already, then install GravityBox.

THANK YOU A LOT! :victory: I solved my problem, not this way but similarly. I'm going to describe how, just in case someone else has a similar problem, although I have serious doubts that that can happen.

I installed Xposed (about which I had never heard before, because I am new to modding) and GravityBox, but actually I didn't find the options within GravityBox to enable vibration only for vibration mode; plus, GravityBox's Ultimate Notification Control was going to expire after 50 reboots unless I paid (and, sincerely, I didn't want to pay for something that wouldn't have solved my problem).
I've found another Xposed module, Notification Manager, which allows me to disable vibration per-app, and I did that for all the apps (I know it sounds annoying, but actually it took me less than a minute; and after all, I won't install everyday apps that send me notifications).
Then I created two profiles in Tasker:
1) When ringer volume (%VOLR) is 0, run shell command "settings get global mode_ringer" and store output in %VIB. At exit, %VIB=0.
2) When %VIB is 1, and the phone gets a notification, vibrate.
This solved my problem, with the only little annoying fact that I can't enable/disable vibration if volume is already 0 (i.e. going from silent mode to vibration and vice versa), but I think this is a good compromise, better than every other solutions I found.

I did that %VIB stuff because, with the %SILENT variable, Priority + Vibration mode and Silent mode are indistinguishable. I could also do some detection of both %SILENT and %INTERRUPT variables in the second profile (and delete the first one) but usage of %INTERRUPT requires Notification Access enabled for Tasker, which I couldn't set because strangely Tasker won't show up in the Notification Access menu. Note that using %INTERRUPT variable would allow to switch also from silent mode to vibration and vice versa.

I have to thank johnwigley not only for helping me solving this problem (no one could do it, and, I mean, I asked to EVERYONE), but also for letting me discover such things as Tasker and Xposed which I've found very helpful, and which I used for other purposes too.
 
Last edited:

ivAnash

Senior Member
Aug 15, 2011
465
79
Bangalore
OnePlus 3
OnePlus 3T
Hi.. I installed Vibrafix on my One Plus 3 to stop the vibrations when I double tap to unlock my phone.. Well it worked fine for a while , until recently where the phone has stopped vibrating even on phone calls and sms's..

I have attached screenshots to show the options chosen. The first time I installed and activated Vibrafix , clicking the "TRY VIBRATE ON TOUCH ! " button would vibrate the phone, which has stopped now. Hope you look into and come up with a fix. Cheers..
 

Cynyx

Senior Member
Mar 29, 2011
69
62
Paris
Hello ivAnash,

Well, actually, strange behaviour, particulary if Vibrafix worked well till now.

a) Have you installed something new or changed some setting recently in your device ?

b) Can you try in order, and post the results for :

1 - Tick "Enable vibrate", and check if vibrate stills working
2 - Untick "Enable Vibrafix", and check if vibrate stills working
3 - Tick back "Enable Vibrafix", and check if normal Vibrafix behaviour is back
 
Last edited:
  • Like
Reactions: ivAnash

Cynyx

Senior Member
Mar 29, 2011
69
62
Paris
You have forgotten my question a) (perhaps something new makes Vibrafix not working now)

So answers 1 and 2 show your vibrate stills working, and answer 3 shows Vibrafix can disable it, and indeed not working...
No clue why Vibrafix can't catch phone calls and sms intents.

Your Vibrafix settings are simple and common, perhaps properties saving are messed up.
Even if i'm doubting about that, i'm sorry to say I have nothing more to offer than you try to uninstall and install again Vibrafix.
 
  • Like
Reactions: ivAnash

ivAnash

Senior Member
Aug 15, 2011
465
79
Bangalore
OnePlus 3
OnePlus 3T
You have forgotten my question a) (perhaps something new makes Vibrafix not working now)

So answers 1 and 2 show your vibrate stills working, and answer 3 shows Vibrafix can disable it, and indeed not working...
No clue why Vibrafix can't catch phone calls and sms intents.

Your Vibrafix settings are simple and common, perhaps properties saving are messed up.
Even if i'm doubting about that, i'm sorry to say I have nothing more to offer than you try to uninstall and install again Vibrafix.
I haven't installed anything new that should interfere with Vibrafix.. I tried uninstalling and reinstalling before I posted my issue here. That didn't work..
"Not saving the properties" , is there anyway I can check or fix that manually, like in a file that manages the vibration functions in my device.??
 

Cynyx

Senior Member
Mar 29, 2011
69
62
Paris
No file used to save settings/propreties in Vibrafix (but using android db).
Anyway, an uninstall removes all saved settings, and each time you open Vibrafix, you can retrieve your settings, so I'm sure it's not related to Vibrafix settings in fact.

Also, it's not realated to the core design or root rights for vibrate itself because Vibrafix can disable the vibrate and even enable it again (with the tests you have done).

The only thing left : notifications about sms or phone calls are not trigged or can't be catched by Vibrafix.
That's why, in my opinion, it's due to something outside Vibrafix, perhaps an another app or even android system, something linked to these notifications or permissions to access to these ones
(Permission concerned are : "SMS" and "Device ID & call information").
Since Android 6, permissions can be removed/granted individually for an app.
Can you check if all permissions are OK for Vibrafix ? (https://support.google.com/googleplay/answer/6270602?hl=en)
 
  • Like
Reactions: ivAnash

ivAnash

Senior Member
Aug 15, 2011
465
79
Bangalore
OnePlus 3
OnePlus 3T
No file used to save settings/propreties in Vibrafix (but using android db).
Anyway, an uninstall removes all saved settings, and each time you open Vibrafix, you can retrieve your settings, so I'm sure it's not related to Vibrafix settings in fact.

Also, it's not realated to the core design or root rights for vibrate itself because Vibrafix can disable the vibrate and even enable it again (with the tests you have done).

The only thing left : notifications about sms or phone calls are not trigged or can't be catched by Vibrafix.
That's why, in my opinion, it's due to something outside Vibrafix, perhaps an another app or even android system, something linked to these notifications or permissions to access to these ones
(Permission concerned are : "SMS" and "Device ID & call information").
Since Android 6, permissions can be removed/granted individually for an app.
Can you check if all permissions are OK for Vibrafix ? (https://support.google.com/googleplay/answer/6270602?hl=en)
What I find hard to understand is the fact when, "Enable Vibrafix" is selected and "Enable Vibration" is NOT selected, "Try Vibrate on touch" does not work..
So even if phone and sms notifications each the app the phone will not vibrate.
I have attached permission screenshots..
87fcaf88d509d0c3d373827ea3b3e943.jpg
 

Cynyx

Senior Member
Mar 29, 2011
69
62
Paris
What I find hard to understand is the fact when, "Enable Vibrafix" is selected and "Enable Vibration" is NOT selected, "Try Vibrate on touch" does not work..
It's the normal behaviour.
That's the purpose of the "Try" button, testing that Vibrafix is able to deactivate totaly the vibrate.

So even if phone and sms notifications each the app the phone will not vibrate.
It's also the normal behaviour : vibrate is totaly disabled for all apps.

But, normaly, Vibrafix is able to reactivate the vibrate when it catches a phone call or a sms notification.

If all permissions needed are here, I suppose these notifications can't be catched now, and I really don't know why if nothing changed on your phone recently
(like a system update who change the way notification are done or another app who mess up these particular notifications).
 
  • Like
Reactions: ivAnash

ivAnash

Senior Member
Aug 15, 2011
465
79
Bangalore
OnePlus 3
OnePlus 3T
It's the normal behaviour.
That's the purpose of the "Try" button, testing that Vibrafix is able to deactivate totaly the vibrate.


It's also the normal behaviour : vibrate is totaly disabled for all apps.

But, normaly, Vibrafix is able to reactivate the vibrate when it catches a phone call or a sms notification.

If all permissions needed are here, I suppose these notifications can't be catched now, and I really don't know why if nothing changed on your phone recently
(like a system update who change the way notification are done or another app who mess up these particular notifications).
Cool.. I'll see if I've made any changes recently and try to make it work and keep you posted. Thanks for looking into the issue.. Cheers..
 

zameer hassan

Senior Member
Aug 24, 2014
107
15
bangalore
Hey. This app drains battery by running in the background but according to my stats it's a very low amount of juice and less than a vibrator when used several times a day.

First of all,thank you from all of my heart.I used it and it really great app with very very small size and also no noticible battery drain.
For me, Double power button trigger camera and ok Google detection both causes annoying vibration in Android 8.1.0 Nexus 6P.After searching madly over internet,I got hit my your app and gave it a try and voilà it work instantly.
But what I have notice that it doesn't able to trigger vibration in phone calls.I didn't checked it for sms and alarm.
SO..my humble request is to please solve this issues..I am using Nexus 6P Android 8.1.0.
Thank you.:)
 

Cynyx

Senior Member
Mar 29, 2011
69
62
Paris
Hey. Great if this app can helps you a little.

Concerning your request, I'm sorry to say that I don't maintain the developpement of Vibrafix mainly because :
1 - This app was designed for only one device : motorola defy.
2 - I have changed my device since some months now and I haven't got root access on it so i'm not able to test the app anymore.

However, I want to believe the phone call trigger should work for most devices.

According to the stats of VibraFix usage for active devices :
- Android 8.0 : 6.6%
- Huawei Nexus 6P : 1.5%

So perhaps you need to use the appropriate settings to enable it.
You can check this form (you should have "On phone call" option enable).

Code:
[X] Enable Vibrafix
[ ] Enable Vibrate
----------------------------
[ ] Auto-start
[ ] StatusBar notification
----------------------------
[X] On phone call
[ ] On SMS
[ ] On alarmclock
----------------------------
[ ] In "Pocket Mode"
[ ] Not in charge
[ ] In vibrate mode
----------------------------
[X] Silent mode
[X] Vibrate mode
[X] Normal mode

Another thing you can check : you need to give the appropriate android authorisations (particulaty the phone status auth).

Hope it can helps you.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 34
    VibraFix forces the haptic feedback to stop.
    On some devices, when you uncheck the haptic feedback option in settings, vibrate stills enabled for some keys.
    This app is useful for people who are annoyed with this, in my point of view, bug.
    It's also allways a good idea to deactivate haptic feedback in order to save some power juice.

    How does it work ?
    VibraFix stops totaly the vibrate with a rude and simple method : changing the permission (777 to 444) for the vibrate ressource.

    Features :
    Vibrafix forces vibrate to stop.
    VibraFix can be started automaticaly at boot.
    VibraFix is a quiet application running in the background and uses very little resources.
    VibraFix can enable again the vibrate when a phone call or/and a SMS is received.
    There is also an attempt to deal with the vibrate when an AlarmClock is trigged.
    Optional notification in order to enable/disable vibrate in one click.

    Devices concerned :
    This fix has been tested only on Motorola Defy (stock ROMs android 2.1 and android 2.2.2)
    but should certainly works also on other phone devices/ROMs with the same bug.

    According to stats, VibraFix is installed and used on :
    Motorola devices ~80% : Motorola Defy, Motorola Milestone2, Motorola Atrix, Motorola Droid I & II
    but also : Samsung Galaxy S2, Samsung Galaxy Mini, Samsung Galaxy Ace, HTC Evo 4G, leo


    Donations :
    VibraFix is FREE to use - and without ads.
    My aim is really not to earn money : I have made this app for myself first.
    However, if you think VibraFix is useful for you, Paypal donations are welcome to support me.
    Share and publish this app cost me the price of a google android market account and several hours of working ....

    I can also understand, you don't want to donate for a fix so just increase the thanks'O'Meter on this forum or/and increase rating in Android market .
    It's free and make me happy !
    Thanks for supports, and feel free to post in that thread : report any bugs or suggest improvements you want.

    Thanks to bobbyphoenix for convincing me to make this thread and for people who have already said thanks.
    Feedback is always welcome.

    Permissions :
    WARNING : The application must have ROOT rights. : in order to change system files permissions
    Also there are some permisions needed :
    android.permission.VIBRATE : in order to test vibrate and vibrate on SMS received.
    android.permission.READ_PHONE_STATE : in order to detect a phone call
    android.permission.RECEIVE_SMS : in order to detect a SMS received
    android.permission.RECEIVE_BOOT_COMPLETED : in order to enable the app at phone booting (autostart)
    com.android.launcher.permission.INSTALL_SHORTCUT : in order the user can create a shortcut for fast enable/disable VibraFix
    android.intent.action.ACTION_POWER_CONNECTED,android.intent.action.ACTION_POWER_DISCONNECTED : in order to manage "In charge" option.

    I know all these permissions can be sensible that's why the source code is shared (link in the post).

    Download :
    From android market or use the QRbarcode in this post.

    Screenshot :
    in this post or from here and here.

    Notes :
    + When roots rights are disabled, VibraFix is useless and its options are disabled.

    Other links :
    Initial post for the app on xda forum : here (73 downloads/views before link removed).
    Interested discussion about the "feature"/bug on motorola forum here.:rolleyes:
    Sources codes are shared here (if someone is interrested).
    You can register to this RSS to follow bug fixes or next features (this topic will be updated too).

    Sorry for my english.:eek:

    Known bugs :
    + Vibrate on AlarmClock option works only on some AlarmClock (stock Android AlarmClock and Motoblur AlarmClock).Version 1.3.1 tries to add more Alarm app triggers.
    + Disabling vibrate after an AlarmClock is done only after 10 minutes and not when the alarm is killed by user.

    How to report a bug

    Post on this forum a description of the issue, and give me options you use with that form :
    Code:
    version : XXXXXX
    
    [X] Enable Vibrafix
    [ ] Enable Vibrate
    ----------------------------
    [ ] Auto-start
    [ ] StatusBar notification
    ----------------------------
    [ ] On phone call
    [ ] On SMS
    [ ] On alarmclock
    ----------------------------
    [ ] In "Pocket Mode"
    [ ] Not in charge
    [ ] In vibrate mode
    ----------------------------
    [ ] Silent mode
    [ ] Vibrate mode
    [ ] Normal mode

    Changes log :

    v1.6.2 (2015/09/26)
    Add option for enable VibraFix only when phone is in vibrate mode (request from Nurio in that post)

    v1.6.1 (2015/04/11)
    - "In charge" Option implemented in an another approach.

    v1.6 (2015/04/06)
    -Add option to only enable vibrate when device is not charging

    v1.5 (2014/03/12)
    -"Pocket mode" option added.

    v1.4.1 (2014/01/18)
    - fixe issue with autostart option
    - change minor settings (default options, text)
    - add android.permission.ACCESS_SUPERUSER permission in manifest

    v1.4 (2013/10/22)
    + add tab compatibility adempt
    + add options to enable Vibrafix according to phone status.

    v1.3.3 (2013/07/24)
    +add the possibility to create separate shortcuts for switching on or off VibraFix

    v1.3.2 (2012/12/19)
    + add the possibility to create a shortcut to enable or disable VibraFix.

    v1.3.1 (2011/06/24)
    + add a bunch of Alarm Triggers : stock 2.3 Deskclock, HTC worldclock, Nexus AlarmClock, Samsung alarmclock.

    v1.3 (2011/06/13)
    + minor GUI changes.
    + add optional notification support
    + add support from android 1.6
    + first realease on android market

    v1.2 (2011/06/10)
    + add enable vibrate option for Motoblur Alarm Clock.
    + a minor performance fix

    v1.1 (2011/05/31)
    + add new icons
    + add enable vibrate option for SMS
    + fix button for trying vibrate (for android 2.2.1)
    + fix a bug in settings registration
    + topic dedicated to the app in xda forum
    + SVN links shared

    v1.0 (2011/04/2011)
    + public release on xda forum

    v0.9 (2011/03/2011)
    + initial release (beta for personal using, on android 2.1)

    History :
    I have got my Defy in the end of February 2011 with android 2.1.
    I really dislike the haptic feedback. So my first try was to uncheck option about it in phone settings.
    Bah ... still enabled ! I have searched for a solution and was surprised to find NOTHING.
    hmmm... Coz I have some JAVA knowledge, I decided to code a solution for that : my first android application, VibraFix was born.
    I really thought this application will be useless after the official update (android 2.2.1) ...
    but nothing changed and I still use my fix.
    2
    Hey. This app drains battery by running in the background but according to my stats it's a very low amount of juice and less than a vibrator when used several times a day.
    2
    Okay.
    I understand now.

    I will try to implement that later.
    2
    OK. It's done in the version 1.4 (Published few minutes ago on Google Play).
    3 new options added in order to enable vibrafix according the ring status mode.
    1
    Any chance for a new version that will run under Froyo?
    I have Froyo for about half an hour and missed it from the very first minute. :)

    I'm running the official 2.2.1, and it's working for me. If you just upgraded to FroYo you probably lost root. Even if you have the Superuser Icon you have to root again.