[GPS][Fix] Automate long term orbit data download - Acer Iconia A500

I have been looking into slow "cold-start" gps locks & in some peoples cases, complete lack of gps.
In testing, everything I've found so far, seems to be pointing at the lack of Broadcom's proprietary long term orbit data (lto.dat) used by the GPS Daemon on our devices...
These chips are in the a500/a200/a100 devices (101 & 501 devices use an ericsson GPS)
For the sake of not regurgitating a whole heap of info, you can read more about the lto.dat file in plenty of places across the web.
pacificwing recently bought this up in crypted's aGPS patch thread, some discussion on the subject starts around page 30.
The attached, recovery flashable zip will patch your system with a *workaround* to automate the download & update of lto.dat...
It is derived from past work in CyanogenMod for the aries (& other) devices.
It should be compatible with most ROM's, but may need adjusting if your busybox wget applet can't resolve dns. (see notes in the script)
What it does:
Installs the script "get-gps-lto" to /system/bin
Creates a service entry in the init.<boardname>.rc file which runs the script on a semi regular basis. (triggered by network connectivity)
The script is tunable by a number of variables, modify as you see fit.
Or, flash & forget... messages are sent to logcat so you can check up on it easily.
This zip has only been tested on a500, cm9, ics bootloader & cwm recovery.
Mileage may vary on other combinations, the zip patches your boot.img so please make a nandroid backup to be safe. (only need to restore /boot if there's a problem)
Installation problem? please let me know & provide a recovery.log so I can make adjustments to the zip if need be.
Standard disclaimers apply, flash at your own risk.

Oh nice I can build in my rom and the kernel before I release it.

Thanks in advance! I'll flash it in a bit!

civato said:
Oh nice I can build in my rom and the kernel before I release it.
Click to expand...
Click to collapse
Not a problem, you'll be sure to test it before releasing the rom I hope?

Anyone has this working yet? Btw, thank you waydownsouth

waydownsouth said:
Not a problem, you'll be sure to test it before releasing the rom I hope?
Click to expand...
Click to collapse
No

waydownsouth said:
The attached zip will patch your system with a *workaround* to automate the download & update of lto.dat...
It is derived from past work in CyanogenMod for the aries (& other) devices.
It should be compatible with most ROM's, but may need adjusting if your busybox wget applet can't resolve dns. (see notes in the script)
> Download here <
Click to expand...
Click to collapse
So that explains why I could never get my wget script to work....
Sent from my A500 using XDA Premium HD app

would it be possible to port this to another device? nice job by the way

waydownsouth said:
It should be compatible with most ROM's, but may need adjusting if your busybox wget applet can't resolve dns. (see notes in the script)
Click to expand...
Click to collapse
Other than hard coding the IP address (which worked for me by the way) is there a better solution to fixing the busybox DNS problem? I've read that putting a resolve.conf file in /system/etc that contains the Google DNS nameservers should work but I tried it and no luck.
Also, any reason you're not using the 30 day file rather than the 7 day? With the 30 day you wouldn't have to run the script all that often... Is the 30 day less accurate or something?
In any event, thanks.
Sent from my A500 using XDA Premium HD app

I build in my kernel for RF1

civato said:
No
Click to expand...
Click to collapse
azoller1 said:
would it be possible to port this to another device? nice job by the way
Click to expand...
Click to collapse
possible, yes... the installer zip will only work for the picasso, picasso_e & vangogh devices... I could add more devices to the installer if need be?
Only thing I could see being a problem is the where the service entries get written to in the init.<boardname>.rc
The device would need to use a boot.img for it's ramdisk too... Most Samsungs are very different in that regard
BakaNeko59 said:
Other than hard coding the IP address (which worked for me by the way) is there a better solution to fixing the busybox DNS problem? I've read that putting a resolve.conf file in /system/etc that contains the Google DNS nameservers should work but I tried it and no luck.
Also, any reason you're not using the 30 day file rather than the 7 day? With the 30 day you wouldn't have to run the script all that often... Is the 30 day less accurate or something?
Click to expand...
Click to collapse
Most statically compiled generic busyboxes will be like that on android, in the case of CyanogenMod, the busybox has been compiled against the android bionic lib & has a number of modifications for Android compatibility.
I stuck to the 7day data so it will stay a bit fresher... I figured that 60kb isn't much to download every few days.
It's easy enough to change those parameters in the script to point to the 30day
Also, haven't yet had time to test how effective the 30day data is after 20 + days... since I only made this yesterday.
What has been your experience?

waydownsouth said:
possible, yes... the installer zip will only work for the picasso, picasso_e & vangogh devices... I could add more devices to the installer if need be?
Only thing I could see being a problem is the where the service entries get written to in the init.<boardname>.rc
The device would need to use a boot.img for it's ramdisk too... Most Samsungs are very different in that regard
Most statically compiled generic busyboxes will be like that on android, in the case of CyanogenMod, the busybox has been compiled against the android bionic lib & has a number of modifications for Android compatibility.
I stuck to the 7day data so it will stay a bit fresher... I figured that 60kb isn't much to download every few days.
It's easy enough to change those parameters in the script to point to the 30day
Also, haven't yet had time to test how effective the 30day data is after 20 + days... since I only made this yesterday.
What has been your experience?
Click to expand...
Click to collapse
it actually is a samsung, the galaxy player 5.0 so you dont have to do it you could pm me a short tut.
i

This works great! Thanks!

waydownsouth said:
Most statically compiled generic busyboxes will be like that on android, in the case of CyanogenMod, the busybox has been compiled against the android bionic lib & has a number of modifications for Android compatibility.
I stuck to the 7day data so it will stay a bit fresher... I figured that 60kb isn't much to download every few days.
It's easy enough to change those parameters in the script to point to the 30day
Also, haven't yet had time to test how effective the 30day data is after 20 + days... since I only made this yesterday.
What has been your experience?
Click to expand...
Click to collapse
Well,since I've never gotten my sManager script method to work I've just been manually downloading the 30 day one every every now and then. I haven't actually been using my GPS much so I can't say how good it's been.
Is there a busybox installer on the market that you think would be better than the generic one? Or is it possible the CM one would work with Flexreaper?
Sent from my A500 using XDA Premium HD app

BakaNeko59 said:
Well,since I've never gotten my sManager script method to work I've just been manually downloading the 30 day one every every now and then. I haven't actually been using my GPS much so I can't say how good it's been.
Is there a busybox installer on the market that you think would be better than the generic one? Or is it possible the CM one would work with Flexreaper?
Sent from my A500 using XDA Premium HD app
Click to expand...
Click to collapse
I build IT in flexreaper RF1 and the kernel of RF1. Release maybe tomorrow.

BakaNeko59 said:
Is there a busybox installer on the market that you think would be better than the generic one? Or is it possible the CM one would work with Flexreaper?
Click to expand...
Click to collapse
I think all the busybox installers have generic, compiled for arm versions, they will likely have the same problem.
The cm/bionic one is dynamically linked, so depends on some libs in the rom. You could compile a static version against the android source (or ndk), but probably won't work on different versions of android.
Other option, there are real wget binaries compiled for android floating about which aren't neutered like the busybox version... they have no problems resolving dns.
delete the busybox wget symlink & drop in the binary...

waydownsouth said:
I think all the busybox installers have generic, compiled for arm versions, they will likely have the same problem.
The cm/bionic one is dynamically linked, so depends on some libs in the rom. You could compile a static version against the android source (or ndk), but probably won't work on different versions of android.
Other option, there are real wget binaries compiled for android floating about which aren't neutered like the busybox version... they have no problems resolving dns.
delete the busybox wget symlink & drop in the binary...
Click to expand...
Click to collapse
Well, in my 53 years of existence I've grown lazy. I think I'll just use your solution and stop worrying about my own since yours works like a charm.
Sent from my A500 using XDA Premium HD app

I think that gpsfix needs some more fixing comparing with manually downloading lto.dat and copying it at system/gpsconfig file..lr data/gps file..........

mine wouldn't find location at all before on cm9 but with this, after initial long lock, other locks only took ~5 secs. thanks!

drharisis said:
I think that gpsfix needs some more fixing comparing with manually downloading lto.dat and copying it at system/gpsconfig file..lr data/gps file..........
Click to expand...
Click to collapse
This downloads the lto.dat file to the default location /data/gps/
If your gpsconfig.xml file has been modified to point to /system rather than /data, then it won't work.
You could modify the script to point to /system, but, you would also need to include code to mount /system rw before attempting to update.
I think that's what your post was about?

Related

Kexec for MS2? (Diagnosis needed)

Alright, so I bought my Milestone II then realized what MOTO had done. What a shame.
So after looking around, I found Freemymoto.com. Droid X kexec module based off MS1 kexec code (look on google, the original is still available).
So this got me thinking and working. I got a development suite on to my MS2. (Debian chroot with Sid and GCC 4.2.1) Pulled the kernel sources from MOTO GPL and went to work. After a couple of mins, its clear the Droid X and MS2 kernel code bases are slightly different.
So after an hour of modifying the code for the MS2, I have been able to compile a kexec module and kexec-tools, insert the module and load the the "new" (from GPL sources) kernel in to the kernel space...
This is where I need some help/advise from the experts.
I get an /proc/atags not found. (not a huge deal just means I should not get bootargs, can work on that later with my setup) But when I go to hit the kexec -e to execute the new kernel, the usb disconnects and the screen freezes for 20 seconds or so. Then it takes me back to the moto bootloader and boots in to the standard kernel.
Bummer.
So any advice on catching the kernel panic and subsequent reboot in logs or serial? I'm not sure how to diagnose the problem. The problem compounds itself since I don't even know if I am producing a functional kernel.
I am pretty new at kernel hacking but amateur programming for years. Not to mention, I've only have had an android phone for about 2 months now.
Thanks
PizzaRoll
There there are not many (or not even a single) dev on this forum, you should take a look at the IRC of And-Developers: irc.freenode.net #milestone-modding
Scrylax_CZ (cant rly spell his name) hes a dev i believe
89% of them are MS1 modders, but they work on the MS2 aswell (just not that much) but still, they are good as i noticed, just try asking in their channel
PS: also visit and-developers.com
Thanks, I'll have a look.
Sent from my MotoA953 using XDA App
PizzaRoll,
I don't know if this will be of any help, but I think you can apply the 2ndinit + sh hijack technique to have some logs stored in /data. I was able to apply this on the Motorola Stock ROM, so I can Overclock and Undervolt my Milestone2 at boot time. The binaries from Milestone1 works quite well on my Milestone2, even the overclocking modules.
I was also trying to Port MIUI for Milestone2 and used the 2ndinit technique to be able to read the logcat after the system failed reboot.
What I've done:
- Installed Droid2 Bootstrap: to have custom recovery and to be able to boot into this recovery mode after the system crashes.
- Installed 2ndinit and sh hijack manually.
- Copied original logwrapper binary to mylogwrapper and modified the init.rc in /system/etc/rootfs. This was needed because Droid2 Bootstrapper conflicts with sh hijack technique.
- In init.rc, after mounting /data and after booting or not into clockwork recovery I added a line like this: exec /log-init.sh. Where log-init.sh just runs "/system/bin/logcat >> /data/logcat.log &"
If you need more detailed info I can provide that later. I will need to review my steps.
Also, I too am a developer skilled in C/C++ and linux, but I have no experience at all in kernel development. Also I an quite busy, but I may be able to provide some help
r2beta0 said:
PizzaRoll,
I don't know if this will be of any help, but I think you can apply the 2ndinit + sh hijack technique to have some logs stored in /data. I was able to apply this on the Motorola Stock ROM, so I can Overclock and Undervolt my Milestone2 at boot time. The binaries from Milestone1 works quite well on my Milestone2, even the overclocking modules.
I was also trying to Port MIUI for Milestone2 and used the 2ndinit technique to be able to read the logcat after the system failed reboot.
What I've done:
- Installed Droid2 Bootstrap: to have custom recovery and to be able to boot into this recovery mode after the system crashes.
- Installed 2ndinit and sh hijack manually.
- Copied original logwrapper binary to mylogwrapper and modified the init.rc in /system/etc/rootfs. This was needed because Droid2 Bootstrapper conflicts with sh hijack technique.
- In init.rc, after mounting /data and after booting or not into clockwork recovery I added a line like this: exec /log-init.sh. Where log-init.sh just runs "/system/bin/logcat >> /data/logcat.log &"
If you need more detailed info I can provide that later. I will need to review my steps.
Also, I too am a developer skilled in C/C++ and linux, but I have no experience at all in kernel development. Also I an quite busy, but I may be able to provide some help
Click to expand...
Click to collapse
would it be possible to port MIUI for the MS2? that would be awesome
Bigdaddy168 said:
would it be possible to port MIUI for the MS2? that would be awesome
Click to expand...
Click to collapse
Without the sources, I don't think so.
I was trying to Merge the Milestone1 MIUI version into the Milestone2 Stock ROM, but my efforts were not able to produce a stable version. It consisted into disassembling both frameworks and adding into MIUI's support for the Native methods required by motorola proprietary libs. I was able to boot into MIUI, but not for long. The system crashed a few moments after booting due to invalid calls to the graphics library. I was stuck at that point and gave up due to a lack of time. But the experience was good to increase my knowledge about android inner structure
Unfortunately, I haven't had much time this week to playground with 2ndboot and the sh hack. I like the idea. Im still working on what the problem is exactly.
The old saying is true. Defining your problem (root cause) is the most difficult part.
Sent from my MotoA953 using XDA App
oh rad, 2ndinit works on MS2? that's helpful to know
smacky_wolf said:
oh rad, 2ndinit works on MS2? that's helpful to know
Click to expand...
Click to collapse
Yeps, it works on mine. I'll take some time to write a guide from the scratch and post it here on XDA. I'm also trying to help santiemanuel to get it to work on his ROM, but I may be missing some detail.
r2beta0 said:
Yeps, it works on mine. I'll take some time to write a guide from the scratch and post it here on XDA. I'm also trying to help santiemanuel to get it to work on his ROM, but I may be missing some detail.
Click to expand...
Click to collapse
I just got the MS2 a couple days ago, so I'm really interested in custom ROMs for it, but I'm a total n00b when it comes to xda and custom ROMS, only having the experience of downloading and flashing ROMs for other phones in the past. With that said, I'd be VERY intersted in a guide for the MS2. Please let us know when its up! Thanks
PizzaRoll said:
Unfortunately, I haven't had much time this week to playground with 2ndboot and the sh hack. I like the idea. Im still working on what the problem is exactly.
The old saying is true. Defining your problem (root cause) is the most difficult part.
Sent from my MotoA953 using XDA App
Click to expand...
Click to collapse
I've just finished my guide on how to enable 2nd-init on MS2. You can check it out here. Maybe this can help you into defining the root cause of the problem, as you can add logcat and dmesg to custom init before calling the kexec. I store my logs at /data so I can read them on the next reboot (getting into clockwork recovery and being able to use adb shell).

[SCRIPT] Change Hostname v6 08/07/2012

This will also be the last update to this script for the foreseeable future. Someone else is more than welcome to take what is here and run with it though.
08-07-2012 fixed a few typos and problems with quotes.
01-29-2012 added some variables to check for the existence of things and get correct paths.
01-06-2012 fixed hostname path.
01-02-2012 Updated to truly work on all devices.
Check it out and let me know what you think.
Big thanks to cdesai for pointing out a nice little enhancement.
This is version 5 of this script.
This script is designed to change the hostname of your device so that you can access it through your network by name instead of android_0123456789ABCEDF.
Your device will also be able to be seen at your router by the new name as well.
Code:
#!/system/bin/sh
#change devName to whatever you want.
devName="changeMe"
#random variables
devHostPath=$(which hostname)
devGetPath=$(which getprop)
devSetPath=$(which setprop)
if [ "$($devGetPath net.hostname)" = "$devName" ]
then
echo "Device hostname does not need to be changed."
else
echo "Device hostname is being changed to $devName."
$devHostPath $devName
$devSetPath net.hostname $devName
if [ "$($devGetPath net.hostname)" != "$devName" ]
then
echo "Device hostname has not been changed."
else
echo "Device hostname has been successfully changed."
fi
fi
Download Hostname.sh
Download Hostname.sh to your device.
Use a text editor to change the "changeMe" in the script to whatever you want. [Keep the quotes]
Use Script Manager to run the script.
The script output will tell you if the command has completed successfully.
Once it has been run your device will be named whatever you change the "changeMe" to.
*Additionally, this script should be able to be run on any device without issues but I have only tested this on Galaxy Nexus AOKP and Droid Bionic Eclipse v3.0.
**Standard disclaimer, I am in no way responsible for ANYTHING that happens to your phone that you have done.
***This code is provided free of charge and is released with no warranty explicit or implied.
If you find this post useful or it helped in any way please hit the thanks button.
Can anyone confirm this worked for them? Doesn't seem to be working for me.
What's the output when you run it?
And when you run it a second time?
You can check at your router as well by logging into it and checking the DHCP leases.
Oh, I figured this was assumed, but you have to have root and run it as root.
Terror_1 said:
What's the output when you run it?
And when you run it a second time?
You can check at your router as well by logging into it and checking the DHCP leases.
Oh, I figured this was assumed, but you have to have root and run it as root.
Click to expand...
Click to collapse
It didn't work for me either, but your effort is much appreciated!
Not all roms will have bash, and even those which have it is mostly in /system/bin
Using /system/bin/sh would be the best way!
From my fingers to your eyez
Thanks,works perfect for me on the HTC EVO.
cdesai said:
Not all roms will have bash, and even those which have it is mostly in /system/bin
Using /system/bin/sh would be the best way!
From my fingers to your eyez
Click to expand...
Click to collapse
Good call.
I will get it fixed when I find a couple moments.
OP has been updated with the change, works fine on my bionic though untested on anything else.
Terror_1 said:
Good call.
I will get it fixed when I find a couple moments.
OP has been updated with the change, works fine on my bionic though untested on anything else.
Click to expand...
Click to collapse
Yet another idea, you can specify the host name while executing the script as an argument (quick changes )
You can use read devname and if it's empty you can get model no. From build.prop
From my fingers to your eyez
cdesai said:
Yet another idea, you can specify the host name while executing the script as an argument (quick changes )
You can use read devname and if it's empty you can get model no. From build.prop
From my fingers to your eyez
Click to expand...
Click to collapse
I left it static so that it can be run at boot and will always have the same name. The model could work but it is more for changing the name to something you want rather than being dictated what it will be.
Oh and depending on your model you could have a space or other special in it.
Hi everybody !
in the old version I have to follow the instructions, but when starting the Script Manager notice shall not be allowed and notice was not found, I'm using xperia arc s, please tell me why? sr my english is not good
Are you running this as root using the skull and crossbones icon?
Terror_1 said:
Are you running this as root using the skull and crossbones icon?
Click to expand...
Click to collapse
I just running as root, pls check pic
le_manhpro said:
I just running as root, pls check pic
Click to expand...
Click to collapse
Let me work on this a little and get back to you. It looks like you don't have busybox installed, which you "shouldn't" need.
What is your device?
[EDIT] Give the new version a shot and let me know how you make out.
Terror_1 said:
Let me work on this a little and get back to you. It looks like you don't have busybox installed, which you "shouldn't" need.
What is your device?
[EDIT] Give the new version a shot and let me know how you make out.
Click to expand...
Click to collapse
I just installed the update of your version but still does not work, do not know which step I did wrong, please guide the steps to install it?
I'm using the xperia arc S
I have attached pictures of my sr english is not good
le_manhpro said:
I just installed the update of your version but still does not work, do not know which step I did wrong, please guide the steps to install it?
I'm using the xperia arc S
I have attached pictures of my sr english is not good
Click to expand...
Click to collapse
I have many swear words for this.
There is nothing that you have done. Can you provide me with a link to the ROM you are using and I will take a closer look. Even if it's the last thing I do I will get this working.
Challenge accepted.
Terror_1 said:
I have many swear words for this.
There is nothing that you have done. Can you provide me with a link to the ROM you are using and I will take a closer look. Even if it's the last thing I do I will get this working.
Challenge accepted.
Click to expand...
Click to collapse
I'm using the original rom android 2.3.4, you can check here, hope you find ways to overcome sorry my english is not good
http://forum.xda-developers.com/forumdisplay.php?f=965
LG Revolution
On LG Revolution running GingerVolt 1.3, I had to change /bin/hostname to /system/xbin/hostname.
The script can be modified to determine the location of hostname command , rather than hardcoding the path.
gumnaam.sur said:
On LG Revolution running GingerVolt 1.3, I had to change /bin/hostname to /system/xbin/hostname.
The script can be modified to determine the location of hostname command , rather than hardcoding the path.
Click to expand...
Click to collapse
I am working on a V5 of this which should be released within the next 2 weeks that should address almost all issues. It works as is on some devices but not all.
I have also found from my testing that setting the hostname is inconsequential and will only appear when you run the hostname command.
gumnaam.sur said:
On LG Revolution running GingerVolt 1.3, I had to change /bin/hostname to /system/xbin/hostname.
Click to expand...
Click to collapse
Thanks! This is the path on the Galaxy Nexus (ICS 4.02) and i was able to get it to update successfully.
However, if this does not update the host name that is sent to my wireless router, the point of the exercise is moot to me. But at least I learned a little bit more about my phone!
This has been posted elsewhere, but to set the name set for the Wifi DHCP request:
Code:
echo yourphonehostname > /proc/sys/kernel/hostname
Obviously, this needs root. You can stick that in a new or existing script in /etc/init.d.
No need to reboot the phone for this to take effect. Stop and start wifi to get the phone to request a new DHCP lease. Note that if your phone was already connected to a router, then the new name might not show up immediately. You'll need drop the previous name from the router dhcp client table by either waiting for the lease to expire, rebooting the router or expiring the lease manually (e.g., in Tomato Admin GUI, click on the remaining lease time under lease column in the Status -> Device List page.)

[ShellScript] AndroidFilesInstaller.sh by Adrian DC

Hi everyone !
There's now a lot of features.
Read the webpage to get more informations.
Would you like to install files on Android quickly and with securities? Then read this..
Here are some previews of an earlier version :
This script will run with SManager SManager (ScriptManager),
which is a free and easy to use application for Android.
Before doing anything to the Android system files,
it is obviously highly recommended and adviced
to have a backup in case the files aren't compatible.
Please see the recoveries softwares specific to your phone.
I cannot guarantee this script will work for everyone,
I even know it won't work for everyone because each phone is different
and given the various versions of android and custom roms,
the shell and busybox may not be the same.
You'll need the root permissions to run this script,
I avoided it to run unless it gets root permissions.
busybox also has to be installed (both often go together).
I use busybox 1.20 on my SONY ICS 4.0.3 ROM for the SE Xperia Arc S.
List of phones confirmed to be working with this script :
- Sony Ericsson Xperia S - Android ICS
You can download the script and get infos here :
> http://arcsgatebyadriandc.comze.com/androidfilesinstaller.html
You can find more on this thread of the french Android website and forum :
[Infos] Modifications de la ROM SONY ICS Officielle on PhonAndroid
Thanks for taking interest in this script.
You may contact me to report a bug or ask for a functionality,
or even to say it works fine xD
Have a good day !
Adrian DC
Nice to see you Adrian, I remember you from my LG Viewty days
Sent from my HTC Sensation XE with Beats Audio Z715e using xda premium
Thanks a lot, that's very nice.
I'm happy to find people back from the old LG Viewty community
And by the way, Viewty's still not dead xD ! Still helping people with it,
using things, fixing others, and giving infos about ViewtyPlus mainly ^^.
Adrian DC said:
Thanks a lot, that's very nice.
I'm happy to find people back from the old LG Viewty community
And by the way, Viewty's still not dead xD ! Still helping people with it,
using things, fixing others, and giving infos about ViewtyPlus mainly ^^.
Click to expand...
Click to collapse
Lol is this a viewty reunion thread already lol good to see you again adc
Sent from my Wildfire S using Tapatalk 2
Nice to see you too man !
Was wondering when you'd see this
Could you guys test my AndroidFilesInstaller script?
I've got some people using it now, and they're all happy about it so far.
I added some nice features in the v7 :
- Automatic AndroidFilesInstaller.sh on sdcard search and replace to update quickly
- Some securities added to the transfert of files.
- Folders with spaces in the name now work too
I'm readapting ViewtyGate website to a new ArcSGate.
Easier to manager files, I'll use my direct files uploader scripts.
Bye !
ADC
Tried it on my wildfire s running cm7 and here's the results
\n AndroidFilesInstaller.sh v7 by Adrian DC\n
Running as Root !\n\n
mkdir: can't create directory '.AndroidFilesInstallerTemp': File exists
rm: can't remove '.AndroidFilesInstallerTemp/AndroidFilesInstaller.sh': No such file or directory
Updating AndroidFilesInstaller...
\n
By default, all files are going to be copied.
Press 'a' for auto-install, using folder name,
press 'b' to only backup those files,
press 'r' to restore those files with backups,
press 'u' to update each AndroidFilesInstaller,
press 'm' to be asked or a key to continue... u\n
/mnt/sdcard/SpeedSoftware/Extracted/AndroidFilesInstaller-v7/AndroidFilesInstaller/AndroidFilesInstaller.sh: 43: Syntax error: word unexpected (expecting ")")
Sent from my Wildfire S using Tapatalk 2
I was replacing the file with v7, you probably got an unfinished one.
Could you come on Messenger please?
I'd like to figure out what's wrong.. \n shouldn't show up, they're new lines...
See ya soon.
Adrian DC said:
I was replacing the file with v7, you probably got an unfinished one.
Could you come on Messenger please?
I'd like to figure out what's wrong.. \n shouldn't show up, they're new lines...
See ya soon.
Click to expand...
Click to collapse
Can't get on messenger I'm not at home at the moment and my data is nearly used up ill try and get on later
Sent from my Wildfire S using Tapatalk 2
Ok.
I've tried some things.. The \n should be gone.
But I'd like you to test it before.
Could you get online when you can, or send me a PM?
Thanks ! Have a nice day !
ADC
EDIT : So.. Did a lot of things on the script to make it even more clean.
\n are gone, that's sure. Other possible problems are gone too.
Many improvements and securities added.
I've put all user available variables at the beginning of the script.
It's all more dynamic and adaptive.
Works perfectly for me and a friend using other Android versions.
The script now also request SManager.
If SManager isn't detected or Root access not given,
you won't be able to run the script. It'll stop at the beginning.
This version 8 is online and available, let me know !
ADC
The v17 of AndroidFilesInstaller.sh will handle complete folders installation from the v16,
aswell as a new security to avoid installation if the file wasn't properly copied to the system,
for example when the available memory space is unsufficient.
Online tonight.
I always get the following error since a few days:
Copy starting...
Copying AndroidFilesInstaller.sh..
Error..
Only ..[AddToBackup], ..[AddToFile]
and ..[RestoreBackup] are accepted
by the script. Skipping..
Copying SystemUI.apk..
Error..
Only ..[AddToBackup], ..[AddToFile]
and ..[RestoreBackup] are accepted
by the script. Skipping..
Copy done !
Click to expand...
Click to collapse
I use the newest ScriptManger, busybox 1.20.2 (also 1.19.4) and I've root and mounted the /system as rw.
Daniel D. said:
I always get the following error since a few days:
I use the newest ScriptManger, busybox 1.20.2 (also 1.19.4) and I've root and mounted the /system as rw.
Click to expand...
Click to collapse
Hey !
The problem mainly comes from an incomplete linux shell,
and this comes because of an incomplete version of busybox and / or superuser.
Try updating the su binary, and using an other busybox, such as 1.19.4 (as you did, works great for me..).
Bye !
Hmm, SU is up to date. I re-installed Busybox three times with the app from the market. Hmmm...
The released online script didn't change for a while, therefore it can only be because of faulty busybox..
Various users had the problem, only answer I can tell is try to find a working busybox,
it would seem some are wrong or not entirely installed....
Strange, I installed my ROM hundred times. It worked always.

[Nook Simple Touch][FW1.2.1] Kernel with Two Point Touch Mod for Download

Hi all,
Thanks to the huge discount on Nook Simple Touch earlier this month in UK, hopefully the device will regain some popularity and draw more attention from the XDA community. Unfortunately all the new devices come with firmware v1.2.0 while most posts in the forum were for the outdated v1.1.x, including the brilliant multitouch mod from wheilitjohnny. I know there is a way to downgrade to v1.1.x but I still prefer v1.2.1 after I tried v1.1.0. So I decided to port wheilitjohnny's mod to v1.2.1. After one week's hard work as I'm a newbie to the Linux world, I finally built the kernel and saw no more boot loop. All the multitouch test tools from Market correctly reported up to 2 fingers.
Before put the kernel to your device, make sure it's already running 1.2.1 firmware and rooted. You can find the link to the official upgrade file in the forum and you can use Nook Manager to root your device which is also available in the forum.
Then please found the kernel attached as zip file. You need to unzip the file and follow arkusuma's post on how to install it.
http://forum.xda-developers.com/showthread.php?p=24168019#post24168019
All credits go to wheilitjohnny. It's all his work.
One lesson I learned for all the developers who may be interested in more mod development is, to make a bootable kernel you MUST use toolchain from "http://www.codesourcery.com/sgpp/lite/arm/portal/release1293". Select the IA32 GNU/Linux TAR one (MD5: c6930d14801b4fab6705d72df013e58b). Any other toolchains including Google's own or even another version from codesourcery won't work. The generated kernel built with any other toolchains will only cause boot loop.
[UPDATE] Oh forgot to say, you need to add one more line to your /etc/permissions/required_hardware.xml on your device. You should be able to find the first line already in the file, just add the second line.
<feature name="android.hardware.touchscreen" />
<feature name="android.hardware.touchscreen.multitouch" />
More info please check http://forum.xda-developers.com/showthread.php?t=1563645
Does this kernel work with NoRefresh (I assume debug2 version for FW 1.2.x)?
koltshin said:
Does this kernel work with NoRefresh (I assume debug2 version for FW 1.2.x)?
Click to expand...
Click to collapse
Yes. I have NoRefresh_Debug2 and Fast Mode mod running together with this kernel. No problem so far.
Thx. Does this kernel works for both Nook Simple Touch and the Glow light model?
Sent from my GT-N7100 using xda app-developers app
waynesi said:
Hi all,
One lesson I learned for all the developers who may be interested in more mod development is, to make a bootable kernel you MUST use toolchain from "http://www.codesourcery.com/sgpp/lite/arm/portal/release1293". Select the IA32 GNU/Linux TAR one (MD5: c6930d14801b4fab6705d72df013e58b). Any other toolchains including Google's own or even another version from codesourcery won't work. The generated kernel built with any other toolchains will only cause boot loop.
I've had good success with the toolchain on Ubuntu; just install the gcc-arm-linux-gnueabi packages, and add the Makefile and head.S changes that were in the fastmode2 patch; I've not tried building this touch mod, but it has let me build my own kernels with usb host and with TLS support.
Click to expand...
Click to collapse
I can confirm that this kernel works on a NST with Glowlight on FW. 1.2.1 Thanks for the hard work.
Can I use this kernel for 2 fingers zoom in? I tried it with aldiko, but do not work with pdf.
You need to unzip the file and follow arkusuma's post on how to install it.
http://forum.xda-developers.com/showthread.php?p=24168019#post24168019
Click to expand...
Click to collapse
Could somebody please help me installing this without adb over wifi? Because i have internet only over ethernet. I was thinking of CWM.
Thanks
Sagittarius0 said:
... without adb over wifi?
Click to expand...
Click to collapse
Well, how about ADB over USB?
Renate NST said:
Well, how about ADB over USB?
Click to expand...
Click to collapse
Can you please help me exactly how to do it? I have tried it once for some other reason and it didn't work... :crying: And after that I searched for it here and found a post which said that adb works only over wi-fi.
And I am quite new with android so please explain the process well.
waynesi said:
Yes. I have NoRefresh_Debug2 and Fast Mode mod running together with this kernel. No problem so far.
Click to expand...
Click to collapse
Fast Mode don't works on my NST fw 1.2.1. What app exactly are you using to activated the fastmode?
update: this kernel don't have / sys/devices/platform/omap3epfb.0/graphics/fb0/fmode so fastmode is not possible
tebra said:
Fast Mode don't works on my NST fw 1.2.1. What app exactly are you using to activated the fastmode?
Click to expand...
Click to collapse
http://forum.xda-developers.com/showpost.php?p=39529578&postcount=140
Step one, use noogie and do a full backup of your Nook.
It should be almost 2GB file size.
Using noogie, copy uRamdisk.
Use bootutil.exe (in signature):
Code:
bootutil /x /v uRamdisk init.rc
[i]edit init.rc[/i]
bootuil /r /v uRamdisk init.rc
The line you edit out (with a number sign) is
Code:
[color=red]#[/color] setprop service.adb.tcp.port 5555
(uncomment this line to go back to using WiFi ADB)
Copy uRamdisk back to the Nook.
Reboot your Nook.
Read up about getting the ADB drivers working on your desktop here:
http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
This thread is old, I know, but hopefully someone will spot this. So I took the plunge and installed Multi-Touch (running FW 1.21 and rooted). I followed the instructions for the ADB wireless method and also changed the required_hardware.xml file, resetting the permissions of the edited file to match those of the original.
Nothing is different? My original hope was that the pinch-zoom function in Dolphin 10.2.6 might work with this mod. It doesn't seem to work on either Android or Desktop settings in that browser. I can't see that it works anywhere. Maybe I need to reinstall Opera Mobile and test it there?
...
O.K., I just reinstalled Opera Mobile. No effect at all that I can discern.
Hmm....I am underclocking with No-frills CPU Control to 300 MHz. Is that the problem? Nope....changed back to 800 MHz and no effect.
So...what am I missing? Is there something I can check to be sure I did the ADB thing correctly (after I'm done using the "shell" do I just close it down or is there some closing command I should have used?). Does this mod have to be used in conjunction with something else?
I usually jump out of an ADB shell with ^C
There's an interim release of UsbMode-1.7a.apk in the signature.
If you touch the left 3/4 of the screen it will report touch coordinates.
It will indicate multiple touches.
That's the easiest way to see how many simultaneous touches your device supports.
My Nook: 2, my Kyocera: 4, my ZTE: 5
I installed a multi-touch test app from the Market and it showed that two fingers were recognized (no more), although the recognition was somewhat spotty.
I've been fussing around with it and sure enough it has begun to work with Opera Mobile, both at 800 MHz and 300 MHz (no discernible difference there). It also works very well with Perfect Viewer. It does not work with Google News and Weather (which really needs it), at least not the version that came with NookManager rooting.
Alas, it does not work with Dolphin, which was my main impetus for trying this. I've got Dolphin to the point where it is much more reliable than Opera Mobile but the only way to zoom is via a gesture which requires going to a blank screen, drawing the gesture and then returning to the current page. It makes one want to draw gestures that are not found in children's books. Although Dolphin claims pinch-to-zoom, it doesn't seem to work with the NST, at least not this version of Dolphin. Maybe I need to delve back into the past versions (which will probably be less stable in other respects...).
Well, anyway it works. I'll have to see if it affects the battery life in any significant way (I read on my Nook, too!). If not, I may as well keep it although its utility to me is limited.
Now to look at "no-refresh"......
nmyshkin, what about Google Maps?
Yes, I forgot to mention Google Maps (I was using "Places" but it amounts to the same thing). That works with multi-touch as well. I also noticed that to some extent multi-touch zooming in Opera Mobile is web-site dependent. For example, it does not seem to work at all on Wikipedia but worked OK on some other sites I tried. I just wish it would work in Dolphin
I just tried it with Orion Viewer (which I like for PDFs) and it also works there. It seemed to want to work with Kingsoft Office on the same PDF file but then the app crashed. There are other ways to magnify in both, of course.
I finally tried NoRefresh, and while it worked, I was left wondering what it is for other than as a "we can do this" feature. Lots of flickering while it made up its mind as a white-listed app was launched and then the image degradation thing. After I exited the app my screen was such a mess I had to reboot. I guess I'm used to the way the e-ink display sort of tears when scrolling (or even zooming now, for that matter). The NoRefresh just doesn't seem to give me anything I want. I have not tried FastMode. As I currently underclock to 300 MHz I am reluctant to overclock the Nook just so it will (sort of) work like something it is not and run down the battery really fast.

My setup with Ubuntu and a custom permissive Kernel

Hey everyone. I bought this device specifically because I do a lot of work on linux in command line world and I though it would be the perfect device when combined with the Logitech Pro keyboard and Complete Linux Installer (it's an app on Google Play). It turned out to be quite a bit of work getting everything working because of Knox and SELinux. Eventually I got a custom kernel working that allows me to toggle SELinux between permissive and enforcing.
I attached an Odin flashable tar that works on the SM-P900 (wifi version). I am on the North American version, so I have no idea whether it will work in other regions. If you flash this kernel then there are a few things you need to know:
I'm assuming you already have root on your device.
When you boot it will still be in "Enforcing" mode. This change simply allows you to use the "setenforce" terminal command or any of the apps on Google Play that do this for you.
You might experience some wifi weirdness after you flash the kernel. You just need to open up /system/build.prop and change ro.securestorage.support from true to false and then reboot to resolve the issue.
If you have a different version of the device or want to compile it yourself for any reason I wrote an article describing how I compiled it here:
http://graemehill.ca/compiling-permissive-android-kernel/
I also did a few other things to fix the keyboard and get linux running properly, so if you're interested in that I described my setup in more detail here:
http://graemehill.ca/turning-a-galaxy-note-pro-into-a-linux-laptop/
Thank you for this!
Sent from my SM-P900 using Tapatalk
trying to build kernel
I'm trying to follow your guide to compile a kernel from source. I have installed (on my Win 8.1_64 PC) Android SDK/NDK. GnuWin32, JavaJRE, and downloaded SM-P900 kernel source.
I'm getting errors at "Apply Kernel Config" step.
here's the output: http://pastebin.com/yFqDrNY8
Thanks for your help
Don :good:
dodo99x said:
I'm trying to follow your guide to compile a kernel from source. I have installed (on my Win 8.1_64 PC) Android SDK/NDK. GnuWin32, JavaJRE, and downloaded SM-P900 kernel source.
I'm getting errors at "Apply Kernel Config" step.
here's the output: http://pastebin.com/yFqDrNY8
Thanks for your help
Don :good:
Click to expand...
Click to collapse
It looks like you're in Windows. To my knowledge it is not possible to compile a Linux kernel in windows. I would recommend downloading virtual box and installing some Linux distro in there. This is what I was talking about in the "environment" section at the top of the article.
For android development I find that you need access to a lot of tools where some are only available on Windows and others are only available on Linux so a Windows PC with a Linux VM is ideal in my opinion.
Oh ok, no problem. I just misread the guide. I've setup a build environment in a vm before to compile aosp for my Nexus 10. Shouldn't be too hard to do it again. I recently rebuilt my pc so the vm I had got nuked.
Sent from my SM-P900 using Tapatalk
ok I got my Ubuntu VM up and running using this guide
http://forum.xda-developers.com/showpost.php?p=50748836&postcount=25
installed android NDK to ~android/NDK, and unzipped the kernel source to ~android/kernel
followed your guide to build a SELinux permissive kernel but i'm getting some errors when trying to compile. here's the output:
http://pastebin.com/Npdu7J5h
EDIT: retried doing the EXPORT command and now it seems to be compiling
dodo99x said:
EDIT: retried doing the EXPORT command and now it seems to be compiling
Click to expand...
Click to collapse
When you export a variable in the terminal it only exists for that one session, so if you open a new terminal instance you need to run the command again. If you want to set it permanently normally you can just put the export command into ~/.bashrc
Oh I see. I'll give that a try. I was able to create a new boot.img following the rest of your guide. I have yet to try flashing it though. Will have to find some info about all the kernel options that can be set. Hopefully be able to integrate HMP to get all eight cores running at the same time.
Sent from my SM-P900 using Tapatalk
Cool, let us know how that goes. I wonder how much it would affect battery life.
Graeme H said:
Hey everyone. I bought this device specifically because I do a lot of work on linux in command line world and I though it would be the perfect device when combined with the Logitech Pro keyboard and Complete Linux Installer (it's an app on Google Play). It turned out to be quite a bit of work getting everything working because of Knox and SELinux. Eventually I got a custom kernel working that allows me to toggle SELinux between permissive and enforcing.
I attached an Odin flashable tar that works on the SM-P900 (wifi version). I am on the North American version, so I have no idea whether it will work in other regions. If you flash this kernel then there are a few things you need to know:
I'm assuming you already have root on your device.
When you boot it will still be in "Enforcing" mode. This change simply allows you to use the "setenforce" terminal command or any of the apps on Google Play that do this for you.
You might experience some wifi weirdness after you flash the kernel. You just need to open up /system/build.prop and change ro.securestorage.support from true to false and then reboot to resolve the issue.
If you have a different version of the device or want to compile it yourself for any reason I wrote an article describing how I compiled it here:
http://graemehill.ca/compiling-permissive-android-kernel/
I also did a few other things to fix the keyboard and get linux running properly, so if you're interested in that I described my setup in more detail here:
http://graemehill.ca/turning-a-galaxy-note-pro-into-a-linux-laptop/
Click to expand...
Click to collapse
I tried to install this using VBox Odin and I couldnt get it to work. Tried using BOOTLOADER and also PDA. Not sure the correct one but neither worked for me. Also, Moblie ODin hasnt yet worked but when it does, things will be much easier for me at least.
I have a newly rooted SM-900. I will have to find time someday to compile the kernel against what I have. Must be a slightly newer version than the one you posted. That is only thing I can think since I just got my 12.2. Thanks for the detailed info.
Camera?
Hey, thanks for the great kernel. It's working as expected to enable permissive mode, but I'm having one issue with it. When I use your kernel, the camera is disabled (says something like "Camera Failed"), and it won't work even when trying different software besides stock, like Google Camera. Anyway, clearing cache, etc. doesn't do anything, but the camera works again when I flash the stock kernel. Is this related to permissive mode or something else with the settings?
aarstar said:
Hey, thanks for the great kernel. It's working as expected to enable permissive mode, but I'm having one issue with it. When I use your kernel, the camera is disabled (says something like "Camera Failed"), and it won't work even when trying different software besides stock, like Google Camera. Anyway, clearing cache, etc. doesn't do anything, but the camera works again when I flash the stock kernel. Is this related to permissive mode or something else with the settings?
Click to expand...
Click to collapse
The camera fails for me too. I dumped a logcat and isolated the issue here:
W/ActivityManager( 2746): Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
V/ApplicationPolicy( 2746): isApplicationStateBlocked userId 0 pkgname com.google.android.GoogleCamera
But... the camera is not a huge deal. It did, however, break wifi. I did not get a logcat of that yet, but I would assume it is also a permission issue.
Wifi works for me using the fix mentioned in the OP. Also, thanks for looking into the camera issue. I agree it's not a big deal, and it's easily fixed by flashing the stock kernel, until someone figures out a proper fix.
aarstar said:
Wifi works for me using the fix mentioned in the OP. Also, thanks for looking into the camera issue. I agree it's not a big deal, and it's easily fixed by flashing the stock kernel, until someone figures out a proper fix.
Click to expand...
Click to collapse
Wow, I totally missed that entire line in the OP... You literally just made my whole day. I fought this all day long, desperate to get ubuntu working. Thank you for pointing that out.
I get "xt_mark.h" is missing (no such file or directory) error. Any idea why that may be?
I'm using the source for p900 international hoping that I may sidestep the camera issue that way (by enabling permissive to the international kernel I mean), but as it stands it does not compile.
I've googled it but until now it was/is to no avail...
Graeme H said:
Hey everyone. I bought this device specifically because I do a lot of work on linux in command line world and I though it would be the perfect device when combined with the Logitech Pro keyboard and Complete Linux Installer (it's an app on Google Play).
Click to expand...
Click to collapse
Hey Graeme H,
we both have the same intention. I am downloading the international Kernel at the moment and will compile it again for you guys. The download takes a little longer as I am at vacations.
I am going this route: doviak.net/debian-kit/debian-kit_p00.html . In the future I would like to have arch linux running on this device but a customized debian would be okay for the beginning, too.
Eventually I will try to use framebuffer instead of vnc or something like that. I would love to use sublime-text and dwm on that device with that resolution
Good luck guys. I will try to update.
Edit: hehe I have dwm in front of me now and the resolution is so high that I am barely able to read
Compiled the kernel and flashed in on my device but my camera is still not working. Maybe we need to edit the config:
# Camera sensor devices
#
# CONFIG_VIDEO_OV7670 is not set
# CONFIG_VIDEO_VS6624 is not set
# CONFIG_VIDEO_MT9M032 is not set
# CONFIG_VIDEO_MT9P031 is not set
# CONFIG_VIDEO_MT9T001 is not set
# CONFIG_VIDEO_MT9V011 is not set
# CONFIG_VIDEO_MT9V032 is not set
# CONFIG_VIDEO_TCM825X is not set
# CONFIG_VIDEO_SR030PC30 is not set
# CONFIG_VIDEO_NOON010PC30 is not set
CONFIG_VIDEO_S5K6B2=y
# CONFIG_S5K6B2_CSI_C is not set
CONFIG_S5K6B2_CSI_D=y
CONFIG_S5K6B2_POSITION_FRONT=y
# CONFIG_S5K6B2_POSITION_REAR is not set
CONFIG_VISION_MODE=y
# CONFIG_VIDEO_M5MOLS is not set
# CONFIG_VIDEO_S5K6AA is not set
Click to expand...
Click to collapse
Rather than each people compiles its kernel, could someone put a link to download the international kernel compiled? I think this would allow more people to get this kernel. Thank
PHP:
smylion said:
Rather than each people compiles its kernel, could someone put a link to download the international kernel compiled? I think this would allow more people to get this kernel. Thank
Click to expand...
Click to collapse
Compiled from Kitkat source. [ur#l]erhan.es/upload/sm-p900-permissive-intl.tar[/url] (odin)
Thank you but the link does not work
smylion said:
Thank you but the link does not work
Click to expand...
Click to collapse
Sorry, it is erhan.es/upload/sm-p900-intl-permissive.tar

Categories

Resources