jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Nov 28, 2012 9:29 am

Ray_GTI-R wrote:OK, I think I've finally gotten my head around this ... the RPi may have clearly-publicly-on-the-forum unannounced, fundamental hardware/firmware issue that prevents any immeninent Android port being usable.

History?

Fingers were badly burned when the Foundation released the message "Android 4.0 is coming!" back in July (31st, 2012). The press announced that existing releases are "unusable" shortly thereafter and as recently as a month ago they said the same thing and keep doing so.

Since July all I've seen is negative news. Developers hit brick walls. Forum posts are circular, pleading, obtuse, repetitious, ignored and/or are hostile to kind requests for any update. Personal messages to the Foundation (Liz) go unanswered.

Prove me wrong, please! Just let everyone know ... we're all grown up hereabouts.
I don't need to prove you are wrong, I'll just tell you you are wrong. The Pi is capable of running Android, fully accelerated (you seen the proto doing it!). But as the previous poster says, it's simply not a priority. There hasn't been negative news, there simply hasn't been ANY news - because there is nothing to report.

The Foundation are relying on Broadcom who are in control of Android using the Videocore GPU. This is ongoing work (I know, because I am working on it), but it's pretty much complete. Then someone has to find the time to port the code to the Raspi specifically (current Android incarnations are on a different SOC). But, there shouldn't be any issues with that port, or at least, none that I have heard of. It's just a matter of the guys doing the port needing to find the time to actually do it, and the whole of Broadcom is EXTREMELY busy on actual day jobs at the moment.

This is all news that has been posted before.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Nov 28, 2012 9:31 am

Wizard wrote:Maby the absence of Android support is down to the fact that it's not at all prio?
I work professionally with Android development at one of the biggest companies that manufactures Android phones and I have never really thought of Android in the same sentence as Raspberry Pi...

Yes it would be nice if Raspberry Pi could run every os - including Amiga OS 4.0 - but that's only a dream and is not feasible.

Since major parts are closed source and no full-time resources are devoted/assigned to produce various drivers etc we can only ask/beg/bribe/etc for new features but never demand.

If you look at the purpose with Raspberry Pi foundation it's all down to availability and learning and whilst linux really fits the bill, Android doesn't IMHO.

I doubt that Raspberry Pi has underlying issues that prevents Android from being ported to it due to own experience with Android bring-ups on new hardware. It's simply lack of time and resources that are in play here and this is quite logical.
The Telecom market is facing a low in business and people are made redundant every day and in those days profit matters more than usual - hence perhaps why none is working with Android at Broadcom? Just a qualified guess ;)

If Android is made available one day I will have a look at it from a graphics perspective but it's not something I wait for...

And please understand that the mods and admins do this out of love for the platform and the foundation, not for the profit (which doesn't exist) or the business.

Sorry for being OT.
Mostly right! Only error is that Broadcom are working very hard on Android!
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

hermanhermitage
Posts: 65
Joined: Sat Jul 07, 2012 11:21 pm
Location: Zero Page

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Nov 28, 2012 10:33 am

jamesh wrote:Mostly right! Only error is that Broadcom are working very hard on Android!
Keep up the work! Think how yummy a little tablet or lapdock that could take a RPi insert would be!
(ok ok, it would probably need a slim line version but wouldnt it be great to have children using a device more flexible than those consumption only platforms...)

User avatar
Wizard
Posts: 120
Joined: Sun Aug 19, 2012 4:52 am
Location: Sweden

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Nov 28, 2012 6:33 pm

jamesh wrote: Mostly right! Only error is that Broadcom are working very hard on Android!
I meant working with Android for Raspberry Pi, not in general ;)

My purpose with the post was to highlight the fact that just because something's possible it doesn't automatically mean that it'll happen.
It's expensive to port and maintain Android to a new platform and with the current situation in Telecoms, return of invest is often required before porting can begin.
Raspberry Pi - finally a worthy replacement for A500!!!

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Nov 28, 2012 8:26 pm

Wizard wrote:
jamesh wrote: Mostly right! Only error is that Broadcom are working very hard on Android!
I meant working with Android for Raspberry Pi, not in general ;)

