Jump to content

18/Mar - Desire port to Nexus One status update


Guest PaulOBrien

Recommended Posts

A status update!

I now have the release candidate of the Desire ROM! :)

The new ROM, which is MUCH newer than the build I have been using to date is faster and smoother, the Camera app is better synchronised with the flash, the Live Wallpapers selector is in the right place, the base is ERE27 rather than ERD79 and there are numerous little fixes all over the place! Of course, it will take a bit of time for me to do a full quality port over for the next MCR, but i've done a quick hack to flash it on and see what works.

That's the good news - the bad news is BlueTooth, Camera, USB connect popup and FM Radio still don't work correctly out of the box. BUT - I have discovered why.

Basically, it all comes down to the kernel.

I have confirmed that all of the above (i'm not 100% sure on BT, i'm still investigating that one) use specific features in the Desire kernel that aren't available in the generic kernel. HTC enhancements if you will. The Desire ships with a .29 kernel which, based on what i've seen in the apps and the setup of the config file, is pretty heavily customised. Unfortunately the Desire kernel doesn't boot on the Nexus One, so we're in a bit of a sticky situation until the Desire kernel source gets released, and it's unclear when that will be (HTC's track record in that regard isn't fantastic)!

All is not lost however, as I have started looking at a new approach to fixing the problems, as seen in the camera fix for Alpha 16. I'm basically hunting down the kernel specific hooks and - where possible - i'm rerouting those to an alternate location that I can control. Taking the camera app as an example, the libcamera.so file was checking kernel specific points before deciding whether the flash should fire or not. It was doing things like checking for a phone call, checking for a wimax connection (!), and when these checks didn't work properly, it was preventing the flash firing. By editing this library and rerouting those locations, I was able to make the flash fire - much better than just dropping in the 'wrong' library which was the previous solution. Similarly, the camera application itself was dropping back to 3 Megapixels by default because it was looking for a 'sensor resolution' file produced by the kernel, which didn't exist. By determining this as the cause and reverse engineering the Camera application, I was able to make 5 Megapixels the fallback resolution instead. Problem solved.

Hopefully a similar approach can be used for the other problems (FM radio, USB connection and Bluetooth) and we'll get everything 100% - believe me i'm working on it.

If we CAN get this working fully, the work i'm doing here - if I can get it 100% - will also enable Desire users to have newer kernels and custom kernels with all the goodness that brings, without being dependent on a HTC Kernel source release.

There's lots to do - starting with the RC port to use as a base - but it's been a fun ride and it's gonna get funner. Thanks for all your support! ;)

P

Link to comment
Share on other sites

Guest commodoor

WoW this is really great news, can't wait to see a stable desire port to nexus. Paul you are doing really great job.

Where do you find time to work with this? hahaha anyways i think i will make a donation (not forgetting other people!) soon for all the all the hard work you are putting in nexus development.

You guys(TCK, CM, MCR ....) make it nice to play with the nexus :)

Link to comment
Share on other sites

Guest GodDriven
A status update!

I now have the release candidate of the Desire ROM! :)

The new ROM, which is MUCH newer than the build I have been using to date is faster and smoother, the Camera app is better synchronised with the flash, the Live Wallpapers selector is in the right place, the base is ERE27 rather than ERD79 and there are numerous little fixes all over the place! Of course, it will take a bit of time for me to do a full quality port over for the next MCR, but i've done a quick hack to flash it on and see what works.

That's the good news - the bad news is BlueTooth, Camera, USB connect popup and FM Radio still don't work correctly out of the box. BUT - I have discovered why.

Basically, it all comes down to the kernel.

I have confirmed that all of the above (i'm not 100% sure on BT, i'm still investigating that one) use specific features in the Desire kernel that aren't available in the generic kernel. HTC enhancements if you will. The Desire ships with a .29 kernel which, based on what i've seen in the apps and the setup of the config file, is pretty heavily customised. Unfortunately the Desire kernel doesn't boot on the Nexus One, so we're in a bit of a sticky situation until the Desire kernel source gets released, and it's unclear when that will be (HTC's track record in that regard isn't fantastic)!

All is not lost however, as I have started looking at a new approach to fixing the problems, as seen in the camera fix for Alpha 16. I'm basically hunting down the kernel specific hooks and - where possible - i'm rerouting those to an alternate location that I can control. Taking the camera app as an example, the libcamera.so file was checking kernel specific points before deciding whether the flash should fire or not. It was doing things like checking for a phone call, checking for a wimax connection (!), and when these checks didn't work properly, it was preventing the flash firing. By editing this library and rerouting those locations, I was able to make the flash fire - much better than just dropping in the 'wrong' library which was the previous solution. Similarly, the camera application itself was dropping back to 3 Megapixels by default because it was looking for a 'sensor resolution' file produced by the kernel, which didn't exist. By determining this as the cause and reverse engineering the Camera application, I was able to make 5 Megapixels the fallback resolution instead. Problem solved.

Hopefully a similar approach can be used for the other problems (FM radio, USB connection and Bluetooth) and we'll get everything 100% - believe me i'm working on it.

If we CAN get this working fully, the work i'm doing here - if I can get it 100% - will also enable Desire users to have newer kernels and custom kernels with all the goodness that brings, without being dependent on a HTC Kernel source release.

There's lots to do - starting with the RC port to use as a base - but it's been a fun ride and it's gonna get funner. Thanks for all your support! ;)

P

Okay, Now this is the best Ive heard all day.. Forget the camera.. Thats inevitable with you P.. Inevitable. LOL...

