You are here

Version history

7.2.0 RC0 (2.3.7) 17.02.2012
- wide screen video recording now captures in 848x480 resolution (was 720x400)
- two way call recording is now possible (recording has to start after the lines have been connected, not sooner)
- UMTS baseband (2100/900 vs. 2100/1900/850) can be selected in Device settings, the selection will persist even after future system updates (please do not use the baseband switching via Open Recovery anymore)
- fixed in-call and SIM PIN unlock screen layouts for landscape orientation, e.g. for phone in CarDock or DeskDock
- additional information about call can be indicated (e.g. that an incoming call has been forwarded, that the call is on hold on the remote side...)
- workaround for broken proximity sensors - camera button can be used to generate fake 'proximity far' event
- many other important fixes and improvements
note: CMWalpapers and Androidian and Cyanbread themes are not included anymore as more space in /system was needed for the libraries that enable the higher quality video recording. Themes and wallpapers can be installed e.g. from market separately.

7.1.5 (2.3.7) 21.01.2012
- ics animations (including rotation) backported to gingerbread
- renderer updated with rotation support - proper playback of videos with orientation hint
- adhoc disabled in tiwlan.ini (may help few people with wifi issues)

7.1.4 (2.3.7) 19.01.2012
- native wifi tethering finally works (proprietary 3G Mobile Hotspot removed, no dun apn dependency anymore)
- new 'Holo' ring lockscreen style
- internal: switched to init built from source, wifi: switched from system/wlan/ti to hardware/ti/wlan, gps: gingerbread lib (from Defy GB firmware) is used instead of froyo lib + gpshim wrapper
- other things I can't remember now ;)
- note: 7.1.3 skipped to distinguish from the intermediate version used as base for the last HO!NO! Mod

7.1.2 (2.3.7) 13.12.2011
- fixed recurring events in lockscreen calendar widget
- fixed possible egl surface creation failure (in PewPew game and possibly other apps); reworked egl config selection
- added optional revamped ring lockscreen style
- fixed bugreport service (left shift + del), report files are stored in /sdcard/bugreports/
- added /etc/powervr.ini for some PowerVR SGX tweaks (> less RAM used by surfaceflinger)
- internal storage changes:
-- dalvik.vm.dexopt-cache-only disabled by default ('no free space left in /cache' issue)
-- return back to 07app2ext moving also dalvik-cache to sd-ext
-- lib2ext script (and support for it in installd) newly included. It is not active by default. It can free huge amount of space in /data by transfer of applications' native libraries to sd-ext. Make sure you have enough free space (at least 100MB-200MB) in /sd-ext before you enable it. To activate it, run "su" and then "lib2ext 1" in terminal on phone. The libs will be moved during the next boot.
- etc

7.1.1 (2.3.7) 24.11.2011
- fixed issue of some Gameloft games (and possibly other apps) hanging during sound engine initialization
- fixed lockscreen calendar view to be able to display also the event description
- the most specific Milestone options (keyboard, logger etc.) moved to Device settings (from CyanogenMod settings)

7.1.0.7 (2.3.7) 21.11.2011
- camera: added possibility to focus during video recording (via focus key - half pressed camera key)
- keyboard: ability to set multipress language independently from locale
- keyboard: additional German multipress set where sharp s can be entered by double press on B key (instead of S key, as double s is quite common in German)
- media: fix broken playback position in several audio players (MortPlayer Audiobook, DoggCatcher and others)
- fix possible system crash caused by lockscreen calendar events display
- fix for non-animated unlock transition

7.1.0.6 (2.3.7) 15.11.2011
- keyboard: fix "_" (ALT + C) on hw keyboard
- keyboard: revised indication of active secondary key char map
- minimal ring lockscreen style added, option for middle ring unlock
- lockscreen gestures: added music control
- etc

7.1.0.5 (2.3.7) 13.11.2011
- video recording fix
- keyboard: revised handling of multipress for cyrillic/russian key char map
- keyboard: 200ms multipress interval added
- keyboard: Lithuanian multipress set added (thanks to rokasjasonas)

