Paul Burton

Often geeky projects and ramblings

Transformer android project page

January 12th, 2012 by paulburton

So, just to be clear and in case you didn’t notice: anyone looking for android (ICS) builds for the ASUS Eee Pad Transformer TF101 should head over to the new project page which you can also see linked to on the right of the homepage. That will be kept up to date with the latest builds. It also contains a list of known issues and instructions for retrieving the source.

ICS on the Transformer TF101 (Because exams are boring)

January 5th, 2012 by paulburton

I got bored of revision and decided to do something more interesting, which led to running Android 4.0.3 (Ice Cream Sandwich MR1) on my EEE Pad Transformer. It needs a lot of work still – basically the touchscreen & keyboard work and very little else, and the touchscreen is a bit of a bodge. It is all shiny and smooth though :) Progress may have to be slow until exams finish…



Apologies for the terrible quality photos, I’d make a video but I’m lazy. Anyone foolishbrave enough to try this out can do so by flashing the images from this archive using nvflash (Update: see the project page). If you don’t know how to do that, you probably shouldn’t attempt to run this at this stage anyway. As ever, if you brick your device attempting to use this you’re on your own.

Building this has taught me a couple of things over the past couple of days:

  1. Google seem to have put out the ICS source without actually building it, there are a few minor build breakages in the tree…
  2. Closed source binary blobs are awful, though I knew that already… This certainly reinforced it…
  3. A core i5 with 8GB of RAM isn’t enough, need more speed!


I’ll upload newer builds as things start working, unless ASUS or somebody else beats me to it.

UPDATE: I spent another couple of hours on it and got WiFi up :) Here’s the new image. (Update: see the project page)

Trust

November 28th, 2011 by paulburton

Keep calm and trust the almighty God

5 Trust in the Lord with all your heart and lean not on your own understanding; 6 in all your ways acknowledge him, and he will make your paths straight.” Proverbs 3:5-6

Trust is difficult – it shouldn’t be, but it is. We all view the world through our own understanding of it, but our understanding is finite and limited. I understand the inner workings of an intricate computer chip, but not how I should use that. I understand how stars form from clouds of dust, but not how that dust first came to be. I understand that God willingly died for me to live, but not my own heart when I turn away. There is a lot I do not understand, so much that even thinking of trusting in my own understanding of the world seems like a ridiculous idea. But God understands all. His understanding, much like his love and his grace, is infinite. The father knows absolutely everything and promises that he’s working for our benefit (Proverbs 3:5-6 above, Romans 8:28), and that being the case trusting God and seeking his will is the only course of action that makes sense. So why is it so hard?

Timing

I’m impatient. I want answers, I want knowledge, I want guidance and I want them all now. God works on his own time-scale not mine or yours, and that’s incredibly frustrating. It’s so easy to lose sight of the fact that God has a plan, he knows what he’s doing. Look at salvation – man falls in Genesis and God has a plan, right there in the garden (Genesis 3:15). He then carries out that plan over thousands of years, across many generations of mankind until he defeats sin at the cross. Why did it take so long? I’ve no idea. But if God is capable of carrying out such a plan and capable of showing such grace in doing so then how can I not trust him to have a reason, and to have the same in my own life? I pray and want an answer immediately, but I shouldn’t. If it takes a year or two for a reply, I’m sure there’s a reason for that. It’s frustrating and even painful, but God has all power and he’s working for my good – and I need to remember that.

No

Of course, there’s also the possibility that when God seems to be taking a long time to answer prayer he is answering it already – he’s just saying no. I don’t think anyone likes being told no, particularly concerning something they consider important enough to have been praying about for a long time. Again here it seems to me that remembering God’s the one with true understanding and a plan far superior to mine is the only solution. So I pray that if I’m wrong he’ll change my heart and desires to match his own, and if that isn’t happening I see no option but to live in hope that I’m not being told “no”, simply “not yet”.

Delusion

So what’s the cause of all the above? The great delusion that I know better than God, that I understand, that my plan is superior. That simply isn’t true, but though I know it in my head I seem to forget it in my heart so often. Please God, change my heart – work in it and help me to trust you always, in all ways.

Why on Earth did I write this?

It’s quite a deviation from previous technical posts, but I often find it useful to write down my thoughts for my own benefit. Condensing them into English forces me to think things through and clarifies an often messy chain of thought. It’s also funny to read them years later and wonder what I was thinking… This one seemed like it’d be readable to others, and I presume if you’ve made it this far you found it at least vaguely interesting. If not, well you chose to read it and I’m offering no refunds.

It’s dead Jim

January 12th, 2011 by paulburton

Well, I built gingerbread. It boots. It flashes up the lock screen, which looks quite nice. It swaps like crazy. It dies pretty quickly. Could it be made to not die? Yes, the timeouts Android uses to decide when to kill processes could be increased, but that doesn’t solve the problem of it being so slow to begin with. Could it be made not so slow to begin with? Sure, whack in some more RAM. Can I do that? No. Am I going to ship off my Axim and pay lots of cash to have someone else do that? No. Is there any alternative? Perhaps cut out half of the Android frameworks/daemons, and be left with something kinda-sorta-almost-Android that doesn’t run half of Android’s apps. Will I do that? No.

Sorry guys, Android is growing with each release and it’s simply gotten too big to fit in the tiny little memory of the Axim. I officially give in.