My purpose with the post was to highlight the fact that just because something's possible it doesn't automatically mean that it'll happen.
It's expensive to port and maintain Android to a new platform and with the current situation in Telecoms, return of invest is often required before porting can begin.
In fact the work being done on Android at Broadcom is applicable to the Raspi since it uses the same (or very similar) GPU, so the libraries are instantly compatible. So, in a way, Broadcom ARE working on Android for Raspberry PI!

I still don't know when it will be done though!
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

User avatar
meltwater
Posts: 1014
Joined: Tue Oct 18, 2011 11:38 am

Re: Project: Android JB 4.1 with Hardware acceleration

Thu Nov 29, 2012 8:48 am

jamesh wrote:
Wizard wrote:
jamesh wrote: Mostly right! Only error is that Broadcom are working very hard on Android!
I meant working with Android for Raspberry Pi, not in general ;)

My purpose with the post was to highlight the fact that just because something's possible it doesn't automatically mean that it'll happen.
It's expensive to port and maintain Android to a new platform and with the current situation in Telecoms, return of invest is often required before porting can begin.
In fact the work being done on Android at Broadcom is applicable to the Raspi since it uses the same (or very similar) GPU, so the libraries are instantly compatible. So, in a way, Broadcom ARE working on Android for Raspberry PI!

I still don't know when it will be done though!
It is great to know that things are still happening then. I think a lot of the concern was that since it was announced not much was heard so it was assumed there was a road-block of some kind. Also, since the video demo showed it working so well, it suggested to me (rightly or wrongly) that it was good old fashioned red tape holding things back.

Sometimes seeing stuff like the android AirPlay type thing is great on the blog, but annoying when it doesn't seem to surface afterwards. Also the stuff I've seen using monogame 3D which I am keen to try but again unable to reproduce. Yes I know it is no-one's fault, and it is just life sometimes.

Besides which, there are some many other great things to do on the RPi while waiting, more than enough to keep me busy!

Thanks for the update.
______________
http://www.themagpi.com/
A Magazine for Raspberry Pi Users
Read Online or Download for Free.

My new book: goo.gl/dmVtsc

Meltwater's Pi Hardware - pihardware.com

Like the MagPi? @TheMagP1 @TheMagPiTeam

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Thu Nov 29, 2012 10:20 am

It's important to remember that stuff takes time! You can see a demo of a new game for example, well over a year before it actually gets released. And that's with a dedicated team of engineers, rather than a few volunteers! Hindsight says that even though the preview of Android was very interesting, and did exactly what it said on the tin, perhaps it shouldn't have been posted. But then, people also complain when something appears out of the blue that they hadn't been warned it was coming!
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

User avatar
meltwater
Posts: 1014
Joined: Tue Oct 18, 2011 11:38 am

Re: Project: Android JB 4.1 with Hardware acceleration

Thu Nov 29, 2012 11:56 am

jamesh wrote:It's important to remember that stuff takes time! You can see a demo of a new game for example, well over a year before it actually gets released. And that's with a dedicated team of engineers, rather than a few volunteers! Hindsight says that even though the preview of Android was very interesting, and did exactly what it said on the tin, perhaps it shouldn't have been posted. But then, people also complain when something appears out of the blue that they hadn't been warned it was coming!
Totally understand, there is never a perfect solution and quite often it just isn't known when things will be ready. Can't win either way. Developers aren't known for patience if they can't see the swan's legs swimming in front of them.
The current GB non-hardware accelerated image is usable for experimenting with, enough to play with just no netflix yet!
______________
http://www.themagpi.com/
A Magazine for Raspberry Pi Users
Read Online or Download for Free.

My new book: goo.gl/dmVtsc

Meltwater's Pi Hardware - pihardware.com

Like the MagPi? @TheMagP1 @TheMagPiTeam

miiicmueller
Posts: 7
Joined: Wed Dec 12, 2012 11:23 am
Location: Switzerland

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 12:38 pm

To enable the double buffering into bcm2708_fb.c
modify

"yres_virtual = yres *2"
But don't know how vc support double buffering.
And we must modifiy/add page flipping function (panning)

I compiled and booted sucessfully JB on rpi.

lewmur
Posts: 371
Joined: Sun Dec 25, 2011 3:20 pm
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 4:22 pm

jamesh wrote:Not really much point in comparing O-DROID with Raspi Android - O-DROID was always intended as an Android device, and Android was ported on to it before release. Which is why it works now.