7.1.0.4 (2.3.7) 12.11.2011
- graphic rendering optimizations (opaque views, opaque in skia, surfaceflinger)
- fix for concurrent access to dnsproxyd socket that could lead to loss of data connectivity
- fix for non-animated unlock transition
- updated battery bar
- support for retail Russian keyboard
- added preliminary Cyrillic (phonetic) key char map
- added multipress set for Slovenian (thanks to kv1dr)
- option to disable boot animation (5-6s shorter boot time)
- downloads bind mounted to data block if there's no ext partition on sdcard - to help with low space in cache block that some people experience

7.1.0.3 (2.3.7) 10.11.2011
- support for secondary hw keyboard character map (russian, hebrew, arabic); when enabled, it can be toggled by menu/lang key on hw keyboard
- support for russian hw keyboard layout with swapped 'search' and 'menu/lang' keys
- multipress feature for entering alternate characters on hw keyboard (currently for cs, da, de, es, fi, fr, hu, it, nl, no, pl, pt, ro, ru, sk and sv). Future contributions of sets for other languages are welcome, see https://github.com/nadlabak/android_frameworks_base/commit/06e8f2e21ad9f...
- keyboard features are configurable under CyanogenMod settings>Input (but it will be moved to Device settings in the future)
- Motorola specific AudioEffect replaced by newer AudioEffectSettings (fixes fx settings for speaker not restored after reboot), accessible from DSPManager menu
- added Compass Calibrator (Settings>Device settings)
- lockscreen can display both alarm and calendar events together
- important fixes to omap specific stagefright issues (multimedia)
- Market should no longer crash because of locale
- fix for occasional LatinIME crash
- many other fixes

7.1.0.2 (2.3.7) 23.10.2011
- fixed wlan MAC address
- instead of fonts, pico tts files are moved to /cdrom (should fix some 'frozen on M logo' cases)
- now correctly tagged as KANG: as before, this is not official cyanogen release - it's a self-kang of CM7 for Milestone ;)
- various additional improvements and fixes from upstream

7.1.0.1 (2.3.7) 21.10.2011
- DSPManager service made stoppable again, by global DRC option
- system fonts are now stored in otherwise unused /cdrom block to make more space in /system (CMWallpapers can be included again)
- optional unlock by keyboard slide
- many fixes; among others: EAP (WLAN) lost password issue, possible system crash caused by lockscreen calendar events display, possible system crash by ring lockscreen, fixed bluetooth AVRCP 1.3 responses, possible DSPManager FC while editing EQ...
- updated power_profile.xml
- dalvik.vm.dexopt-cache-only property reintroduced (enabled by default); those whose app's dalvik-cache won't fit to /cache block can set it to 0 in /system/build.prop
- kernel tweaks included (in /etc/sysctl.conf)
- versioning changed according to new upstream style

7.1.0-11.10.12 (2.3.7)
- odexed build (main purpose is to gain more space in /data - only /cache/dalvik-cache is used, /data/dalvik-cache is empty), be sure to wipe both cache and dalvik-cache in OR when updating
- various fixes

7.1.0-11.10.05 (2.3.7)
- new feature: separate headset and speaker media volume
- various fixes

7.1.0-11.09.30 (2.3.7)
- release build of CyanogenMod 7.1.0 for Milestone (Android 2.3.7)

NIGTHLY
As there is currently ongoing work on some patches in upstream and official 7.1.0 RC2 release is near, I decided to release this one and possibly next few builds as nightlies, as it's clear that there will be new updates soon.
On the other hand, some changes I've made are rather important, so I wanted to deliver it soon.
In regards to stability, there's no difference between RC or nightly I upload. It's just named differently, that's all :).
The recommended version to use is always the latest present here: https://github.com/nadlabak/android/downloads

29.09.2011 - optimizations, new lockscreen and other new features, etc.
21.09.2011 - the most important change is that the Google Maps NetworkLocationService (designed to be constantly running since gmaps 5.1.0) won't be kept in RAM anymore, unless Google Maps really need it.

