Hi,
I'm searching for detailed hardware specification of NexusOne and Desire, hardware docs(for peripherals/chips inside those devices). Also, I'd like to know to which extent these two devices have open source drivers implemented or if not, whether someone is working on drivers which are missing. If someone knows more and can provide more info, that'd be greatly appreciated.
Xdasc said:
Hi,
I'm searching for detailed hardware specification of NexusOne and Desire, hardware docs(for peripherals/chips inside those devices). Also, I'd like to know to which extent these two devices have open source drivers implemented or if not, whether someone is working on drivers which are missing. If someone knows more and can provide more info, that'd be greatly appreciated.
Click to expand...
Click to collapse
pretty much, the hardware in these devices is already supported by Android Source Code, especially processor and wifi.
Graphics, bluetooth, and more are inherently a problem.
I know this from seeing results of building android (w/o sense) from source for the HTC Hero, which these devices are similar to, in terms of hardware and software cooperation (of course these have spec bumps).
ONCE HTC posts the kernel source, deving/compiling stuff for these devices should be 300% easier
How detailed of specs do you want?
jcarrz1 said:
Graphics, bluetooth, and more are inherently a problem.
Click to expand...
Click to collapse
QSD8250 should have an integrated graphics core, I was wondering whether open source 2D/3D drivers would be available.
jcarrz1 said:
ONCE HTC posts the kernel source, deving/compiling stuff for these devices should be 300% easier
Click to expand...
Click to collapse
I have read that sources for HTC Desire should be available within 2 months.
Did HTC or Google still not release the kernel sources for Nexus One?
How detailed of specs do you want?
Click to expand...
Click to collapse
I'm looking for something like specs for Mio A701 @ handhelds.org wiki
Related
So my current understanding is that a kernel is essentially the software that connects android with the hardware of the phone. Somewhat of a driver in terms of Windows?
Now I understand that different versions of Android will require different kernels even if the phone is the same (is this true?). For instance ICS for say... Phone X will have a kernel of X.Y.Z while Gingerbread for Phone X will be A.B.C.
Now would the kernel be the same for say gingerbread 2.3.3 and 2.3.5 and 2.3.7?
Also... Would it be possible to take a "shotgun" approach so to speak with the kernels for the Android phones?
For instance write one kernel that covers all android phones. The kernel file itself would be HUGE, but would it be possible or is there too much variation within the hardware. I know a lot of people are currently waiting for the HTC Desire HD's ICS rom to be released by HTC in order to get that ICS Kernel Source code.
The reason I ask is because having one universal kernel could potentially solve a lot of problems especially for the less popular phones. With this combined with the Easy Development Studio (being developed: http://forum.xda-developers.com/showthread.php?t=1446233) this could be pretty beneficial in my opinion at least.
I'm not a programmer and recently got into Android so that's why I'm asking. I just figured ask and learn more. So any opinions and even teachings that you have that you guys are willing to share with me would be awesome.
I think there is to many problems with writing kernel for all hardware... This is just linux kernel compiled for Android platform... Linux kernel is free but hardware specification not always free, there is already two different ways to write code for this hardware:
1. Write some code which would works on your device (but it does not mean that it would works on all devices which the same model).
2. Or you can go to hardware manufacturer and tell something like 'Hi guys, could you give me specifications of Phone X?' - (as i know it is commercical secret...maybe i am mistaken here)
Linux kernel (~Android kernel) is commonly support a lot of devices (include TV, Routers etc), but i think that enhance code of this kernel for each group device or for each manufacturer it is only one way to get stable and fast work with your gadget...
wlfpck said:
So my current understanding is that a kernel is essentially the software that connects android with the hardware of the phone. Somewhat of a driver in terms of Windows?
Now I understand that different versions of Android will require different kernels even if the phone is the same (is this true?). For instance ICS for say... Phone X will have a kernel of X.Y.Z while Gingerbread for Phone X will be A.B.C.
Now would the kernel be the same for say gingerbread 2.3.3 and 2.3.5 and 2.3.7?
Also... Would it be possible to take a "shotgun" approach so to speak with the kernels for the Android phones?
For instance write one kernel that covers all android phones. The kernel file itself would be HUGE, but would it be possible or is there too much variation within the hardware. I know a lot of people are currently waiting for the HTC Desire HD's ICS rom to be released by HTC in order to get that ICS Kernel Source code.
The reason I ask is because having one universal kernel could potentially solve a lot of problems especially for the less popular phones. With this combined with the Easy Development Studio (being developed: http://forum.xda-developers.com/showthread.php?t=1446233) this could be pretty beneficial in my opinion at least.
I'm not a programmer and recently got into Android so that's why I'm asking. I just figured ask and learn more. So any opinions and even teachings that you have that you guys are willing to share with me would be awesome.
Click to expand...
Click to collapse
"Now I understand that different versions of Android will require different kernels even if the phone is the same (is this true?). For instance ICS for say... Phone X will have a kernel of X.Y.Z while Gingerbread for Phone X will be A.B.C"
The kernel is basically a collection of device drivers and services which needs to be loaded to work as a mediator between the OS (ROM) and the phone hardware and it is off course device specific. And kernel does not depend on ROM rather ROM depends on kernel. The different kernel available for same device will have almost same structure excepts some specific drivers and services may be different . Same kernel may work with different roms if the rom is ported to or complied to work with that kernel. So even a GB kernel may work in ICS.
hm... I see.
I guess then that leads to another question of...
What about a universal kernel for each phone manufacturer? I believe that there is a way to find out the specific hardware within a phone. If that's the case, targeting just HTC or just Samsung, could allow for the shotgun approach to work since the overall target is smaller.
Wouldn't it also be possible to say to take a HTC Inspire 4G existing kernel and the rest of HTC's existing phones and consolidate the kernels?
I'm not a programmer so I'm just trying to learn but maybe I am over simplifying things.
@sos1g3: I see what you are saying as well but couldn't the hardware specifications be obtained from the existing kernels?
wlfpck said:
hm... I see.
I guess then that leads to another question of...
What about a universal kernel for each phone manufacturer? I believe that there is a way to find out the specific hardware within a phone. If that's the case, targeting just HTC or just Samsung, could allow for the shotgun approach to work since the overall target is smaller.
Wouldn't it also be possible to say to take a HTC Inspire 4G existing kernel and the rest of HTC's existing phones and consolidate the kernels?
I'm not a programmer so I'm just trying to learn but maybe I am over simplifying things.
@sos1g3: I see what you are saying as well but couldn't the hardware specifications be obtained from the existing kernels?
Click to expand...
Click to collapse
"Wouldn't it also be possible to say to take a HTC Inspire 4G existing kernel and the rest of HTC's existing phones and consolidate the kernels?"
Not exactly, it is only possible if the hardware is same . But off course a part of it will be same.
hardware specification can be obtained from a kernel source only . Not from the compiled kernel.
musarraf172 said:
"Wouldn't it also be possible to say to take a HTC Inspire 4G existing kernel and the rest of HTC's existing phones and consolidate the kernels?"
Not exactly, it is only possible if the hardware is same . But off course a part of it will be same.
hardware specification can be obtained from a kernel source only . Not from the compiled kernel.
Click to expand...
Click to collapse
If I am not mistaken, HTC and Samsung provide their source codes for their kernels.
"Not exactly, it is only possible if the hardware is same . But off course a part of it will be same. "
So then it's not possible to create a kernel that covers say a Snapdragon processor and a Nvidia Tegra 2?
I really wish the android world was more consolidated... of course that wouldn't do well for the phone manufacturers.
wlfpck said:
If I am not mistaken, HTC and Samsung provide their source codes for their kernels.
"Not exactly, it is only possible if the hardware is same . But off course a part of it will be same. "
So then it's not possible to create a kernel that covers say a Snapdragon processor and a Nvidia Tegra 2?
I really wish the android world was more consolidated... of course that wouldn't do well for the phone manufacturers.
Click to expand...
Click to collapse
Well , to make it more clear you should know that a full linux kernel ( desktp / server ) does have support for different hardware, peripherals, gpu etc, even for different cpu. Only limitation is that the processor architecture should be same i.e various x86 processor can be supported by a single kernel but a single kernel will not support both x86 , x64 or ppc , ARM architecture . (By the word architecture I mean the instruction sets on which they work). It is called a generic kernel.But for mobile devices the kernel is trimmed down to the specific set of hardwares and peripherals because of resource limitations. A full generic kernel will size will be much bigger approx 80 to 120 MB. But a kernel for mobile device is arround 5 to 6 MB. So make an universal kernel for all mobiles , the size will be bigger which won't fit in the current device setup. So theoretically we can write a kernel which will support both Snapdragon processor and Nvidia Tegra 2 as they both uses ARMv7 instruction set.
This looks interesting. Will this help others to port ICS to the Streak?
lunadomain said:
This looks interesting. Will this help others to port ICS to the Streak?
Click to expand...
Click to collapse
please add the source
thanks, nice info
http://www.xda-developers.com/android/qualcomm-releases-adreno-2xx-gpu-binaries-for-ics/
ivantastic said:
please add the source
thanks, nice info
Click to expand...
Click to collapse
Here it is.........
GPU driver source was one of the major things missing to port newer roms to the S5, but the S5 is still missing many more things to be able to get a source level port of roms (ie the source for other drivers)
At least hypothecially if used to port CM9/etc to the S5 at least it could get GPU acceleration so everything either works fast or doesnt work at all.
There's still other things though, I dont recall touchscreen driver source being available, and the touchscreen controller on the S5 is rather uncommon(?)
so these two?
Pixcir's Tango S32 microcontroller
Click to expand...
Click to collapse
And/Or
Atmel's ATmega168P 8-bit AVR microcontroller
Click to expand...
Click to collapse
The Notion Ink Adam use the same drivers: http://tjworld.net/wiki/Android/Tegra/NotionInk/Adam/HardwareSpecifications
and there is a pre-alpha ics rom from notion ink here for the Adam http://conclave.notionink.com/showthread.php?1173-ICS-Android-4.0-alpha-Download-and-Installation
any of these any help? https://github.com/rrathi/adamICS/tree/master/files
So it does, but regardless I'm not an actual rom dev so you'd need to speak with someone else.
DJ_Steve is one of the official(?) devs for the adam, so I assume he already knew this long ago. But even with that there's likely still more missing.
Also obviously it's not just having the soucre, you also gotta glue together the pieces and that's just as much work, I assume it's the actual gluing together of the pieces that was more of an issue with the TS or something. But I'm working off old memory, I could be wrong about all the details.
Ok, I have looked this up as many ways as I possibly could and to no avail.
I am pretty sure the info I am looking for is out there, I am just having the worst time accessing it.
What I would like to know is why certain devices run on certain OS's.
is it just one factor or multiple factors? I suspect the latter[?]
and if so, what factors primarily play a role in deciding what OS goes on what device?
I know what I am asking really serves no purpose to most, but I am one of those who likes to know as much as possible.
much thanks in advance and please do forgive me for the huge lapse
The 1st factor is the device manufacturer. A clear example: SE says that Xperia X8 doesn't support versions above 2.1, so it didn't release actualizations. But now, we have even ICS on X8
The 2nd factor is the availability of drivers for the desired Android version (the drivers can come from a oficial ROM, or from the chipset manufacturer), and/or the coders interested in the device.
For many devices (specially low-end devices) this is the most important factor.
RoberGalarga said:
The 1st factor is the device manufacturer. A clear example: SE says that Xperia X8 doesn't support versions above 2.1, so it didn't release actualizations. But now, we have even ICS on X8
The 2nd factor is the availability of drivers for the desired Android version (the drivers can come from a oficial ROM, or from the chipset manufacturer), and/or the coders interested in the device.
For many devices (specially low-end devices) this is the most important factor.
Click to expand...
Click to collapse
hmm, well that is very informative and I thank you
RoberGalarga said:
The 1st factor is the device manufacturer. A clear example: SE says that Xperia X8 doesn't support versions above 2.1, so it didn't release actualizations. But now, we have even ICS on X8
The 2nd factor is the availability of drivers for the desired Android version (the drivers can come from a oficial ROM, or from the chipset manufacturer), and/or the coders interested in the device.
For many devices (specially low-end devices) this is the most important factor.
Click to expand...
Click to collapse
While this is true another factor is the popularity of the device. Why would anyone waste time on developing for a device that no one is interested in? It also depends on the value of the device. Its normal that the high-end ones will receive updates before the mid-range devices. But as the guy above said for xperia the same is with my LG. We also made a half functional ICS and the only big problem is the screen which works only 50%
Sent from my Optimus Me using xda premium
ION vs PMEM
What is the difference?
Google is your friend - http://lwn.net/Articles/480055/
In the case of the Rezound specifically, ION is generally faster and less laggy, but has a purple tinted camera, and no working front camera (for now).
To quote shrike (I hope that's alright)
Originally Posted by shrike1978 View Post
ION is the new unified memory management architecture that Google is advancing. Prior to ION, every SoC manufacturer had their own way of doing memory management. Qualcomm's was pmem, Nvidia's was nvram, etc. It made it's debut as an option in ICS and is preferred in JB. Being unified also means that it is a good candidate for integration into the Linux kernel mainline, which would mean that Android would no longer require it's own separate branch of Linux.
So I've read this but what would that mean in terms of developement? If Android didn't have to be a separate branch of Linux, would it be easier to spread ROMs to all the different phones?
regnsy pronounced
noo_too_droid said:
To quote shrike (I hope that's alright)
So I've read this but what would that mean in terms of developement? If Android didn't have to be a separate branch of Linux, would it be easier to spread ROMs to all the different phones?
regnsy pronounced
Click to expand...
Click to collapse
I'm not a dev, but in my understanding the biggest hurdle for porting ROMS is device drivers. It is relatively easy to port a ROM from the HTC One X to the HTC Rezound, because they are made by the same manufacturer, have the same system-on-a-chip manufacturer (Qualcomm) and have a similar stock kernel based on different versions of HTC Sense.
But porting a ROM from, let's say a Samsung Galaxy III is nigh impossible, because it uses a different system-on-a-chip exclusive to Samsung phones and its stock kernel is based on TouchWiz. And even though Android is based on Linux, each of the phone manufacturers have slightly different ways of organizing system files that set the various system options. So a kernel patch that works on one device probably won't work on another. (kernel level features such as GPU overclocking, two-way call recording etc. rely on these system setting files).
Even among phones made by the same company, you may have hardware differences such as different camera technologies, different screen resolutions, etc. that make porting harder.
That's why cyanogenmod, AOKP and MIUI are so valuable and appreciated, because they organize porting of a ROM that, as far as the kernel and GUI are concerned, vary little between devices. However those projects still have to rely on what manufacturers choose to release as open source to develop hardware device drivers to port the ROM to each device.
And then you have the problem of, what level of Android is officially supported by the manufacturer? The Droid Incredible 2, for example, is still waiting for an official ICS release it may never get, which means running Jellybean as it is meant to be run is that much harder. It's hard enough on the Rezound, where we have official ICS kernel source.
That's why I give lots of kudos to people who take custom ROMs like BAMF paradigm, paranoid android and the like that were developed for other devices and port them to the Rezound. And mega kudos to people like chad who can port/re-factor underlying hardware code originally developed for another device to work on the Rezound. We're talking crazy wizard-level stuff like memory management, camera, hardware graphics optimization (Project Butter).
It makes stuff awesomer
wildstang83 said:
It makes stuff awesomer
Click to expand...
Click to collapse
An answer i can understand.....thx!
Dcnovicky said:
An answer i can understand.....thx!
Click to expand...
Click to collapse
Ha, anytime my friend
Sent from my ADR6425LVW using Tapatalk 2
brenuga said:
I'm not a dev, but in my understanding the biggest hurdle for porting ROMS is device drivers. It is relatively easy to port a ROM from the HTC One X to the HTC Rezound, because they are made by the same manufacturer, have the same system-on-a-chip manufacturer (Qualcomm) and have a similar stock kernel based on different versions of HTC Sense.
But porting a ROM from, let's say a Samsung Galaxy III is nigh impossible, because it uses a different system-on-a-chip exclusive to Samsung phones and its stock kernel is based on TouchWiz. And even though Android is based on Linux, each of the phone manufacturers have slightly different ways of organizing system files that set the various system options. So a kernel patch that works on one device probably won't work on another. (kernel level features such as GPU overclocking, two-way call recording etc. rely on these system setting files).
Even among phones made by the same company, you may have hardware differences such as different camera technologies, different screen resolutions, etc. that make porting harder.
That's why cyanogenmod, AOKP and MIUI are so valuable and appreciated, because they organize porting of a ROM that, as far as the kernel and GUI are concerned, vary little between devices. However those projects still have to rely on what manufacturers choose to release as open source to develop hardware device drivers to port the ROM to each device.
And then you have the problem of, what level of Android is officially supported by the manufacturer? The Droid Incredible 2, for example, is still waiting for an official ICS release it may never get, which means running Jellybean as it is meant to be run is that much harder. It's hard enough on the Rezound, where we have official ICS kernel source.
That's why I give lots of kudos to people who take custom ROMs like BAMF paradigm, paranoid android and the like that were developed for other devices and port them to the Rezound. And mega kudos to people like chad who can port/re-factor underlying hardware code originally developed for another device to work on the Rezound. We're talking crazy wizard-level stuff like memory management, camera, hardware graphics optimization (Project Butter).
Click to expand...
Click to collapse
I'll hit that thanks button just for that essay you typed
Sent from my ADR6425LVW using xda app-developers app
I got a Project Tango tablet from work, it has k1 tegra chipset and it is stuck on original firmware, which is android 4.4.4 and doesnt performs very well on normal tasks as far as it is very powerfull hardware. Any chance I can upgrade it with custom firmware? Maybe shield tablet which has similar hardware without the special sensors?
Last time I had the tango (back in July 2016) there were no custom firmware/rom for it. I would check out the Tango Devs group on G+ to see if anyone has created an update for it.
Any news about this? Any help would be much appreciated.
SrAgaporni said:
Click to expand...
Click to collapse
First off you are going to need root the device. Then a custom recovery. Then you can think of customs ROMS if you can work out the hardware and the appropriate drivers.
Just because it has the same processor as the Shield does not mean that all the other hardware is the same.
Sent from my SM-G930F using Tapatalk
ashleyglassel said:
First off you are going to need root the device. Then a custom recovery. Then you can think of customs ROMS if you can work out the hardware and the appropriate drivers.
Just because it has the same processor as the Shield does not mean that all the other hardware is the same.
Sent from my SM-G930F using Tapatalk
Click to expand...
Click to collapse
Thanks, the process is crystal clear, I just wanted to know if anybody already advanced anything in this device, but it feels as there is no progress at all, so It will be worth to sell this nearly new tablet and buy another device with more community working with it. A shame, with 128Gb emmc, 4Gb RAM and a powerfull processor...
It would be great if we could get any assistance from Google on this, I highly am doubtful they will release kernels but it is worth trying to petition them to release them, or anything of value towards this, to the community. The hardware is excellent on the tango Dev tablet, but at this point the software is absimal, and, as is, barely functions. I find most software cannot run and constant glitches make using it worse than a contemporary generic device despite an excellent touchscreen and the tegra processor.
I have rooted my Tango tablet, but what hopes do we have of a community rom running any newer version of Android? (5.1+) The shield tablet has similar hardware and could maybe be used as a base to develop from, as the basic kernel will be similar. anyone determine what wifi/Bluetooth hardware is on board the tango?
Come on Google, help us get full functionality and release the kernels!
Is there any one behind this project?
alexcount said:
It would be great if we could get any assistance from Google on this, I highly am doubtful they will release kernels but it is worth trying to petition them to release them, or anything of value towards this, to the community. The hardware is excellent on the tango Dev tablet, but at this point the software is absimal, and, as is, barely functions. I find most software cannot run and constant glitches make using it worse than a contemporary generic device despite an excellent touchscreen and the tegra processor.
I have rooted my Tango tablet, but what hopes do we have of a community rom running any newer version of Android? (5.1+) The shield tablet has similar hardware and could maybe be used as a base to develop from, as the basic kernel will be similar. anyone determine what wifi/Bluetooth hardware is on board the tango?
Come on Google, help us get full functionality and release the kernels!
Is there any one behind this project?
Click to expand...
Click to collapse
if you want the development of the kernel at least started, make the kernel start logs. use the program syslog from Google Play for example.
I completely forgot that I found and downloaded the source code of the kernel on this tablet. The kernel is there version 3.10.24. With a strong desire, it could easily be adapted to the modern kernel 3.10.96.
I have the possibility of getting this tablet sub $100 and would be extremely interested if a newer Android could be loaded here. Or even maybe something like UBports (formerly Ubuntu Touch)
Vartom said:
I completely forgot that I found and downloaded the source code of the kernel on this tablet. The kernel is there version 3.10.24. With a strong desire, it could easily be adapted to the modern kernel 3.10.96.
Click to expand...
Click to collapse
I can't find this source anywhere, could you upload a copy? I know a few people, myself included are looking for it. Someone else who is looking https://plus.google.com/u/1/+GregWillardr3pwn/posts/V1K5XDBtKig
ShapeShifter499 said:
I can't find this source anywhere, could you upload a copy? I know a few people, myself included are looking for it. Someone else who is looking https://plus.google.com/u/1/+GregWillardr3pwn/posts/V1K5XDBtKig
Click to expand...
Click to collapse
They have been with me for so long that I don’t remember exactly where I downloaded them from. I remember that it was some kind of official site about the project of tango.
1
2
3
Vartom said:
They have been with me for so long that I don’t remember exactly where I downloaded them from. I remember that it was some kind of official site about the project of tango.
1
2
3
Click to expand...
Click to collapse
So you don't know exactly if these were the most recent version of the source?
If these are not the latest, it's better than nothing. I'm going to share these with that other guy and on reddit. Thank you for uploading these.
For anyone following this, the latest kernel appears to be here https://github.com/r3pwn/android_kernel_google_yellowstone
Hi guys, orginal Android 4.4 is still the latest Rom available, correct ?
HI.. I need the ROM stock for this device, Someone?
Hi again.. I found this on github, someone know something about this project?
NVIDIA AOSP device tree for building Project Tango Android 7.0
https://github.com/Project-Google-Tango/android_device_google_yellowstone
Anonikat I looked at that too. How great would that be? A 7.0 N even if I'd loose some Tango functionality. I'd just like it as a regular tablet, personally.
ShapeShifter499 said:
I have the possibility of getting this tablet sub $100 and would be extremely interested if a newer Android could be loaded here. Or even maybe something like UBports (formerly Ubuntu Touch)
Click to expand...
Click to collapse
Closest I've seen so far that seems functional for the most part is LineageOS 15.1 (Android 8.1) that's listed as an unofficial release in this forum.
Here is TWRP recovery project for this device https://forum.xda-developers.com/sh...overy-project-tango-k1-atap-twrp-3-2-t3901519