[Sony Ericsson Xperia Mini, Mini Pro, Xperia Pro, A] zxp:
Ultimate Notification LED fix for Xperia (ICS 4.0.4, 4.1.B.0.431)

Introduction

One of the most annoying bugs in the everyday use of Sony's official ICS firmware version 4.1.B.0.431 (and later) is that the notification LED only works for missed calls, and it doesn't notify anything else anymore.

Ironically, the previous beta firmware ICS 4.0.3 v4.1.A.0.562 showed a specular bug: the notification LED didn't notify missed calls, but it was working for everything else (SMS, Email, ..).

The "Ultimate Notification LED fix"

I've got around fixing this bug by reversing and doing a minor change in a 4.1.B.0.431 framework file (services.odex).

The patched file has the notification LED working for everything as it was in GB firmware

: the LED now blinks for missed calls, sms, emails, and any other application showing LED notifications (eg: K9-mail, Whatsapp..).

Update: This patch now works on all Xperia devices with 4.1.B.0.431 firmware, and it has been tested initially tested on a Xperia Mini Pro sk17i.

Disclaimer

These files come with no warranty, express or implied.

By downloading and using files linked in this page you express your understanding that you use those files at your sole risk.

No one can be held responsible for any damage directly on indirectly related to files linked in this page.

If you flash something to your phone you must remember that there's always a minimal chance that something goes wrong: you know it, I can't be held responsible if your phone gets wrecked, if your working LED flashes during a work meeting and you get fired, or anything else.

Downloads and Install Instructions

To install this fix you have to be in a stock ICS 4.0.4 firmware v4.1.B.0.431, with root and ClockWorkMod (CWM) recovery installed.

To install the fix simply download the right package for you, and:

make sure your phone is charged! It's always safer when you need to flash something.

put the downloaded ZIP it in the root of your SD Card

reboot into CWM recovery

Do a Nandroid backup using CWM ("backup and restore" => "backup"): you shouldn't end in a bootloop if you download and apply the proper file, but it is a good practice to a CWM backup before applying mods and patches, so you can easily restore it and go back if anything goes wrong!

did I mention to do a Nandroid backup? :P

choose "Install ZIP from sdcard" => "Choose zip from sdcard"

browse to the ZIP in your SD Card

choose apply and reboot device.

enjoy a properly working led ;)

The right package to download for you depends on your current system framework files status.

Use the following list and infos to find the proper download for you

:

If you have an Xperia device on stock ICS 4.0.4 v4.1.B.0.431, and never applied other LED patches: install Busybox if you don't have it already, and download the following universal patch Ultimate_4.1.B.0.431_Notification_LED_FIX_UNIVERSAL_stock_rom_by_zxp.zip (originally attached to post #37).

Note: Busybox must be installed on your device before installing this package, or it will not work. The patch scripts expects Busybox to be installed into /system/bin.

If you never applied any patch and don't know what to download, this is the file you want!

Why: it is smaller, and only replaces the services.odex file with the patched one, that's all you need; the services.odex is automagically generated in your device, that's why Busybox is used, and this is what makes this package "universal".

If you your device currently has arcatarc's fix applyed: download Ultimate_4.1.B.0.431_Notification_LED_FIX_by_zxp_FOR_arcatarc_fix_users.zip

Why: if you used on arcatarc fix, this package will restore 4.0.B.0.431 framework files along with the patched services.odex, because arcatarc's fix installed the old 4.1.A.0.562 framework files and this change needs to be reverted.

If you are using a stock

de

odexed ICS 4.0.4 v4.1.B.0.431 firmware: download Ultimate_4.1.B.0.431_Notification_LED_FIX_FOR_DEodexd_roms_by_zxp.zip

Why: it will replace the services.jar with the patched classes.dex inside.

This works for all Xperia Devices, including but not limited to the Xperia Mini Pro sk17i/a.

If you are using the new firmware v4.1.B.0.587: you are lucky, I have also released the Ultimate LED FIX for the new firmware 4.1.B.0.587. You can download it from the new version thread.

If you are using an even newer firmware: you have to wait for Sony to release this firmware for my sk17i, so that I can port the patch over the new version, or wait for someone to port it.

Background info, closing notes and thanks

As already specified this patch is based off stock 4.1.B.0.431 framework: I simply deodexed with baksmali, manually edited one .smali file to change the offending code that prevented the LED to work properly, and packed everything back.

I hope to find time to post very soon a Tutorial on how to apply the fix yourself, for educational purposes and to help less experienced people to port it over the .587 version.

Experienced users should be able to compare the stock 431 baksmali-ed services.odex and the patched one to find the small change, and port it over .587 without the need of my forthcoming guide.

Thanks to _mysiak_, he posted the Xperia Arc S stock framework files that I used to understand what path I had to follow to make "universal" patch.

Thanks to arcatarc, he posted the old 4.1.A.0.562 services.odex in his "partial fix" thread (I say "partial" because it simply used .562 framework files which showed a specular bug, as explained in the introduction), I have compared that version to the new one to quickly spot which file needed to be patched.

If you happen to port this patch to a newer firmware please post a link to your thread

, so that I can add it in this post to inform users with such firmware that a patch exists for them.

If you want to inform other users of this patch please link back to this thread

and don't simply re-upload/re-post a package. A link to this thread is the only way to be sure that users chose the proper package and can be updated if there is the need for a new/updated patch.

Bugs & Known Issues

This patch is now used by thousand of users without any reported issue or strange behavior.

If you install this patch and you end in a boot loop it means you have applied the wrong package. Please re-read the download info & instructions, and apply the proper zip. Period.

If you find any real problem please post it, and I'll update this section.

Changelog

2012.09.05 (current): Released the new Universal patch for stock/odex devices. The new Universal patch for stock/odexed fw now works on all Xperia devices, not only on the Xperia Mini Pro sk17i. This replaces the old first package, which has been deleted from this thread. (See posts #32 and #37 if you are curious on how/why it works).

Now all packages work an all Xperia devices.

2012.09.04: Updated infos for those having bootloop on stock/odex devices different from the Xperia Mini Pro with the first (small) package, while researching for a solution. (See posts #11 and #12 for reference).

2012.09.03: Initial release.

Additional Notes for those coming from arcatarc's fix

If you have used arcatarc "partial" fix you may have noticed that it had 2 major user visible problems:

the LED notification for missed calls was not working

it showed a single white blink when some notifications appeared in the statusbar: eg the Xperia Keyboard "choose input method" notification caused a white LED blink each time it appeared.

This patch doesn't have those problem, everything (seems!) to work as it should

!

​