Android is pretty low priority for the Raspi - it's not its primary OS, and we have more important educational stuff to do, so I'm afraid patience is what is required.

What's needed are libraries for various features, that use the GPU for acceleration rather than relying the CPU - surface flinger, gralloc, camera etc etc. These do exist for the Videocore on other SoC's, and the GPU firmware on the Raspi does support all the features needed for Android acceleration. It's a matter of finding the time to plumb it all together.
James;
Please note that I agree with 99% of what you say. I've followed your post in many other threads, and know that you are quite adament about protecting the Foundation from "trolls" and "bashers". I agree wholeheartedly with that position.

That said, in this case, I think your, and the Foundation's, "priorities" are wrong in regards to Android. Yes, your focus is, and should be, on the educational value of the Pi. And I agree, as a *long* time Linux user and fan, that it is a great tool for learning computer basics and programming. But the same can be said for Android. After all, Android is just another form of Linux. But Android'ss "user base" dawrfs that of Linux Desktop. As such, from a practicle stand point, kids learning to develope apps, would have a much greater "audience", if the projects would run on Android devices.

I know that the members of the Foundation "have their hands full" with things just as they are, without taking on more headaches. But, IMO, they probably have a lot more "pull" with Broadcom than they realize. I don't ask that they take on Android as a Foundation project, but just letting Broadcom know that the Foundation would be grateful for any help Broadcom could give to those trying to get Android working, could be a big help.

IOW, the current perception is that the Foundation doesn't really care about Android. If that is true, then I think they are making a big mistake. If, OTOH, it is only a perception, I think that an effort should be made to clarify it.

Thanks
Lew

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 4:31 pm

lewmur wrote:
jamesh wrote:Not really much point in comparing O-DROID with Raspi Android - O-DROID was always intended as an Android device, and Android was ported on to it before release. Which is why it works now.

Android is pretty low priority for the Raspi - it's not its primary OS, and we have more important educational stuff to do, so I'm afraid patience is what is required.

What's needed are libraries for various features, that use the GPU for acceleration rather than relying the CPU - surface flinger, gralloc, camera etc etc. These do exist for the Videocore on other SoC's, and the GPU firmware on the Raspi does support all the features needed for Android acceleration. It's a matter of finding the time to plumb it all together.
James;
Please note that I agree with 99% of what you say. I've followed your post in many other threads, and know that you are quite adament about protecting the Foundation from "trolls" and "bashers". I agree wholeheartedly with that position.

That said, in this case, I think your, and the Foundation's, "priorities" are wrong in regards to Android. Yes, your focus is, and should be, on the educational value of the Pi. And I agree, as a *long* time Linux user and fan, that it is a great tool for learning computer basics and programming. But the same can be said for Android. After all, Android is just another form of Linux. But Android'ss "user base" dawrfs that of Linux Desktop. As such, from a practicle stand point, kids learning to develope apps, would have a much greater "audience", if the projects would run on Android devices.

I know that the members of the Foundation "have their hands full" with things just as they are, without taking on more headaches. But, IMO, they probably have a lot more "pull" with Broadcom than they realize. I don't ask that they take on Android as a Foundation project, but just letting Broadcom know that the Foundation would be grateful for any help Broadcom could give to those trying to get Android working, could be a big help.

IOW, the current perception is that the Foundation doesn't really care about Android. If that is true, then I think they are making a big mistake. If, OTOH, it is only a perception, I think that an effort should be made to clarify it.

Thanks
Lew
Android isn't 'just another linux'. It's a completely new platform that is built on the Linux kernel, and the problem is that Android does not make a good teaching platform for coding. It's all very well saying students can use it to write Android apps but that's not the case - you need a separate PC to run the Android SDK. - it doesn't run on the Raspi - it's too heavy weight. (AFAIK)

The problem is not that the Foundation are busy (although they are!), it's Broadcom that are busy (I know, I work for them!), and although they are busy working on Android, they are too busy to get it fully working on the Brcm2835. Once the current panic is out of the way, then there may be some time to spend on the 2835 port.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

lewmur
Posts: 371
Joined: Sun Dec 25, 2011 3:20 pm
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 5:24 pm

jamesh wrote: Android isn't 'just another linux'. It's a completely new platform that is built on the Linux kernel, and the problem is that Android does not make a good teaching platform for coding. It's all very well saying students can use it to write Android apps but that's not the case - you need a separate PC to run the Android SDK. - it doesn't run on the Raspi - it's too heavy weight. (AFAIK)