7.1.0-RC15-11.09.14 (2.3.5)
11.09.14:
- fix Exchange sync wakelock issue - occasionally happening no sleep after Exchange sync
- fix wifi signal strength indication
- ignore 'lock home in memory' option when in car dock
- some minor translations added
11.09.12:
- fix custom selected cpufreq governor not restored after boot (issue introduced in 11.09.10)
- first step to resolve in-call dialpad landscape issue: http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=596
- other small changes, few translations added
11.09.10:
- native USB Tethering (for both Windows and Linux): thanks to grandiose work by Skrilax on mot_usb kernel module (depends on updated Skrilax's symsearch module)
(preliminary - work on usb stuff still continues)
- DSI/MMC/NAND fix v2.61: disabled duplicated nand suspend/resume calls to get rid of the
'nand_resume called for a chip which is not in suspend_state' messages (thanks to Elektroschmock for the link to patch that solves very similar mxc_nand issue)
- TI wlan kernel module compiled from source with backported wpa2 fixes from tiwlan .144 version (thanks to Tanguy Pruvot for the backport). It should fix some wpa2 issues, at least with OpenWRT routers. Feedback is welcome.
- added options to limit max CPU frequency when screen is off and when phone is in car dock
(When the phone is in car dock it can easily overheat as there is usually: heavy navigation app running, gps in use, battery charging, 3g in use, sun shining directly at phone behind front car window. All this together can lead to battery temperature rising above 50C at which point the charging is automatically stopped to prevent battery damage and you can end up with phone battery empty after some time despite phone being connected to charger. So the CPU freq limit for car dock is there to help with this temperature issue.)
- option in Camera advanced setting to mute focus beep
- CMStats not removed anymore: I'm interested how many umts_sholes (i.e. Milestone) totals will be seen at http://stats.cyanogenmod.com
- added misc translations, Slovak keyboard etc.

7.1.0-RC14-11.08.31 (2.3.5)
(31)
- upstream sync (mainly translations but also other changes)
(29)
- dex of google apps stored in /cache/dalvik-cache in addition to system apps and jars, to make better use of /cache and to free some more /data space
- DSI/MMC-fix v2.6 (kernel module):
-- fix for sdcard read write/errors (thanks to HinotoriBR for excellent issue research and information provided)
-- forced dsi hw reset when framedone timeout happens (introduced in DSI-fix v2.52)
- mot_boot_mode and charge_only_mode built from source, 1% battery steps enabled in charge_only_mode
- updated LED notification settings code
- option to disable Camera shutter sound
- option to disable screensaver in DeskClock/Dock
- Email.apk fix
(24)
- disabled sw gl renderer, so that apps use the hw accelerated renderer only -> better 3D performance; also, it's required for some apps to run at all (e.g. the current Sygic)
- fix missing DOWNLOAD_CACHE export, redirect it to ext partition on sdcard if present
- as some say that SHLA 5.15 [claro] kernel build (1.3.2011) is better than SHOLS 5.27 used so far (5.3.2011), let's try it and see (though I don't expect any significant difference)
- rewrite of Usb apk in use
- Camera timer added
- etc.

7.1.0-RC13-11.08.14 (2.3.5)
- DSI-fix v2.41 kernel module (w. error recovery), DSI workaround can be finally safely disabled
- Android 2.3.5
- limited Skia memory usage
- providers/contacts running in separate processes (not android.process.acore) to allow their separate management by low memory killer
- faster boot time (app libs are not extracted again every boot)
- Crystal talk
- logger can be enabled/disabled under performance options
- workaround for Google Maps (in Activity Manager code) to prevent GL texture related crashes in PowerVR SGX libs
- plus many more...

7.1.0-RC12-11.07.14 (2.3.4)
- quickfix for non-repeating mp3 ringtones (Phone.apk)
- new 5-point multitouch enforcing kernel module (usually activated by the first screen off/on after boot)
- updated interactive governor kernel module (more mature - backport from 2.6.38 kernel)
- 2 new pixelflinger optimizations (thanks to elektroschmock for the pulls)

7.1.0-RC11-11.07.10 (2.3.4)
- video recording A/V sync fix when aac encoder is in use - high and wide camcorder profiles
(some backported bits of honeycomb stagefright code are in use now in order to achieve it)
- Location Proxy is now loaded correctly, from separate jar package
(finally, no more after-build framework smali hacks are needed)
- ADW Launcher updated (see official CM 7.1 changelog), optimizations affecting drawer scrolling added
- USB status fixes - adb notifications fixed, better SD card transfer speed when shared via USB
- fix for non-working LED notifications in some third party apps
- possible fix for non-correct custom ringtone played on incoming call (needs confirmation)
- Camera: touch-to-focus mode; volume key zoom control option now works in steps instead of min/max switch
- new internal screenshot feature - accessible from power menu
- every single logger log file (in /cache/logger) is now limited to 5MB, logger controlling props can be found in build.prop
- etc