See, I say.. Lets all give P another 20.. This way, when the desire releases, he can have the Hardware too.. This gives some ties on how he can give us more... (Plus He could use a Good Strip Club after a Hard days work.. Yes Sir..!)

I was also planning on getting a Desire.. Why Not..? Have a Droid, N1, then the Desire.. Bout to start cooking with P.. LOL..

Thanks P, and most of all let me say it like this.. Everyone pat yourselves on the back, tell yourself thank you, without us, Paul would have no one to fund his mission by credible people..

Nothing would have ever been, if it wasn't for us.. He loves us.. Like kids.. All remember that..

We're his children.. lol..

Edited by GodDriven
Link to comment
Share on other sites

Guest Namuna

Impressive work Paul. I imagine even with the detailed info you gave here, that was only the tip of the iceberg of how much you've put into this project.

Kudos and I can't wait to see what you come up with next! :)

Link to comment
Share on other sites

Guest 18.4009

Thanks so much Paul. You have made my nexus something that works for everyday stable use, something of beauty and something a blast to tinker with.

All the things I greatly enjoy.

You are the man!

18.4009

Link to comment
Share on other sites

Guest chaval

Good news, finally!.

Paul, Im wondering about the Desire kernel, will a port have other dissadvanteges besides cam, bt, usb.

In plain text, can you see everything in the kernel, that has to be rerouted in order for the port to work on the N1.

Im concerned in the general function of the phone, everyday use and so on.

Anyways, Im impressed with your work!

Link to comment
Share on other sites

Guest shaniac

Superb! This probably explains why my SD card won't work with your Desire ROMs, but works fine with everything else! I really hope they drop the kernel source, I love these ROMs, but I NEED my SD card, and I'm reluctant to buy another and find out it doesn't work either.

Link to comment
Share on other sites

Guest pasael

Thx to us ??? .... noooooo way man .... thanks a lot to you for making our devices faster, more configurables and funnier!!!! we really LOVE your work Modaco keep on doing it!!!

Link to comment
Share on other sites

Guest NexusCody

Paul you are the best. I've already done my donation, and I have a Incredible from Verizon on pre-order, but I'm not sure I'm going to want to switch.

I have an AT&T N1 showing up later today and I'm going to take that to Alpha 16 right away. My T-Mobile N1 will go off to one of my boys for use. I can't wait till you fix the remaining items, especially the Bluetooth, but I will be patient. You simply rock in how fast you get this stuff done!

Thanks again.

Link to comment
Share on other sites

Guest JonnyRockets
Paul you are the best. I've already done my donation, and I have a Incredible from Verizon on pre-order, but I'm not sure I'm going to want to switch.

I have an AT&T N1 showing up later today and I'm going to take that to Alpha 16 right away. My T-Mobile N1 will go off to one of my boys for use. I can't wait till you fix the remaining items, especially the Bluetooth, but I will be patient. You simply rock in how fast you get this stuff done!

Thanks again.

And just how in the heck do you have an Incredible on pre-order when it's not even announced yet?

; P :)

Edited by JonnyRockets
Link to comment
Share on other sites

Guest bearlyme86

Thank you, I'm new here and had NO idea how much work you do on all of our behalves.

Thank you, buying a premium account now!

Jason

Link to comment
Share on other sites

Guest PhonePersona

And I think MoDaCo is due for another donation from me.

Lemme just get my next paycheck.

Word is bond :)

Edited by PhonePersona
Link to comment
Share on other sites

Guest JonnyRockets
HTC should send Paul a big paycheck for the work he s doing here.

Uhhh... lol?

1. Isn't this technically illegal?

2. Why would they be happy that Paul is releasing an unreleased ROM? Think about that lol

Edited by JonnyRockets
Link to comment
Share on other sites

Guest commodoor
Uhhh... lol?

1. Isn't this technically illegal?

2. Why would they be happy that Paul is releasing an unreleased ROM? Think about that lol

Support for the pirates lol :)

Link to comment
Share on other sites

Guest Mogul B. God

Great job Paul, I just signed up yesterday and also got the Ad Free option and I must say I'm more than happy to have done that! Keep up to GREAT work!

Link to comment
Share on other sites

Guest The Hero
Uhhh... lol?

1. Isn't this technically illegal?

2. Why would they be happy that Paul is releasing an unreleased ROM? Think about that lol

C'mon, we already know that half the reason that iPhones and N1s get good updates from time to time is because of the work that guys like Cyan and MoDaCo do! The big companies and their developers sit back and wait for the problem to be solved here, then they swipe it and take the credit.

Link to comment
Share on other sites

Guest commodoor
C'mon, we already know that half the reason that iPhones and N1s get good updates from time to time is because of the work that guys like Cyan and MoDaCo do! The big companies and their developers sit back and wait for the problem to be solved here, then they swipe it and take the credit.

+1

You are right but this doesn't only happen with android, it's just how companies work. But what paul, steve and other guys do is really great they make my phone keep interesting and waiting for the next release.

i wish i could help but i'm just not a developer :)

Link to comment
Share on other sites

Guest JonnyRockets
C'mon, we already know that half the reason that iPhones and N1s get good updates from time to time is because of the work that guys like Cyan and MoDaCo do! The big companies and their developers sit back and wait for the problem to be solved here, then they swipe it and take the credit.

What, no way

Can you give an example of when this has ever happened?

I love Sense/Cyanogen etc, but I really don't think Google/HTC actually use their work. Would be nice if they did, but doubt they do

Link to comment
Share on other sites

Guest rimtp07

wait, i'm being lazy to look through all posts. but the download link doesn't work. the mirror gets messed up. i did download the rom earlier but it would flash on recovery. wth

btw, Paul, keep up the great work

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.