The problem is not that the Foundation are busy (although they are!), it's Broadcom that are busy (I know, I work for them!), and although they are busy working on Android, they are too busy to get it fully working on the Brcm2835. Once the current panic is out of the way, then there may be some time to spend on the 2835 port.
Hmmm!! I just searched the Google Play Store for "Python" and found six different apps plus a lot of books on Python. The Android SDK isn't the only way to program for Android.

edit: One of the great things about the Pi is that you can switch from one OS to another with ease. Having Android would be an *additional* OS. Not a *replacement* for Linux.

As a Broadcom employee, I can see where it would be your position that Broadcom is in the best position to get Android working on the 2835 and you may be right. But "best" doesn't equate with "only". Yeah, I know. "Just wait. We'll get around to it". But that leaves people with the PERCEPTION that the Foundation doesn't think Android is of any significance. And I think leaving people with that perception is not only a mistake but a needless mistake.

You, personally, are in somewhat of a "conflict of interest" position. You are both a representitive of the Foundation and an employee of Broadcom. It is the "best interest" of Broadcom NOT to be "pressured" on the issue by the Foundation. But, IMO, it is the "best interest" of the Foundation to see Android ported to the Pi ASAP. In fact, the Foundation itself, is in something of the same dilemma. OTOneH, they are indebted to Broadcom for all of the help they have already received. But OTOtherH, they need even more help re Android. I guess all one can really ask is that the Foundation *publicly* supports the port and DOESN'T appear to be denigrating it.

tufty
Posts: 1456
Joined: Sun Sep 11, 2011 2:32 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 6:04 pm

Personally, as someone who is neither employed by Broadcom (and not likely to be, given the size of my gob) nor a representative of the Foundation, I beg to differ.

Android may be familiar, and a decent enough smartphone OS, but it is most certainly not a good environment for programming, even if you are an experienced programmer. Believe me, I've tried (on-device in various languages, using the Java SDK, the NDK, and various other environments). The best bet for programming on Android is the off-device Java SDK, which is more or less documented. The NDK is woefully bad unless you have industrial amounts of time to spend working out the undocumented wrinkles. Once you're on the device itself, things go from bad to worse - yes, you could teach kids to do a "hello world" app in python, but as soon as you start trying to do stuff that interacts with the bells and whistles of the operating system itself (which, surely, is the only reason for using Android over Linux) you're looking at using beta quality (at best) FFI interfaces to the aforementioned java toolkit - this usually doesn't gel with the way non-java languages work, and documentation is pretty much nonexistent, relying on you to pretty much reverse engineer the calling conventions.

That's all before worrying about garbage collection performance (hint - avoid triggering it at all for anything you want to be fast), platform fragmentation, and the fact it's difficult if not impossible to package up applications written on-device to run on other devices without requiring users to download a whole load of other runtime cruft. Or the probability that if you equip a classroom with android devices the kids will be spending their time facebooking and playing Angry frickin' Birds.

I don't actually see /any/ benefit in using Android over Linux, even if it was ready to go now, let alone putting aside other stuff to make it work.

Your opinions may vary, of course.

lewmur
Posts: 371
Joined: Sun Dec 25, 2011 3:20 pm
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 6:30 pm

tufty wrote: I don't actually see /any/ benefit in using Android over Linux, even if it was ready to go now, let alone putting aside other stuff to make it work.

Your opinions may vary, of course.
As you say, "your opinions may vary". I've been using Linux on my Desktop for years and wouldn't use anything else. OTOH, I have Android on my HP TP and wouldn't dream of using Linux on it. But let's face it, like it or not, Linux is still "niche" and Android is "mainstream".

I can picture it now. A kid writes a great game and wants to show it off to his friends. Several of them have Android phones and/or tablet/ereaders. How many do you think will have Linux devices?

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 8:40 pm

lewmur wrote:
tufty wrote: I don't actually see /any/ benefit in using Android over Linux, even if it was ready to go now, let alone putting aside other stuff to make it work.

Your opinions may vary, of course.
As you say, "your opinions may vary". I've been using Linux on my Desktop for years and wouldn't use anything else. OTOH, I have Android on my HP TP and wouldn't dream of using Linux on it. But let's face it, like it or not, Linux is still "niche" and Android is "mainstream".