7.1.0-RC10-11.06.14 (2.3.4)
- DSI-fix kernel module - adds error recovery scheduling (in Droid kernel called from dsi_vc_flush_receive_data function, while this particular call was missing from Milestone kernel). Kernel function hooking in use made by Nothize, hooking source provided to me by Zewelor. Thanks!
(hopefully, you can safely disable the DSI workaround in CM settings>display now)
- 'Incoming call in background' option (Settings>Call settings) - option to inform about incoming call only via notification & ringtone while not leaving the currently active application in foreground, when screen is on
- ro.ringtone_query_wait_time property added, to allow override the max time allowed for getting the customized ringtone for the particular contact that is currently calling, before the fallback to default ringtone. Android default is 500ms. Set to 1500ms in this release.
- 'normal' flashlight brightness fixed
- 'high' brightness option when flashlight is invoked from notification power widget fixed
- selectable 0, 90, 180, 270 orientation options to be enabled or disabled
- Toggle2G included again
- DatePicker fix (FC e.g. in GTasks app)
- etc

7.1.0-RC9-11.06.07 (2.3.4)
11.06.07 (last minute addition to RC9):
webkit/V8 updates - pre-emptive & idle-time GC added, possible flash crash fixed, V8 debug code disabled to prevent browser crash ( http://forum.xda-developers.com/showthread.php?p=14490427#post14490427 )
11.06.06:
- "lock home in memory" option is now being suppressed when Camera or GMaps happen to be the front apps to prevent freezes and consequent system_server crash (sd card read_ahead_kb can be set to 2048 again)
- camcorder: video orientation hint always set to landscape to prevent video distortion during on-device playback
- torch: high brightness mode fixed
- logger re-enabled in the hope for diagnostic logs from users to be posted to issue tracker (the logs can be found in /cache/logger)
- more ergonomic date and time picker, updated translations, etc.

7.1.0-RC8-11.06.02 (2.3.4)
- reworked low memory killer parameters, foreground service adj change (addressing e.g. the Camera freezes, background music playback...)
- new webcore and V8 (javascript engine)
- new libpixelflinger neon arm optimizations
- permission revoking feature optimized
- by default, logger disabled
- etc.

7.1.0-RC7-11.05.27 (2.3.4)
- 1% battery steps made optional (CyanogenMod settings>Interface>Status bar tweak)
to help those who are using incompatible third party batteries or weak third party AC adapters
- over 100% battery reading fixed
- upstream updates: database fsync optimization, phone blacklist wildcards, external/jpeg update, etc.

7.1.0-RC6-11.05.26 (2.3.4)
- low battery led indication fixed
- 1% step for battery level implemented (thanks to GoodWin for the battd revelation!)
- ever (re)starting EAS sync manager fixed
- service onStartCommand() not being called on service re-creation fixed (gingerbread bug)
- etc. ;)

7.1.0-RC5-11.05.20 (2.3.4)
- main fixes: Email.apk sync, camera timestamps, object pointer leak (dalvik)
- features: apps permission revoking, SIP user agent time-out configurable, new translations & langs
- etc.

7.1.0-RC4-11.05.19 (2.3.4)
- main fixes: MMS retrieval, possible dialer crash (in landscape), 3G Mobile Hotspot start failure
- BT audio.conf tweaks (mainly for car BT)
- bionic: ARM optimized strcmp, fixed leaks in DNS threads
- optional incall screen rotation, and more...

7.1.0-RC3-11.05.15 (2.3.4)
- RAM: clearing of AttributeCache added to prevent continuously growing system_server memory usage
- Bluetooth discoverability timeout configurable

7.1.0-RC2.1-11.05.11 (2.3.4)
- fix the logger redirection to cache for real

7.1.0-RC2-11.05.11 (2.3.4)
- Camera: wide screen mode for both picture (4M Pixels wide) and video added, Camera UI slightly revamped (mainly to maximize the viewfinder)
- fixed logger redirection to /cache (with automatic /data/logger clean-up)
- another try to address the gmaps start-up freeze (read ahead_kb set to 0 for sdcard)

