The HTC Evo has an additional LED (turquoise / red) on the right of the headset speaker. This is being implemented by using the Jogball I2C interface that is also found on their "trackball" phones except this phone has some preset modes.
You can talk with the LED directly by going through shell:
# echo 1 > /sys/class/leds/wimax/brightness
Current "brightness" modes it supports
1 = Two quick turquoise flashes
2 = One quick turquoise flash
3 = One slow turquoise flash
4 = One slow turquoise flash then one slow red flash
5 = One slow yellow flash
129 = Solid red on
130 = Solid turquoise on
131 = Solid yellow on
I am interested in getting the additional LEDs on the EVO to do something useful. In particular I would like to get the other LED possibly tied into the current CM6 ledARGB functinality that Cyanogen/Pedlar are working on. Obviously we would have a different / limited color range, but at least we would have more notification options with screen off.
*Original Post - Deprecated*
I was wondering what the general consensus is on a design for the /sys/devices/platform/leds-microp/leds objects for a change to the kernel.
The EVO has two dual color leds at the top.
- A. Green / Amber (left side of speaker)
- B. Cyan(turquoise) / Red (right side of speaker)
The current drivers put those at:
A(green) = ./green/brightness
A(amber) = ./amber/brightness
B(cyan/red) = none (only accessible by setting various ./wimax/blink modes from what I can tell)
Proposal:
-- existing --
A(green) = ./green/brightness
A(amber) = ./amber/brightness
B(cyan/red) = (leave the existing ./wimax nodes intact for backward compat)
-- new --
B(cyan) = ./cyan/brightness
B(red) = ./red/brightness
B(cyan/red) = ./argb/? (would like to create a similar looking node system to other phones containing either the Trackball LED or aRGB LED)
Essentially I am looking for comments/criticisms on the proposed structure and information on what the N1 trackball / Droid aRGB node structures look like (in order to be consistent)
If you are talking about the WiMAX LED it only has two colors: green and red. I am working on an app that will exploit this to use it for SMS and other notifications.
bludragon742 said:
If you are talking about the WiMAX LED it only has two colors: green and red. I am working on an app that will exploit this to use it for SMS and other notifications.
Click to expand...
Click to collapse
Yes, I am talking about the LED that uses the "./wimax" node (B). The green is kinda a blueish green, so I just called it cyan in order to avoid conflict with the other 'green' led. HTC's kernel interface appears lacking/inconsistent and I wanted to "complete" it by creating the cyan / red elements.
Just adding some additional information here.
It would appear that the Wimax LED is controlled via I2C with the following code in leds-microp.c. Does anyone know more about the the protocol of this? Im trying to see if I can control the two LEDs brightnesses / frequency independently.
Apparently (0-5,129, 130,131 are special modes on that device): 1-5 = pulses of various sorts, 129 = solid red, 130 = solid green, 131 = both (makes yellow) .
switch (brightness) {
case 0:
data[0] = 0;
break;
case 1:
case 2:
case 3:
case 4:
case 5:
case 129:
case 130:
case 131:
data[0] = brightness;
data[1] = data[2] = 0xFF;
break;
default:
pr_warning("%s: unknown value: %d\n", __func__, brightness);
break;
ret = microp_i2c_write(MICROP_I2C_WCMD_JOGBALL_LED_MODE, data, 3);
Wow thanks for the extra values! I'll put them to use in my program! Where did the source code you posted come from? I might want to take a look at it as it could make my job easier.
bludragon742 said:
Wow thanks for the extra values! I'll put them to use in my program! Where did the source code you posted come from? I might want to take a look at it as it could make my job easier.
Click to expand...
Click to collapse
Download the kernel source (ToastCFH's repo on GitHub is the best source) and look in /arch/arm/mach-msm and there'll be a bunch of c files there.
I think the LED code is in leds-microp.c but I'm not sure. Someone posted it earlier but I'm too lazy to look
here's the whole folder genius dog was talking about. I hope we can get more progress out of this. I wanna use that WIMAX led.
Awesome thanks!
bludragon742 said:
Awesome thanks!
Click to expand...
Click to collapse
Also........
david279 said:
here's the whole folder genius dog was talking about. I hope we can get more progress out of this. I wanna use that WIMAX led.
Click to expand...
Click to collapse
I saw that Cyanogen added the Wimax LED node to the Liblights on CM6. Nothing has been implemented on the UI yet to use it though (AFAIK)
http://github.com/CyanogenMod/android_hardware_msm7k/commit/4c19a2bc7cdbaa5098802c3a732ec4f37ebe530c
Hopefully Bluedragon will get us a Blink like app! Im going to try and take a stab working with someone on the CM team to get it implemented there as well.
The more I think about it, the modes that are already present on I2C driver are probably more than adequate for notification needs. Trying to change the mix of colors on just two LEDs would be hard to distinguish anyway. It would be nice to change the frequency of the light flashing though and am still looking into that.
Related
where can i dim the backlight? i'm searching for the backlight settings, but haven't found anything.
any reg tweak?
thx very much.
do u need to check some key register.....
i guess not. did some research, seems you can't set the backlight in any way.
poor, but true.
under power settings there is 'backlight off' and 'display off'.
i set the backlight off to quick (15secs) but display off to 2 minutes. The display is quite readable indoors with the backlight off (I suspect it is on a little - so the description in settings is not accurate).
Hopefully a firmware update will bring proper brightness control. Although I rememer my C500 and C550 not having it as well.
rgds
Im not sure if the hardware supports multiple levels for backlight.
I tried an app to test.(only tested on vda2 wm 5.0)
the only thing that happens is off or on.
but it works on ppc version!(didnt try on real ppc , but the emulator does switch light conditions! nothing happens on sp emulator)
no, unfortunately it's not supported.
big, big disadvantage!
Verify this Keyreg....and update on your SP.
HKEY_CURRENT_USER\Control Panel\Backlight\
- AcTimeout = 60
- AutoSensor = 1
- BatteryBacklight = 40
- BatteryTimeout = 15
- m_ACTimeout = 0
- m_BatteryTimeout = 0
Byeee
Sky_Lab
So, I found this thread http://forum.xda-developers.com/showthread.php?t=752377&highlight=wimax+led that discusses how to control the EVO's Wimax LED, and I've found another thread that explained how to use Tasker to trigger the Capacitive buttons (http://forum.xda-developers.com/showpost.php?p=8554277&postcount=12).
Using this information, I was able to set:
Missed text: Blinking turquoise
Missed Call: Solid Red
Missed Calendar Event: Solid Yellow
Which got me to thinking what else can I control this way? Here is the list of values I found for controlling all the EVO's LEDs (thanks to the posters of the above threads for the starting info):
First here are all the values that I was able to confirm.
Wimax LED
Current "brightness" modes it supports:
0 = OFF
1 = Two quick turquoise flashes
2 = One quick turquoise flash
3 = One slow turquoise flash
4 = One slow turquoise flash then one slow red flash
5 = One slow yellow flash
129 = Solid red on
130 = Solid turquoise on
131 = Solid yellow on
Location: /sys/class/leds/wimax/brightness
Amber LED
Current "brightness" modes it supports:
0 = OFF
1 = ON
Location: /sys/class/leds/amber/brightness
Current "Blink" modes it supports:
0 = Solid
1 = Fast Blink
Location: /sys/class/leds/amber/blink
Green LED
Current "brightness" modes it supports:
0 = OFF
1 = ON
Location: /sys/class/leds/green/brightness
Current "Blink" modes it supports:
0 = Solid
1 = Fast Blink
Location: /sys/class/leds/green/blink
(note you can have amber on with blinking green and vice-versa).
Flashlight
Current "brightness" modes it supports:
0 = OFF
1 = Top LED
2 = Bottom LED
3 = Both LEDs
125 = Low Power
126 = Mid Power 1
127 = Mid Power 2 (same as 3)
128 = High Power
129 = High Power Single Flash
Location: /sys/class/leds/flashlight/brightness
Screen
Current "brightness" modes it supports:
0 - 255 brightness levels
Location: /sys/class/leds/lcd-backlight/brightness
Capacitive Buttons
0 = OFF
1 = ON
Location: /sys/class/leds/button-backlight/brightness
If you have "Tasker" installed and have root access, install "Locale Execute Plugin" from the Market.
In Tasker, create your event, and select "Plugin" as the Task, then choose the "Execute" plugin.
Enter the following command in the textbox (substituting the value and device you want to trigger)
@! echo 255 > sys/devices/platform/leds-gpio/leds/button-backlight/brightness
Important: You must "Test" the task once or twice and wait for the Superuser permissions to trigger, otherwise the task will not execute. You will need to do this for each task you create using this plugin.
One thing to note, using the commands above trigger a single event. If the system triggers an event that uses the LED you are using (e.g. charging the device) it will override your setting. However, you can also override the system trigger (trigger after charger is plugged in).
Setting this up correctly in Tasker, will allow you to do cool things like automatically turning off all LEDs when you start a Video, set your own alerts or trigger the flash if someone picks up your phone (to scare them), etc.
Feel free to add your own suggestions, or add anything I missed.
wow nice post!
Great job at defining the controls.
I found this post useful to me in turning on and off the button leds with one tap. - lol ( self promotion - since they are related )
http://forum.xda-developers.com/showthread.php?t=816128
Very nice and informative work, but for $16+ (Tasker $6.26, Locale $9.99 (required for the plug-in, according to info in the Market)) I guess I'll stand over this one.
arcadia2uk said:
Very nice and informative work, but for $16+ (Tasker $6.26, Locale $9.99 (required for the plug-in)) I guess I'll stand over this one.
Click to expand...
Click to collapse
You do not need to buy Locale to run these commands. You only need the Locale Execute Plugin, which is free in the Market. Most, but not all, Locale plugins are compatible with Tasker.
Also, you can download a beta copy of Tasker to try out for free. Go to this address and download the Market version:
http://tasker.dinglisch.net/beta
I believe you can use it for 7 days before it asks for the order validation.
Oh and great post.
Sent from my PC36100 using XDA
and if you buy Tasker from the developer's site directly, you save a little more.
Tasker is incredible. Pent (the developer) built a similar app for the old Palm OS that I couldn't live without.
If you take the time to really learn how to use it, it becomes indispensable. Unfortunately, I have not really had that time yet, so I've just been dabbling.
Combing it with the "execute" plugin, gives you some amazing power.
arcadia2uk said:
Very nice and informative work, but for $16+ (Tasker $6.26, Locale $9.99 (required for the plug-in)) I guess I'll stand over this one.
Click to expand...
Click to collapse
the locale plug-in is free and tasker can use it.. thus you dont need locale.. tasker is amazing..
when i test the blinking ones, they dont seem to stop blinking... seriously, there is not an exit task for received text message and the wimax led wont stop blinking
you have to send another trigger set to 0.
What I did at first was had the screen on trigger reset the LED, but I noticed a slight delay on my device.
Instead I set the new trigger to a "New Window" Now, anything I tap on the device will disable the LED. It's been working great.
FYI - for the Flash trigger I mentioned, I set the screen brightness to a change from 0-4 and if I place my phone face down on my desk - then if anyone picks it up it will trigger the flash. Now all I need is a camera sound file .
is this right? because i can't get the amber light to stay on and the green light to flash..
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I get an FC if I try two commands in the same window. Just create two Execute Tasks.
Also, keep in mind that the system uses the left LED
flashing green - notification alert
flashing red - overheat
So, you may lose control of these if something else comes up.
sw99 said:
I get an FC if I try two commands in the same window. Just create to Execute Tasks.
Also, keep in mind that the system uses the left LED
flashing green - notification alert
flashing red - overheat
So, you may lose control of these if something else comes up.
Click to expand...
Click to collapse
I also get a fc..
i tried to set the event "missed call" to make the wimax led stay red, but the left led would just flash green, not sure what i did wrong
Here are my steps..
create new profile and select "missed call" as event
set priority to highest and long press and select any caller
add task, select plugin, select execute and write this in the text box
hit test til i see allow super user, hit allow, hit test till the led comes on (red), hit ok
create another profile to reset the led to off.. select event, system (or ui; dont remember), new window
add task, select plugin, select execute, and write this in the text box
hit test til i hit allow for superuser, then hit test till the led goes off, press ok, then hit done
these are the two profiles..
now I call myself from another phone, let it ring and only the left led flashes green, once i have missed the call..
sw99 said:
Important: You must "Test" the task once or twice and wait for the Superuser permissions to trigger, otherwise the task will not execute. You will need to do this for each task you create using this plugin.
One thing to note, using the commands above trigger a single event. If the system triggers an event that uses the LED you are using (e.g. charging the device) it will override your setting. However, you can also override the system trigger (trigger after charger is plugged in).
Setting this up correctly in Tasker, will allow you to do cool things like automatically turning off all LEDs when you start a Video, set your own alerts or trigger the flash if someone picks up your phone (to scare them), etc.
Feel free to add your own suggestions, or add anything I missed.
Click to expand...
Click to collapse
Anyway you may be able to post your profile settings so one can see how you setup Tasker to work as you did? I'm having some trouble on figuring out what events to trigger the button to flash and what to trigger to turn off the flashing. Thanks man Great work btw though!
Igzekyativ said:
I also get a fc..
i tried to set the event "missed call" to make the wimax led stay red, but the left led would just flash green, not sure what i did wrong
now I call myself from another phone, let it ring and only the left led flashes green, once i have missed the call..
Click to expand...
Click to collapse
I believe you have to set it to State- Missed Call, not Event- Missed Call. It's confusing, but Tasker treats Events and States differently. Events are single points in time, whereas States are ongoing (so you can have exit tasks). Here's my Profile, just import it and it should work.
Wow this is awesome! Great post, now my day will consist of messing with the phone!!!
Mine works fine as an event, but I couldn't get it to work as a state - the notification bar showed the state, but nothing triggered.
In any case, here are my profiles for messages, calls and calendar events.
Also, I left the "Caller" field empty and left priority at Normal.
antiphon said:
I believe you have to set it to State- Missed Call, not Event- Missed Call. It's confusing, but Tasker treats Events and States differently. Events are single points in time, whereas States are ongoing (so you can have exit tasks). Here's my Profile, just import it and it should work.
Click to expand...
Click to collapse
Where on the SD do you put the .xml to import it... I hit import a profile and I get a box that says "File Select" with a cancel button, but nowhere/way to select a file..
/tasker/profiles
sw99 said:
/tasker/profiles
Click to expand...
Click to collapse
thank you.
I'm having a hell of a time getting the capacitive leds to flash with a new sms... would one of you tasker pro's create a profile to flash the capactive leds when I have a new text?
That would be very cool of you.
Thanks.
they don't flash. you can only turn them on and off. I would not suggest trying to flash them using a loop in tasker - using software to flash the lights rather than hardware will be a much larger battery drain
Also, I don't know about you, but I cannot tell if they are lit unless I am in a fairly dark area.
Unfortunately I was one of the many people who have received a TF where the right speaker was significantly louder than the left. The reason for this is unknown by me as I've not disassembled my TF, and there are conflicting answers as to whether or not it is a software or hardware issue. However, with the help of fellow XDA member verkion for the initial fix and pointing me in the right direction, I've tinkered around enough that I feel comfortable sharing with the rest of the community. Let's get started.
Requirements:
-Root
-Left speaker actually working
-Root Explorer or similar file manager (recommended method)
--ADB if you don't use Root Explorer
--Text editing program (Notepad++ is recommended and free) if you decide to use ADB
Let's start with the recommended method, Root Explorer.
Step 1: Open Root Explorer and navigate to /system/data.
Step 2: Tap on the "Mount R/W" button.
Step 3: Tap and hold on the file "srs_processing.cfg" and once the menu comes up, select the "Open in Text Editor" option.
Step 4: Scroll down to:
//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.
Step 5:
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.
Step 1: Connect TF to computer.
Step 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.
Step 3: Type "adb pull /system/data/srs_processing.cfg" It will save the file in the same directory as adb.
NOTE: Do not close command prompt/terminal.
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.
Step 5: Scroll up to Step 4 of the Root Explorer method and proceed.
Step 6: Save the file with Notepad++ or whatever qualified text editor you use.
Step 7: Back in command prompt/terminal, with the file saved over the original type "adb push srs_processing.cfg /system/data/"
Step 8: Reboot your TF as you normally would, or with adb method "adb reboot"
Examine results and repeat steps if necessary.
Attached below are the default srs_processing.cfg and my edited one.
Feel free to post back your own values, because they may be more refined than mine or may work for someone else better as well. ENJOY!
Update: Thanks to seshmaru, a typo was discovered. ASUS added an extra zero to the bold part in line: 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.""
NOTE: If your right speaker is more quiet of course look for the srs_spk_int:trueq_rband lines instead.
EDIT:
While looking at your fix I noticed something, this is what I pulled from my config:
Code:
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 -
[B]srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.7000000 // TruEQ Left Band 2 Tuning -[/B]
srs_spk_int:trueq_lband3 = 2500.000000,-9.000000,0.700000 // TruEQ Left Band 3 Tuning -
srs_spk_int:trueq_rband0 = 900.000000,-9.000000,0.700000 // TruEQ Right Band 0 Tuning (CF Gain Q) -
srs_spk_int:trueq_rband1 = 11000.000000,6.000000,0.500000 // TruEQ Right Band 1 Tuning -
[B]srs_spk_int:trueq_rband2 = 400.000000,3.000000,0.700000 // TruEQ Right Band 2 Tuning -[/B]
srs_spk_int:trueq_rband3 = 2500.000000,-9.000000,0.700000 // TruEQ Right Band 3 Tuning -
if you pay attention you will find that the 2 highlighted lines are a different length, even though they should be equal, woops Asus?
I modified this line
srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.7000000 // TruEQ Left Band 2 Tuning -
to read
srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.700000 // TruEQ Left Band 2 Tuning -
This fixed my unbalance problem.
Thanks - this was driving me nuts.....
looks like Asus left out a 0, did you try adding one?
No I removed a 0 based on the fact that all others have five 0's or there are a total of six digits
Sent from my Transformer TF101 using Tapatalk
Ah, yes that makes sense, it balanced your speakers correctly?
Thanks for posting this up Freeza. Honestly, I was too lazy to do this before. Did you notice the Left Speaker tends to distort far "earlier" (lower volume threshold) than the right one?
danielsjam...are you sure changing/removing a zero fixed or changed the balance? It shouldn't make any difference considering its a trailing zero. I'll test this in a few just to be certain.
Thanks!
verkion
seshmaru said:
NOTE: If your right speaker is more quiet of course look for the srs_spk_int:trueq_rband lines instead.
EDIT:
While looking at your fix I noticed something, this is what I pulled from my config:
Code:
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 -
[B]srs_spk_int:trueq_lband2 = 400.000000,3.000000,0.7000000 // TruEQ Left Band 2 Tuning -[/B]
srs_spk_int:trueq_lband3 = 2500.000000,-9.000000,0.700000 // TruEQ Left Band 3 Tuning -
srs_spk_int:trueq_rband0 = 900.000000,-9.000000,0.700000 // TruEQ Right Band 0 Tuning (CF Gain Q) -
srs_spk_int:trueq_rband1 = 11000.000000,6.000000,0.500000 // TruEQ Right Band 1 Tuning -
[B]srs_spk_int:trueq_rband2 = 400.000000,3.000000,0.700000 // TruEQ Right Band 2 Tuning -[/B]
srs_spk_int:trueq_rband3 = 2500.000000,-9.000000,0.700000 // TruEQ Right Band 3 Tuning -
if you pay attention you will find that the 2 highlighted lines are a different length, even though they should be equal, woops Asus?
Click to expand...
Click to collapse
oh wow. I hadn't noticed. GREAT find.
verkion said:
Thanks for posting this up Freeza. Honestly, I was too lazy to do this before. Did you notice the Left Speaker tends to distort far "earlier" (lower volume threshold) than the right one?
danielsjam...are you sure changing/removing a zero fixed or changed the balance? It shouldn't make any difference considering its a trailing zero. I'll test this in a few just to be certain.
Thanks!
verkion
Click to expand...
Click to collapse
Yeah, I do notice it a tad, but I can definitely live with it! I was hoping you wouldn't mind.
Yes fixed my left speaker. Before this I could barely hear my left. If not wrong they are using ALSA sound drivers. You may find more info at the ALSA web site.
Sent from my Transformer TF101 using Tapatalk
I pushed the OP's attached file (srs_processingDEFAULT.zip) then my left speaker became more louder. I pushed back my pulled stock original file from my TF but then my right speaker is now louder.
Stock pulled file attached.
Updated the OP to reflect seshmaru's findings.
BTW, anyone know what srs_processing_JN101.cfg is for? It's almost identical to the original cfg and it showed up for 3.1. if you change stuff in there, sound seems to be unaffected?
Thanks!
verkion
Since sharing is caring, here's my srs_processing.cfg
You'll notice in the TrueEQ settings, my center frequencies are completely different (or quite different at any rate), because I was trying to get a nice flat response. It's better but not very good b/c the speakers suck at the end of the day.
I ALSO turned down the gain in the following section:
Code:
HLimit - Internal Speaker Boosted
hlimit_boost = 2.000
This it to prevent the distortion in the left speaker but has the negative effect of making everything quieter.
Incidentally, the reason why I am trying to get a flat response is because you'll notice that there are 10 GEQ settings for "Internal" and 10 GEQ settings for "External". They are all set to 0 at the moment but you COULD tweak them to your liking. Each of the presets appears to be a 10-band equalizer, probably fairly standard frequency spacing, controlled in dB gains. i.e. you actually have a built in Equalizer that isn't really being utilized properly.
You can have a bunch of different profiles and then switch between them by specifying which preset you want to use:
Code:
geq_int_preset = 0 where 0 is the preset number
This line is found at the top of the srs_processing.cfg file.
Lots more to play with in that config file. I wish there was some way to "reinitialize" the sound engine without having to reboot. Then, a program w/a gui could be written that allows this stuff to be adjusted by the user as long as they had root access.
Thanks!
verkion
verkion said:
BTW, anyone know what srs_processing_JN101.cfg is for? It's almost identical to the original cfg and it showed up for 3.1. if you change stuff in there, sound seems to be unaffected?
Thanks!
verkion
Click to expand...
Click to collapse
It's probably for the Eee Pad Slider.
i tryed your fix and it works really nice! but i'm "scared" about the stress that the left speaker have to sustain. i notice that there is a very strong vibration of the left side of the back cover so i think that the left speaker isn't equal to the right but it's smaller.
i don't want a damaged left speaker so i renounce to the balancing
I think the problem with speaker balance is due to the fact that the right side as more opening (microsd, hdmi) for the sound waves to get to our ears...if you look at the left side those tiny holes on a metal casing don't let enough sound waves thought that's why when you listen to some music at a higher level you feel the back plastic casing vibrating... Like a subwoofer made of plastic
Sent from my Desire HD using XDA Premium App
andrew2511 said:
i tryed your fix and it works really nice! but i'm "scared" about the stress that the left speaker have to sustain. i notice that there is a very strong vibration of the left side of the back cover so i think that the left speaker isn't equal to the right but it's smaller.
i don't want a damaged left speaker so i renounce to the balancing
Click to expand...
Click to collapse
Interesting. I haven't applied this fix yet and noticed my right speaker (the louder one) is already having the vibrating effect.
So wouldn't it be normal that the left speaker, the quieter one, would also make the case vibrate around it if you turn up the volume to balance with the other speaker?
hi all
after trying this my speakers is now balanced
its works!!!
ASUS is using a 'static' version of that processing system - it only reloads at boot. Sorry guys. There's an interactive version with various UI and import/export features too - but generally it's only active during development/QA - at retail it is often locked-out.
Nice find on that typo - now I have to go debugging
Shawn_230 said:
Interesting. I haven't applied this fix yet and noticed my right speaker (the louder one) is already having the vibrating effect.
So wouldn't it be normal that the left speaker, the quieter one, would also make the case vibrate around it if you turn up the volume to balance with the other speaker?
Click to expand...
Click to collapse
the right vibrates too but applying the fix the left back cover will vibrate more and more than the right one. so balancing the speakers, the left having the same volume of right seems to be stressed much more
tested on iron maiden
Recently I have been digging all about my LED in Moto X Force (for those who do not know, Motorola did install a LED on the front panel, but didn't enable it for anything usable - some people state that it's on when battery is very low, and then phone does not start, but I have never seen it). This very strange decision of Motorola encouraged me to look how to use it anyways. I have found a few apps that supposedly were in control of it, but none seemed to be nor well written nor even working. So I decided not to use those. But one app did occur to be usable. And only option I liked there was LED blinking every time any IO operation on the SD Card occured. Yet, the app is in two versions. One (free) disallows to "start at boot" so everytime i reboot the phone, I have to manually run it to "blink again".
As I'm a dev, I did little digging and found out that it's really simple to make such functionality by just one command as root (it's basically telling the linux kernel when to trigger the LED - thanks kernel.org people ):
echo mmc0 > /sys/class/leds/charging/trigger
Just one command.
As this applies to ANY device, it's for everybody to see.
Moreover, if you type:
cat /sys/class/leds/charging/trigger
You will see the response like this:
none fg_adc-online MOTOSH-ANTCAP-PSY-DRIVER-online usb-online flash0_trigger torch0_trigger usb-parallel-online wireless-online bms-online battery-charging-or-full battery-charging battery-full battery-charging-blink-full-solid dc-online rfkill0 mmc0 [mmc1] backlight default-on bcl-online rfkill13
You can guess that for example:
- battery-full will light your LED when battery is full
- wireless-online will light when WiFi is on (and possibly have the internet connection - just guessing, test by yourself, it's not the point of this post)
- and so on
The one in square brackets is "active" trigger (in this case mmc1 - external sd card)
If you type:
ls -1 /sys/class/leds/
(or even: ls -1r /sys/class/leds/ for more details)
You will see all the LEDs you can use.
When you use /sys/class/leds/*/trigger the kernel will do all the job for you. If you want to do the job yourself from within your app, you may use /sys/class/leds/*/brightness
To be honest, I really regret I have rooted my phone so late (after warranty) .
Have fun guys
PS. If you are not a dev, you still can use above in tools like Automate or Tasker.
PS2. WARNING: for Moto X Force fiddling with lcd-backlight "LED" can cause reboots (if done at boot, bootloops). Only two "trigger happy" working LEDs are charging and torch-light0 for my phone. Still, lcd-backlight possibly can be done "manually" (brightness)
Hey, this is already years old. But how to undo the changes?
Upon opening a terminal app, gaining root access, and typing
Code:
cd /
cd /sys/class/leds/charging
access to the charging LED is obtained. The following parameters are available (see attached screenshot).
Code:
echo 255 > max_brightness
sets the maximum brightness of the LED to the highest possible value. Then, changing x for 0–255 in
Code:
echo x > brightness
gives a solid light of the specified brightness.
Code:
echo 1 > blink
makes the LED blink, and specifying a duration x in ms for
Code:
echo x > ramp_step_ms
changes the speed at which it blinks.
TL;DR the phone has a great, bright LED that can be used for notifications. Would love to see more discussion about this.
As would I. It beats me why Motorola would include an LED and choose not to use it at all ever.
unfnknblvbl said:
As would I. It beats me why Motorola would include an LED and choose not to use it at all ever.
Click to expand...
Click to collapse
they do with all the phones.
munchy_cool said:
they do with all the phones.
Click to expand...
Click to collapse
Having had a Moto X 2014, I'm aware of this. The difference was that it kinda made sense for there to be no LED on that phone because of the fancy situation awareness it had. This phone, not so much.
@erfanoabdi has been reworking the light HAL for the Moto X4 to implement these discoveries, and it’s nothing short of impressive how he’s been doing all this for our device without having an X4 in his hands himself. Thank you so much, man!
Hi,
How can I get help for the other options?
Like trigger
The op has pigued my interest, however im not 100% sure what all that meant since im still a bit of a noob , but interested i am
Edit: time to change that signature..... if i can rrmember how tooo...