I can picture it now. A kid writes a great game and wants to show it off to his friends. Several of them have Android phones and/or tablet/ereaders. How many do you think will have Linux devices?
Well, the child presumably wrote that great game on a Raspi, running either Linux or RISCOS. Because even with HW acceleration and all the GPU bells and whistles, he won't have created that game on a Raspi running Android. Because a Raspi running Android would NOT be a platform capable of writing Android apps on. It's simply not powerful enough. And Android itself is a platform for consumers, NOT developers. Even Google don't develop Android ON Android. They use Linux on powerful desktops.

On the other hand, he could take his Raspi, which in itself is pretty portable, plug it in somewhere and show them his game, running much faster without all the Android cruft, on the platform he wrote it on.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 8:57 pm

lewmur wrote:
jamesh wrote: Android isn't 'just another linux'. It's a completely new platform that is built on the Linux kernel, and the problem is that Android does not make a good teaching platform for coding. It's all very well saying students can use it to write Android apps but that's not the case - you need a separate PC to run the Android SDK. - it doesn't run on the Raspi - it's too heavy weight. (AFAIK)

The problem is not that the Foundation are busy (although they are!), it's Broadcom that are busy (I know, I work for them!), and although they are busy working on Android, they are too busy to get it fully working on the Brcm2835. Once the current panic is out of the way, then there may be some time to spend on the 2835 port.
Hmmm!! I just searched the Google Play Store for "Python" and found six different apps plus a lot of books on Python. The Android SDK isn't the only way to program for Android.

edit: One of the great things about the Pi is that you can switch from one OS to another with ease. Having Android would be an *additional* OS. Not a *replacement* for Linux.

As a Broadcom employee, I can see where it would be your position that Broadcom is in the best position to get Android working on the 2835 and you may be right. But "best" doesn't equate with "only". Yeah, I know. "Just wait. We'll get around to it". But that leaves people with the PERCEPTION that the Foundation doesn't think Android is of any significance. And I think leaving people with that perception is not only a mistake but a needless mistake.

