Forgot your password?
typodupeerror
Android Operating Systems

Android 4 Coming To the Raspberry Pi 99

Posted by Unknown Lamer
from the working-down-the-feature-list dept.
SmartAboutThings writes "Raspberry Pi ... might be getting a functional Android port real soon. According to a post on their official blog, they have managed to port almost all the basic functions of Android 4.0 on Raspberry Pi, besides audio support. This comes after the Raspbian OS has been released for Raspberry Pi, and it promises to be 40% faster." For anyone hoping for source to the graphics accelerator, you're still out of luck: everything video related is still implemented using a blob.

This discussion has been archived. No new comments can be posted.

Android 4 Coming To the Raspberry Pi

Comments Filter:
  • by h111 (2698497) on Wednesday August 01, 2012 @10:25AM (#40842111)
    That Raspberry Pi supports Android should not come as surprise to anyone. Android has always been designed to be extremely lightweight and to be ran on minimalistic hardware. Unlike full suited competitors like iOS and Windows Phone 7, Android is best designed for feature phones and "smart" phones that don't require much.

    The oddest choice, however, is that on top of the Linux stack pretty much everything runs on freaking Java virtual machine. I do hope that Rasbperry Pi, however, is not trying to emulate that. Other than that, great job guys. When you can get Android running on $29 hardware, you know you're dealing with some mad OS that can run on every piece of crap you put it on.

    Great job Rasperry Pi guys!
    • Re: (Score:3, Informative)

      by Anonymous Coward

      Android does not run the Java Virtual Machine. It runs a totally different virtual machine - Dalvik. Yes, you use the Java programming language, but the bytecode is NOT Java. It's Dalvik.

      • So, what you're saying is that it's "write once, run anywhere but android"?

        • by Anonymous Coward on Wednesday August 01, 2012 @11:06AM (#40842637)

          So, what you're saying is that it's "write once, run anywhere but android"?

          Java has never been that portable anyway. If you want to write code that you can run in virtual machines on pretty much any platform I would go for NES-compatible. There aren't many platforms out there without a NES emulator.

          • Java has never been that portable anyway.

            You're doing it wrong, then. Even Android Java is portable at the source level as long as you stay away from the the Android-specific packages and keep to the basics.

            You can't be all things to all people, but Sun did a fairly good job of making something that did a reasonable approximation while at the same time hooking efficiently into the native platform OS.

        • by gl4ss (559668)

          write once, port anywhere.

        • by Flipao (903929)

          So, what you're saying is that it's "write once, run anywhere but android"?

          No, but you already knew that,p... doesn't even hold up to scrutiny on the Java VM

          http://en.wikipedia.org/wiki/Write_once,_run_anywhere [wikipedia.org]

          The catch is that since there are multiple JVM implementations, on top of a wide variety of different operating systems such as Windows, Linux, Solaris, NetWare, HP-UX, and Mac OS, there can be subtle differences in how a program may execute on each JVM/OS combination, which may require an application to be tested on various target platforms. This has given rise to th

      • by Nerdfest (867930)

        Don't feed the troll (or shill). New user, brief comment history is pro-Microsoft 'information', much of which is not even true. This is a bit better than the usual over the top, obvious stuff though.

    • by Dr. Manhattan (29720) <<sorceror171> <at> <gmail.com>> on Wednesday August 01, 2012 @10:38AM (#40842277) Homepage
      On the other hand, Android likes a bit more RAM than 256MB. My original Droid has 256MB of RAM, and had some issues with version 2.2 (Froyo). I had to do some fairly extensive tweaking to get acceptable performance with Cyanogenmod (2.3 Gingerbread). I'd be quite nervous to try to run ICS with that amount of RAM...
      • by Fallingcow (213461) on Wednesday August 01, 2012 @11:15AM (#40842769) Homepage

        It continues to amaze me that modern "light weight" operating systems are so much more resource hungry BeOS was, doing essentially the same tasks—especially since they get to offload so much basic UI work to the graphics chip!

        My phone's much more powerful than my old Pentium 133Mhz machine w/ 64MB RAM (luxury, I know) was, yet BeOS on that clunker was 100x more responsive and less prone to weird UI bugs, brief hangs, and outright lockups than my Android phone. iOS is (a lot) better, but still very greedy and bloated by comparison.

        Then again, it ran circles around its contemporaries in the desktop operating system arena (including Linux), so maybe it was just so good that it's asking too much to expect even a company with vast resources to write something comparably nimble and capable.

        • by kaiser423 (828989)
          A lot of that extra RAM space is actually in all of the images/bitmaps. When you're phone is doing 720p, just caching a background image is pretty huge. Add in all of the layers to draw on top of it (widgets, icons), some picture caching for recently run apps, etc and you're using a pretty huge chunk of RAM. On my OG Droid w/ 256MB of RAM, I noticed that when I was running out of RAM, most of what was taking up space was cached images.
          • by gl4ss (559668)

            it's just 3 686 400 for a 1280x720x4 bytes image. so if you have ten fullscreen frames of gfx loaded it'll still just take 36 megs. with the amounts of ram in 256mbyte+ it doesn't really matter that much. true, just upping displays from 16bit to 32bit back in the day did matter, but on pc's (and surprisingly enough on phones just few years ago) the ram amounts available were in 16-32 megs ranges when that switch happened, once the ram 10 times that much it doesn't matter as much.

            not that it matters, a lot

            • by Anonymous Coward

              I'm still waiting to read a decent explanation why ICS needs more ram than GB

              Um, why? I mean, why are you waiting? They've already explained that - hardware acceleration is expensive. Phones have shared GPU/system RAM - it isn't dedicated. So take those 1280x720 images and *double* the RAM cost as you now have the decoded bitmap in system RAM, and the GL texture for the GPU to actually draw. Add various caches for things like text on top of that (GPUs don't really do 2d vector drawing, so things like text are rendered by the CPU and uploaded as a GL texture - then subsets of that te

        • by pipeep (2106308)

          They do get to offload a lot of the work to the graphics chip, which undoubtedly helps, but they're also expected to perform compositing now, and typically to include all sorts of extra graphical effects. On top of that, as h111 mentioned, we have all these interpreted languages and VMs (such as Dalvik), and all the work done by modern web browsers to handle fancy interactive websites.

          It's the price we (or rather, perhaps, the typical consumers) pay for prettier graphics and easier software development.

        • by dave420 (699308)
          And your BeOS was 100x less able.
          • Than Android? Than Windows and Linux in the same time period?

            To either I say: hahahahahaha.

          • by gl4ss (559668)

            Yeah on beos you could actually reboot parts of the os without having to reboot the whole thing - load soundcard drivers on the fly without crashing a single thing for example.
            or you mean it didn't include a mail reader or desktop embeddable windows or ?

            it's still better than osx and windows combined. if there were modern drivers and sw I'd use it.

    • If they don't include the I-can't-believe-it's-not-a-JVM, they aren't running Android in any useful sense of the word...

      If you don't include that(and the various system-provided widgets and APIs and things that depend on it), 'Android' is just a slightly weird Linux kernel(unless they've finished the merge, I can't remember offhand) that typically ships with a rather spartan collection of userspace applications. If you aren't going to include everything you need for full Android compatibility, you might as

    • by ShanghaiBill (739463) on Wednesday August 01, 2012 @10:41AM (#40842327)

      pretty much everything runs on freaking Java virtual machine. I do hope that Rasbperry Pi, however, is not trying to emulate that.

      The Raspberry Pi has a Broadcom BCM2835 SoC, which includes an ARM1176JZF 700 MHz processor. The "J" in ARM1176JZF indicates that it includes the Jazelle hardware accelerator for Java. So it should be able to run Java very efficiently.

      • by Microlith (54737)

        Dalvik != Java. The bytecode isn't compatible with the built in accelerator, and this was deliberate.

        • by gl4ss (559668)

          Dalvik != Java. The bytecode isn't compatible with the built in accelerator, and this was deliberate.

          afaik that might not really matter with jazelle. bigger problem is that it's totally properiaty, they won't give you docs AND IT'S SLOW AS SHIT. but from what I read iirc it wouldn't be that much of a thing to convert the dalvik code accordingly. however if you can do just regular JIT it'll beat the shit out of jazelle.

      • by Anonymous Coward

        Negatron delta. While the SOC does support java acceleration through Jazelle, ARM's implementation is proprietary and the technology is deprecated in favor of ThumbEE, which the older raspi SOC lacks.

        http://www.raspberrypi.org/phpBB3/viewtopic.php?f=2&t=5111
        http://www.raspberrypi.org/phpBB3/viewtopic.php?f=7&t=1924

      • by Tapewolf (1639955)

        I heard there were licensing implications for using the Jazelle module, which is why nobody does...

        • by ansible (9585)
          Above and beyond that fact that you couldn't use Jazelle with Dalvik (as mentioned above), I've heard that the performance improvement from Jazelle wasn't really worth the effort for a modern mobile OS. Part of the issue, IIRC, is context switching. If you were running everything in Java (no native code execution) then it might be worth it. But if you're switching from ARM code to Jazelle and back again (as you would with a Linux kernel and userland Java apps), then the overhead takes away the performanc
      • by TheRaven64 (641858) on Wednesday August 01, 2012 @12:59PM (#40844343) Journal
        Jazelle is not publicly documented. The technology basically reserves a few registers for VM state and the rest for the stack of the current program. You use a special branch-to-Jazelle-mode instruction and then it starts executing Java bytecodes, trapping into the emulator for complex ones. There are two problems with this. The first is that the lack of documentation and the requirement to pay a patent license fee if you do use it even with the (expensive) documentation means that there is no open source implementation. The second is that it executes JVM bytecodes, not Dalvik ones.
    • by Joce640k (829181)

      Android has always been designed to be extremely lightweight and to be ran on minimalistic hardware.

      Is that why they based it on Java?

      • by DrXym (126579) on Wednesday August 01, 2012 @11:03AM (#40842611)
        It doesn't use Java. It uses a register based virtual machine called Dalvik. It has been designed to be as lightweight as possible. The Android OS also uses a cut down user land and a cut down C runtime called BIONIC. It can run on low memory devices but I doubt Android 4.0 was ever envisaged to run on such a tight setup and I doubt the performance will be great.
        • The Android OS also uses a cut down user land and a cut down C runtime called BIONIC.

          I hear these things like cut-down and lightweight. Honestly, how bloaty is the full glibc runtime and standard library? My 900MHz eee runs very nicely, and is now comparable in performance to high end phones.

          Also, Linux ran very nicely with a full glibc on my P133 with 72M of RAM back in the day, the PII 400, then the PIII 850, then the P4 laptop, then eee, the Core i7 laptop...

          I wonder at what point the "cut down" userland

          • by DrXym (126579)
            Glibc is bloaty enough that most embedded Linux runtimes don't use it at all. They'll use uClibc instead which is mostly API compatible but is modular so it can compiled down to a small footprint so stuff like math library can be dumped on the floor.

            BIONIC would be similar to that, implementing the most common Posix stuff but in a reduced form to support the OS and no more. Android userland is BSD based otherwise they'd probably have used uClibc too.

          • by n7ytd (230708)

            The Android OS also uses a cut down user land and a cut down C runtime called BIONIC.

            I hear these things like cut-down and lightweight. Honestly, how bloaty is the full glibc runtime and standard library? My 900MHz eee runs very nicely, and is now comparable in performance to high end phones.

            Also, Linux ran very nicely with a full glibc on my P133 with 72M of RAM back in the day, the PII 400, then the PIII 850, then the P4 laptop, then eee, the Core i7 laptop...

            I wonder at what point the "cut down" userland in Android is compared to the history of full userlands before.

            I suspect that quite a bit of it is premature optimization.

            You would be correct. The binaries for the runtimes are smaller, which is supposed to be good for both flash and RAM usage, but makes doing anything in C on an Android platform a royal nightmare. But, from Android's perspective that's OK, since you will be developing in Java anyway. The BIONIC library is custom-fit to include only the features that the Android team deemed necessary to get the system up to the point that developers can then use Java for applications.

            If you have the displeasure of working

          • The raspberry site suggests performance is in line with an old 900mhz Pentium 2 (plus a fancy graphics card), so it might not be too crazy to compare capabilities with your older machines. Weird glibc optimizations are no end of trouble in my experience; working out what pieces are missing and hacking applications around that to get them to build is a huge hurdle in bringing otherwise Linux compatible software to these devices.

            • by DrXym (126579)
              Performance is going to be in line with a very slow smart phone running the latest Android 4. I wouldn't get my hopes up if I were you. I've use raspbian on the Pi and while it works the experience is definitely in line with the specs of the device - very slow. I see the Pi more useful for embedded applications where there is only one or two application processes running so the context switching is minimized and best use can be made of the hardware. Rasbmc works fairly well on the Pi because the hardware de
    • $25/$35 depending on model. Plus applicable tax and shipping.

      • More close to 40€ for Model B. I know, I have two. One was from RS Components and was ~38€ and the other one was from Farnell/Element 14 and was ~42&euro, including VAT and shipping. You need a micro-usb power supply (hard to find relatively cheap, at least where I live. Best buy them with the device) and an SD card. The full price of my two Pis including SD and power supplies: 106,21€, where SD cards and power supplies were bought locally and on sale.

        Now, I just need 6 more for an

        • by vlm (69642)

          Now, I just need 6 more for an 8 node beowulf cluster ;-)

          I also have "make a R-pi cluster" on my list. More for training and experimentation under ultra-portable and sorta low power conditions than any thruput goal. Also I'll be honest for the cool hack value. Whats killing it is memory. I would love a $50 model that has a gig (or dare I ask for more?) on board.

          • Given we're talking about an additional 300€, I most likely won't be doing it any time soon as I need the funds elsewhere. I also have no real use for a beowulf cluster, and I would only do it for the "it's cool value" as you say rightfully. Oh, well, who knows :-) Hardware is insanely cheap these days, so if you really want a beowulf cluster, I'm pretty sure you could go with new material, spend less than 1000€ and get great results. Of course, that kind of money may or may not be a bit overk
            • by vlm (69642)

              Hardware is insanely cheap these days, so if you really want a beowulf cluster,

              Yeah I have a small 4 machine cluster in my basement, if something that small even counts as a cluster. What I want is a fully functional one small enough to fit in a lunchbox that'll run off practically a wall wart (well, thats asking alot, maybe a very large laptop charger...)

              Of course, that kind of money may or may not be a bit overkill for a weekend project.

              A lot longer than a weekend project in total, resulting in a pretty cheap per hour burn rate. I aim to keep my hobbies cheaper per hour than golf and dating, which is actually quite a lot of money.

          • by drinkypoo (153816)

            I would love a $50 model that has a gig (or dare I ask for more?) on board.

            VIA has something you should look at. Only 512MB but that's an improvement anyway. Unfortunately they want $30 for shipping, which is asstacular.

        • by ZeroSumHappiness (1710320) on Wednesday August 01, 2012 @11:17AM (#40842793)

          Let me say this again. The thing you are buying that is called a "Raspberry Pi" is priced at $25 for the Model A unit (not yet in production) and $35 for the Model B unit (in production and commonly on backorder). Tax and shipping is separate from the retail price of the product. VAT, being a tax, is a tax and thus separate, as an additional tax, beyond the $25/$35 price. Shipping, being shipping, is shipping and thus separate, as shipping, beyond the $25/$35 price. SD cards, being SD cards, are not "Raspberry Pis" and thus are separate beyond the $25/$35 price and so on for other additional peripherals.

          So though it may cost /you/ 42€ for a Raspberry Pi when you include additional costs related to complying with legal requirements, getting it to your door and creating a running setup from it that doesn't mean that the Raspberry Pi itself, which sells for $25/$35 (model depending) does not cost $25/$35. When I buy a pack of gum for $0.99 I pay $1.06 because of taxes. When I order cat food online for $25 for a case I pay $35 because of the $10 shipping. It doesn't mean my cat food isn't $25 a case. It means I pay for shipping.

          Look, Newegg has 8GB of ram for $45 right now! What's that, UPS shipping is another $6? Oh no, that means Newegg really only has ram for $51. No. The ram is $45. It's advertised at $45 and it costs $45. What's that, I can go to AlliedElect and order 4 Raspberry Pis and pay $35 each and $7 shipping? I mean, $36.75 each of course, because shipping doesn't exist and isn't priced separately.

          Look, the 13" Apple Macbook Pro with Retina Display is $1200. Wait, tax isn't included in that, how dare Apple claim their computer is $1200 when I have to pay $1275 for it? Despicable, it is. It makes me wretch.

          Stop pretending that the Raspberry Pi foundation is being disingenuous about pricing when 1. they have always marketed it as a just the actual computing device, not the storage, or the power supply, or the display or keyboard or mouse or modem or electricity or sense of smug self satisfaction you get from claiming they're lying and 2. it's not their fault that you have to pay for shipping and VAT.

          • Europeans have the strange habit of looking at the full cost of a device. To a European that 13" Apple MacBook Pro with Retina Display costs 1275€, and *surpise* in the European stores it is that way that it will be displayed. (Given VAT is more around 20% than something else, that MBPro would be 1440€ and shipping most likely complimentary)

            I have never said that the Raspberry Pi foundation has been disingenuous about pricing,. I just told what such a thing would cost effectively. In the end,

            • by CastrTroy (595695)
              Actually, if you live in Canada, you can get one from Newark [newark.com] for $35 CDN. Which, with today's exchange rate is $34.94. So you can get it for less than $35. Plus shipping and taxes of course.
            • by xaxa (988988)

              The price from RS in the UK ( http://raspberrypi.rsdelivers.com/default.aspx?cl=1 [rsdelivers.com] ) is £21.60 without VAT or shipping, which is $33.50. That's also what's printed on my invoice, from 19 May.

            • Sorry I snapped at you so harshly. I failed to take your comment in good faith. I'm sick of people complaining that the RPi is being sold at more than the promised price but shouldn't have taken out that frustration on you.

              If I recall correctly, one of the two distributors was explicitly including shipping in their price. However, if they're not selling at the exchange rate value of $35 before adding shipping they're doing it wrong and you should tell on them to the RPi Foundation.

              That said, pre-tax, pre

              • It's okay. An apology on slashdot is already a rare thing :-) I'm happy with the Raspberry Pi, happy with the price and happy with I can do with it.
          • by Anonymous Coward

            Tax and shipping is separate from the retail price of the product.

            Not in the UK, where it is a legal requirement to list the inclusive retail price ( tax + mandatory fees ) when selling to non-corporate customers.

    • by chrb (1083577)

      on top of the Linux stack pretty much everything runs on freaking Java virtual machine. I do hope that Rasbperry Pi, however, is not trying to emulate that.

      Dalvik uses a register-based architecture, which is supposed to be more efficient. It also has a just-in-time compiler so it's not like each bytecode is being interpreted. But, yes, if you want to run Android apps then you have to do it this way. Hypothetically you could use something like gcj to compile Android apps from Java source to native code and you might see a performance improvement.

    • Bee Ess (Score:2, Funny)

      by Anonymous Coward

      Android is designed to be lightweight? What nonsense.

      Ice Cream Sandwich? Raspberry Pie? I think I gained five pounds just reading this article.

      Lightweight? I think not.

      • Maybe, but that's just the desserts. The main course can be found in PCs running Fedora Beefy Miracle and ScummVM Picnic Basket.
    • by DrXym (126579)

      That Raspberry Pi supports Android should not come as surprise to anyone.

      I doubt there are many Android 4.0 devices which as little as 224-128MB of RAM which is what the Pi would have to work with. Also most Android 4.0 devices would have a higher clocked CPU, possibly with multiple cores to help it. So I wouldn't hold out much hope for the performance. It'll be very quick to kill apps because they exhaust memory or when they go into the background.

      To put it in context, you can buy a gumstick style device containing a 1Ghz Allwinner CPU, 1GB RAM and 4-8GB storage running Andr

    • More subtle than your usual efforts, but still obviously trolling.

      Android and iOS are about as capable as each other, with sizeable app ecosystems. Windows Phone is lagging way behind, and will never catch up.

      Your client's main product (Windows) got ahead in the first place by being "some mad OS that can run on every piece of crap you put it on". It's a winning strategy.

    • Unlike full suited competitors like iOS and

      You know they ported Android to one of the early iPhones and it ran like crap because of how much overhead Android needed for the Java stuff.

  • For all I can tell, this is solely an AOSP port like that used in the Archos 43. I'm not aware of any device profile in Android's Compatibility Definition Document for desktop or set-top devices, so I don't see how this Android port will be running the popular Android applications that are available only through Google Play Store. Or when was this changed?
    • by ADRA (37398)

      As in field of dreams, "if you build it, they will come"!

      The more important question would be if Google blesses the port for use with the Play Market at all.

    • by GiMP (10923)

      Does it matter? This will enable developers to build applications to run on the RaspberryPi that will be portable to other Android devices. They'll also be able to use their existing knowledge of Android programming to write their apps, or if only learning, will be learning a skill that is transferrable to other hardware environments. That in itself is an amazing and useful thing.

      No, I wouldn't recommend you make this your desktop. You could make it a set top, if you write your own apps or install open sou

    • How does Google TV factor in? I know only vaguely about it, but it would seem to have 10 foot interface apps.

    • by gl4ss (559668)

      ..there isn't one, but so what?

      android works just fine with mouse + keyboard. of course you can't bundle it with play store and distribute it. however, you could install play store anyways.
      so this will be running the popular android applications just fine, just find the apk's from somewhere and point the browser to the apk - done and done.

  • So which do you reckon is going to come first? Being able to get hold of a £25 raspberry pi and ICS for it, or an official ICS update coming out for my £200, 1-year-old Desire HD? I'm going to be puh-retty annoyed if its the former...
  • I'd be interested in loading andriod on my second pi due in late august, I hope it is out by then. The raspbain distro is very snappy on the little Pi. I'm very happy with it.

  • Now I can have a Ice Cream Sandwich with my Raspberry Pi(e)!

The devil finds work for idle circuits to do.

Working...