1 2 3 Previous Next 39 Replies Latest reply: Jun 14, 2012 5:34 PM by morgaine RSS

Combining BeagleBone and Raspberry Pi

morgaine Level 15

Well I finally couldn't wait any longer for an ARM Linux board (my Pi isn't due until the end of June), so I bought a BeagleBone.

 

(This post is about technology.  I am not interested in "A is better than B" arguments.  Horses for courses.)

 

It's a very nice board, much more like an Arduino in concept than a Pi -- the two rows of female headers give it that feel.  Farnell provided their usual (in my experience so far) perfect quality of service and delivered it the very next day --- http://uk.farnell.com/circuitco/bb-bone-000/kit-dev-beaglebone-cortex-a8/dp/2063627

 

The power design is particularly noteworthy, given our recent discussions about polyfuses.  The BeagleBone uses a TPS65217B power management IC (PMIC) to generate stable supply voltages regardless of input power, which can come from a barrel connector or from the mini-USB.

 

The mini-USB itself deserves a mention, as it's impressively multi-functional.  In addition to being an alternative source of power, it provides a front-end two-port USB client-side hub --- this is entirely unrelated to the separate host-mode USB type A socket which is also available.  One port of this hub goes directly to the TI AM3359 SoC, while the other port connects to a dual-port FT2232H USB-to-serial converter to provide user-host communications (Linux console by default) and JTAG debugging simultaneously.

 