You, personally, are in somewhat of a "conflict of interest" position. You are both a representitive of the Foundation and an employee of Broadcom. It is the "best interest" of Broadcom NOT to be "pressured" on the issue by the Foundation. But, IMO, it is the "best interest" of the Foundation to see Android ported to the Pi ASAP. In fact, the Foundation itself, is in something of the same dilemma. OTOneH, they are indebted to Broadcom for all of the help they have already received. But OTOtherH, they need even more help re Android. I guess all one can really ask is that the Foundation *publicly* supports the port and DOESN'T appear to be denigrating it.
I'm not denigrating Android at all - I personally think it's pretty good (certainly the JB I've been working on on some new phones is really rather splendid). I really don't think its suitable as a programming tool on the Raspi. Which is why a port to the Raspi, in my view, isn't as urgent as some of the other things that need sorting out - it simply isn't of relevance to the Pi's primary purpose. See previous posts for why.

As to persuading Broadcom they should get on with it - that's difficult. Almost everyone I know is working flat out on customer projects. There simply are not the staff available to work on a low benefit project like a Raspi port - compared with what we are currently working on, sales of 2835 on the back of Android wouldn't even make a footnote on a footnote of a sales slide. Since flat out means lots of out of hours working, people are generally not interested in doing ports in their spare time until the work pressure drops either.

It's a difficult situation - the Foundation knows people would like to see Android, and I'm sure it will get done. But people will just have to be patient.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 9:02 pm

As an aside, I'd be interested in what people actually want an Android port for! May seem like an odd question, but it's useless as a dev platform, it's not portable enough to be a mobile device, so it must purely be for access to thinks like the app store. So it's of relevance purely from a consumer of information point of view. WHIch is fine,. But exactly NOT what the Foundation designed the Raspi for!

As I said, I'd be interested in knowing what people actually want Android for.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

lewmur
Posts: 371
Joined: Sun Dec 25, 2011 3:20 pm
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 9:33 pm

jamesh wrote:As an aside, I'd be interested in what people actually want an Android port for! May seem like an odd question, but it's useless as a dev platform, it's not portable enough to be a mobile device, so it must purely be for access to thinks like the app store. So it's of relevance purely from a consumer of information point of view. WHIch is fine,. But exactly NOT what the Foundation designed the Raspi for!

As I said, I'd be interested in knowing what people actually want Android for.
We are in basic disagreement. You say that it would be useless as a dev platform and I disagree. The primary code learning tool for the Pi would appear to be Python. And as I said, there are six free Python writing apps in the Google Play Store. Can you tell me exactly why these would all be useless?

I'll admit that being 74 years old, the last new language I learned was VB6. But I don't understand why Python wouldn't work just as well in Android as it does in Debian.

magno23
Posts: 136
Joined: Sun Aug 12, 2012 4:11 pm
Location: Penafiel, Portugal

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 10:00 pm

lewmur wrote:
jamesh wrote:As an aside, I'd be interested in what people actually want an Android port for! May seem like an odd question, but it's useless as a dev platform, it's not portable enough to be a mobile device, so it must purely be for access to thinks like the app store. So it's of relevance purely from a consumer of information point of view. WHIch is fine,. But exactly NOT what the Foundation designed the Raspi for!

As I said, I'd be interested in knowing what people actually want Android for.
We are in basic disagreement. You say that it would be useless as a dev platform and I disagree. The primary code learning tool for the Pi would appear to be Python. And as I said, there are six free Python writing apps in the Google Play Store. Can you tell me exactly why these would all be useless?

I'll admit that being 74 years old, the last new language I learned was VB6. But I don't understand why Python wouldn't work just as well in Android as it does in Debian.
and if through android we get the possibility to use the gpio pins imagine the possibilities to hacks and custom builds

gritz
Posts: 449
Joined: Sat Jan 28, 2012 2:33 am

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 10:09 pm

@ lewmur: much as it will probly surprise folks to hear me say this - I'm absolutely with jamesh on this one.

Why force Android onto a piece of hardware in order to run (say) Python when it can be run natively in Linux? The end result (the code) will be the same, but the user experience with Android is likely to be less than stellar.

I think it's worth noting that the Pi demographic is far more towards the consumer / plug and play end of the spectrum than was probably imagined than when the device was conceived, so Android is an attractive alternative for many for browsing / media playing / apps rather than the fresh Hell that is the Linux terminal. But if you want to run Android today (rather than next year) then buy an Android tablet / phone. If you want to futz with GPIO and do other geek stuff then brace yourself for Linux. Android's raison d'etre is data mining - it's just not intended for anything else. If you want to write an Android app you'll likely not be doing it in Android anyway.

I have a bit of sympathy with your view that Linux is niche and any fourteen-year-old that demos their creation on a Linux computer rather than on their 'Droid smartphone is likely to get short shrift from the "cool kids" - but life has always been like that. It matters not once they've uploaded it to the app store from their Linux / Windows box anyway.

A pragmatic engineer always uses the most appropriate tools for the job - and surely the Pi thing is all about nurturing the next generation of engineers, rather than promoting dogma.

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 10:23 pm

lewmur wrote:
jamesh wrote:As an aside, I'd be interested in what people actually want an Android port for! May seem like an odd question, but it's useless as a dev platform, it's not portable enough to be a mobile device, so it must purely be for access to thinks like the app store. So it's of relevance purely from a consumer of information point of view. WHIch is fine,. But exactly NOT what the Foundation designed the Raspi for!

As I said, I'd be interested in knowing what people actually want Android for.
We are in basic disagreement. You say that it would be useless as a dev platform and I disagree. The primary code learning tool for the Pi would appear to be Python. And as I said, there are six free Python writing apps in the Google Play Store. Can you tell me exactly why these would all be useless?

I'll admit that being 74 years old, the last new language I learned was VB6. But I don't understand why Python wouldn't work just as well in Android as it does in Debian.
I'd say the primary code learning tools on the Raspi are Python, C, C++, Java, PHP, Perl, and any of the other languages already supported. Yes, Python does run on Android devices - but if you want Python, just run Python in Linux, it's going to be easier to edit code, easier to run it, and it will run faster without all those extra layers of code Android puts in the way.

Might be worth trying Python on Android device just to see how well it works...I might give it a go on a high spec device tomorrow to see if it's any good. (ie twin core A9 with Videocore acceleration). I recommend you try the same, and compare with how you might do the same in Linux.

Another point is Python already works on the Raspi - we don't need to get Android running to use it. So why use Android as a just about usable learning platform when you can already use what we have now, which will always work better than Android in these circumstances anyway.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23709
Joined: Sat Jul 30, 2011 7:41 pm

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 10:25 pm

gritz wrote: I have a bit of sympathy with your view that Linux is niche and any fourteen-year-old that demos their creation on a Linux computer rather than on their 'Droid smartphone is likely to get short shrift from the "cool kids" - but life has always been like that. It matters not once they've uploaded it to the app store from their Linux / Windows box anyway.
.
That kid with the great game won't be able to run it on any iThings either....
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

gritz
Posts: 449
Joined: Sat Jan 28, 2012 2:33 am

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 10:28 pm

jamesh wrote:
gritz wrote: I have a bit of sympathy with your view that Linux is niche and any fourteen-year-old that demos their creation on a Linux computer rather than on their 'Droid smartphone is likely to get short shrift from the "cool kids" - but life has always been like that. It matters not once they've uploaded it to the app store from their Linux / Windows box anyway.
.
That kid with the great game won't be able to run it on any iThings either....
Don't get me started on Apple / Gatekeeper, James. :D

User avatar
Jim Manley
Posts: 1600
Joined: Thu Feb 23, 2012 8:41 pm
Location: SillyCon Valley, California, and Powell, Wyoming, USA, plus The Universe
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Wed Dec 12, 2012 11:54 pm

jamesh is going to probably fall off his chair when he reads this, but I'm in complete agreement with him on Pidroid (or whatever cute moniker we collectively decide is appropriate). I'm frankly surprised that Jelly Bean (and to a lesser degree, apparently Ice Cream Sandwich) will run at all, even on a 512 MB Pi, much less a 256 MB model. It will be interesting to see what "Android runs on the Pi" actually means, given the typical 1+ GHz, multi-core, 1+GB RAM hardware on which Android ICS/JB currently actually runs (a Samsung Galaxy SIII I routinely use slows to a crawl several times a day, and not due to network/cell bandwidth limitations - the UI can just go to molasses sometimes). About 6% of all Android devices are running JB according to Google's analysis of the past month's network traffic to sites they track, which extrapolates to somewhere less than one percent of all Internet traffic.

The Play Store apps that allow running Python on Android depend on Scripting Layer for Android (SL4A), which only allows you to edit and execute scripts and interactive interpreters on the Android device. These scripts have access to some of the APIs available to full-fledged Android applications, albeit with a greatly simplified interface that makes it easier to get things done. There's a big difference in the performance of scripts and interactive interpreters and that of native Android apps, and the incomplete support for all Android APIs means that some things just can't be done at all via a Python script/interpreter.

Per the Code.Google.com site for SL4A, it's designed for developers and is alpha quality software. That's really not what you want kids starting out learning to code to be working with unless they're the type of wunderkind who are already developing their own alpha quality software via a full PC-based SDK (and often better than many commercial offerings, which admittedly isn't a very high bar, in some cases). Perhaps these scripting apps could be attractive to students, but there are a lot of moving parts that might come off the wagon at any time.

