Jump to content


18/Mar - Desire port to Nexus One status update

* * * * * 1 votes

69 replies to this topic

#1
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 32,871 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:Galaxy Nexus / TF Prime
  • Twitter:@paulobrien
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

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco / Follow MoDaCo Android on Twitter - http://twitter.com/modacoandroid

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#2
commodoor

commodoor

    Enthusiast

  • Members
  • PipPipPip
  • 239 posts
  • Location:Venlo
  • Devices:Nexus One, HTC Desire
  • Twitter:@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 :)


#3
taz5176

taz5176

    Newbie

  • Members
  • Pip
  • 25 posts
  • Devices:HTC HD
GREAT WORK!


#4
GodDriven

GodDriven

    Diehard

  • Members
  • PipPipPipPip
  • 326 posts
  • Gender:Male
  • Location:On The Moon...
  • Interests:Hip Hop, of course, or why would I be an MC!

    Android, the little green giant!
  • Devices:HTC Thunderbolt
  • Twitter:@PlankLongBeard

View PostPaul, on Mar 18 2010, 09:39, said:

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, 18 March 2010 - 01:59 PM.


#5
haoyan

haoyan

    Newbie

  • Members
  • Pip
  • 4 posts
Thanks Paul! We will make a donation.


#6
Namuna

Namuna

    Newbie

  • Members
  • Pip
  • 8 posts
  • Location:NY, USA
  • Devices:Nexus One
  • Twitter:@lincolnm
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!  :)

Phone: Nexus One | ROM: Modaco r16 Froyo | Radio: Froyo 4.06
Kernel: pershoot 2.6.34 | Carrier: T-Mobile (Data Only plan) | Capacity: 8gb Class6
-------------------
System Addons:
-> LauncherPro
-> SetCPU
-> Chrome to Phone
-> Battery Indicator
-> Quick Settings

#7
18.4009

18.4009

    Newbie

  • Members
  • Pip
  • 15 posts
  • Devices:Nexus one
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


#8
chaval

chaval

    Newbie

  • Members
  • Pip
  • 3 posts
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!


#9
jdoo

jdoo

    Newbie

  • Members
  • Pip
  • 48 posts
  • Devices:nexus one
Paul, thank you for your efforts, they are GREATLY appreciated  :)


#10
shaniac

shaniac

    Newbie

  • Members
  • Pip
  • 20 posts
  • Devices:Nexus One, nook
  • Twitter:@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.


#11
pasael

pasael

    Newbie

  • Members
  • Pip
  • 2 posts
  • Devices:NEXUS ONE
  • Twitter:@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!!!


#12
grainysand

grainysand

    Newbie

  • Members
  • Pip
  • 13 posts
  • Devices:Nexus One
Thank you for your hard work and perseverance, Paul. You're the best.


#13
NexusCody

NexusCody

    Newbie

  • Members
  • Pip
  • 21 posts
  • Devices:Nexus One, iPhone 3Gs
  • Twitter:@codyt01
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.


#14
JonnyRockets

JonnyRockets

    Enthusiast

  • Members
  • PipPipPip
  • 205 posts
  • Devices:Nexus One

View PostNexusCody, on Mar 18 2010, 07:00, said:

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, 18 March 2010 - 03:28 PM.


#15
duderuud

duderuud

    Newbie

  • MoDaCo Ad Free
  • Pip
  • 43 posts
  • Gender:Male
  • Location:Holland
  • Devices:HTC One X
Awesome Paul! Hope to see a Beta 1 soon!  :)

Good luck with all the work!


#16
bearlyme86

bearlyme86

    Newbie

  • Members
  • Pip
  • 7 posts
  • Devices:nexus one
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


#17
PhonePersona

PhonePersona

    Enthusiast

  • MoDaCo Ad Free
  • PipPipPip
  • 275 posts
  • Gender:Male
  • Location:Denver, CO
  • Devices:Nexus Uno
And I think MoDaCo is due for another donation from me.
Lemme just get my next paycheck.
Word is bond :)

Edited by PhonePersona, 18 March 2010 - 05:12 PM.


#18
cezent

cezent

    Diehard

  • Members
  • PipPipPipPip
  • 374 posts
  • Devices:Desire HD, iPhone4, HTC Hero
  • Twitter:@czent
HTC should send Paul a big paycheck for the work he s doing here.


#19
JonnyRockets

JonnyRockets

    Enthusiast

  • Members
  • PipPipPip
  • 205 posts
  • Devices:Nexus One

View Postcezent, on Mar 18 2010, 09:31, said:

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, 18 March 2010 - 05:32 PM.


#20
commodoor

commodoor

    Enthusiast

  • Members
  • PipPipPip
  • 239 posts
  • Location:Venlo
  • Devices:Nexus One, HTC Desire
  • Twitter:@commodoor

View PostJonnyRockets, on Mar 18 2010, 18:32, said:

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 :)





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users