[SOLVED] Volume control--USB Audio - Nook Touch General

SOLVED!!!! See post #25.

I am going to test this, for sure. If it indeed works, which I am very confident it will, you're going on the Important Links list.

Tested it, multiple times. Your steps did not work for me.
What does work, though, is this:
- Plug in OTG cable, set in Host mode.
- Plug in audio device.
- Open AudioCtl. Hit "Beep".
- Unplug audio device.
- Open ES Task Manager. Open Volume.
- Set "Media" meter to whatever you like.
- Plug audio device back in.
- Open AudioCtl. Hit "Beep".
Good to go.

Trying to track down volume adjustment
I've been thinking about the volume adjustment as described above and wondering if it could not be examined to reveal what is going on behind the scenes with a view to incorporating those changes into either Renate's AudioCTRL app or my one-touch USB Audio app--or both. My Android knowledge is, however, very basic.
I've attached a logcat session (including everything...) which begins with the usual sequence for enabling USB audio on a freshly booted NST. There's a lot to wade through, much of it irrelevant--even I can tell that. The beginning of the actual volume adjustment operation can be found by text searching for "Removed device", which is where the USB Audio gizmo is disconnected from the OTG cable while Task Manager is used to adjust the volume (as described in the post above). The logcat ends with the disconnection of the OTG cable and termination of USB host mode.
I've begun looking over this in hopes of seeing something that indicates what is different when AudioCTRL is invoked the second time to see if the volume is indeed no longer ear-splitting. Maybe there is something there, and maybe there is a better log to look at.
Any suggestions/help/joiners?

nmyshkin said:
I've been thinking about the volume adjustment as described above and wondering if it could not be examined to reveal what is going on behind the scenes with a view to incorporating those changes into either Renate's AudioCTRL app or my one-touch USB Audio app--or both. My Android knowledge is, however, very basic.
I've attached a logcat session (including everything...) which begins with the usual sequence for enabling USB audio on a freshly booted NST. There's a lot to wade through, much of it irrelevant--even I can tell that. The beginning of the actual volume adjustment operation can be found by text searching for "Removed device", which is where the USB Audio gizmo is disconnected from the OTG cable while Task Manager is used to adjust the volume (as described in the post above). The logcat ends with the disconnection of the OTG cable and termination of USB host mode.
I've begun looking over this in hopes of seeing something that indicates what is different when AudioCTRL is invoked the second time to see if the volume is indeed no longer ear-splitting. Maybe there is something there, and maybe there is a better log to look at.
Any suggestions/help/joiners?
Click to expand...
Click to collapse
Have you made any more progress on this volume adjustment problem?
The ES Task Manager's volume setting doesn't do anything more than what I can do with the hardware volume control on the USB Audio adapter.
My solution at the moment is to use some low-efficiency earbuds/headphones.

digixmax said:
Have you made any more progress on this volume adjustment problem?
The ES Task Manager's volume setting doesn't do anything more than what I can do with the hardware volume control on the USB Audio adapter.
My solution at the moment is to use some low-efficiency earbuds/headphones.
Click to expand...
Click to collapse
Unfortunately it seems beyond my skill and no one else seemed interested in tackling it. This leads me to believe that either not many people use the audio capability (maybe for this reason?!) or they just found other methods that "worked" for them. In searching for something--anything--that would make the volume other than full on I thought I had the solution several times and that suggests to me--along with your experience with ESTM--that the behavior is almost device idiosyncratic. That's a scary thought.
That said, I hope you'll give the ESTM another try. It works wonderfully well for me and provides full range volume control from a whisper to blasting using the native android controls as well as external buttons. I have two USB audio devices, one with volume buttons and one without. Both work equally well with this method, but you do have to follow the procedure exactly:
1. Set up your USB audio device in the usual way, using Renate's two apps (you can also use my one-touch app--must be version 3--to set the volume this way).
2. Remove the USB audio device from the cable (do not detach the OTG cable from the NST)
3. Open ESTM and access only the quick menu (three bars at the top left)
4. Select volume adjust.
5. Adjust only the media volume to something on the order of 60%--don't diddle with this. One adjustment. If you do too much you can cause a reboot.
6. Close ESTM
7. Reattach the USB audio device.
You should be good to go at that point until your next cold or warm boot and unless you're working on your system, that can be a very long time with the Nook ST! It doesn't matter that you get in and out of USB mode. Something in that hoo-doo process sets a flag or pushes an unruly gaggle of electrons around in the system so that the volume control works as it should. I only wish I knew what it was!
Just in case, the version of ESTM I am using is 1.4.2 (attached below).

nmyshkin said:
...
but you do have to follow the procedure exactly ...
...
Click to expand...
Click to collapse
That did the trick!!!
I think I had previously skipped the step of removing the US Audio adapter ...
Can you post the link to your one-touch app?
Tx.

digixmax said:
That did the trick!!!
I think I had previously skipped the step of removing the US Audio adapter ...
Can you post the link to your one-touch app?
Tx.
Click to expand...
Click to collapse
Good! I hate kludges, but this one does actually work
Here's the one-touch app.

nmyshkin said:
Good! I hate kludges, but this one does actually work
Here's the one-touch app.
Click to expand...
Click to collapse
Thanks.
Now, if your one-touch app can finagle the volume control I'd be in heaven and go stocking up a few more NSTs

digixmax said:
Thanks.
Now, if your one-touch app can finagle the volume control I'd be in heaven and go stocking up a few more NSTs
Click to expand...
Click to collapse
Amen to that, brother--from your fingertips to the terminal screens of those who can do it. It's the last piece of the audio puzzle and it would be a shame not to complete the work.

digixmax said:
Thanks.
Now, if your one-touch app can finagle the volume control I'd be in heaven and go stocking up a few more NSTs
Click to expand...
Click to collapse
Oh....I'm so close!!!!! I can write a little volume setting app to use after the USB Audio toggle (or the standard method). Like the kludge above the adjustment is persistent until a reboot but you don't need ES Task Manager.
What I can't do (yet) is combine the volume adjustment with the USB Audio toggle
I need to consult the Tasker experts for a workaround. In the meantime I'll get the app posted later today after a little more testing.
Edit: Ugh. Or maybe not. The app causes a reboot.... Still working on the problem.

nmyshkin said:
Oh....I'm so close!!!!! I can write a little volume setting app to use after the USB Audio toggle (or the standard method). Like the kludge above the adjustment is persistent until a reboot but you don't need ES Task Manager.
...
Click to expand...
Click to collapse
Not having to navigate through ES Task Manager to get to its Volume tab is a significant improvement.
Does your app still entail the ritual of disconnecting/reconnecting the audio adapter?

digixmax said:
Does your app still entail the ritual of disconnecting/reconnecting the audio adapter?
Click to expand...
Click to collapse
I'm afraid so but that is rather moot since I've run into the reboot problem. I'm not giving up, though :fingers-crossed:

tiny "progress"
Oy. This really needs someone who can understand all the stuff thrown out in the logcat.
But...I have made one discovery that tames (not controls) the ALSA volume. In the master ALSA configuration file at /system/etc/asound.conf there are three instances of Speaker Volume of one kind or another. All three are set to the maximum (150 for each channel). Although the minimum is supposed to be 0, anything lower than 4 effectively mutes the sound card. Reducing the setting to 4 may make some headphones usable without the kludge described earlier. You can do this with a simple text editor, either on the device, or pull the file to your computer, edit and put it back. A reboot is needed for this to take effect even though ALSA documentation says this file is always read anew when a device is detected.
If you want to see whether this is even worth the trouble and you have adb access, you can fire up the USB Audio (without the kludge) and send the following shell command:
Code:
adb shell alsa_amixer -c 1 set Speaker 4
The volume change will be instantaneous but not permanent. For that you need to make the change in the asound.conf file.
The real issue, of course, is that without the mysterious beneficial effect of the kludge, the native android volume control has no effect on either actual media volume OR the ALSA volume. When the kludge is used there is still (I believe) no effect on the ALSA volume but the native volume control is able to take the static value of the ALSA volume and decrease it, thus giving the effect of a volume control.
I think this is correct because when the asound.conf file is edited as described above, the maximum android volume is less than the earsplitting level when the ALSA controls were set to their maximum (150).
In any case if you query the ALSA volume post-kludge it's clear that the android media volume setting is having no effect on the ALSA value which remains whatever is specified in asound.conf
Therefore part of the problem is that rather than controlling the ALSA volume, the native android volume control overlays the constant ALSA value.
OK, I admit I wrote most of that to clarify the issues in my own mind. Maybe someone will get another idea. I've Googled every search string I can think of and have only learned to tinker a little with ALSA commands. But the real mystery is in the android system and what the logcat shows.

nmyshkin said:
...
OK, I admit I wrote most of that to clarify the issues in my own mind. Maybe someone will get another idea. I've Googled every search string I can think of and have only learned to tinker a little with ALSA commands. But the real mystery is in the android system and what the logcat shows.
Click to expand...
Click to collapse
@nmyshkin:
You solved the mystery!!!
Following the lead in your PM, I re-enabled Phone.apk (which many of us had disabled to conserve battery) and now volume-control using my USB Audio adapter's volume-button works like a charm.

digixmax said:
@nmyshkin:
You solved the mystery!!!
Following the lead in your PM, I re-enabled Phone.apk (which many of us had disabled to conserve battery) and now volume-control using my USB Audio adapter's volume-button works like a charm.
Click to expand...
Click to collapse
LOL--I hope you are correct, but there seems to be a devil in my details. I now cannot get it to work using my one-touch toggle app, but it does seem to work with the standard 2-app setup. What seems to fail using my app is that mediaserver is not killed (maybe it's just wounded....). So I'd be curious to know if this continues to work for you, even after a reboot. I thought I had it all sewed up until a reboot showed me otherwise.
When I found the PID for mediaserver as @Renate NST instructed in order to replicate the function of her AudioCtl app, I may have oversimplified things too much. Not knowing much, I just assumed the PID was constant. So I wrote the value I found (19409) into my app. But now that I am having trouble, I find that this:
Code:
adb shell ps
which lists the PID values for apps and processes gives something quite different for /system/bin/mediaserver (1818 right now).
So.....Renate's app continues to work and I'm guessing that's because it queries the PID value before killing mediaserver. I can't say that enabling the Phone.apk has changed the PID value for mediaserver, but there are a whole lot of processes listed now that it's back compared to when I checked PIDs before.
So as a "proof of concept" I just edited the Tasker task from which my one-touch app was produced, changing the PID value to 1818. That worked like a charm.
Next I ran the one-touch app again andthis time it worked. I guess I'm showing my ignorance (yet again) but that does not make sense. I'm betting that if I reboot something different will happen.
........
OK, so on a reboot I get a PID of 978 for /system/bin/mediaserver and (not surprisingly) my one-touch app does not work. And now Renate's 2-step method hangs up on the AudioCtl app. Another check of the PID via adb shows it has changed to 2263.
I'd be very curious to know how your device behaves after a reboot. Mine's a mess (as far as this audio stuff goes---everything else is fine).

This morning it occurred to me that my one-touch toggle app might just be corrupted. I've really put my poor NST through the wringer the past few weeks working on this problem
So I uninstalled it and put on a fresh copy. It worked on the first try
I'm hoping your experience is the same. If so I'll monitor the power issue for a week and then write a summary post and call this "solved".
Edit: Or not. After a reboot the one-touch toggle app again failed to work. What does seem to work consistently is using Renate's two apps for the first time after a reboot. Thereafter, for some reason known only to Heisenberg (and maybe Renate), the one-touch toggle app successfully sets up the USB Audio with proper volume control. Until another reboot. I need to contact Renate.

nmyshkin said:
LOL--I hope you are correct, but there seems to be a devil in my details. I now cannot get it to work using my one-touch toggle app, but it does seem to work with the standard 2-app setup. What seems to fail using my app is that mediaserver is not killed (maybe it's just wounded....). So I'd be curious to know if this continues to work for you, even after a reboot. I thought I had it all sewed up until a reboot showed me otherwise.
Click to expand...
Click to collapse
Sorry I should have been clearer: I have not gotten around to try your one-step app yet, as I want to make sure I don't introduce more variables into my mysterious "loss of sound" problem (as I described in my PM). So what work for me so far (fingers crossed as I am starting to lose faith in Bacon's principles ) is Renate's two step-process.
When I found the PID for mediaserver as @Renate NST instructed in order to replicate the function of her AudioCtl app, I may have oversimplified things too much. Not knowing much, I just assumed the PID was constant. So I wrote the value I found (19409) into my app. But now that I am having trouble, I find that this:
Code:
adb shell ps
which lists the PID values for apps and processes gives something quite different for /system/bin/mediaserver (1818 right now).
Click to expand...
Click to collapse
Yes the PID for a Linux-type OS process is not deterministic (except for the one and only "init" process which has PID of 1). You can find the PID of a currently running process with the command pipe "ps ax | grep <process-name>" (but I have no idea if/how you can make use of this from inside your app).
So.....Renate's app continues to work and I'm guessing that's because it queries the PID value before killing mediaserver. I can't say that enabling the Phone.apk has changed the PID value for mediaserver, but there are a whole lot of processes listed now that it's back compared to when I checked PIDs before.
Click to expand...
Click to collapse
Yes, I now see the old familiar "Cell Idle" process topping the battery-usage list .

digixmax said:
Sorry I should have been clearer: I have not gotten around to try your one-step app yet, as I want to make sure I don't introduce more variables into my mysterious "loss of sound" problem (as I described in my PM). So what work for me so far (fingers crossed as I am starting to lose faith in Bacon's principles ) is Renate's two step-process.
Yes the PID for a Linux-type OS process is not deterministic (except for the one and only "init" process which has PID of 1). You can find the PID of a currently running process with the command pipe "ps ax | grep <process-name>" (but I have no idea if/how you can make use of this from inside your app).
Yes, I now see the old familiar "Cell Idle" process topping the battery-usage list .
Click to expand...
Click to collapse
Thank you for that helpful info about the PID. I'll see what I can do with it. It does not explain how the one-touch app worked before the phone.apk was awakened nor how it works after the 2 step method has been used once. But it's a start.
I installed a battery app today to keep an eye on things but it's showing me the "dialer" as consuming only 0.8% of the battery usage. I may not have access to what I need to know with this particular app.

