I have been doing some research on XDA and some other sites to see what would be required to put android 7.0 on a nexus one.
I know, that sounds crazy, but I wanted to challenge myself and try to do something I should do more often - android development.
I have been sifting through the other nexus one ports and the builds and ports for the 2 phones similar to the nexus one, the HTC HD2 and HTC desire.
So far, It seems some developers have been successful in getting android 6 working on the HD2 and desire. I figured I would try to do so on the nexus one, seeing as it has identical hardware in a lot of respects.
I am wondering if my approach is on target. To get this to work, I think I would need:
-custom hboot to allow for booting off sd card for OS (internal memory too small for android 7, even if slimmed down)
-custom partitioning of sd card
-custom rom built from android 7 and nexus one hardware drivers
-porting of linux kernel from HD2 to nexus one
-boatload of debugging
-compile rom and kernel into one zip installation package
Is there anything else I am missing? I apologize if I am using the wrong terminology, I have only been doing this for a few days (but have been rooting and installing roms for years).
I figured it was my turn to dig a bit deeper and try development myself.
If anyone has any input, I would be all ears. thanks a bunch!
mods: If this post is in the wrong thread (or you think it should be pushed to nexus one thread), feel free to push it anywhere that makes sense. thanks!
I did some more research and I think It will make most sense to port the 3.0.101 kernel from the HD2 and then build the rom
I am going to try android 4.4.4 rom with the 3.0.101 kernel to see how that goes first.
The main questions now:
-am I going to need a new version of TWRP for the new 3.0.101 kernel, or can I get away with TWRP 2.6.0.0 recovery?
-will I need to make a new version of blackrose / hboot because of android 6.0 / 7.0 / new kernel?
thanks for any input!
Related
Hi,
About 2 weeks ago I downloaded the Android ROM for my HTC HD2, it works great, I really like Android more then Windows Mobile. Although everything works and seems fast enough, i have the feeling my phone can do more. If i look at videos of a HTC Desire HD it runs much faster, though the hardware is almost identical.
As I understood my phone is still running Windows Mobile but it is running in a state that emulates the hardware for a Android phone, so i can run Android. Now for my question, is there a way to run Android directly on my phone, without using Windows Mobile in the background?
Greetz Willem
williamsean said:
Hi,
As I understood my phone is still running Windows Mobile but it is running in a state that emulates the hardware for a Android phone, so i can run Android. Now for my question, is there a way to run Android directly on my phone, without using Windows Mobile in the background?
Greetz Willem
Click to expand...
Click to collapse
this question is in the wrong section
ATM its not possible for none DEVS to run Andriod directly from you phone NAND memory.
DEVS are working on it but there are still some issues to solve before it will be launched you can follow the progression at the link below:
http://forum.xda-developers.com/showthread.php?t=817261
When you switch over to Andriod as a native OS you wont be able to run WM anymore, you can multi boot Android OS and Unbuntu of your SD, so if you want to use WM also then running Andriod of your SDcard is the only option
wilwilwel said:
this question is in the wrong section
ATM its not possible for none DEVS to run Andriod directly from you phone NAND memory.
DEVS are working on it but there are still some issues to solve before it will be launched you can follow the progression at the link below:
When you switch over to Andriod as a native OS you wont be able to run WM anymore, you can multi boot Android OS and Unbuntu of your SD, so if you want to use WM also then running Andriod of your SDcard is the only option
Click to expand...
Click to collapse
Thanks for replying, what do you mean with ATM? and DEVS?
For what I understand from you post, they are working on a native android rom for the HD2, but it's not finished jet... And when I would install it i can't boot windows mobile anymore... Is that correct?
Will there be a posibility to revert my phone back to windows mobile when i would like to sell my phone...
-First winmo is shutdown when booting android.
-At the moment booting right from the hd2 memory is only possible with nand (from internal memory) . Wich is currently not for public release because it contains bugs.
-The reason why it is not at same speed as desire hd is that the kernel for the hd2 is not perfect and maybe nand can do a little speed increase. But it is getting better current kernels are much faster than a month ago.
ATM= At the moment
DEVS= Developers
PS: This is the wrong section.
jan-willem3 said:
-First winmo is shutdown when booting android.
-At the moment booting right from the hd2 memory is only possible with nand (from internal memory) . Wich is currently not for public release because it contains bugs.
-The reason why it is not at same speed as desire hd is that the kernel for the hd2 is not perfect and maybe nand can do a little speed increase. But it is getting better current kernels are much faster than a month ago.
ATM= At the moment
DEVS= Developers
PS: This is the wrong section.
Click to expand...
Click to collapse
Witch section should it be in? Q&A or something? Can I change that right now?
What I understand is that it actually doesn't make a difference when I would boot android without windows mobile, only a minor speed increase because of faster memory? The real speed increase would come from a better kernel, witch the developers here are working on... Is that right?
Do you happen to know a ROM with this newer kernel? (so i can see if i already have it)
williamsean said:
Witch section should it be in? Q&A or something? Can I change that right now?
What I understand is that it actually doesn't make a difference when I would boot android without windows mobile, only a minor speed increase because of faster memory? The real speed increase would come from a better kernel, witch the developers here are working on... Is that right?
Do you happen to know a ROM with this newer kernel? (so i can see if i already have it)
Click to expand...
Click to collapse
You can't change that right know but that is not a real problem. And what you are saying is right. We have to wait for a better kernel.
In terms of rom with kernel newer roms have most of the time newer kernels.
You can select [Everyday Builds][latest linux_on_wince_htc][PPP] CM6.1+ from michyprima this ones has no sense but are really speedy compared to sense builds. They use latest kernel. Anyway if you pickup a build from the last 7 days you can put any kernel that you want of it my favorite kernel at the moment is this. And contains a patch wich resolves screen freeezes wich happen sometimes. The most recent kernels are mdeejay S4 & hastrin r8.2. Or the CM6.1 build I said above because it have the latest kernel. The hastarin where I link you to contains the touchscreen freeze fix. Wich is not included in all hastarin 8.2 kernels.
jan-willem3 said:
You can't change that right know but that is not a real problem. And what you are saying is right. We have to wait for a better kernel.
In terms of rom with kernel newer roms have most of the time newer kernels.
You can select [Everyday Builds][latest linux_on_wince_htc][PPP] CM6.1+ from michyprima this ones has no sense but are really speedy compared to sense builds. They use latest kernel. Anyway if you pickup a build from the last 7 days you can put any kernel that you want of it my favorite kernel at the moment is this. And contains a patch wich resolves screen freeezes wich happen sometimes. The most recent kernels are mdeejay S4 & hastrin r8.2. Or the CM6.1 build I said above because it have the latest kernel. The hastarin where I link you to contains the touchscreen freeze fix. Wich is not included in all hastarin 8.2 kernels.
Click to expand...
Click to collapse
Thnx for the reply, all is much more clear now...
I only have 1 more question, can update only the kernel of a ROM, so i don't have to install a hole new ROM and keep my preferences?
Yes that is also possible.
Is there something like a guide for it? url?
Installation:
1. Copy zImage to the "Android" folder on SD card
2. Copy "root" folder to "Android" folder on your SD card (overwrite files or combine when needed never delete the current one and replace it with the new one always overwrite files if folder structure already exists)
Sometimes the folder root is not included by the kernel then create
root/system/lib/modules
inside put :
tun.ko
bcm4329.ko
cifs.ko
and create:
root/system/lib/hw
lights.htcleo.so
If the file is not inside the package then don't create a folder for it. You should always have this file bcm4329.ko The rest is different for different kernels.
Edit:
You can download a kernel in different threads.
For example: http://forum.xda-developers.com/showthread.php?t=831585
For example: http://forum.xda-developers.com/showthread.php?t=787588
VBN files should also have latest kernel without tweaks but cant find it now.
As I understand it, there is a linux kernel that android sits on. I thought the ROM was like a virtual machine running inside of android and then we loaded apps onto that. I read something that indicated that each custom ROM comes with a kernel. Then we can replace that kernel with another one if we wish. I understand that the kernel must be compatible (although I don't know how to tell) but that seems confusing. It would seem that if the ROM is running in android then as long as the kernel can run android, any kernel should suffice. Clearly that is not the case so what exactly is a ROM and why does it interact directly with the kernel?
A ROM in this case is a system image (full or partial) containing the Android operating system, drivers, applications, and/or kernel.
Like with regular PC OS not all kernels are compatible with the larger OS, primarily across major versions.
check this link
http://www.xda-developers.com/android/understanding-android-fr
Rom futures
does anyone know where roms are going? read somewhere 2.3 and 3.0 are forks. that makes sense if 2.3 continues focus on phones, small devices etc and 3.0 continues down the larger tablet track. I am currently running 2.3.3 on gtab and it runs great. it seems to be very tablet friendly. does 2.3 provide much of the functionality of 3.0 for the small screen. can we expect 3.0 to bring additional utility to tabs like the gtab? just curious where we might be headed. keep up the great work. i stay excited about the next build!
Rumbleweed said:
check this link
http://www.xda-developers.com/android/understanding-android-fr
Click to expand...
Click to collapse
This is a GREAT link! Thanks.
I'm not understanding how kernels and ROMs connect. Can someone give me some extra insight?
[Hardware] <-- Unique to every phone
--
[Kernel] <--- Tells the OS how to talk to the hardware
--
[ROM] <--- Slightly confused. Is the OS in the Read only Memory, or has this term changed its "street" meaning?
I understand that most ROMs (e.g. CM7 and CM9) include both the kernel and the ROM, but can you flash these separately too?
I have a 1.5 year old thunderbolt that's rooted, and has CM7 which is based on gingerbread. I believe HTC has also released the kernel as open source, which is probably the reason I have CM7
Anyway, I guess what I'm looking for is an answer/guide/forum that explains why I can't install newer versions of android onto the already working/open source kernel I'm already running. Is it accurate to view the kernel as all the phone's drivers, or just the CPU driver? If that statement is true, why can't I load ICS or Jelly Bean onto my already existing set of drivers?
I'm thinking about starting a Wiki on this if 1) it doesn't already exist, and 2) I can wrap my brain around it enough to share with others!
Thanks to anyone with a response!
shadowrelic said:
I'm not understanding how kernels and ROMs connect. Can someone give me some extra insight?
[Hardware] <-- Unique to every phone
--
[Kernel] <--- Tells the OS how to talk to the hardware
--
[ROM] <--- Slightly confused. Is the OS in the Read only Memory, or has this term changed its "street" meaning?
I understand that most ROMs (e.g. CM7 and CM9) include both the kernel and the ROM, but can you flash these separately too?
I have a 1.5 year old thunderbolt that's rooted, and has CM7 which is based on gingerbread. I believe HTC has also released the kernel as open source, which is probably the reason I have CM7
Anyway, I guess what I'm looking for is an answer/guide/forum that explains why I can't install newer versions of android onto the already working/open source kernel I'm already running. Is it accurate to view the kernel as all the phone's drivers, or just the CPU driver? If that statement is true, why can't I load ICS or Jelly Bean onto my already existing set of drivers?
I'm thinking about starting a Wiki on this if 1) it doesn't already exist, and 2) I can wrap my brain around it enough to share with others!
Thanks to anyone with a response!
Click to expand...
Click to collapse
You are correct about the ROM, but ROMs also include the kernel (if it didn't, or no kernel was flashed separately, the device would not boot). Yes, other kernels can be flashed on your existing ROM, but it's not necessarily going to be compatible.
Sort of, but there's a lot more than that. See here and here. Later versions of Android will require newer drivers,etc. which the existing kernel won't provide (they'll be outdated). Back porting and additional coding is theoretically possible, but insanely difficult (many times). Even after this some things may still not work.
Thanks for the insight, I was able to get a lot deeper into this with those links. For anyone else wandering down a similar path, you might as well stop now! Here are a few links:
http://forum.xda-developers.com/showthread.php?t=1039217&page=2#17
http://www.cs.uwc.ac.za/~mmotlhabi/avmk.pdf
http://www.iteachandroid.com/2012/01/what-is-firmware-rom-and-firmware.html
So, if anyone else is still listening, I do have two more questions:
Do any phones have truly open source drivers? (a.k.a. higher probability of allowing old hardware to work with new android OS)
Is there any way to determine which phones will be supported by the custom-ROM community early on? I know the Nexus line doesn't have vendor modified code, is that the direction which would have the highest probability to stay at top of the Custom ROM curve without upgrading devices every year?
Thanks again for any insight! I hope I'm posting this in a Newb-Friendly forum!
shadowrelic said:
Thanks for the insight, I was able to get a lot deeper into this with those links. For anyone else wandering down a similar path, you might as well stop now! Here are a few links:
http://forum.xda-developers.com/showthread.php?t=1039217&page=2#17
http://www.cs.uwc.ac.za/~mmotlhabi/avmk.pdf
http://www.iteachandroid.com/2012/01/what-is-firmware-rom-and-firmware.html
So, if anyone else is still listening, I do have two more questions:
Do any phones have truly open source drivers? (a.k.a. higher probability of allowing old hardware to work with new android OS)
Is there any way to determine which phones will be supported by the custom-ROM community early on? I know the Nexus line doesn't have vendor modified code, is that the direction which would have the highest probability to stay at top of the Custom ROM curve without upgrading devices every year?
Thanks again for any insight! I hope I'm posting this in a Newb-Friendly forum!
Click to expand...
Click to collapse
For both your questions, the Nexus-line devices would be the way to go. They usually have everything working on new Android versions the soonest, and Google always releases their code, etc.
Hi
i can use linux kernel (zimage) to update android kernel if yes ,how ?
thnx
Good evening all,
I came across a post on here a while ago which asked about the ability to run Gingerbread on a Nexus 7 of 2012 and the response was basically, why? And, co pile it yourself.
So, I thought I'd give it a go, just to see what it does.
Previously I've only ever flashed custom ROMs and I've never downloaded AOSP before, but everyone starts somewhere.
My position at the moment is I've built Gingerbread from AOSP on my server but as I didn't choose Nexus 7 when building it (due to it not having an option to lunch Gingerbread) I opted for the generic build.
So, this built but as it's generic it seems to only be the system, no recovery or boot.img etc.
So, I looked around at guides, building a boot.img for your device in AOSP etc, kernel compilation, but due to my bizarre project, I can't find anything on how to downgrade or retrofit a new boot.img into an older version of Android. Or even how to compile an older boot.img against newer hardware. Even the guides talk about swapping one ROM for another and taking pieces out but they tend to be the same versions of Android.
So, I'm asking for advice really, where do I start?
Sent from my Nexus 4 using Tapatalk
Quick update (not that I've done much on it for a while).
I managed to get the older Gingerbread bootloader installed on my Nexus 7 2012, however I couldn't get further then that, not sure what I'm missing at the moment, potentially the kernel isn't compiled.
Porting Android - Did I thinking that this modifying custom ROM from one device such as CyanogenMod for the Nexus 5 and move it to another completely different device? I have an idea for the Nokia N9 developing ended with android 4.1, I would like to create a ROM, for example, 4.4 (higher than 4.1) for Nokia N9 as KitKat has a lot of optimization and was run even on slower devices. Could someone explain how to do or advise what to do, or give a link to the guide. Linux commands aren't unknown to me. I'm new on xda.