The SoC USB connection to the front-end hub works in one of two modes which can be toggled at will at any time:  it either presents the SD card as a mountable USB storage device to the host, or it provides an Ethernet-over-USB networking interface which yields an extremely simple quick-start.  (This is additional to the BeagleBone's normal 10/100 Ethernet interface, which is directly implemented in the SoC rather than hanging off USB.)  It all worked immediately using my Gentoo machine as host, providing full IPv4 and IPv6 connectivity out of the box.

 

Which brings me to BeagleBone and Raspberry Pi.  These two devices are very different, enjoying different strengths and suffering different weaknesses, and their most appropriate applications would naturally fall in different areas because of these differences.  I'm interested in how the best features of each could be combined to provide better functionality than either does alone.

 

I already have one idea in this area.

 

The BeagleBone doesn't provide an on-board graphics interface (despite its SoC containing a PowerVR GPU), and as a result, if you want direct graphics you have to buy a "DVI-D cape" containing the interface circuitry ("cape" == BeagleBone daughterboard).  The trouble is, that cape costs more than a Pi Model B!!!!

 

Which of course provides an ideal opportunity to combine BeagleBone and Pi, since the Pi could handle the graphics side while the BeagleBone does most of the computing which suits its Cortex-A8 nicely.  I'm currently thinking what the best way to achieve this might be, but one simple way is available out of the box since X11 is inherently a networked protocol.

 

This is obviously just the beginning, and I'm quite excited to see where this combination might lead.

 

Morgaine.

  • 1. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    PS. Just a hint at one possible way of combining them for graphics, beyond ordinary X11 networking:

     

    It's very feasible to link BeagleBone and Pi boards through SPI and/or I2C and turn each board into a coprocessor for the other --- the Pi a graphics and media coprocessor, and the BeagleBone a more powerful compute engine and communications + I/O coprocessor.

     

    We complain about the Pi's GPU being closed, but if you regard that backend as a black box and turn the whole Pi into a coprocessor, the Pi then becomes the "virtual GPU" for the BeagleBone and you can make it as user-programmable as you want.  OpenCL could be implemented on the Pi's CPU to add to the OpenCL kernels on the BeagleBone.  OpenCL is designed for such heterogenous computing environments.

     

    There's no shortage of interesting possibilities in this area.

     

    Morgaine.

  • 2. Re: Combining BeagleBone and Raspberry Pi
    John Beetem Level 15

    BeagleBone is a very nice design.  I got to chat with its hardware designer Gerald Coley last March at the Embedded System Conference in San Jose, California.  He said it was a pain in the neck to place and route everything so that it could fit in an Altoids box (hint, hint).

     

    While BBone is considerably more expensive than RasPi -- mostly because BBone is manufactured in the USA in relatively small lots -- it's incredibly flexible.  Yes, it costs a lot to get a DVI-D cape, but since BBone brings out the full LCD parallel bus you can also do a VGA cape (I don't know if this is available or just in the works) or a very cute 7" LCD touch screen -- BBone plugs into the back of this so you have a nifty little touch screen console.  One of my favorite BBone capes is Special Computing's FPGA cape, with a Xilinx Spartan-3A XC3S200A.  Looks like design is almost complete, but yet to ship.  Gerald says he keeps nagging its designer to finish it up.

  • 3. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    John Beetem wrote:

     

    While BBone is considerably more expensive than RasPi

     

     

    On the price front, it's important to point out that the price of BeagleBone includes the pre-loaded 4GB SD card, whereas the Pi's price does not, so the real difference is a bit less than at first glance.  That's a point of direct non-contentious price comparison, hopefully.

     

    Other than that, the only thing I can say about the BeagleBone's $89 is that at that price it cannot possibly become the worldwide phenomenon that the Pi has become.  $25 is a magic point.  Even the Pi Model B's $35 is riding the coat tails of success created by that magic "$25" headline.

     

    I was actually expecting TI to react to the Pi media blizzard by announcing a "BeagleBite" --- an even further cutdown version of the Beagle line, singlemindedly focused on price.  After all, they can't be happy (as an ARM licensee) that their competitor Broadcom is getting all the limelight and appears to be well positioned into creating a monopoly in education.  No sign of such a TI response yet though.

     

     

    One of my favorite BBone capes is Special Computing's FPGA cape, with a Xilinx Spartan-3A XC3S200A.  Looks like design is almost complete, but yet to ship.  Gerald says he keeps nagging its designer to finish it up.

     

    I'm very interested in that!  As long as the price doesn't make the tail wag the dog (gotta love Beagle puns), I'm looking forward to further news about it.

     

    Morgaine.

  • 4. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    One thing that I find totally puzzling in the BeagleBone space is the US obsession with Altoid tins.  If someone can explain this to me, I'd be grateful.  Is it anything like our British obsession with fish'n'chips?  Courtesy of Adafruit: -->

     

    http://www.adafruit.com/images/medium/beaglebonetin_MED.jpg

  • 5. Re: Combining BeagleBone and Raspberry Pi
    pholynyk New Members

    Well, you can't eat an Altoids tin , but they are a Curiously Strong (tm) little pocket sized container for just about anything -- except a Raspberry Pi, of course. I think it comes from something that Make magazine wrote a long time ago. I love the little mints, and now I use the tins to sort all my screws into uniform stacks. And a battery pack for an Arduino... and a mounting box for an Arduino...

  • 6. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    @Phil: Ah, so Make mag started a meme?  Certainly appears to be a Curiously Strong (tm) one.

  • 7. Re: Combining BeagleBone and Raspberry Pi
    Drew Fustini PremierFarnell

    Yeah, I've heard that before question about the Altoids tins for projects.  I think maybe Dave Jones (aka eevblog) on The Amp Hour who's an Aussie.  IIRC, Limor Fried aka Ladyada said they were just a common, strong & easily modded case that many used when she was in college.  She definitely seems to dig them still:

     

    MintyBoost: http://www.adafruit.com/products/14

    Arduino Menta: https://www.adafruit.com/products/795

     

    However, I've not used such a tin before in a project.  I think the main downside would be protecting your board from shorts.

  • 8. Re: Combining BeagleBone and Raspberry Pi
    Drew Fustini PremierFarnell

    Thanks for the perspective on the BeagleBone and, wow, that is a very interesting point about the Pi being cheaper than the DVI cape.

     

    BTW, what do you think of adding a BeagleBone group?  I've wanted to post about it before but wasn't sure what was the best fit.  Embedded Linux or Open Source Hardware are probably the closest.  I have one on the way so will be posting more, and it sounds like you have some interesting ideas, too.

  • 9. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    Isolating your circuit from the metal is indeed one issue, but another stems from the fact that tin is not an easily workable metal.  Radio amateurs love metal for shielding of course, but even they rarely use commercial tins because tin is so hard to work compared to aluminium, and commercial tins are always thin and flexy, and the thinness actually makes them harder to modify.  Flexible thin sheet metal is just plain annoying.

  • 10. Re: Combining BeagleBone and Raspberry Pi
    pholynyk New Members

    Ahhh, I think I was a little hasty. I found an article from 2000 - http://jdueck.net/article/9/those-empty-altoids-tins which predates Make magazine, I'm pretty sure. And Instructibles.com has a ton of articles with uses. And in this article http://www.nytimes.com/2005/02/03/technology/circuits/03tinn.html from 2005 the marketing director of C&B-S claims they have been a gemtleman's accessory for a hundred years. So now I don't know why you Brits aren't as immersed in them as we are over here in North America.

  • 11. Re: Combining BeagleBone and Raspberry Pi
    Drew Fustini PremierFarnell

    Thanks for posting that NYT link, I got a kick out of it:

    "Altoids have always been what we call a curiously strong lifestyle accessory," Mr. Peddy said.

    Also, interesting to see a young Ladyada without dyed hair.

  • 12. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    @Drew: I don't know.  Creating per-product groups is somewhat instinctive, but part of me worries about it because so much of what we do is to combine products and interoperate between them.  That's how we achieve the best functionality.

     

    Plus, individual groups tends to feed the fanbois ... you can imagine how discussing the BeagleBone would go down on the Raspberry Pi forums.  In fact, one of the RPF admins threatened to lock a thread in which we had mentioned the Allwinner A10 .... go figure.  Fanbois live on a different planet to engineers.  And power corrupts, so when fanbois are also admins, balanced engineering discussion doesn't even get in through the door.

     

    Not an issue on Element 14, thank the FSM.   Engineering FTW.

     

    There is also the fact that the BeagleBone community is a bit ill-disposed to new forums --- see https://groups.google.com/forum/?fromgroups#!topic/beagleboard/j_rybEhIRY8  .  I'm not too sure why, but it's probably that the community is small enough that fragmentation is actually a real issue.  Grrrr ... I wish the BeagleBone cost $35 so there would be millions of them around.

     

    Morgaine.

  • 13. Re: Combining BeagleBone and Raspberry Pi
    pholynyk New Members

    Back to the original topic for a bit... I think if you want to use the RasPi and BB as coprocessors you will need a fairly high bandwidth message passing connection. I think that will mean using the Ethernet rather than I2C or SPI, even with all the E'net overhead. You'd really like a parallel bus, (memory bus?) but then you could just implement QNX as an Asymmetrical MultiProcessor OS (I love QNX, a great synchronus message passing micro-kernel OS).

     

    So using the RasPi as an X-display is a really quick and dirty approach that should probably work right out of the shipping box(envelope?). And I don't even need a BeagleBone to test it - I can make my TV a remote display for my desktop Linux box. Lean back and relax, ahhh!

     

    I'm not familiar with OpenCL, so I don't know how much data needs to be passed to make good things happen. I guess I should go off and Google it...

  • 14. Re: Combining BeagleBone and Raspberry Pi
    morgaine Level 15

    @Phil: Haha, a curiously informative article from NYT --- thanks!

1 2 3 Previous Next