digixmax said:
...
You can find the PID of a currently running process with the command pipe "ps ax | grep "...
Click to expand...
Click to collapse
Apparently the ps command in Android behaves a bit differently than its Linux counterpart, there is no need for the "ax" option stuff.
Instead, this command pipe
Code:
ps | grep phone | tr -s ' ' | cut -d ' ' -f 2
(note the single blank between the two single quotes as value for the -s and -d options) will yield the PID for the phone process.

Related

ALSA on the Nexus 4 (temporary volume control)

Please remember to make a backup image of your phone before experimenting.
============ WARNING!! =============
The highest setting is VERY loud (as I found out) and could potentially rip apart the speaker on your phone!
Exercise extreme caution when using this. You risk permanent damage to your phone and your ears.​
2013-Jan-20
-----------------
Thanks xda-developers members "skvalex" who wrote ALSAMixer and "chdlock" who is helping me figure out
how ALSA is mapping the audio chipset, we can now temporarily adjust the Digital Volume on the Nexus 4.
Unfortunately, the selected volume doesn't "stick" because the audio driver re-writes it every time it re-opens an audio stream.
A stream is usually opened when a music track begins to play so then the digital volume will reset back to default.
We need a kernel developer to modify the audio driver so it opens an audio stream using a user-selected Volume level.
***
If you don't mind setting the volume frequently or just want to try this out here's what you need:
1) Get ALSAMixer from the Play Store. It was updated recently and you need the latest version.
Please consider a donation to the author.
2) You can re-program the audio chipset by editing fields in ALSAMixer. Here is a list of what we can control so far.
Headphones volume:
Left: RX1 Digital Volume (numid=27)
Right: RX2 Digital Volume (numid=28)
Speaker volume:
RX3 Digital volume (numid=29)
Camcorder volume:
DEC6 Volume (numid=39)
Microphone volume:
DEC7 Volume (numid=40)
-----------------------------------------------
old OPs
-----------------------------------------------
2013-Jan-15
----------------
The creator of ALSAMixer updated it to correctly install for Nexus4. (Uninstall removes the app but the ALSA libraries remain on the phone.)
https://play.google.com/store/apps/details?id=com.skvalex.alsamixer&hl=en
Thank you so much!
--------
http://forum.xda-developers.com/attachment.php?attachmentid=1653124&d=1358438577
This is a piped output of "alsa_amixer -c 0 contents" from a stock Nexus 4 (4.2.1)
2013-Jan-13
-----------------
Is anyone successfully running ALSA on their Nexus 4?
If you do please share instructions to do so.
I am on stock 4.2.1(rooted/busybox) and I ran the AlsaMixer from
the Play Store but it doesn't seem to complete the installation.
http://forum.xda-developers.com/sho...ited Edition Kit★☆★ | aokp,minco,pa,rasbean |
Shameless promotion
Sent from my Nexus 4
Next you're going to tell me that you want systemd and PulseAudio on your device too, right?
I wiped to stock,
I installed AOKP-jb-mr1-build1,
then Nocturnal 1.4 LE for AOKP
and the ALSAMixer still doesn't work. It installs but I get the same blank screen with no settings.
What am I doing wrong?
I'm not sure what that app is, I just meant that some of the audio mods in the kit ROM referred to ALSA audio libs.
As you can tell I'm not the expert, sorry if that's not what you were referring too
Sent from my Nexus 4
I am looking for a way to control the audio stream parameters in particular the gain of the microphone.
Somebody suggested using ALSA and I'm trying get it going.
-Mindroid- said:
I am looking for a way to control the audio stream parameters in particular the gain of the microphone.
Somebody suggested using ALSA and I'm trying get it going.
Click to expand...
Click to collapse
I have only a Nexus 7, and the SoC is different from the Nexus 4, but look for alsa_amixer (installed by AlsaMixer) from within a console and execute
"alsa_amixer -c X contents" (without the quotes)
where X is one of the card numbers shown in your /proc/asound directory (e.g. card0 [X=0], card1 [X=1], etc). In my case, X=1 is the actual card where (a lot of) values can be set. One of those values is called "ADC Boost Gain"(I guess a programmable analog gain?).
I established a call with CSipSimple and successfully raised that parameter by 24dB in mid-call by executing "alsa_amixer -c 1 cset numid=20 2" [the default value was 0 and each step increases the level by 12dB]
You can query individual parameters by executing alsa_amixer -c X cget numid=Y
YMMV with the Nexus 4. Good luck!
Thank you! This looks really promising.
I only have "card0" aka [apq8064tablasnd].
When trying to execute "alsa_mixer -c 0 contents" I get an error stating that I'm missing
library "libasound.so". Any ideas what could be wrong?
I'm not sure whether libasound.so came with the AlsaMixer app. If it did you may need to copy the library into a system library path, e.g. /system/lib. If not, I could send you the library that I have. I actually forgot whether I found the library somewhere online or whether I cross-compiled it myself...
Sent from my Nexus 7 using xda app-developers app
ALSA on Nexus 4 sound capabilities
ALSAMixer in the Play Store was updated to support Nexus 4. See OP.
---------------------------------------------------------------
The attached file is the output of running
alsa_amixer -c 0
I'm new to ALSA and have trouble figuring out which one is the microphone gain control.
I have installed this app but unfortunately I don't know how to completely uninstall it help please?:thumbup:
..sent from space.
amarb70 said:
I have installed this app but unfortunately I don't know how to completely uninstall it help please?:thumbup:
..sent from space.
Click to expand...
Click to collapse
If I understand correctly the app is just an installer that puts the ALSA libraries on your system.
If you are not using them it probably doesn't matter if they are there or not. You can contact the app creator about it.
-Mindroid- said:
ALSAMixer in the Play Store was updated to support Nexus 4. See OP.
---------------------------------------------------------------
The attached file is the output of running
alsa_amixer -c 0
I'm new to ALSA and have trouble figuring out which one is the microphone gain control.
Click to expand...
Click to collapse
Post the output of
alsa_amixer -c 0 contents
Any labels containing "ADC gain" or "Boost" would be prime candiates
amarb70 said:
I have installed this app but unfortunately I don't know how to completely uninstall it help please?:thumbup:
..sent from space.
Click to expand...
Click to collapse
Restore your back up
Sent from my Nexus 4 using xda premium
alsa_amixer c- 0 contents
chdloc said:
Post the output of
alsa_amixer -c 0 contents
Any labels containing "ADC gain" or "Boost" would be prime candiates
Click to expand...
Click to collapse
Thank you for being so patient with me!
I'm such a Linux noob. It took me forever to figure out that I need 'su' to do anything.
I will update the OP to link to this file.
-Mindroid- said:
Thank you for being so patient with me!
I'm such a Linux noob. It took me forever to figure out that I need 'su' to do anything.
I will update the OP to link to this file.
Click to expand...
Click to collapse
Holy smokes! This is one complicated mixer! And I've seen many.
It may help in narrowing choices down by you capturing another
alsa_amixer -c 0 contents
while you are on a call and look at the diffs. While you do that (being on a call, but don't run anything else that may use audio such as music playback apps) also report the output of
cat /proc/asound/card0/pcm0p/sub0/status
to make sure that phone calls are actually routed through ALSA. Anything but "CLOSED" is good.
I do not have a Nexus 4 so I cannot help trying to find the best parameters for a given application. The app ALSAMixer should help I would think.
Does this program now actually display anything?
chdloc said:
Holy smokes! This is one complicated mixer! And I've seen many.
It may help in narrowing choices down by you capturing another
alsa_amixer -c 0 contents
while you are on a call and look at the diffs. While you do that (being on a call, but don't run anything else that may use audio such as music playback apps) also report the output of
cat /proc/asound/card0/pcm0p/sub0/status
to make sure that phone calls are actually routed through ALSA. Anything but "CLOSED" is good.
I do not have a Nexus 4 so I cannot help trying to find the best parameters for a given application. The app ALSAMixer should help I would think.
Does this program now actually display anything?
Click to expand...
Click to collapse
It's a long shot but if you are in the New York tri-state area I wouldn't mind meeting up and letting you mess around with the Nexus4.
The invitation is open to anyone with ALSA experience. I would love to learn more about it first-hand.
As far as I can tell:
- ALSAMixer installs the ALSA libraries and displays the control set. I tried modifying a value with it and it didn't work.
It's a matter of wrong syntax I think, I will contact the app creator about it.
- Terminal Emulator works. I was able to change the value of "AUX_PGA_LEFT Volume" with the following command:
alsa_amixer cset numid=54 39
I'm not sure what this one does yet but I will investigate later today.
- unfortunately, during a phone call "proc/asound/card0/pcm0p/sub0/status" (playback) as well as
"proc/asound/card0/pcm0c/sub0/status" (capture) report "closed". Earlier I tried recording a voice call from an app
and trying to prepare an audio stream with MediaRecorder.AudioSource.VOICE_CALL throws an exception.
- when recording an audio stream with MediaRecorder.AudioSource.MIC and CAMCORDER
"proc/asound/card0/pcm0c/sub0/status" reports audio stream parameters. I'm attaching the piped output of
"alsa_amixer -c 0 contents" during a voice call, recording with mic and recording with camcorder.
-Mindroid- said:
[...]
- when recording an audio stream with MediaRecorder.AudioSource.MIC and CAMCORDER
"proc/asound/card0/pcm0c/sub0/status" reports audio stream parameters. I'm attaching the piped output of
"alsa_amixer -c 0 contents" during a voice call, recording with mic and recording with camcorder.
Click to expand...
Click to collapse
This is fun...
There is certainly a difference between the "idle" set of parameters you had posted earlier and the ones that you took during a voice call.
I found some good information that explains the parameters here
https://github.com/psykick5/android_device_lge_mako/blob/master/snd_soc_msm_2x_Fusion3
Try to change numid=48 (i.e. 'ADC1 Volume') and numid=40 (i.e. 'DEC7 Volume'); these two parameters should change the microphone level, provided automatic gain control does not compensate for the changes.
(It bothers me, though, that the range of values shown by alsa_amixer and the ones shown in the above link don't match)
Make sure that the changes stick by issuing
alsa_amixer cget numid=X
For phone calls I would certainly change numid=65 (i.e. 'TX6 HPF cut off') from 0 (apparently really only a DC offset filter) to 2 (apparently a high-pass filter with a cutoff frequency of 150Hz), which would be good enough for HD voice.
chdloc said:
This is fun...
There is certainly a difference between the "idle" set of parameters you had posted earlier and the ones that you took during a voice call.
I found some good information that explains the parameters here
https://github.com/psykick5/android_device_lge_mako/blob/master/snd_soc_msm_2x_Fusion3
Click to expand...
Click to collapse
Great find! This seems to be exactly what we need.
Most intriguing there are also facilities for Voice Call and FM Radio audio streams. Those are not currently working on
the Nexus4 at the moment and this might shed some light on a possible solution.
I find some of their nomenclature confusing. They use "TX" for recording and "RX" for playback.
Also they seem to set values twice - :1:0 for turn off and :1:1 for turn on. Do I have to issue commands twice?
I confirmed with 'cget' that I am indeed setting values with 'cset'.
chdloc said:
Try to change numid=48 (i.e. 'ADC1 Volume') and numid=40 (i.e. 'DEC7 Volume'); these two parameters should change the microphone level, provided automatic gain control does not compensate for the changes.
(It bothers me, though, that the range of values shown by alsa_amixer and the ones shown in the above link don't match)
Make sure that the changes stick by issuing
alsa_amixer cget numid=X
Click to expand...
Click to collapse
It seems that DEC7 controls to the MICROPHONE stream and DEC6 the CAMCORDER.
I will focus my attention on these.
chdloc said:
For phone calls I would certainly change numid=65 (i.e. 'TX6 HPF cut off') from 0 (apparently really only a DC offset filter) to 2 (apparently a high-pass filter with a cutoff frequency of 150Hz), which would be good enough for HD voice.
Click to expand...
Click to collapse
I was wondering about that myself. There is very bad low frequency noise on video recordings so I will
definetly look into this.
-Mindroid- said:
I find some of their nomenclature confusing. They use "TX" for recording and "RX" for playback.
Click to expand...
Click to collapse
Actually, the nomenclature is quite common, TX, i.e. transmit [to the network] denotes the signal to be transmitted (taken from from microphone)
while RX is the receive signal [from the network] to be played back through a loudspeaker.
-Mindroid- said:
Also they seem to set values twice - :1:0 for turn off and :1:1 for turn on. Do I have to issue commands twice?
Click to expand...
Click to collapse
No, you will have to issue the command only once. Without having looked at the underlying code I tend to think that the first number denotes the type, i.e. integer vs string, and the second number the actual value.
Another interesting observation is that the SoC of the Nexus 4 seems to support SRS TruMedia via an effects mixer, which reportedly has potential to improve audio considerably (http://www.srstechnologies.com/content.aspx?id=1269 , I believe).

[Q] Help needed - difference in volume between music apps

Hi all, [I did a forum search using volume galaxy note 3; volume mod galaxy note 3 and didn't find anything related to my post below]
I have quite a bit of a head scratcher here and I'm not sure which way to go to resolve it....
I have an AT&T Galaxy Note 3 that is rooted running stock MJ5 firmware. When playing music using the speaker and built-in music app (or when setting up the sounds to use for ringtone, notifications, etc.), the volume output is decent respective to it's factory output level. However when I'm playing music via PowerAmp or JetAudio Plus - the volume output is not at the same level as it is with the built-in music app. I've made sure that AGC is off in JetAudio, de-selected the Limit option in PowerAmp, and checked and unchecked the Direct Volume Control option within the advanced audio settings in PowerAmp. In spite of all that I have checked - the volume output is not the same and it's driving me crazy. Here are all of the things that I've done so far (in no particular order) to see if I can 'fix' the problem:
1) Factory Reset my phone (from within the OS itself)
2) I've tried using the Volume Boosting Mods found in this forum post to see if that would correct anything.
3) Performed a FULL firmware restore (courtesy of this post) to see if I mucked something up along the way. (I kind of messed up my haptic feedback which was the catalyst for the restore. The volume restore was along for the ride at that point )
None of the above seems to work (EVEN with the firmware restore). Please note that with the firmware restore - I tested it out BEFORE loading my applications (except for JetAudio and PowerAmp). What makes the built-in music application different than apps such as PowerAmp, JetAudio, etc. that it accesses a different volume stream (say digital vs. analog)? (I know that last question was kind of confusing, but think of it as being analogous to Line Out vs. the 3.5mm headphone port for external sound output )
I know that the file used for modifying volume output levels is located in system/etc/snd_soc_msm (the file snd_soc_msm_Taiko_CDP is what's used to make the mods) but is there a specific line or lines contained within that file that control analog volume output for the built-in speaker?
I'm not sure how the PowerAmp or JetAudio app is configured to access volume output streams (if that makes any sense) but there seems to be something different because the volume output drops pretty badly when using either of these apps vs. the stock music player.
Has anyone else noticed this oddity (and found a way to fix it) or am I the odd man out here ?
Any help would be appreciated.
Silly question: Did you try disabling Adapt Sound?
ShadowLea said:
Silly question: Did you try disabling Adapt Sound?
Click to expand...
Click to collapse
I don't recall having Adapt Sound enabled (I did see it but don't remember having any checkboxes ticked....). I'll reply back once I downgrade my phone back to JB (I was forced to take an OTA update to kitkat and I need root access).
rob.allen78 said:
I don't recall having Adapt Sound enabled (I did see it but don't remember having any checkboxes ticked....). I'll reply back once I downgrade my phone back to JB (I was forced to take an OTA update to kitkat and I need root access).
Click to expand...
Click to collapse
So after going through a full factory reset (via ODIN), I can confirm that I'm not using Adapt Sound and have also ensured that I am not using any equalizers to enhance the sound in either application.
You cant compare PA or JA to the stock audio because those 2 apps using different drivers than a stock 1
rob.allen78 said:
I don't recall having Adapt Sound enabled (I did see it but don't remember having any checkboxes ticked....). I'll reply back once I downgrade my phone back to JB (I was forced to take an OTA update to kitkat and I need root access).
Click to expand...
Click to collapse
meawww said:
You cant compare PA or JA to the stock audio because those 2 apps using different drivers than a stock 1
Click to expand...
Click to collapse
Thanks for the info (The driver usage may be what the difference is respective to audio output.)
I wasn't really trying to compare the apps per se as more of a process of finding out if I have a unique hardware issue in which I would need to send my phone back to AT&T/Samsung for a warranty exchange.

[HOW TO] Install GNU/Linux on Samsung Galaxy Note 10.1 2014 (Updated 03/17)

#NOTE: For quick taste go to post#4. That mini-guide -for the time being- only works on Samsung's Kitkat. For Best Performance running Samsung's KitKat is recommended
Also (just so that to be clear), no matter which version of this guide that you are going to follow, you'd need at least 5GB of free Internal Storage.
INTRO
Since the advent of the Microsoft Surface Pro line we had a great "great-computer/mediocre-tablet" combo on one hand, and through the already running iPad line we had a "great-tablet/bad-computer" on the other hand.
One of the primary reasons to buy into the Note tablet line is because I always thought that it conveniently sandwiches itself between the above categories hopefully avoiding the pitfalls of both. Sadly the reality was a bit further than that and our tablet seems to have taken equally the bad and the good of the above lines. I set to ameliorate part of those faults, since I mostly lack coding expertise or indeed deep knowledge of the Linux kernel I created a ... patchy solution.
Sooo the following is a ... rather monumental guide/tutorial to set up Gui - Linux with acceptable performance on top of android in our devices. Since I'm running it "on top" it relies to the chroot method (it's been detailed in quite many posts). For simplicity's (and ... repeatability's) sake I'm using the "LinuxDeploy" app which can be found here (buy a beer to the creator, don't forget that he's practically giving away his software).
Ook, let me say right out of the bat that I could have had released a ready-made Linux image so that everybody could benefit instantly, or alternatively write a script to automate the process that I'm going to detail next.
Instead I decided against it, firstly because (as you will soon find out) this guide is a work in progress, so through exposing each individual step it can/would actually become better (hopefully through the help of more talented/knowledgeable individuals than I). Secondly many of the steps would most certainly break down, down the road (continuously changing software tend to do that to tutorials), yet since all/most steps would be exposed a simple tweak to them would save it...
Important Note: This particular Guide is tested to work on both KitKat and Lollipop (Samsung) Roms for P600. Even a slightly different setup may cause it to misbehave. So that's one more reason why I chose to expose the relevant steps (what/how they do). Hopefully slight tweaks to some of the steps would make Linux perfectly functional on all variants of Note tablet and their many differing roms.
PREPARATIONS
Let me move to the particulars then:
You'd definitely need root and a "Virtual Terminal" enabled kernel (I can't stress this enough), xposed framework/modules is optional (only needed for one work-around). I'm sure a mere Google search can tell you how to achieve the 1st and the 3rd requirement but the CONFIG_VT enabled kernel is a tougher nut to crack. Therefore I'm willing to make a list with VT_Enabled kernels for out tablet, for the time being I'll only be offering kernel based on Samsung Roms (many thanks to @xluco). Non-P600 guys should find an equivalent kernel on their own (or compile one for their own usage).
KitKat: http://forum.xda-developers.com/attachment.php?attachmentid=3686507 , reportedly Disabl0w's version works better
Lollipop: http://forum.xda-developers.com/attachment.php?attachmentid=3686508
Marshmallow: I'm willing to post a VT Enabled kernel here when (and if) our device reach nightly status on CM13.
BEWARE those kernels are for P600 (wifi version of Note 10.1 2014). I take no responsibility if you've bricked your device by flashing it to the wrong device/setup.
Additionally those apps would be needed:
a) Meefik's Busybox v1.24.1 (Download the apk and install it, once installed, do as follows: open the app -> tap "install" in the lower right corner -> OK)
b) LinuxDeploy v1.5.6 (Download the apk and install it, once installed, open the app -> press the "menu" button -> tap "settings" -> tap "update env" -> OK )
c) Linux Deploy's companion app (LinuxCanvas I named it)
d) Privilege Terminal (Terminal Emulator is more feature packed but for the purposes of this guide Privilege Terminal is preferable as you can paste content coming from HTML pages, directly to it)
e) Lastly, certain Configuration Files are needed (download and extract the contents to the root of your internal storage)
THE GUIDE
The guide is really made out of 11 simple steps. You can "blindly" follow them and you'd get a fully working image. Preferably, though, you'd also read the explanations of each step. I've included them because (as mentioned above) this guide is a work in progress. So making you privy to what each step does would hopefully lead to a better guide. Probably one with less steps and even more functionality. The explanation part would also help you debug a step if (for some reason) it didn't work correctly to your device.
So on we go:
1) Copy xorg.conf:
a) Open Privilege Terminal
b) Run:
Code:
su;
cp /data/media/0/Linux/res/xorg.conf /data/data/ru.meefik.linuxdeploy/files/share;
echo"";
Explanation:
The xorg.conf file is basically where input-output devices are mapped. I've modified it to support as many as 8 input devices as well as to support the S-Pen (w right click function!). If you want to add more devices, or for some reason your S-pen does not work and/or you prefer the S-pen button to work as middle click you can modify by navigating to Linux/res/xorg.conf (you can open it with any text editor). To find to which events your devices are mapped you have to run cat /proc/bus/input/devices in Terminal Emulator. From that you could see to which event you can map your S-Pen and/or the rest of your external devices. As it stands I have S-pen as event8 (the default in most roms) and my keyboard and mouse as 10 and 11 respectively (that's how they get mapped in my devices, but they may get mapped differently to yours).
Note: Apart from S-pen everything else doesn't *have to* be mapped precisely (even if your mouse is called "keyboard" it would still work"). Also as a general heads up please connect your devices after device boot as if you have them connected already (say through OTG connection) as the device boots, the handler numbering would be messed up (for example the mouse could be event5 and s-pen event10)
2) Create a Linux image
a) Open Linux Deploy
b) Navigate to properties (Arrow showing "down") and choose the following Configuration:
Use the Default option to all except:
To Distribution Suite: Wheezy
To Installation Path: change the "/storage/emulated" part to "/data/media" (everything else stays as is)
To Select components: Tick X server, untick VNC server
To Graphics subsystem: choose Framebufer
To GUI settings: choose DPI = 230 (or anything higher if it suits you) and untick Force Refresh
To Custom Mounts: Tick it
To Mount Points: Delete the extant mount points (select them -> press "menu" -> delete) and add the following:
/data/media/0
/mnt/media_rw/extSdCard
/mnt/media_rw/UsbDriveA
/mnt/media_rw/UsbDriveB
If you want to add support for more External devices you can add up to 4 more ( /mnt/media_rw/UsbDriveC - /mnt/media_rw/UsbDriveF )
c) Return to Properties' main menu and Tap Install (first selection)
d) Wait (quite a bit) until it reads "<<< install". It should read "processing triggers" on the line just before it, if not, reboot and follow step (c) again (re-install)​Explanation:
I was only able to make Debian and Ubuntu variants work with our device. In principle everything should (and can) work as well, but since I'm mostly accustomed to Debian's eco-system I never bothered to investigate. Similarly (from windows environments) only LXDE and XFCE reliably work (KDE and Gnome technically "work" with Debian too but they're ultra slow). For this instance I chose Debian Wheezy + LXDE due to GUI performance issues mostly, every other disto/window manager causes considerable lag in window placement. I used to use Debbian Jessie + XFCE, love XFCE's features (sessions, Window snap), but the ultra-slow window placement mostly killed the GUI experience that I was after. So I reverted to the less featured but lighter on resources LXDE.
Note: Our tablet's internal SDcard is/would be mounted to /mnt/0 when inside the chroot Linux environment ( similarly External SDcard -> /mnt/extSdCard , 1st external Storage -> /mnt/UsbDriveA , etc ). If you're on another device (not P600) running the command "mount" from Terminal is going to give you where in which paths your storage mounts to, in which case you'd have to change the mount points in LinuxDeploy accordingly.
3) After the linux image is created (Linux deploy says "<<< install") go to Linux's Shell:
a) Go back to Privilege Terminal
b) Run:
Code:
/data/data/ru.meefik.linuxdeploy/files/bin/linuxdeploy shell;
echo"";
Explanation:
It starts the Shell of the freshly installed image
3.5) This step is only relevant to those running Stock Samsung 5.1.1 rom. DO-NOT-RUN it if you're on any other version. Giving root permissions to the default user ("android"):
Run:
Code:
sed -i '/android/c\android:x:0:5000:x:/mnt/0/Linux/Home:/bin/bash' /etc/passwd;
echo"";
Explanation:
Due to complication with SELinux permission (from Android 5 and up most possibly), as a workaround I had to give root permissions to user "Android". See Issue "8" in Post #3 for more information.
4) Change Home folder's path:
Run the following commands:
Code:
usermod android -d /mnt/0/Linux/Home;
rm -rf /mnt/0/Linux/Home;
mkdir /mnt/0/Linux/Home;
cp -a /home/android/. /mnt/0/Linux/Home;
echo"";
Explanation:
Technically this step is optional but I would strongly advice against ignoring it as it allows an 1:1 communication between Android and Linux's user files. By choosing a folder that is visible by android file managers (/Linux/Home) it allows for the user to instantly manipulate the data he/she just created within Linux. For example a document file that is saved on (Linux) Desktop is easily visible by navigating to Linux/Home/Desktop or better yet it's automatically detected by the relevant app (for example a music app would "see" your music Folders, a video app your "Linux videos", etc). Additionally it uses the /sdcard partition which is close to 28GB in size, instead of the 4GB micro-partition that LinuxDeploy created (which is better used by the software that you're going to install there).
5) Apply basic HiDPI fixes:
Run:
Code:
cp /mnt/0/Linux/res/.gtkrc-2.0 /mnt/0/Linux/Home/;
echo"";
Explanation:
It solves basic issues that arise from the HiDPI environment of our devices. Things like CheckBoxes, ScrollBars, even Double Click behavior. The changes are only detectable on GTK2 software. Since all the software I've been using is based on GTK2, it is enough for me. However if you're using a GTK3 based application please by all means recommend of a way to make similar changes to GTK3 applications (I think equivalent -system wide- changes happen when one modifies the /etc/gtk-3.0/settings.ini file). Lastly if the dimensions/changes are not to your taste you can always try different ones by changing their numeric values on Linux/res/.gtkrc-2.0 file (editable by any text editor, beware it's a hidden file) and then rerun this step. What numeric value is controlling what, is rather straightforward due to the naming that it follows. So happy editing!
6) Enable GUI Repaint:
Run:
Code:
chmod +x /mnt/0/Linux/bin/logout;
echo"";
Explanation:
It fully enables the menu button within the LinuxCanvas app (it redraws the environment). I could bundle the script with my "LinuxCanvas" apps, but I wanted to make it modifiable (for example right now it kills the LXsession), but if you were to use a different Window manager you'd probably need to use a different command) and since my app creation powers are very (very!) basic, I simply exposed an internal part of my app. It can be found in "Linux/bin/logout". You can edit it with any text editor (again you'd have to rerun this step after editing is done).
7) Resize Windows Borders:
Run:
Code:
chmod +x /mnt/0/Linux/bin/resizeBorder; chmod +x /mnt/0/Linux/bin/revertBorder; /mnt/0/Linux/bin/resizeBorder;
echo"";
Explanation:
Another Fix needed due to the high DPI of our devices. It basically makes the borders of the windows that much thicker. Since it obviously makes the look of the environment less easy to the eyes I would welcome any work-around. Also you can run
Code:
/mnt/0/Linux/bin/revertBorder
(from within linuxdeploy's shell) to return the Windows borders to their initial size if you're so much bothered about the ... foul look (again I'd advice against it as it'd kill some of the ease of use of window placement/resize). If you want differently sized borders you can always edit the script (found in Linux/bin/resizeBorder) with the text editor of your choice. My current value is 10 pixels you can change it to whatever. Also you don't have to change it for every theme, just the one you're using. Again, I'm open to recommendations (for example what value do you think is better for usability?)
8) Fix Mouse Cursor size:
Run:
Code:
sed -i '/CursorThemeSize/c\iGtk/CursorThemeSize=58' /etc/xdg/lxsession/LXDE/desktop.conf;
echo"";
Explanation:
It makes the Cursor bigger. It doesn't always work. I have to investigate, but I can't be bothered since it rarely (ever) caused me any issues. Still I'd welcome it if someone is willing to investigate and see why it works only some of the times (it probably has to do with boot sequence/times).
9) Install basic Components:
Run the following:
Code:
apt-get update;
sudo -u android sudo apt-get install -y samba gvfs-bin gvfs-backends zip iceweasel xfce4-mixer dmz-cursor-theme gstreamer0.10-alsa;
echo"";
Explanation:
Though the above shell command we add some basic functionality to our Linux installation, like a Samba server (network places for the Windows guys), a browser (Iceweasel is called in Debian) and a virtual keyboard (very important for those using only the S-pen).
10) Exit:
Close Privilege Terminal (press "CLOSE" on the upper right of the app and then "OK")​Explanation:
We're better off to shut down this particular shell instance as it may mess up with the booting of our Linux image later
11) Start Linux:
a) Open "LinuxCanvas"
b) Press Volume Up, wait a bit and voila! (if it doesn't work the first time, press the "menu" button to repaint)​Explanation:
The App is included below this post. This is a veeery basic app (my app-creating prowess is close to zero) which acts as a companion to LinuxDeploy. LinuxDeploy was/is mostly created to fascilitate the XServer/VNC crowd, but the "Framebuffer" crowd has been left a bit in the cold. With as a result the "Framebuffer" functionality of LinuxDeploy to be quite basic (it only creates a black frame and that's it). So I added a bit more than that (it's the super-duper edition ). Orientation is locked, back, Escape buttons blocked (they cause issues). Also:
Volume up -> starts the chroot environment
Volume down -> kills it ("un-chroot")
Menu button -> "redraws" the graphical environment
And that's it. The caveat is of course (as a companion app to LinuxDeploy) that it is heavily dependent to LinuxDeploy, so any change that the developers would choose to make would -predictably- break functionality, so please PM me if/when that will happen. Also I'm a very un-creative person when it comes to App-creation so I would be veeery happy if another user was to take this task from me (someone who -hopefully- would make a much better featured and beautiful companion app), so updating this guide would be the only task that would remain to me.
As you may be able to see, by (as of) now you're good to go and you can fully work on your brand new Desktop environment. However I would like to add some less essential tips/fixes on my second post as well as a list with the remaining issues and workarounds to them (in my third post).
In my first post I described how you can get a relatively well performing Desktop envrironment working on our Samsung Note tablets. This post acts as a companion. Most of the tips here are either completely optional or easy to figure out. Still they may seem useful to many users so I include them here anyhow. As always any recommendations to improve on them or any additional tips would be well considered.
1) DPI Tips and seting up Volume Control :
a) Right click (S-pen button press) on Start menu -> Panel Settings -> Height: 70 and Icon: 70 -> Panel Applets (tab) -> Application Launch Bar (the first one) -> Edit -> Florence (extend Universal Access) -> Add -> Close -> Application Launch Bar (you have to scroll down for this one) -> Edit -> Mixer (extend Sound & Video) -> Add -> Close -> Close
b) LXDE Button -> Preferences -> OpenBox Configuration Manager -> Appearance -> change all to 13-15 (except Active/Inactive on-screen Display: 11-12 ) -> Close
c) File Manager (Black Icon) -> Edit -> Preferences -> Display (Tab) -> Size of Big Icons (96), Size of Small Icons (48), Size of Thumbnails (256), Size of Side Pane Icons (48) -> Close
d) Click the gear looking icon (in the lower-right part of the screen) -> Select Controls... -> Tick Speaker Digital -> Close -> Quit​Explanation:
Those are easy-to-figure but I think essential changes that need to be done so that to make the LXDE enironment more functional on our HiDpi (and often keyboardless) screen. I would be glad to add more HiDPI changes accesible through LXDE's GUI (that you'd think that may be important).
2) If you want Linux's user data to be readable/writable/cacheable by/from your android apps:
Run the following from Privilege Terminal:
Code:
su;
find /data/media/0/Linux/Home -type d -exec chmod 777 {} \;
find /data/media/0/Linux/Home -type f -exec chmod 777 {} \;
echo"";
Note: This step has to be re-run if for whatever reason some of your Linux user-files are -again- not accessible from Android.​Explanation:
While the folder Linux/Home contains all your personal data from Linux it's only accessible from within Linux. That's an obvious security feature, but it may also affect the practicality of running Desktop Linux side by side with Android. By allowing permissions to all "your" files they can be literally read by everyone/everything which also includes your android Apps (for example your edited photos could be "seen" from within your android gallery) which can be extremely useful to many, as well as an easy way to send/save files from Android to Linux, too.
3) In case you want to remove android's mouse cursor (for more experienced users, as inability to follow the steps will -well softbrick your device. BEWARE! )
a) If you're using Windows (if not equivalent steps have to be followed on your mac/linux) unzip the adb folder (included to the bottom of this post) to C:\ and install the samsung drivers (if you haven't already): http://developer.samsung.com/technical-doc/view.do?v=T000000117
b) Reboot your tablet to recovery and connect it to your PC
c) mount /system (from mounts and storage menu or similar). Disable MTP too, if applicable
d) On your PC navigate to C:\adb from command line
e) run:
Code:
adb pull /system/framework/framework-res.apk
f) Navigate to C:\adb, create a copy of framework-res.apk and rename it to framework-res.bak
g) Open the framework-res.apk (the original) with WinRar (or similar) and navigate to res\drawable-sw800dp-xhdpi or res\drawable-xhdpi-v4 and rename pointer_arrow.png to pointer_arrow.bak . Close Winrar
h) Back to the command line run the following
Code:
adb push framework-res.apk /system/framework
adb push framework-res.bak /system/framework
adb shell chmod 0755 /system/framework/framework-res.apk
adb reboot
After having followed the above guide succesfully you can restore the mouse cursor and then kill it again as easily as described below (those commands reboot the device, so beware)
To restore the cursor (after having it killed) in Privilege Terminal run:
Code:
su;
mount -o rw,remount /system; mv /system/framework/framework-res.apk /system/framework/framework-res ; mv /system/framework/framework-res.bak /system/framework/framework-res.apk ; chmod 0755 /system/framework/framework-res.apk; reboot;
echo"";
To kill the cursor (after having it restored) in Privilege Terminal run:
Code:
su;
mount -o rw,remount /system; mv /system/framework/framework-res.apk /system/framework/framework-res.bak ; mv /system/framework/framework-res /system/framework/framework-res.apk; chmod 0755 /system/framework/framework-res.apk; reboot;
echo"";
Explanation:
The above is to kill android's mouse cursor so that when you connect a mouse you won't have two mouse cursors on-screen. It would have been a far less dangerous endeavor if I was to include a flashable zip file doing those changes, but I much prefer to expose the way by which you can kill android's cursor, so that any user would be able to do the same on any other version of android that he or she is willing to run Linux on. Also as a bonus the user is just "one" shell command away from reverting his mouser cursor. Obviously any bricked devices resulted from this method is the user's responsibility and the user's alone (however it's a very recoverable situation)
4) Tips to make browsing easier when you'd want to use the Pen Exclusively:
a) Open the browser (Iceweasel) while in Linux
b) Type on the URL bar -> about:config-> "I'll be careful, I promise"
c) Search for: browser.search.showOneOffButtons . Change its Value from true to false (double click on it)
d) go to: ("hamburger" button ->)preferences -> privacy (tab) -> Iceweasel will: -> Use Custom settings for history -> Untick Remember search and form history
e) Right click on the search bar and untick "show suggestions"
f) Restart Iceweasel​Explanation:
It kills Firefox/Iceweasel's fancy search so typing on the search bar when using pen/virtual keyboard is twice as fast. When I found out about that it completely transformed my usage patters, now I often "quick boot" to Linux if I want to browse to a web-site that android's mobile browser refuse to have rendered. Oh BTW, if you followed the "DPI Tips" (tip No1) the virtual keyboard (florence) can be found to the left of the "start button" (for quick reference).
5) In case you want a multilanguage keyboard:
a) Enter LinuxDeploy's shell by running the following on Privilege Terminal:
Code:
su;
/data/data/ru.meefik.linuxdeploy/files/bin/linuxdeploy shell;
echo"";
b) Run the following command. Where xx your choice of language: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes (only 639-1 codes are applicable)
Code:
echo 'setxkbmap -option grp:ctrl_shift_toggle "us,[B]xx[/B]"' >> /etc/xdg/lxsession/LXDE/autostart
c) when back in Linux/LXDE do the following:
Right click on Start menu -> Add/Remove Panel Items -> Add -> Keyboard Layout Switcher -> Add -> Close​Explanation:
It allows to change keyboard's layouts in both your virtual keyboard (by tapping the flag icon) and physical keyboard (by pressing ctrl+shift). I have not tried any other key combinations other than ctrl+shift so I don't know how well they'll work but you're welcome to try/modify (just replace the ctrl_shift part of the command with any other combination, as you're following the steps).
6) Kernel level changes (Please read the expanation, those changes may well cause instability! BEWARE!):
To achieve those you'd need the Donate version of TricksterMod (much recommended app to own)
Ultra Aggressive OOM Values:
a) You can access them by navigating to General (tab) -> MinFree Control while in Tricker Mod
b) When there please save the default values ( tap on "untitled", then "save" and name it default -> ok )
c) Then proceed to change the values as follows:
Foreground = 384
Visible = 412
Secondary Server = 480
Hidden App = 512
Content Provider= 640
Empty App = 768
d) Again save them as "Aggressive" ( tap on "untitled", then "save" and name it aggressive -> ok )
e) Tap on the tick (that has just showed up) to validate the changes​ Undervolting
a) If your kernel does not support it you won't find it. If it does, you'd find it by choosing the "Specific" tab (MTU Voltages).
b) Similarly as above please save the default values ( tap on "untitled", then "save" and name it default -> ok )
c) Proceed to change the values. I won't include any here as every SoC is different, but typically the greatest clock the greatest undervolt is achievable. As an example I started by lowering my volts by around 100 mvolts in my highest clocks, and progressively less in my lower clocks (for example 1900Mhz was lower by 125 mvolts, 1800Mhz by 100mvolts, etc). You (the user) are the the only one who can find the best volts for your device (low yet stable). If your device starts to get unstable (restarts without notice) you'd have to choose higher volts (you went too low), etc.
d) Try different volt levels (Tap on the tick on each of your attemps)
e) When you found stable enough (hopefully low enough) voltages, save them ( tap on "untitled", then "save" and name it low -> ok )​ As an add-on you can "tell" TrickerMod to boot with the settings you just chose (menu button -> tick on "Kernel Settings"). Else you'd have to manually choose "your profiles" with every reboot.​Explanation:
I struggled very much before deciding to add the above section. I know it may cause instability to many users (the undervolt) and/or significantly lower the capacity of the device to keep apps on system's RAM (due to the high OOM values) but eventually I decided against not including it. The reason is that Linux/Desktop usage can be characteristically RAM and battery hungry. That makes the above tip(s) less of an often uneeded option and more of a necessity, especially to those willing to make heavy use of the Desktop environment. Basically what running a whole OS via chroot means is that you'd need most of the resources of the device. That can only be done by using uncharacteristically high "killing" thresholds.
The OOM values -above- basically mean that the device would kill significantly more background processes than it is expected. In fact I've experimented with many values and the above are the only ones that I've found to (still) be acceptably "low" yet allowing seamless use of the chroot/Linux environment. I could go lower but I start to see hits in performance. Also keep in mind that those values are also dependant on the rom one uses. There are other Roms that "react" better on low ram envrironments than mine. So -obviously- those values are not panacea, but I would be surprised if significantly lower values were not to harm the "Linux experience" no matter the rom.
So -yeah- background processes would be killed left and right. The upside is more RAM for Linux use, less battery leaking from background processes and surprisingly better responsiveness in Android too. In fact that's the other reason why I've kept those values, I've never seen my tablet being as responsive than after adopting those values.Still depending on your usage patterns it may start killing some important background process of yours, in which case I'd advice lowering those values (but not way too much as it would impact Linux performance).
For undervolting (if you can do it) the story is very similar. It may well cause a more unstable system, but it greatly helps with performance and battery life. On Linux there are processes that are characteristically harder to the Processor than most of anything that can be found to a "consumption OS" like Android. This means that the high clocks of our device are used much more frequently, leading to a very much lower battery life, but worse of all overheating which leads to throttling (low performance) and even possibly lowers the SoC's lifespan. Undervolting sets to aleviate those issue. After undervolting my processor I'm getting much better *sustained* performance and while on Linux quite better battery life too, about 30-40 minutes more! I like to say that undervolting is the "overclocking of mobiles", as it achieves the same end-result by aleviating or -even- eliminating throttling, one of the most important causes of low performance on mobiles.
7) Kill multi-window before starting Linux:
Well that's very straight forward, just toggle multiwindow off on quick settings.​
Explanation: Ram (as explained above) is a precious commodity for "serious" Desktop work, so about ~100 MB of RAM is being freed in that way. But most importantly it disallows accidental activation of the multi-window panel which is a quite frustrating experience when it happens while "Desktoping".
This concludes my second post. The following (and final) one is all about the things that still have to be done (where I'd need you -guys- more) and also some work-arounds that I found to those.
With two posts above us, this guide is mostly concluded. Still it may probably be worth the while to read a bit more as in here I include a few workarounds. Which while they're not true solutions in any shape or form, they may make the experience juuust seamless enough...
BUGS/ISSUES
1) No Hardware Acceleration (Biggest)
Explanation:
This is pretty much the elephant in the room. Without a solution to this everything written here is/would be a waste for many guys. Especially those willing to use rendering software, or generally care about media consumption/creation. Unfortunately this is also (by far) the toughest nut to crack. It most probably requires knowledge far greater than my own (even though I must admit that I never seriously considered "solving" this issue). In fact it is here that I could use as much help as possible. If we solve this, suddenly our tablet is viable as a laptop replacement for most uses ... In sort: Solution pending, no workaround in sight, zip, nothing ... it's the Chuck Norris of our problems
2) No ability to redraw (Biggie)
Explanation:
Another big issue. Basically if you lose focus (say press home by mistake) you cannot regain it. Every process continues on the background, of course, your picture is lost forever though, and it's mostly non-recoverable. In the workaround section I have posted the very hacky solution that I'm using (which is no way, shape or form a true solution). This issue's importance is somewhat tempered -though- by the fact that our tablet already operates in a low-Ram environment so putting the chroot/Linux environment to the background for a bit would probably cause a lot of its processes to be eventually killed by Android's ram manager as it would try to regain Ram for the foreground app. Also it's probably easier to solve but -again- it requires knowledge beyond my own. The issue has to do with Android and chroot/Linux "fighting" for the framebuffer's exclusivity. Once Android gains it, it never gives it back (selfish dastard ).
3) Devices cannot be detected "on-the-fly"
Explanation:
A big issue still, but a lesser one than the above two. Again it has to do with the GNU/Linux lacking some kind of daemon constantly "sweeping the place" so that to detect changes. I have not looked deeply in this issue as the workaround has been enough for me. Maybe not that hard of an issue to be solved. Again I'd welcome any recommendation(s).
4) No touch support:
Explanation:
This is a big issue at first glance, I happen to think that it is one of the smallest ones, especially if you think about it: GNU/Linux GUI is/was created for a highly accurate pointing device and the finger(s) is certainly not it. Similarly right click is very hard to be performed by hand (probably via a gesture) with much accuracy. Both of those issues are solved by the pointing device we already own, the s-pen. I find the pen to be faster to a HiDPI Linux environment simply because you make less mistakes with it. Also it supports hovering, so it simulates a mouse pointer on-the-go, much better than a hand. Still touch support would help with typing on the virtual keyboard (it would have been faster due to multi-touch) and scrolling (again multi-touching). It's due to those issues that I include the lack of touch support as an issue. Again I'd welcome it if anyone was to come with (any) ideas regarding (adding) touch support. BTW simply mapping the relevant event on xorg.cong doesn't work, don't know why.
5) Pressing Middle mouse Button returns to Home (thus kills the picture)
Explanation:
It's connected to problem No2. This is more of an annoyance (though) than a true issue as pressing the middle button is not of much use on GNU/Linux's GUI environments. Still I'm using a workaround (posted below) that completely eliminates this issue (sadly it needs xposed).
6) No native way to control brightness (there's probably a solution, never bothered to investigate)
Explanation:
Again mostly an annoyance, as there are alternative ways to control those. A work-around is posted below
7) HiDPI is not well-supported by a lot of Linux's Software.
Explanation:
Depending on your kind of use you may find yourself facing with a software that does not scale well to the ultra-high resolution of our tablets. That would mean veeery small GUI elements and an almost inability to use it. Thankfully most have workarounds (to some it is in-built, to others it requires the installation of some HiDPI theme, to others yet editing config files would do the trick). I regard it less of a problem that it initially seems because by now many/most small laptops are offering a HiDPI screen with as a result forcing most Linux Software maintainers to get by the times and either fix the issue with their particular software, or at least offer a work-around. Obviously I'm not going to post any of those here as the list would be non-exhaustive. If someone wants to create a post (and maintain it) with HiDPI workarounds for many/most of the popular software I'd be glad to link it here (as a work-around)
8) SUDO cannot be be used by regular users on Samsung's Lollipop
Explanation:
Due to changes in SeLinux policy implemented from Android 5 and on permission is denied when a regular use is trying to use the SUDO command
WORKAROUNDS:
To Issue 2) Pressing the menu button. It re-draws the LXSession. The caveat is that you lose all your progress (it's a sort of a "soft-reboot").
To Issue 3) Input devices are detected with a simple redraw (pressing the menu button), but for external storage you have to wait a bit (around 10 seconds after you've connected it) and *then* redraw
To Issue 5) The solution to that is hacky (as it needs xposed) but it works: You'd need Xposed Additions Pro to disable home while on LinuxCanvas App, plus a gesture to get back home (you do that using the gesture navigation plugin)
To Issue 6) You can control brightness through the notification center as you would in any other app.
To Issue 8) Give root permissions to chroot's main user ("android"). Unfortunately that's an obvious security concern and I'm feeling quite uneasy to have to do that. I'd feel much better if this permission issue would be resolved.
FEATURES THAT I HAVEN'T CHECKED:
1) External devices apart from External Storage, Mice and Keyboards.
2) Bluetooth File transfer
3) Cameras
4) GPS
5) IrDA
Explanation:
The above are all tablet functionality that I have not checked.
If I was to venture a guess I would say that they won't work "out of the box", but everyone is free to check. I'm sure there's some workaround to let them work (at least partly), but I had no need of them so I have not investigated further.
INSTEAD OF CONCLUSION:
With the guide concluded I would like to write (instead of a conclusion) the reason that I chose to "run" a desktop environment as above (chroot with the GUI rendered on Android's framebuffer). It's obviously neither the easiest to setup (running the GUI on top of an android-bornt Xserver is far easier to set-up, 3 steps, literally) nor the most efficient (a dual boot setup would be the ideal as far as efficient use of the tablet's resources go).
Well let me "combat" the above arguments one by one. Firstly choosing to use the android's Framebuffer as the renderer: Obviously it's hard to setup at it needs a "Virtual Terminal" enabled kernel (not easy to be found for those who are not into kernel compiling), but, maybe most importantly, it disallows of an easy way to change the resolution (it uses the screen's native resolution) leading to HiDPI issues.
Well, the reason to render on the Framebuffer instead of an Xserver app (like Xserver XSDL) is ... frankly responsiveness. Rendering directly to the framebuffer bypasses all the "lag" caused by the android implementation running beneath. The greatest example is typing responsiveness. Typing on our Note (using a phtsical keyboard), as you may have found out, is a tedious process. There's a very visible latency which causes constant errors when fast typing. This is completely solved by directly rendering on the Framebuffer (hence directly taking input events from kernel events, bypassing Android's stack). For a guy who types a lot, the difference is day and night, it finally turned my Android Tablet into a work horse. Of course the great increase in responsiveness carries over to the rest of the GUI as well.
Let me, then, tackle the second source of scepticism to the solution that I recommended in here. To many a true dual-boot is the holy grail of their idea of how/what an android tablet doubling as a productivity machine is. To me it's not, I've bought an android tablet not because I want a Linux laptop. In fact I already have one. No, I bought it *because of* android and having to "kill" it so that to boot my "productive" environment doesn't really make any sense to me. Sure I can always boot back to Android, but actually most people are not into distinct "productivity" and/or "consuming" modes. In fact most of my usage patterns are all over the place. For example I'm writing something for my paper, but then I want to carefully study another paper, heck I may want to watch a movie in the middle of all this. Sure I can do those two on Linux, but what's the point if I have a far more capable "content consumption" OS lying just beneath? No, my ideal mobile machine is one that produces in the best way possible but one that also lets me consume information in the best way possible.
I bought a tablet *because* I want to consume information much more efficently than what my laptop/PC would had allowed me to. I want to use the "PocketBook" app to read and MxPlayer to watch a movie from my NAS collection, but then I also want to get back to my fully featured IDE. A dual boot absolutely kills the flow (having to constantly reboot). In fact Microsoft's vision in this (Project Continuum) is I think ideal. Still Project Continuum is far from being practical (for the time being) and it may never become, simply because Developers may not support it, so the next best thing is to have my "Productiviy OS" and "Consumption OS" side-by-side in fact that is very much the reason that I've included "step 4" to my guide as well as the "redraw" option. I think it gives flight to the experience (having different "scopes" of experience).
THANKS TO:
Pretty much to everyone from the Android scene that let us enjoy such high quality experience via rooting, kernel modifications, etc. People like @Chainfire, @rovo89 (and many, many others) are indispensable for their services, it goes without saying.
Similarly thanks to everyone from the Open Source community and in particular the Linux Kernel, starting from Linus Torvalds all the way down to the mere user who's recommending a fix. And of course to the guys developing the software running on the Linux kernel (without it, it would have been useless to most).
Also thanks to @xluco for providing a feature-packed (and lately very stable) kernel for me to play with.
Oh and thanks to you guys, hopefully helping to fix (on the longer or shorter run) this mess of a guide. *Any* input would be much appeciated.
OK. CYa. I'm signing off (pheewwww)
Mini-Guide
INTRO
While it kind of saddens me since I've tried (and I think succeeded) to make the guide as simple as possible all the while explaining the steps, the low interest to it lead me to decide to post also post a quick guide (instead of a full guide) that makes no use of shell commands.
There are good news and bad news due to this. The good news is that the guide has contracted further yet its end result really does give a quick taste of well running Linux on our tablet. To sweeten the deal the guide posted in this post gives a quick taste to most devices running a VT (virtual terminal) enabled kernel, no matter the brand and/or Android version.
The bad news is that due to the little interest expressed in here and my extreme lack of time most bugs and annoyances would most probably remain unsolved ... sadly. In no way or shape does that mean that I'm discontinuing support, just that I'll be lukewarm about it and I mostly expect from you / the users to find more workarounds / solutions and hopefully post them here...
Anyway on we go.
PREPARATIONS
Follow the Preparation Section from the First post of this thread. Steps (d) and (e) are not needed, so you can leave those out.
Additionally you'd need to download and place the following two files accordingly:
a) Config Files (you extract the contents to the root directory of your tablet's internal storage, don't change the directory tree)
b) Linux Image (you simply place it to the root directory of the internal storage)
THE "MINI"-GUIDE
For starters make sure that you have followed the "Preparations" Section Exactly. One mistake is enough to make this guide not to work. So without further ado:
1) Open LinuxCanvas and grant it root access (if asked)
2) Create a Linux image
a) Open LinuxDeploy
b) Tap the "Back" Arrow in the upper left corner of the app
c) Delete the extant profile ("Garbage Bin" Icon -> OK)
d) Import the downloaded Profile (3-dot icon -> Import -> OK)
e) Double-tap to the imported profile (its name is "linux")
f) Navigate to properties (Arrow showing "down") and Tap "Install" -> "OK"
g) Be patient. When it's done it will read " >>>install"​3) Start Linux:
a) Go back to "LinuxCanvas"
b) Press Volume Up, wait a bit and voila! (if it doesn't work the first time, press the "menu" button to repaint)​
...and that's it (really). If you want to know what you get by following this guide (instead of the full one), the answer is "basically everything from the first post plus the first step from the second post". Which means that if you want the full deal you *still* have to follow Posts #2 and #3 (workarounds), but of course it's completely up to you.
Again, report any issues, annoyances or even workarounds that you may have found. I'm counting on them to make the guide better.
Cheers!
Great Work Man ....
@Stevethegreat Great Work Man , it's just amazing ... but unfortunately , in Iran , I can't download from the Linux Deploy's Server ... is there anyway I could get the Image to do the Process ( I'm not that lazy ) Or even the ready image to try booting on my SM-P601 ( mybe a better Idea ) ? ... if there's some way , I'll work on the performance a bit ... also , maybe we can get the boot script used in my ARM-UEFI to get it sooner ... Also I have an idea that your ISO size can tell me if it's possible ( Dual Boot , I mean , like what MultiROM does , but much nicer and faster without the Android booted like a single ROM ) ... Great thanks for your effort ...
With Best Wishes
Hitman1376​
I have to wonder if this will work for other Note devices. (for instance I have the note 3)
I'll give it a shot, and the changes I make to obviously match my device, I'll post here.
Thanks for this mate, well done
Sweet. I will try when I have time
Sent from my SM-P600 using Tapatalk
kevp75 said:
I have to wonder if this will work for other Note devices. (for instance I have the note 3)
I'll give it a shot, and the changes I make to obviously match my device, I'll post here.
Thanks for this mate, well done
Click to expand...
Click to collapse
Mate , It needs a Kernel with VT Support , don't forget to have one .... also with " Frame Buff " enabled , it's better .... Good Luck
With Best Wishes
Hitman1376​
kevp75 said:
I have to wonder if this will work for other Note devices. (for instance I have the note 3)
I'll give it a shot, and the changes I make to obviously match my device, I'll post here.
Thanks for this mate, well done
Click to expand...
Click to collapse
It will, most probably without much/any tweaks to the individual steps as Note 3 is very similar hardware wise.
But I have to warn you. Firstly, you'd need a CONFIG_VT enabled kernel. That's fairly easy to get from Note3's kernel guys (it's just an extra option to enable). If they are not willing to provide you with one such kernel, you'd have to wait until I'd find the time to write a guide on how to create one from the sources.
Secondly, you'd have to be much more agressive with your DPI settings as a Note 3 screen is way smaller than our tablet's. Of course you can always opt to work on an external screen, in which case you'd have to be much more restrained with the settings that control the dpi/size of the elements (by contrast).
hitman1376 said:
@Stevethegreat Great Work Man , it's just amazing ... but unfortunately , in Iran , I can't download from the Linux Deploy's Server ... is there anyway I could get the Image to do the Process ( I'm not that lazy ) Or even the ready image to try booting on my SM-P601 ( mybe a better Idea ) ? ... if there's some way , I'll work on the performance a bit ... also , maybe we can get the boot script used in my ARM-UEFI to get it sooner ... Also I have an idea that your ISO size can tell me if it's possible ( Dual Boot , I mean , like what MultiROM does , but much nicer and faster without the Android booted like a single ROM ) ... Great thanks for your effort ...
With Best Wishes
Hitman1376​
Click to expand...
Click to collapse
Hey, LinuxDeploy offers a way to use different servers than the Russian ones. Also you can fiddle with the DNS server options (maybe there's a DNS server in your country/provider that resolves the Russian address).
edit: Oh BTW (to the second part of your past). While I'd welcome anyone at all working on bringing truly native linux (in the form of dual-booting) I'm not too sure of it's usefulness. Still you're free to use parts of my guide towards that goal (if that's what you wish). You can read the final part of my guide ("Instead of Conclusion") to see why I'm not that interested to a true dual-boot.
YYYESSSS!!!!
http://screencloud.net/v/gz6h
I'll let you know how I make out with this! Man, it'd be great to get ubu-touch running on it...
kevp75 said:
YYYESSSS!!!!
http://screencloud.net/v/gz6h
I'll let you know how I make out with this! Man, it'd be great to get ubu-touch running on it...
Click to expand...
Click to collapse
Yeah , that's enough. All it takes now is to see whether my step will work as is. If not I'm sure small tweaks specific to your device will make them work (like changing some of the numeric values in xorg.conf and/or the other files). Keep us posted
Stevethegreat said:
Hey, LinuxDeploy offers a way to use different servers than the Russian ones. Also you can fiddle with the DNS server options (maybe there's a DNS server in your country/provider that resolves the Russian address).
edit: Oh BTW (to the second part of your past). While I'd welcome anyone at all working on bringing truly native linux (in the form of dual-booting) I'm not too sure of it's usefulness. Still you're free to use parts of my guide towards that goal (if that's what you wish). You can read the final part of my guide ("Instead of Conclusion") to see why I'm not that interested to a true dual-boot.
Click to expand...
Click to collapse
Sure ... thank in deed ... I'll take a look but I don't think it's possible cuz the servers were unreachable ( I tried almost all of them )
... God damn those useless guys who do the web infiltration ... why a Linux containing server should get filtrated ? ...
brilliant guide mate theres a new version of my VT enabled kernel here btw http://d-h.st/fr1s
xluco said:
brilliant guide mate theres a new version of my VT enabled kernel here btw http://d-h.st/fr1s
Click to expand...
Click to collapse
Yeah thanks. I made sure to update the OP :good:
Stevethegreat said:
Yeah thanks. I made sure to update the OP :good:
Click to expand...
Click to collapse
Here's the stock 5.1.1 kernel for the P600 with VT enabled, platform.xml fix for external stoarge and chainfire's modified sepolicy for rooting without disabling SELinux.
http://d-h.st/0ImD
Edit: it takes FOREVER to boot, so be patient and ignore the seandroid notice!
xluco said:
Here's the stock 5.1.1 kernel for the P600 with VT enabled, platform.xml fix for external stoarge and chainfire's modified sepolicy for rooting without disabling SELinux.
http://d-h.st/0ImD
Edit: it takes FOREVER to boot, so be patient and ignore the seandroid notice!
Click to expand...
Click to collapse
Thank you very much indeed! I've made some attempts to compile on my own, but it wouldn't boot properly (it would boot into Android and after a while reboot).
I'll now start working on porting my guide. Much appreciated!
So...
Followed to a T
Results: Now have a nice lightweight desktop on my phone
Nice job on the tutorial mate!
Sound problem.
Stevethegreat said:
6) No native way to control sound and/or brightness (there's probably a solution, never bothered to investigate)
Click to expand...
Click to collapse
A possible solution to your sound issue, but it is dependent upon your Linux distribution in use:
Most newer distros of Linux use Pulse Audio for sound. This will not work as you need dbus, udevd, and a few other background processes running which are not functioning properly (or at all) in LinuxDeploy. A work around for this that I have successfully used in the past with LinuxDeploy on a Motorola Flipside was to download ALSA in your Linux distro. In my case it was Debian so I followed these steps:
1. Using the aptitude package manager, I purged all PulseAudio.
2. Using the aptitude package manager, I installed all the alsa tools and libraries.
Be sure to get the Alsa mixer.
3. When I logged in, I could, as root, bring up the alsa mixer in the terminal (eventually I mapped it to a shortcut on the desktop), and once open I could adjust the sound there. Note, you have to turn on an output device in the mixer, such as the SPK_HP or BT_SPK and then set the volume. I usually would start a sound file playing, like music, and then enter into the mixer and adjust to satisfaction.
(NOTE: these are steps, not commands, because your Linux distro or version thereof may differ.)
One problem that I had there before was that the Android system, in an effort to preserve order, would turn off the output device channel I selected after there was no sound coming out of it. E.g. the song ended, then Android would set the SPK_HP back to 0 or mute. SO to avoid that, you need to adjust the permissions of the sound card with chmod and chown to prevent Android from touching it until you are done. You can use LinuxDeploy's start/stop script options to allow you to create scripts to "steal the device" and "give it back" when you start/stop. Or you can simply keep the mixer handy and set the volume/output device every time you play a sound file. I found in practice that I didn't use the sound too much, but your mileage may vary.
-AlaskaLinuxUser
kevp75 said:
So...
Followed to a T
Results: Now have a nice lightweight desktop on my phone
Nice job on the tutorial mate!
Click to expand...
Click to collapse
Glad to hear!
Still there are bugs to be solved, I pray to have them solved (with the help of others hopefully), so keep yourself tuned.
I have to ask though: Is everything working OK? What about the s-pen? Also is the DPI suitable to your phone, or did you have to play with it? (changing the numeric values in some of my files?).
Thanks for trying to out my guide.
Cheers.
is this tested on 5.1.1?

Joying Intel Head Unit Android 6 Update

Android 6 update is available below...
PLEASE NOTE: This is a one way street, no downgrading to android 5.
https://www.carjoying.com/Joying-blog/59.html
Jeep and TL123 (toyota) model are the only ones which use the low resolution ROM
Considering this was released today please be careful what risk you are taking.
I will be doing some tests and will report if I find any issue.. please send your bug reports to carjoying so they can be fixed.
Also we need an INTEL subcategory in the forum under Android Auto
--- updates---
Passwords:
3368 for settings
8086 launchers
5768 menu backlight
Root and debug on
https://forum.xda-developers.com/showpost.php?p=72057022&postcount=12
- method 2 still work for root and SU
Google voice response works without hacking.
audio_policy.conf now supports usb dacs without modification
TomTom GO works without risky bootloader mod.
Viper4Android installs correctly
-with removal of deep buffer section in /system/etc/audio_policy.conf as per https://forum.xda-developers.com/showpost.php?p=72060811&postcount=35
- https://forum.xda-developers.com/showpost.php?p=72064749&postcount=41
The pull down white text color issue is fixed with play music and other apps
New Recovery
If you need to RE-FLASH the 6.0 firmware, you MUST rename 5009_20.zip to 5009_60.zip , otherwise the firmware will throw an error! yay! I just tested it and it WORKS!
Enable wireless adb https://forum.xda-developers.com/showpost.php?p=71616884&postcount=273
Enable split screen settings in debugging mode then you can split the screens from the task manager (post #84 & #103)
updated "no-kill" https://forum.xda-developers.com/showpost.php?p=72102580&postcount=87
task killer removed and will call the google voice search from the 'SRC' button https://forum.xda-developers.com/showpost.php?p=72153510&postcount=159
ADB enable easier way post #160: in the downloaded ROM zip,
"config.txt" inside the root firmware directory , just add "service.adb.tcp.port=5555" to the last line.
Spotify notifications work
google from any screen by velvet apk post #206 https://forum.xda-developers.com/showpost.php?p=72179874&postcount=206
the CPU works a lot nicer, spending a lot of time at lower freqs when power is not needed
.when you get out of sleep the selected apps are no longer in split screen
you can't read the PMIC temperature anymore
when you set the DPI to 240 the upper bar gets huge and the apps still don't scale well
the bar gets white on Deezer, annoying at night,ugly looking (bug) picture attached
the iGO/Waze bug that makes the unit sleep after 5 minutes (instead of the normal 1 minute) from the moment the engine is off is still present. drawing .01-.05amp for that 5min.
MAY 8 2017 UPDATE
BUG Fixes , Bluetooth Issues solved and working well
========
Steering wheel key customization
https://forum.xda-developers.com/an...-units/joying-2gb-steering-wheel-key-t3543390
Tips and Tricks link:
https://forum.xda-developers.com/an...roll-joying-2gb-sofia-mtcb-mtcd-tips-t3555249
tomtom go
doctorman said:
Android 6 update is available below...
PLEASE NOTE: This is a one way street, no downgrading to android 5.
https://www.carjoying.com/Joying-blog/59.html
Considering this was released today please be careful what risk you are taking.
I will be doing some tests and will report if I find any issue.. please send your bug reports to carjoying so they can be fixed.
Also we need an INTEL subcategory in the forum under Android Auto
Click to expand...
Click to collapse
It works tomtom go?
Again no detailed change log. Incredible.
I'd keep away until a few people have tried this.....
Beta release? Don't think I'd risk this on the head unit and end up without a working unit until they actually fix it.... "Fix some bugs" seems to be the extent of most of their change logs... hehe
someone guinea pig it
Looking forward to someone having the balls to flash this.
As a side note...why is everyone so excited about Android 6 on this unit...I don't see any features that would even make me update.
CadillacMike said:
someone guinea pig it
Click to expand...
Click to collapse
Install went very quick, it wipes all applications and data.
I have not yet been able to access via wifi / ADB, so no rooting or mods as of now
> adb connect 10.0.0.26
unable to connect to 10.0.0.26:5555: Connection refused
gustden said:
Install went very quick, it wipes all applications and data.
I have not yet been able to access via wifi / ADB, so no rooting or mods as of now
> adb connect 10.0.0.26
unable to connect to 10.0.0.26:5555: Connection refused
Click to expand...
Click to collapse
That would be simply terrible if it can't be bypassed.
CadillacMike said:
someone guinea pig it
Click to expand...
Click to collapse
doitright4 said:
Since it wiped everything, did you remember to enable usb debugging? (which really means adbd)
Click to expand...
Click to collapse
KamaL said:
That would be simply terrible if it can't be bypassed.
Click to expand...
Click to collapse
USB debugging was enabled.
It looks like they missed persist.adb.tcp.port=5555 in the properties. It can be enabled by the following:
1) download a terminal program ( Terminal Emulator for Android )
2) enter the following command: setprop persist.adb.tcp.port 5555
3) reboot
I just, installed supersu and seems to be working
doitright4 said:
That's a great point, and it is really... sad? stupid? FREAKING RETARDED!!!! that they would bother wasting time to build 6.0 so long after 7.0 (and 7.1 even!!!) are already available.
7.x of course, adds in split screen mode, which would be a GREAT benefit to car radios.
There is one thing, however, that could make the 6.0 build good, especially an early or beta build... they've had less time to destroy it than they've had to destroy 5.x. So its probably a faster, more stable, and more respectful build than what we've previously seen.
Click to expand...
Click to collapse
Yeah split screen might be useful...otherwise it just runs navigation/music/videos in cars mostly...which any version of Android can do.
mirror up for 1024x600 version:
pending
extracted files here
pending
gustden said:
USB debugging was enabled.
It looks like they missed persist.adb.tcp.port=5555 in the properties. It can be enabled by the following:
1) download a terminal program ( Terminal Emulator for Android )
2) enter the following command: setprop persist.adb.tcp.port 5555
3) reboot
I just, installed supersu and seems to be working
Click to expand...
Click to collapse
Great to hear that.
Are there any noticeable changes so far?
So how's the update?
Is it faster/slower than android 5?
Did you find some bugs?
@gustden mind checking if the apps are still the same as in 5.1.1? Especially around the server app if the kill switch is still present
bogdi1988 said:
@gustden mind checking if the apps are still the same as in 5.1.1? Especially around the server app if the kill switch is still present
Click to expand...
Click to collapse
All the apps are still the same. Not seeing much difference, other than in the settings. So far, it seems fast and stable.
Sofia-1-C9-Server-V1.0.apk looks the same ( and still kills everything on standby). Hope to have time to remove the app killer and add the other mods over the weekend.
gustden said:
All the apps are still the same. Not seeing much difference, other than in the settings. So far, it seems fast and stable.
Sofia-1-C9-Server-V1.0.apk looks the same ( and still kills everything on standby). Hope to have time to remove the app killer and add the other mods over the weekend.
Click to expand...
Click to collapse
Thanks! I'd love to see an updated Server with the standby-kill removed, the source button -> google search hack and the mute-alarms feature removed so we can have the voice output for Google searches - if possible please?
gustden said:
I just, installed supersu and seems to be working
Click to expand...
Click to collapse
Way to go man !
Thank you !
---------- Post added at 05:24 PM ---------- Previous post was at 05:22 PM ----------
bogdi1988 said:
@gustden mind checking if the apps are still the same as in 5.1.1? Especially around the server app if the kill switch is still present
Click to expand...
Click to collapse
Good point ! It would be nice to be able to use the mods from 5.0.1 ... or at least some of them....
---------- Post added at 05:26 PM ---------- Previous post was at 05:24 PM ----------
gustden said:
All the apps are still the same. Not seeing much difference, other than in the settings. So far, it seems fast and stable.
Sofia-1-C9-Server-V1.0.apk looks the same ( and still kills everything on standby). Hope to have time to remove the app killer and add the other mods over the weekend.
Click to expand...
Click to collapse
Is the notifications bar still broken ? (white text and buttions on white bar)
And the most important question, any changes regarding the Bluetooth module? Does it still cover the screen during calls without the ability to minimize?
KamaL said:
And the most important question, any changes regarding the Bluetooth module? Does it still cover the screen during calls without the ability to minimize?
Click to expand...
Click to collapse
Based on what @gustden said, it looks like all the apps are the same so I would assume that issue is still present.