If anyone cares, the gingerbread code is on gitorious under the axdroid project, you should just need to checkout the axdroid repo and run make. I didn’t get to the point of integrating building the wifi module etc for gingerbread. The older froyo code is still around under the axdroid-old project.

Axdroid

December 13th, 2010 by paulburton

To clarify guys, I have some time off work coming up over new year period and am planning to do some work on Axdroid once the Gingerbread code is released (which will hopefully coincide with that quite nicely!).

Spammers…

November 21st, 2010 by paulburton

Currently, the comments system on this blog has 1156 pending comments, the vast majority of which are spam. There’s no way I’m going to spend hours sorting through all of them, so I’m afraid I’ll probably just delete them all and then look into some sort of filter. If you posted a legitimate comment that I haven’t gotten around to approving then I apologise…

Axdroid moved

September 26th, 2010 by paulburton

For various reasons I just moved axdroid from github to gitorious. I also made some changes to the organisation of various config files, and changes like building the android platform code with the new toolchain, and linking busybox with bionic rather than needing eglibc (ie. the axdroid toolchain now targets baremetal, and the only libc around is bionic). If you build axdroid yourself, you can either update the git repo remotes to point to the right place and do an update (then clean is probably wise), or just start again with:

git clone git://gitorious.org/axdroid/axdroid.git
cd axdroid
./build.sh

As I write this the kernel source is still uploading, and I’m going to sleep. I’ll make sure it’s all fine tomorrow.

Axdroid 2010-09-16

September 18th, 2010 by paulburton

Get it here :)

Little in terms of major user visible changes again I’m afraid. The biggest are probably that the lock screen is disabled once more (and in a much better way than I did before – I need to think of how I’ll distribute this code though, I have to choose between a custom frameworks/base repo or a patch file…), and any key should wake up the device rather than just menu. I’ve spent a while changing things in the build system, and mostly want to make sure I didn’t break anything (that wasn’t broken before :p). Axdroid now uses it’s own toolchain rather than the prebuilt codesourcery ARM toolchain. The axdroid one is newer (GCC 4.5.1 & binutils 2.20) and targets the xscale specifically, and seems to have built a smaller kernel binary than the codesourcery toolchain did. CompCache is updated to it’s latest code. I have ported the Axim code over to Linux 2.6.35, but it seems to have some bug involving a spinlock, so until I get chance to look into that Axdroid is still on 2.6.32. The init scripts saw some changes, and some stuff was moved around from the initrd to the root filesystem. Anyway, moan if I broke something.

Also, I just registered the IRC channel #axdroid on freenode. Let’s see if anyone uses it :)

Finally, for anyone who builds Axdroid themselves, sorry about all the changes to the build system! You might want to just grab a fresh copy and start from a clean slate. At the very least, you’ll want to ./build.sh -c and mv src/kernel src/kernel-2.6.32. If you happened to build a toolchain whilst I’ve been messing with it over the past few days it’s probably worth doing rm -r toolchain too. I don’t have any more major changes to the build system planned, and switching to Linux 2.6.35 should happen seamlessly with a ./build.sh -u when I get it working (if you move src/linux to src/linux-2.6.32 as I said). Also, whilst we’re stuck on 2.6.32 you’ll need to apply this patch to compcache to get it to build. Once 2.6.35 works it won’t be necessary anymore (but won’t hurt either).

Blog Moved

September 8th, 2010 by paulburton

I’m moving my blog over from blogger to my own domain at http://www.paulburton.eu. It could still use some work but it’s up at least :)

As a reward for actually paying attention to that, the latest Axdroid build: 2010-09-06 :) There are no major changes, but this is the build that should finally fix LCD & touchscreen for everybody. If not, shout loudly.

Axdroid 2010-08-30

August 30th, 2010 by paulburton

Oh my…
Axdroid 2010-08-31 release 2, get it whilst it’s hot.
Axdroid 2010-08-31, get it whilst it’s hot.
Axdroid 2010-08-30 release 2, get it whilst it’s hot.
Axdroid 2010-08-30, get it whilst it’s hot.

So, there’s nothing major in here, but I figured I’d update everyone with the current build.

Changes I can remember:

  • Android should actually fit on the screen properly for QVGA devices.
  • Back/menu keys swapped, so that back is on the end. It just seems right.
  • The menu key will now actually let you use the unlock screen. I’m still unsure about it, it seems pointless for Axims since they have a lock switch. Anyway, thanks to Danilo Riso for figuring this one out.
  • QVGA setup on X51 hopefully fixed, thanks Max for the updated pixclock value.
  • Tweaked some kernel config options etc, perhaps (hopefully) slightly faster.
  • EDIT: hopefully fixed the touchscreen for the X50, and hopefully didn’t break any X51s. If you happened to download the first release, please try out the second. It would be great if people would run this tool and let me know what it outputs and which device they ran it on.

About my previous post: yes, it refers to WiFi, which I have been working on for the past couple of days. I’ve figured out how to power WiFI on/off, and added some Axim-specific code to the code from the acx100 driver project. The driver is able to load firmware and communicate with the acx100 successfully. My work on it is in this build, and you can turn WiFi on/off in the settings (usually, it’s kinda flaky). However, it scans but never finds any networks. I’ll need to find more time to look into it. Hopefully soon, we’ll have WiFi working and Axdroid might even become useful :)

« Previous Entries