VirtualSensor

VirtualSensor is a module built on Xposed that creates several sensors on devices which do not have them. It does sensor fusion using the values from the accelerometer and the compass which are the two main requirements for this module.

There are currently 5 sensors emulated :
TYPE_ROTATION_VECTOR
TYPE_GYROSCOPE
TYPE_GEOMAGNETIC_ROTATION_VECTOR
TYPE_GRAVITY
TYPE_LINEAR_ACCELERATION
Being the most useful sensor for many applications, the gyroscope is the main sensor this project is about.

Author(s): 
Package: 
fr.frazew.virtualgyroscope
Version name: 
1.5.1
Release type: 
Beta (some bugs to be expected)
Number of downloads: 
10,551 in total · 97 in the last 24 hours
MD5 checksum: 
900b0bd17a981b3f89b181dfe24849cc
Uploaded on: 
Saturday, September 2, 2017 - 19:41
Changes: 

This minor version fixes the module for Nougat devices.
See the changelog of v1.5.1 for the more information on what has changed for the major version 1.5.

Version name: 
1.5
Release type: 
Beta (some bugs to be expected)
Number of downloads: 
587 in total · 7 in the last 24 hours
MD5 checksum: 
a836797f1f9332e8c3ac6df43c97d2d9
Uploaded on: 
Saturday, September 2, 2017 - 13:53
Changes: 

Finally a new release after (quite) a while. This release should fix the majority of bugs encountered on current and previous versions of Android.
With the precious help of people on Github, the cardboard hook has been (hopefully) improved.
The overall stability and reliability should be better now.
This release will stay marked as beta until relevant and good feedback is received, to please head over to Github if you can and report issues if any (or add to the exising issues to check wether they still exist)

Version name: 
1.41
Release type: 
Stable (low risk of bugs)
Number of downloads: 
130,325 in total · 100 in the last 24 hours
MD5 checksum: 
3d9a8d0c0cbfcc9a02371e30f28a4ef8
Uploaded on: 
Monday, August 1, 2016 - 00:01
Changes: 
  • Fixed the module, previous version broke it because of proguard minify, do not use version v1.4

Hotfix for v1.4

Below is the v1.4 changelog:

  • Added a check for already existing native sensors so that they don't get overridden by the module
  • Now checks the values of the accelerometer and magnetic sensor against their accuracy. This means that the output values contain less noise without loosing too much precision
  • Added a simple GUI to quickly get informations about the module. This part also calculates the values the gyroscope should return and compares them against the one the module actually returns
  • Some hooks are now made on higher-level API (public available functions for apps), which means that specific device code should no longer break them
  • Fixed a recurrent exception (ConcurrentModificationException)
Version name: 
1.4
Release type: 
Experimental (high risk of bugs)
Number of downloads: 
1,458 in total · 0 in the last 24 hours
MD5 checksum: 
29570eb423fd483a0e7386926f9ebb72
Uploaded on: 
Sunday, July 31, 2016 - 22:10
Changes: 
  • Added a check for already existing native sensors so that they don't get overridden by the module
  • Now checks the values of the accelerometer and magnetic sensor against their accuracy. This means that the output values contain less noise without loosing too much precision
  • Added a simple GUI to quickly get informations about the module. This part also calculates the values the gyroscope should return and compares them against the one the module actually returns
  • Some hooks are now made on higher-level API (public available functions for apps), which means that specific device code should no longer break them
  • Fixed a recurrent exception (ConcurrentModificationException)
Version name: 
1.32
Release type: 
Stable (low risk of bugs)
Number of downloads: 
8,172 in total · 16 in the last 24 hours
MD5 checksum: 
30cc3ea784de98857792e800cc2bdd54
Uploaded on: 
Friday, July 29, 2016 - 14:08
Changes: 
  • Fix the mRequiredPermssion field not available on SDK < 20

Hotfix #2 for v1.3
Please see v1.3's changelog.

Version name: 
1.31
Release type: 
Beta (some bugs to be expected)
Number of downloads: 
522 in total · 0 in the last 24 hours
MD5 checksum: 
280bbd5813837e1c9f6096ea62b4a7ea
Uploaded on: 
Friday, July 29, 2016 - 13:46
Changes: 
  • Fixes the issue with SDK <= 18 where mStringType doesn't exist in the Sensor class