NO ROOT REQUIRED - Volume Booster

This will be a short and simple thread. I have a Fire HD 8 and HD 7, with the 7 being rooted. In my opinion, they lack a few notches in the volume control. I have found it incredibly difficult to find an app or Xposed module that would actually boost the volume of the Fire tablets, with or without root...until today.
On my rooted HD 7, I have Xposed installed along with the Gravity Box module, which has a volume boosting option, however it doesn't work. I've tried many apps on both devices, to no avail. However I had recalled an app I used on my phone before I rooted it, and just remembered it today.
Introducing 'Volume Booster by GOODEV'. It's simple, easy and takes up virtually no space at all (less than 1MB). I just installed it so I can't speak for battery consumption as of yet. There are only a few settings, all of which are pretty self explained. It also forces a notification to remain in the statusbar so the system doesn't shut it down. This option can also be disabled or set to appear in the statusbar only when active. You can increase the volume as much as 40% above the maximum level. The app is 100% free, but does contain ads (images below have ads cropped out).
I've found it to echo a bit on the HD 7, but works perfectly on the HD 8 once you calibrate it. Setting it to above 8% will cause a bit of static for some sounds.
**Warning**: I am NOT responsible for any damage done to your device or your hearing. Use at your OWN risk. Please be very careful using this app. It can potentially cause hearing damage when using headphones, or even permanently damage your speakers. I recommend a setting no higher than 7 or 8% above maximum, but please test it at lower levels until you're satisfied.
{
"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"
}
DragonFire1024 said:
...On my rooted HD 7, I have Xposed installed along with the Gravity Box module, which has a volume boosting option, however it doesn't work. I've tried many apps on both devices, to no avail. However I had recalled an app I used on my phone before I rooted it, and just remembered it today.
Introducing 'Volume Booster by GOODEV'. It's simple, easy and takes up virtually no space at all (less than 1MB)....
Click to expand...
Click to collapse
This is a nice option for those seeking to boost (amplify) the output volume of their device. Gravity Box, Volume Steps and similar Xposed modules simply increase the granularity of volume steps without increasing maximum output levels.
Another option is to flash a different audio package such as Dolby ATM or Viper4 which both refine and amplify output. This works wonderfully on HDX devices that arguably have the best audio capabilities of any Amazon tablet. However, such embellishments come with some risks including bootloops if not compatible with the underlying hardware/firmware. I would only suggest tinkering with such options with older bootloaders that support custom recoveries.
Which brings the discussion back to Volume Booster which works on any ROM rooted or not. Nice find, @DragonFire1024
Davey126 said:
This is a nice option for those seeking to boost (amplify) the output volume of their device. Gravity Box, Volume Steps and similar Xposed modules simply increase the granularity of volume steps without increasing maximum output levels.
Another option is to flash a different audio package such as Dolby ATM or Viper4 which both refine and amplify output. This works wonderfully on HDX devices that arguably have the best audio capabilities of any Amazon tablet. However, such embellishments come with some risks including bootloops if not compatible with the underlying hardware/firmware. I would only suggest tinkering with such options with older bootloaders that support custom recoveries.
Which brings the discussion back to Volume Booster which works on any ROM rooted or not. Nice find, @DragonFire1024
Click to expand...
Click to collapse
Thanks this had come across my recommendations and had looked at my library on the Play Store and there it was. I was quite surprised it worked on my HD 8. It's probably the simplest of the ones I've tried over the times. Sometimes when we search for things like this, we often forget that sometimes the simplest of applications work better than the ones we really want and can't use.
I would love to use Viper. It's an amazing tool that has pretty much any feature you can imagine. I used Viper4Android on my XT907 for a time, but as that device is passing it's prime, my Bluetooth would just cease to function after a few uses. It really made all the difference in sound quality. I would love to be able to use it again.
Lol Dragonfire, came to see what you had found here. Same one I've been using for months lol. It is the only one I've found that actually works too. I made a thread one time about the fire tablet 7 5th gen sound being bad. Low and "tinny" sounding. That is a great volume booster but I don't set the boost past 20%. Boost the volume great but for me, I also have to use Equalizer FX to put a bass tone in the voices when I use ear buds. My Google Play review requested to add a basic equalizer to the volume booster guy just to throw that out there so I do not use two apps, which sucks, but I doubt he will. Also, I see no ads in this app, but I do use Adguard.
CaptainPatterson said:
Lol Dragonfire, came to see what you had found here. Same one I've been using for months lol. It is the only one I've found that actually works too. I made a thread one time about the fire tablet 7 5th gen sound being bad. Low and "tinny" sounding. That is a great volume booster but I don't set the boost past 20%. Boost the volume great but for me, I also have to use Equalizer FX to put a bass tone in the voices when I use ear buds. My Google Play review requested to add a basic equalizer to the volume booster guy just to throw that out there so I do not use two apps, which sucks, but I doubt he will. Also, I see no ads in this app, but I do use Adguard.
Click to expand...
Click to collapse
Adguard is nice and that's probably why you don't see them. If you made that thread in the past several months, I seem to recall it and was looking for it prior to making this thread. I will have to agree there are more times than not when the HD 7 does sound lower than it should be. It really is a shame the Gravity Box booster doesn't work on it though. Now the only thing I use GB for is to fix the recent apps button (the square button) which has a hissy fit when you 'uninstall' Fire Launcher, even on rooted tablets.
TESTS: So Far, after watching a few shows using VLC Player, I have NOT noticed any significant difference in battery consumption which is actually a big plus. In regards to the echoing on the HD 7, Just adjust the setting to not go above 8-10% of maximum. That stops the echoing for pretty much all sounds (I noticed the most echoing when locking or unlocking the screen). I am going to take a gamble and say the speaker system is different in the devices, when comparing it to the HD 8. Whereas you get a slight echo on the HD 7 if turned up past 8-10% (depending on your setup [I think I will try yours with a bass boost Captain]), you get a second or less of static on louder sounds on the HD 8, but not with all sounds. When receiving calls with Hangouts, the sound seems perfect when a bit past 10, but when you get a message using Google Voice, there is a bit of static with that sound.
DragonFire1024 said:
Sometimes when we search for things like this, we often forget that sometimes the simplest of applications work better than the ones we really want and can't use.
Click to expand...
Click to collapse
Oh boy - ain't that the truth!
DragonFire1024 said:
I would love to use Viper. It's an amazing tool that has pretty much any feature you can imagine. I used Viper4Android on my XT907 for a time, but as that device is passing it's prime, my Bluetooth would just cease to function after a few uses. It really made all the difference in sound quality. I would love to be able to use it again.
Click to expand...
Click to collapse
You can try installing via FlashFire recognizing a bootloop or other failure will will require a reload of FireOS 5.3.1, reroot (and KingRoot battle) followed by restoring a recent backup via FlashFire. Obviously network isolation is a must while on FireOS as any OTA update will yield an unrootable device.
DragonFire1024 said:
.. It really is a shame the Gravity Box booster doesn't work on it though. Now the only thing I use GB for is to fix the recent apps button (the square button) which has a hissy fit when you 'uninstall' Fire Launcher, even on rooted tablets.
Click to expand...
Click to collapse
GravityBox is *NOT* a volume booster! It is working as designed to increase the granularity of various audio output controls which I find very beneficial. One can not fault an app/module for something it was not designed to do. As for non-audio features/tweaks there is much to like about GravityBox. It just might take you awhile to find and appreciate them. Some other modules worth exploring: AppOpsXposed (if on Nexus), InstallerOpt and Xposed Edge. The latter is like GravityBox on steroids but has a fairly steep learning curve for more advanced functionality. Enjoy!
Davey126 said:
Oh boy - ain't that the truth!
You can try installing via FlashFire recognizing a bootloop or other failure will will require a reload of FireOS 5.3.1, reroot (and KingRoot battle) followed by restoring a recent backup via FlashFire. Obviously network isolation is a must while on FireOS as any OTA update will yield an unrootable device.
GravityBox is *NOT* a volume booster! It is working as designed to increase the granularity of various audio output controls which I find very beneficial. One can not fault an app/module for something it was not designed to do. As for non-audio features/tweaks there is much to like about GravityBox. It just might take you awhile to find and appreciate them. Some other modules worth exploring: AppOpsXposed (if on Nexus), InstallerOpt and Xposed Edge. The latter is like GravityBox on steroids but has a fairly steep learning curve for more advanced functionality. Enjoy!
Click to expand...
Click to collapse
Edge is pretty nice. I use it on my XT907. I managed to install ApOpps on my fire 7. When I say install I mean actually install. I used the APK my XT907 used. I added a few permissions and it worked perfectly. I know GB isn't a volume booster, but it does has the tweaks to add volume levels/notches, but the HD 7 refuses to acknowledge it. TBH I don't know why. GB is still awesome. And I still recommend it.
I just might try to flash Viper. I'm still debating if I want to flash Nexus or not. I get nervous with doing these type of things as I'm very inexperienced at doing so. Most of my work on my devices has been scripts or other modifications that are less of a risk.
EDIT: I added the ACCESS_SUPERUSER permission to AppOpps APK which is what I think did the trick at getting it to a fully operational state. TBH though, I don't know. Again as with some of the experiments I've done, I wasn't expecting to work at all.
DragonFire1024 said:
Adguard is nice and that's probably why you don't see them. If you made that thread in the past several months, I seem to recall it and was looking for it prior to making this thread. I will have to agree there are more times than not when the HD 7 does sound lower than it should be. It really is a shame the Gravity Box booster doesn't work on it though. Now the only thing I use GB for is to fix the recent apps button (the square button) which has a hissy fit when you 'uninstall' Fire Launcher, even on rooted tablets.
TESTS: So Far, after watching a few shows using VLC Player, I have NOT noticed any significant difference in battery consumption which is actually a big plus. In regards to the echoing on the HD 7, Just adjust the setting to not go above 8-10% of maximum. That stops the echoing for pretty much all sounds (I noticed the most echoing when locking or unlocking the screen). I am going to take a gamble and say the speaker system is different in the devices, when comparing it to the HD 8. Whereas you get a slight echo on the HD 7 if turned up past 8-10% (depending on your setup [I think I will try yours with a bass boost Captain]), you get a second or less of static on louder sounds on the HD 8, but not with all sounds. When receiving calls with Hangouts, the sound seems perfect when a bit past 10, but when you get a message using Google Voice, there is a bit of static with that sound.
Click to expand...
Click to collapse
I though gravity box was for rooted devices with exposed framework?
savvytechwinner said:
I though gravity box was for rooted devices with exposed framework?
Click to expand...
Click to collapse
Correct. The HD 7 I now have is rooted and has Xposed.
DragonFire1024 said:
Correct. The HD 7 I now have is rooted and has Xposed.
Click to expand...
Click to collapse
I have an original Amazon Fire 7 from 2015 with the 5.0.x BL on it. I'm going to have to give Xposed a go on this device as I'm now running the Lineage ROM with security backports from @ggow and it is pretty awesome. I have always thought the volume on the device was a little low even at its max so this might just do the trick.
rjmxtech said:
I have an original Amazon Fire 7 from 2015 with the 5.0.x BL on it. I'm going to have to give Xposed a go on this device as I'm now running the Lineage ROM with security backports from @ggow and it is pretty awesome. I have always thought the volume on the device was a little low even at its max so this might just do the trick.
Click to expand...
Click to collapse
The volume booster option on GB doesn't seem to work, or at least the tablet refuses to acknowledge the setting. If you can get it to work, please let us know
DragonFire1024 said:
The volume booster option on GB doesn't seem to work, or at least the tablet refuses to acknowledge the setting. If you can get it to work, please let us know
Click to expand...
Click to collapse
Please stop disseminating this misinformation. GravityBox does not have a "volume booster" setting. You have mischaracterised it as such despite no internal documentation suggesting this capability. What it does feature is a setting that enables additional increments within the existing volume range. That works just fine for media playback. There are other Xposed modules that can add granularity to other system sounds such as ringer and notifications
Davey126 said:
Please stop disseminating this misinformation. GravityBox does not have a "volume booster" setting. You have mischaracterised it as such despite no internal documentation suggesting this capability. What it does feature is a setting that enables additional increments within the existing volume range. That works just fine for media playback. There are other Xposed modules that can add granularity to other system sounds such as ringer and notifications
Click to expand...
Click to collapse
My mistake. You are correct and without looking at the app, that's what I was trying to get at, without sounding stupid. Clearly I should have looked at it again and my apologies for not doing so. I wasn't trying misinform anyone. That being said, I never tried it on media playback on the HD 7, but I have in my phone and yes I do recall it works in media playback and used it for playing my music via Bluetooth at work. So again I do apologize for coming off like that.
DragonFire1024 said:
My mistake. You are correct and without looking at the app, that's what I was trying to get at, without sounding stupid. Clearly I should have looked at it again and my apologies for not doing so. I wasn't trying misinform anyone. That being said, I never tried it on media playback on the HD 7, but I have in my phone and yes I do recall it works in media playback and used it for playing my music via Bluetooth at work. So again I do apologize for coming off like that.
Click to expand...
Click to collapse
All good - thanks for following up. Enjoy the balance of your day.
[BTW - VolumeSteps+ is one module that offers similar flexibility with other system sounds (ringer, notifications, etc). As I recall there are seven (!) unique sound categories in Android, although not all devices support all output types. One downside to increasing granularity is the time it takes going from min to max volume via physical button as the system still pauses momentarily at each level when long pressing.]
Davey126 said:
All good - thanks for following up. Enjoy the balance of your day.
[BTW - VolumeSteps+ is one module that offers similar flexibility with other system sounds (ringer, notifications, etc). As I recall there are seven (!) unique sound categories in Android, although not all devices support all output types. One downside to increasing granularity is the time it takes going from min to max volume via physical button as the system still pauses momentarily at each level when long pressing.]
Click to expand...
Click to collapse
Indeed there are 7. And you're also correct in the output. At least Amazon added quite a bit of different tones. But if you aren't using their software, you don't get access to them. I notice this while setting the alarm. There are a dozen or so. Ringtones should pop up in Media Storage, accessible using Activity Launcher or through Nova Launcher activities, however in my case only the Hangouts tone exists. I still haven't experimented with other ringtone/notification tone apps. That's on the list though.
Here's a question: termux is very cool. I know the devices have the ability to vibrate, there are hints in various places on the HD 8 at least that suggest it. Termux has the ability to make things vibrate. I just can't get the plugins installed properly. Cordova is installed via Termux, but I can't figure out how to install the plugin. Everytime I try is says the directory doesn't contain a project or isn't correct. Termux creates the proper directory and paths. Where do I put it and what am I doing wrong? (Just a general question to whomever).
DragonFire1024 said:
Here's a question: termux is very cool. I know the devices have the ability to vibrate, there are hints in various places on the HD 8 at least that suggest it. Termux has the ability to make things vibrate. I just can't get the plugins installed properly. Cordova is installed via Termux, but I can't figure out how to install the plugin. Everytime I try is says the directory doesn't contain a project or isn't correct. Termux creates the proper directory and paths. Where do I put it and what am I doing wrong? (Just a general question to whomever).
Click to expand...
Click to collapse
I have no experience with Termux; agreed it looks very cool (added to personal bucket list). I don't believe the Fire 7 (and presumably HD 8) have the physical hardware to vibrate. Something Amazon has omitted from most, if not all, Fire devices. You are the expert in the room on Termux/Cordova as my knowledge could be written on the back of a postage stamp and still have room for the Lord's Prayer. Hopefully someone else chimes in.
Davey126 said:
I have no experience with Termux; agreed it looks very cool (added to personal bucket list). I don't believe the Fire 7 (and presumably HD 8) have the physical hardware to vibrate. Something Amazon has omitted from most, if not all, Fire devices. You are the expert in the room on Termux/Cordova as my knowledge could be written on the back of a postage stamp and still have room for the Lord's Prayer. Hopefully someone else chimes in.
Click to expand...
Click to collapse
Let me rephrase, because in a technical sense it's not really "vibration". Haptic feedback would be a more correct term? Supposedly FireOS does support Cordova (also here on NPM) and if I am reading correctly, the feature as well, unless they don't update their site often. Termux-API also supports it. I also don't get an error when I input the command in Termux. *scratches head.*
In my opinion, not even enabling a little bit of vibration is a bit odd. Even on other tablet like devices and phones there's always some kind of low level haptic when the volume is at the lowest. Older model Kindle Fires allegedly supported it.
Termux supposedly has the ability to do a good many cool things, but I have read over a few of the things and I got a bit confused. Studying what you can do with it takes some time and a lot of reading.
EDIT: I just tried one of the commands listed above in Termux API: termux-contact-list. Worked like a charm. Listed every contact. Crazy.
DragonFire1024 said:
Let me rephrase, because in a technical sense it's not really "vibration". Haptic feedback would be a more correct term?
:
In my opinion, not even enabling a little bit of vibration is a bit odd. Even on other tablet like devices and phones there's always some kind of low level haptic when the volume is at the lowest. Older model Kindle Fires allegedly supported it.
Click to expand...
Click to collapse
Same hardware component provides both types of tactile feedback. It's either there or not. The speaker in these little gizmos doesn't hit the low frequencies needed to emulate such feedback.
i would guess for cost savings this thing doesn't have the ability to vibrate, but termux is a fun app if you want to do some scripting on your tablet.

Categories

Resources