As I've posted elsewhere, running some Android apps on the Pi will be disappointing since they're designed to run on touchscreen devices. Yeah, you can run them with a mouse/trackpad and keyboard, but that's not what they were designed to use, and the user experience is fundamentally different for touchscreens vs. mice/trackpads/keyboards. A significant number of the more interesting apps require multi-touch displays, which aren't anywhere on the horizon for the Pi, AFAIK - no one has even integrated a single-touch display with the Pi, IIRC.

Then there's the motion-controlled apps that require a full 3-D/3-axis accelerometers that no one has announced have been integrated into a Pi. I'm not saying these things are impossible, they're just not easy or cheap to accomplish. How about the lack of integrated cellular data hardware that many apps require because of their mobile focus (yes, USB dongles exist - not very compact and robust, especially if a USB hub has to be added), and there are associated battery issues that crop up if you're actually going to take a Pi mobile.

Since it's not being made public, Pidroid is obviously Not Anywhere Near Ready for Prime Time and given the limited resources available needed to make it so, one would turn blue holding their breath waiting for it. As jamesh asked, just exactly what do people expect to be able to run on Pidroid anyway (particularly given the hardware constraints discussed above), especially where there are functional equivalents already running natively on the Pi on Linux?

If you're really hard over to use Android on-the-cheap, just snag one of the "n minus one" generation Android tablets that have been released as little as a few months ago that are being flogged on clearance sites (as have every previous generation of such devices). If nothing else, it will make a nice VNC display through which you can control a Pi via its touchscreen and on-screen keyboard, or a Bluetooth keyboard.
The best things in life aren't things ... but, a Pi comes pretty darned close! :D
"Education is not the filling of a pail, but the lighting of a fire." -- W.B. Yeats
In theory, theory & practice are the same - in practice, they aren't!!!