Hotfix for v1.3
Please see v1.3's changelog.

Version name: 
1.3
Release type: 
Stable (low risk of bugs)
Number of downloads: 
4,224 in total · 2 in the last 24 hours
MD5 checksum: 
b31112d0f83b22788e943975c692af95
Uploaded on: 
Friday, July 29, 2016 - 12:29
Changes: 
  • Sensors are now added in a proper way. They should no longer accidentally override existing sensors / cause compatibility issues
  • All gyroscope axes are fully functional !
  • If it didn't work before for you on JellyBean-Lollipop, try now, it might (fixed the check for initialisation of SystemSensorManager)
  • Started to work on a new filter system for the gyroscope mainly
Version name: 
1.21
Release type: 
Stable (low risk of bugs)
Number of downloads: 
3,943 in total · 5 in the last 24 hours
MD5 checksum: 
e2ead5bbf8292d9b9cb7cd67b7c94229
Uploaded on: 
Tuesday, July 26, 2016 - 23:35
Changes: 
  • Fixed compatibility with SDK18-22 (Android JellyBean 4.3 - Android Lolipop 5.1)
  • Added a little more log
  • Calculation for the gyroscope is now based on the calculated gravity sensor data, which (should) makes it work as intended in any orientation
  • The virtual sensors now have a little more information in the created Sensor class, just to make sure this isn't an issue

Don't forget that you can easily report issues on GitHub (https://github.com/Frazew/VirtualSensor/issues) or xda !
Hotfix for v1.2 to avoid crash on JB devices

Version name: 
1.2
Release type: 
Stable (low risk of bugs)
Number of downloads: 
1,879 in total · 1 in the last 24 hours
MD5 checksum: 
c4673d019d8e9031d65ea9c3aadb550e
Uploaded on: 
Tuesday, July 26, 2016 - 23:06
Changes: 
  • Fixed compatibility with SDK18-22 (Android JellyBean 4.3 - Android Lolipop 5.1)
  • Added a little more log
  • Calculation for the gyroscope is now based on the calculated gravity sensor data, which (should) makes it work as intended in any orientation
  • The virtual sensors now have a little more information in the created Sensor class, just to make sure this isn't an issue

Don't forget that you can easily report issues on GitHub (https://github.com/Frazew/VirtualSensor/issues) or xda !

Version name: 
1.11
Release type: 
Stable (low risk of bugs)
Number of downloads: 
3,032 in total · 2 in the last 24 hours
MD5 checksum: 
703420cb8a0658c835a2706f2a1948df
Uploaded on: 
Monday, July 25, 2016 - 17:23
Changes: 
  • Added support for all SDK versions from SDK16 to SDK23+, this means all android versions starting from Jelly Bean should be supported
  • Added a lot of new sensors : TYPE_ROTATION_VECTOR, TYPE_GEOMAGNETIC_ROTATION_VECTOR, TYPE_GRAVITY and TYPE_LINEAR_ACCELERATION
  • Still no support for Pokémon GO though, working on it
  • Some exceptions fixed
  • Code refactored a lot

Hopefully this version will fix the issues many were having !
Hotfix: fixed null value when trying to get the accelerometer minDelay

Version name: 
1.1
Release type: 
Stable (low risk of bugs)
Number of downloads: 
1,731 in total · 3 in the last 24 hours
MD5 checksum: 
938c78bed5182096b6aa338ae05c49ea
Uploaded on: 
Monday, July 25, 2016 - 14:51
Changes: 
  • Added support for all SDK versions from SDK16 to SDK23+, this means all android versions starting from Jelly Bean should be supported
  • Added a lot of new sensors : TYPE_ROTATION_VECTOR, TYPE_GEOMAGNETIC_ROTATION_VECTOR, TYPE_GRAVITY and TYPE_LINEAR_ACCELERATION
  • Still no support for Pokémon GO though, working on it
  • Some exceptions fixed
  • Code refactored a lot

Hopefully this version will fix the issues many were having !

Version name: 
1.0
Release type: 
Stable (low risk of bugs)
Number of downloads: 
3,200 in total · 7 in the last 24 hours
MD5 checksum: 
67dfbd1bce6806c69e71912834179570
Uploaded on: 
Saturday, July 23, 2016 - 19:22
Changes: 

Initial release