Tuesday 4 October 2011

Fix Left Speaker Balance ASUS Eee Pad Transformer



Unperfect. There are a slew problem at the first batch of ASUS Transformer speaker (Tablet PC). There have been glitches in Honeycomb, connectivity issues with the dock, and a few others. However, the one that stood out the most (or at least the one that people have complained about the most) is the issue where some Transformers have unbalanced audio coming from the speakers.
It seems that the sound coming out of one of the ASUS speakers was much lower than that of the other one, with some people even getting devices with one working speaker. This was thought to be a hardware issue in the device, but we can decided to start tinkering with the gadget for a while and not only discovered the real culprit. You will need to have your TF rooted and you will need to use ADB (root explorer can be used as well, according to the dev).


Requirements:

  • Root
  • Left speaker actually working
  • Root Explorer or similar file manager (recommended method)
ADB if you don't use Root ExplorerText editing program (Notepad++ is recommended and free) if you decide to use ADB

Method 1: Root Explorer

  1. Open Root Explorer and navigate to /system/data.
  2. Tap on the "Mount R/W" button.
  3. Tap and hold on the file "srs_processing.cfg" and once the menu comes up, select the "Open in Text Editor" option.
  4. Scroll down to:
  5. //BLOCK: ( srs_spk_int : ) TruEQ - Internal Speaker Tuning
    Here's where things can get kind of annoying, because you will have to change values, save & exit, then reboot and test your results. Anyway, there are 4 values you will want to focus on, and those are:
    srs_spk_int:trueq_lband0 = 900.000000,-9.000000,0.700000 // TruEQ Left Band 0 Tuning (CF Gain Q) -srs_spk_int:trueq_lband1 = 11000.000000,6.000000,0.500000 // TruEQ Left Band 1 Tuning -srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.7000000 // TruEQ Left Band 2 Tuning - srs_spk_int:trueq_lband3 = 2500.000000,-9.000000,0.700000 // TruEQ Left Band 3 Tuning -
    The values in bold are the only ones I've messed with so far with very good results. The beginning values have a maximum of around 16000, and 17000 results in your left speaker not working, something above 16000 but below 17000 may work but I haven't tried it. The two middle ones, I don't know the maximum because It wasn't necessary to up them that much. For example, mine look like this:
    srs_spk_int:trueq_lband0 = 1400.000000,-9.000000,0.700000 // TruEQ Left Band 0 Tuning (CF Gain Q) -srs_spk_int:trueq_lband1 = 16000.000000,10.000000,0.500000 // TruEQ Left Band 1 Tuning -srs_spk_int:trueq_lband2 = 900.000000,7.000000,0.7000000 // TruEQ Left Band 2 Tuning -srs_spk_int:trueq_lband3 = 7500.000000,-9.000000,0.700000 // TruEQ Left Band 3 Tuning -
    For me, this works out wonderfully! However, results may vary.
  6. Once you've changed those values, save & exit, then restart your TF and examine results. Repeat steps if necessary.

Method 2: ADB. NOTE: Make sure USB debugging is enabled.

  1. Connect TF to computer.
  2. In a command prompt/terminal navigate to where your Android SDK is and type adb devices to make sure your TF is recognized, if so, type adb remount. If it succeeds, proceed to step 3, otherwise you may need to either enable USB debugging, or install drivers.
  3. Type "adb pull /system/data/srs_processing.cfg" It will save the file in the same directory as adb.
  4. NOTE: Do not close command prompt/terminal.
  5. Step 4: Open "srs_processing.cfg" in Notepad++ or whatever qualified text editor you use. 
    NOTE: Due to the nature of how Windows reads files, Notepad might not save the file correctly and definitely will not open it looking pretty. Wordpad might be the same. Basically, the file needs to be saved in UNIX format.
  6. Scroll up to Step 4 of the Root Explorer method and proceed.
  7. Save the file with Notepad++ or whatever qualified text editor you use.
  8. Back in command prompt/terminal, with the file saved over the original type "adb push srs_processing.cfg /system/data/"
  9. Reboot your TF as you normally would, or with adb method "adb reboot"
Examine results and repeat steps if necessary.


Update1:
srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.7000000 // TruEQ Left Band 2 Tuning -
I've updated the default file as well as my edited one to remove this extra 0. While this did boost volume in the left speaker for me, it still was not on par with the right one.
Update 2:
Verkion suggests "turn off the Hard Limiting in the Internal Speaker Boosted section by setting:hlimit_skip to 0 instead of 1. This gave me a little more "headroom" before distortion became unbearable. A hard limiter is a CLIPPING filter...it just "snips the sound" when it goes over a preset value instead of trying to "scale down the volume.""

0 comments:

Post a Comment