lewmur
Posts: 371
Joined: Sun Dec 25, 2011 3:20 pm
Contact: Website

Re: Project: Android JB 4.1 with Hardware acceleration

Thu Dec 13, 2012 1:26 am

Jim Manley wrote:jamesh is going to probably fall off his chair when he reads this, but I'm in complete agreement with him on Pidroid (or whatever cute moniker we collectively decide is appropriate). I'm frankly surprised that Jelly Bean (and to a lesser degree, apparently Ice Cream Sandwich) will run at all, even on a 512 MB Pi, much less a 256 MB model. It will be interesting to see what "Android runs on the Pi" actually means, given the typical 1+ GHz, multi-core, 1+GB RAM hardware on which Android ICS/JB currently actually runs (a Samsung Galaxy SIII I routinely use slows to a crawl several times a day, and not due to network/cell bandwidth limitations - the UI can just go to molasses sometimes). About 6% of all Android devices are running JB according to Google's analysis of the past month's network traffic to sites they track, which extrapolates to somewhere less than one percent of all Internet traffic.

The Play Store apps that allow running Python on Android depend on Scripting Layer for Android (SL4A), which only allows you to edit and execute scripts and interactive interpreters on the Android device. These scripts have access to some of the APIs available to full-fledged Android applications, albeit with a greatly simplified interface that makes it easier to get things done. There's a big difference in the performance of scripts and interactive interpreters and that of native Android apps, and the incomplete support for all Android APIs means that some things just can't be done at all via a Python script/interpreter.

Per the Code.Google.com site for SL4A, it's designed for developers and is alpha quality software. That's really not what you want kids starting out learning to code to be working with unless they're the type of wunderkind who are already developing their own alpha quality software via a full PC-based SDK (and often better than many commercial offerings, which admittedly isn't a very high bar, in some cases). Perhaps these scripting apps could be attractive to students, but there are a lot of moving parts that might come off the wagon at any time.

As I've posted elsewhere, running some Android apps on the Pi will be disappointing since they're designed to run on touchscreen devices. Yeah, you can run them with a mouse/trackpad and keyboard, but that's not what they were designed to use, and the user experience is fundamentally different for touchscreens vs. mice/trackpads/keyboards. A significant number of the more interesting apps require multi-touch displays, which aren't anywhere on the horizon for the Pi, AFAIK - no one has even integrated a single-touch display with the Pi, IIRC.

Then there's the motion-controlled apps that require a full 3-D/3-axis accelerometers that no one has announced have been integrated into a Pi. I'm not saying these things are impossible, they're just not easy or cheap to accomplish. How about the lack of integrated cellular data hardware that many apps require because of their mobile focus (yes, USB dongles exist - not very compact and robust, especially if a USB hub has to be added), and there are associated battery issues that crop up if you're actually going to take a Pi mobile.

Since it's not being made public, Pidroid is obviously Not Anywhere Near Ready for Prime Time and given the limited resources available needed to make it so, one would turn blue holding their breath waiting for it. As jamesh asked, just exactly what do people expect to be able to run on Pidroid anyway (particularly given the hardware constraints discussed above), especially where there are functional equivalents already running natively on the Pi on Linux?

If you're really hard over to use Android on-the-cheap, just snag one of the "n minus one" generation Android tablets that have been released as little as a few months ago that are being flogged on clearance sites (as have every previous generation of such devices). If nothing else, it will make a nice VNC display through which you can control a Pi via its touchscreen and on-screen keyboard, or a Bluetooth keyboard.
The vitriol just amazes me. I have no desire to "run Android on the cheap". I already have a very good device running JB. What I do desire is to see the Pi "be all that it can be." You people make it sound like "Andriod" is a four letter word. I see that there really is a strong bias here against Andriod and that it isn't just a perception. So go ahead and take your marbles and go home. Shesh!!

Return to “Android”