7.1.0-RC1-11.05.08 (2.3.4)_
- ADW fling gesture direction detection fix
- euro-qwerty kb layout selection typo fix, swe-qwerty added
- keep sms/mms & home in memory defaults fix in activity manager
- continuous logging is enabled and redirected to /cache/logger to ease the debugging reports. I'll usually need AOL_main.ap.bin and AOL_kernel.ap.bin files. They can be retrieved by "adb pull /cache/logger".
- various surfaceflinger and other fixes (keyboard open detection on boot, backuptool.sh updated for new gapps etc.)
- note: this version wipes out media database because of the album artist support introduced - you will need need to reassign your custom ringer/notification/alarm sounds again

7.1.0-RC0-11.05.03 (2.3.4)
Android 2.3.4 - lots of fixes (e.g. the RTSP stream playback - http://code.google.com/p/android/issues/detail?id=13715 and many others)
- qwertz/qwerty/azerty keyboard can be selected in Settings>CyanogenMod settings>Input>Keyboard layout (no need to change the layout in OR after every update any more for those who don't have euro-qwerty phone)
- backlight animations enabled
- option to display AM/PM clock in status bar
- DSP Manager: equalizer presets
- fail safe: play the default ringtone if the customized one is not available
- ADW catalogs navigation via swipe added
- other fixes
notes:
1. the gtalk voice/video chat needs updated google apps package, which has not been released by CM team yet (for the time being I'm using gapps-gb-20110503-signed.zip by the_big_o: http://www.mediafire.com/?pq6ji8c0pl9kcq9 )
2. subversion number (e.g. the last 0.08) is no longer used as no new official kernel updates from Motorola are expected

0.08-11.04.24 7.0.1
- fix: google maps freeze on launch after repeated gmaps launches (and system reboot after that in the end, sooner or later), lock happened at the time of reading of cached maps from sdcard, fixed by:
1. revert to not moving dalvik-cache to sd-ext (it causes also other performance issues, so I'd disable it anyway), only app and app-private are moved now
2. read_ahead_kb for sdcard set to 32 (yes, I don't care about sdcard speed benchmark results, I prefer stability)
- fix: webkit text wrapping (e.g. gmail text displayed too narrow)
- fix: displayed operator name (for some European networks), forced plmn display for spdi networks
other fixes and features (status bar additions etc.)

0.08-11.04.18b 7.0.0
- mkdir fix! http://review.cyanogenmod.com/#change,4720

0.08-11.04.18 7.0.0
- workaround to avoid frequent Gallery3D resets (seg fault in SGX library - usually coming after orientation change)
- sys.keep_app_1 and sys.keep_app_2 properties can be defined (as process names) in build.prop, to allow user to specify up to two apps to be always kept in memory (use with caution, RAM is limited!)
- possible workaround for issue 498 (black screen) - http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=498
- slight low memory killer parameters adjustment
- sync setting fix, TextView slow scroll fix, arabic keyboard and dictionary in LatinIME
- etc. ;)

0.08-11.04.10 RC4.1
fix: kernel modules sometimes installed too late (sd-ext not mounted, overclock not applied)
possible fix: locationproxy - ConnectionPending exception (hard to reproduce - needs confirmation)
update: overclock and cpufreq_stats modules - stats freq table automatically updated
kernel module nls_utf8 added and preloaded so that iocharset=utf8 option can be used for cifs mount
fix: 2 different possible NPEs in Settings.apk
VM heap size selection list expanded
10overclock: changed default frequency table (250/400/600/800/1000)
upstream: RTL lang fixes and other updates and fixes

0.08-11.04.05 RC4
kernel modules:
ext4 (finally proper, journalling works, preloaded) - supports also ext2 and ext3 partitions
ext3, ext2 - included, not preloaded
tun (for OpenVPN, preloaded)
cifs (not preloaded, but depends on slow-work that is preloaded), CifsManager app from market can insmod cifs.ko when needed (great for playback of avi files located on windows share via wlan ;)
nfs (not preloaded, depends on included but not preloaded auth_rpcgss, rpcsec_gss_krb5, sunrpc, lockd)
xt_multiport (to fix some iptables issues, preloaded)
overclock (+symsearch) reworked by Skrilax_CZ (preloaded)
- 5 frequency slots enabled
- greatly simplified setting of custom frequency/vsel pairs
see /system/etc/init.d/10overclock

- 07app2ext script included in /system/etc/init.d - works via bind mount but is compatible with symlink versions. (warning - do not put more than one app2ext script in init.d as it could result in loss of apps)
- auto boot OpenRecovery (when rebooting to recovery) script added
- SD card reading performance improved (read_ahead_kb set to 2048)

- Usb.apk is now built from source, thanks to Skrilax_CZ, very nice decompilation!
- ADWLauncher drawer scrolling (and zoom animation) optimized to be smoother even when "allow purging of assets" memory performance option is enabled
- finally implemented "no action on plug" (it's under CyanogenMod settings>Display)
- option to disable the dock observer fixed
- fixed gingerbread key event repeating bug affecting camera when using hardware buttons

- upstream: several new RTL fixes and features, 1 important EGL fix, 3 bluetooth fixes (cherry picked), various other fixes

0.08-11.03.27 RC3
- option: DSI kernel bug workaround (CyanogenMod settings>Display), on by default. Thanks to Schwigi for the discovery of DSI issue dependency on DSS update_mode.
- option: Swap volume buttons in landscape (CyanogenMod settings>Input)
- option: Disable dock observer (CyanogenMod settings>Input)
- bluetooth audio DSPManager fix
- repeated CAMERA_BUTTON broadcast/haptic feedback fix
- $ added to hw keyboard symbols picker (useful for Euro-Qwerty and Qwertz layouts)
- many upstream updates

0.08-11.03.16 RC3
- Allow purging of asset bitmaps performance option added - to allow the system to reclaim some more RAM when needed, enabled by default
- proprietary binaries update (one step ahead of ...)
- etc. (sorry, I could not resist, it's so tempting :) )

0.07-11.03.12 RC3
- music volume steps doubling fixed (when volume button music control is enabled)
- gps not able to be re-enabled until reboot fixed
- etc.

0.07-11.03.09 RC3
- various fixes and enhancements (e.g. Autostarts issue when theme is used fixed, jpeg neon optimization added, various framework patches etc.)

0.07-11.03.04 RC3
- EGL fix (live wallpapers etc.)
- 854x480 mp4 video playback enabled
- volume key long press playback control fixed
- new feature: notification profiles

0.07-11.03.02 RC3
- media provider and other small fixes

0.07-11.03.01 RC3
- Android 2.3.3, etc.

0.07-11.02.23 RC2
- 2.3 AudioEffect API works now - DSP Manager fixed (by libaudiopolicy compiled from source)
- new battery percent status bar solution
- SMS timestamp options updated, character count can be displayed sooner
- lockscreen fixes
- new advanced camera options
- etc.

0.07-11.02.18 RC1
- low memory killer parameters tweaked: mainly to prevent killing of music player when playing on background
- CMParts and ADW launcher default changes - keep home/sms app in memory, disabled scrolling cache
- lockscreen updates
- wlan: EAP Phase 2 settings fix
- overlay clean up (Phone.apk)
- etc.

0.07-11.02.15
- wlan: EAP fix (802.1x enterprise)

0.07-11.02.14
- various wlan connectivity issues (some N routers, wpa2, 801.x enterprise etc.) seem to be fixed (for the first time since the GOT 2.2.1 leak). Thanks for the feedback to the wifi test version
- SMS TP-Data-Coding fix (kanged from 0.04-10.12.04)
- Toggle 2G removed (the memory is precious)
- other small things, upstream sync

0.07-11.02.12
wifi test - those who are experiencing wifi issues, please test this build made from alternative wpa_supplicant6 and ti wilink sources and report, thanks.

0.07-11.02.10
- fixed settings leading to unlockable phone, optimized memmove (libc), etc...

0.07-11.02.09
- reported lightsensor range fixed
- DSPManager temporarily replaced with proprietary AudioEffects
- little clean-ups and tweaks applied, etc...

0.07-11.02.07
- now playing/album art on lockscreen etc.

0.07-11.02.06
- the previous gps and rotation vector (compass) fixes included
- fixed the disabling of the light sensor when flashlight is on
- fixed 2g/3g toggle in the settings' Power Widget
- temporary battery percentage display included (will be changed)

beginning of February 2011:
first alpha build with working ril + gps and compass fixes