Hacker News new | past | comments | ask | show | jobs | submit login
Arduino Uno vs BeagleBone vs Raspberry Pi (makezine.com)
102 points by tdrnd on April 27, 2013 | hide | past | favorite | 40 comments



Personally I think this great stuff. And yes the Beagle Bone black narrows the field significantly.

Tools wise there is hole here that when it gets filled will be pretty impactful, I'm talking about the Arduino concept implemented with the ARM Cortex M4. This is because the costs of the chips are low, but the tool chain support which has been part of the foundation of Arduino's success aren't there yet. Now bits and pieces do exist, if you get Atmel Studio (Makers of the ATMega and SAMx ARM chips) you will see they have a gcc toolchain for ARM that is as self contained as the toolchain for AVR (and by self contained I mean that it is a 'bare bones' tool chain and the resulting binary includes the bits normally supplied by an OS like startup, initialization, and memory management)

The part that is really cool though is that you can build computers out of these things again and they are moving into the space being left behind by Windows/Intel and Apple becoming more application delivery appliances. One risk I see though is that a lot of poor security architected embedded systems are finding their way into the routable Internet. That can be funny when port scanning software turns your lights on or off, but its a risk none the less.


There is already an official Arduino ARM Cortex M3 board, the Due: http://arduino.cc/en/Main/ArduinoBoardDue

Teensy 3.0 afaik has some degree of support for Arduino IDE too. LeafLabs Maple has Arduino-style IDE too. And finally there is Energia IDE for Stellaris Launchpads.

So I'd say that the "Arduino for ARM" field is already quite contested, and I've probably missed some projects.


I think only the teensy and due strive to be fully arduino compatible(to be able to run sketches exactly the same as arduino, versus offering similar looking API).


Thanks for the additional links. Also great stuff, I'd love to see an update in the Make article for a broader range of these boards.


The teensy 3 is an arduino clone with the cortex-m4.


This must have been written before the announcement of the BeagleBone Black: $45, similar performance profile, HDMI out. Seems very much analogous to the Raspberry Pi.

http://beagleboard.org/Products/BeagleBone%20Black


Yup, it was written on the 15th when the Black was still a badly kept secret but not openly announced.

I ordered two BeagleBone Blacks from Adafruit yesterday, anxiously awaiting their arrival. I love the emerging competition in this space and I'm happy to see TI (who I've had mostly positive interactions with when needing unofficial hobbyist support, and whose Stellaris and MSP430 ecosystems I love) still catering to this market, and on paper the BeagleBone Black looks really, really good (it would look good for a lot of things even if they kept the old price with the new specs, the new price of basically half the old one is icing on top).


I only have one grip with the BB black -- the HDMI out resolution. Maximum of 1280x1024. Which itself isn't so bad, but that (and several other resolutions on it) are geared towards 4/3 monitors instead of 16/10 or 16/9. Which itself I don't mind so much, but there aren't many 4/3 monitors on the market any more.

BTW, anyone have information on the performance of the graphic drivers for this board? Would it be any good for full screen video?


The GPU used in an SGX530 which is an earlier generation of the GPU used in the iPhone 3 (SGX535). TI traditionally use their own IP blocks for video processing but this is absent in the AM335x, and the GPU lacks any dedicated video processing functions. You're probably looking at use CPU based codecs (ffmpeg) and 720p will be a reach I hazard to guess (but I don't know for sure).


there are tons of 4:3 monitors kicking around. Put a want ad on craigslist and you're going to be flooded with them.


Actually what I was referring to is a lack of 4:3 monitors in general use. What I'd like to use these small/cheap computer boards for, is if I'm helping someone "fix" their computer, this could be a good stop-gap measure to hook up so they can continue to get Web/email/social networks/etc things done while I'm rebuilding their desktop. Most people I run across either have a VGA CRT monitor, or a 16:9 flatscreen.


There are so many things wrong with the comparison table it's difficult to trust the article. The Uno can run on 5v, not 7-12v; the Pi has shipped with 512MB of RAM for quite some time now, not 256MB; the Pi has 17 GPIOs, not 8. For example. I understand this is for beginners, but honestly…


The article is from 2012.


Don't forget $49 http://cubieboard.org/


...and MarsBoard (similar to Cubieboard, but also has a dual core version) http://www.marsboard.com/


the new beaglebone(esp. the new one) has two more advantages over the raspberry pi which haven't been mentioned:

1.It can run single precision floating point at 16-24 times faster than the raspberry pi.

2.It has two fast(200MHZ) microcontrollers inside called PRU. Those are great when you want to have stuff running fast , with precise timing. They only work in assembler though.

I think a compiler for them would be useful for the maker crowd.


#2 was the reason we used the beaglebone on a project that requires high-rate sampling - the PRU made it possible to what we needed with almost no additional hardware (normally you'd need an extra microcontroller or FPGA)

If/when it gets easier to develop for I think it helps make beaglebone/am335x a really attractive option for a lot of uses.


I'm so glad that affordable, low-power, hackable computers that run full operating systems are finally available. I don't think it's appreciated enough in the maker community what kind of impact this will have.

I'm a software engineer dabbling in electrical engineering. A while ago an EE friend of mine showed me how to use a transistor to power a motor using a GPIO pin on my Raspberry Pi. I was so stoked when it finally worked! I could turn wheels by typing "echo "1" > /sys/class/gpio/gpio4/value" into my ssh session.

Within 10 minutes I was able to churn out a web interface that has two buttons, forward and backward, that you can access from a mobile device to drive around your raspberry pi. I had already hooked up a battery pack and webcam before. Suddenly, within minutes of "making the wheels turn from software", we had a remote controlled robot with a camera! All this is possible on an Arduino (I hear you can actually run Linux on it if you put some effort in), but it'll be much more work. For the Raspberry Pi, I simply popped in an SD card with Debian and installed all my favorite tools.

By all means, I love writing low level C code and fiddling with basic microprocessors. I once hacked a DVR frontpanel into an alarm clock that makes you do arithmetic to stop the alarm. It was super fun. The chip didn't have any memory management and if you weren't careful your stack or heap would overwrite the program in memory. Between that, displaying custom bitmap fonts, correctly addressing the LCD display etc it took about a week to finish the project. On a Raspberry Pi you could do this in one afternoon using any language/tools you like.


> I hear you can actually run Linux on it if you put some effort in

Some time ago there was someone who decided to hook a RAM chip up to an 8-bit micro-controller---like one of the ones in the various Arduino models---so that they could run Ubuntu on it. Their write-up (http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linu...) is actually quite interesting, though watching it boot is less so ;)


Does anyone have experience using the BeagleBone black vs. the Raspberry PI? I'm wondering if the library support for hardware hacking on it is as robust as the PIs?

I'm doing a lot of experimentation on a project to bring a node.js based development model to devices and the BeagleBone's power consumption is really attractive for battery devices.

(If you are interested, you can read more on my experimental project here: http://bit.ly/115pt9U)


Here's the twist for me: Can I design my own?

I've been reading some books on embedded design or making your own PCBs and they had tutorials in eagle.

I took digital electronics courses and...is doing a schematic really as easy now for SoC design as it was for putting TTL chips on a breadboard? There's the routing that needs to be done, and I am SO SERIOUS about doing this, I will buy the full version of Eagle (Orcad is $10,000 or so).

I still feel like I don't know what to do, though.


Sure. Modern SoCs are so integrated that its really just wiring up IO and maybe some flash RAM. A good place to start are the Atmel AT91SAM line of chips.


It's a lot more difficult than that. Perhaps designing a board around a low-speed microcontroller is easier for beginners but definitely not a modern SoC. One of the reasons is because most of these SoCs come in highly dense BGA (ball-grid array) packages and usually this means you'll need more layers to route traces on your board, which introduces more complexity. Another reason, perhaps the most important, is that there are a lot more pitfalls in designing high speed PCBs. Unfortunately, I do not know much more about this.


Neat.

I looked at the Raspberry Pi schematic and it seems comprehensible, aside from my ignorance about the bcm2835.

now i just need to pick a SoC. Are there any hobby/startup friendly HW vendors out there?

The calxeda chip looks like what I would want. How to convince them to give me a sample, lol.


Seems like a good place to ask:

I have good programming skills, but I know almost nothing about micro controllers. What would be a good place to learn more about these things, and what you can build with them? Would prefer something which teaches more about the electronics/hardware part than the programming one.


The Raspberry Pi and BeagleBone are full-blown computers. They run Linux and everything you know about Linux/Unix (if anything?) carries over, but then on top of that they have a bunch of GPIO pins to which to can attach lots of different electronic components like LED displays, accelerometers, motors, etc, to build basically anything (robots, little dashboard computers, whatever).

The Arduino is a different beast, you can't run Linux on it, it is a low-powered (by both meanings of the phrase) microcontroller meant to write real-time code which does most of the same things you'd use GPIO for on those other devices, it just happens to be better at controlling some things (like PWM-controlled devices) because you get more predictable timing because it isn't a full computer running a full multitasking OS).

Each of these devices have their own little communities, google "(product) forum" like "raspberry pi forum" to find good starting points for each device. The Adafruit learning system at http://learn.adafruit.com/ is a good place to get tutorials for lots of these kinds of devices (Arduino is heavily represented because it is the oldest, cheapest, and probably still most widely used of these platforms for creating custom hobby projects, but they have tutorials for just about everything).


You can do "anything" with microcontrollers. Here is a collection of some recent projects I've come across at HaD (my preferred source for these kinds of things) for inspiration:

http://hackaday.com/2013/04/15/florianh-shows-off-minimabl-t...

http://hackaday.com/2013/04/24/acrobatic-tricopter-inspired-...

http://hackaday.com/2013/04/15/glowing-easter-eggs-more-fun-...

http://hackaday.com/2013/04/20/mood-lampnotifier-uses-neat-m...

http://hackaday.com/2013/04/19/asynchronous-fireflies-use-fe...

http://hackaday.com/2013/04/17/upgrade-a-toy-keyboards-tone-...

http://hackaday.com/2013/04/23/otm-02-is-a-3d-printed-wristw...

http://hackaday.com/2013/04/24/this-gps-logger-is-so-small/

Some of them are just simple LED blinkers, others are more advanced such as UAVs. What are you interested in?

edit: just another link, great collection of projects done with Teensy, a development board bit like Arduino:

http://www.pjrc.com/teensy/projects.html


Just have a look at the Arduino sample programs. You can view them by just installing the free "IDE." Be prepared for a very spartan IDE environment. Better yet, buy yourself an Arduino beginner kit or something and work through the example projects. They are very straightforward.


Has anyone tried using a beaglebone as a router? I was considering getting one and using a USB Ethernet to add a second interface.

An aside - are there any arm boards with dual Ethernet? Are there any with gigabit Ethernet? Could they theoretically even keep up with 2 gigabit ports?


I have a bunch of these Linux ARM boards including the original beaglebone, rpi, pcduino, ODROID-X2 and a few others. Most of these have less than stellar IO and almost all are 10/100 only. The i.MX6-based Sabre Lite has gigE, although perf maxes out much lower. Here's lots of details: http://boundarydevices.com/i-mx6-ethernet/ - it can't get close to maxing out a single, much less two ports.

If you are looking for something exclusively to do routing, you really should take a look at dedicated hardware from guys like Mikrotik http://routerboard.com/ or Ubiquiti http://dl.ubnt.com/Tolly212128UbiquitiEdgeRouterLitePricePer... - they're actually cheaper than the Sabre Lite and perform much, much better. They're also pretty open/hackable to boot.


Good luck actually getting your hands on an EdgeRouter. They're apparently backordered forever from everywhere.


Thanks for these links. I ended up grabbing a routerboard 450G because they look like a really nice piece of kit. Probably overkill for playing around with routing, but I couldn't help myself.


Cool, the Mikrotiks are perfect for getting into routing as the RouterOS docs are very in-depth w/ lots of examples (yay, wikis): http://wiki.mikrotik.com/wiki/Manual:TOC

You can install OpenWRT to compare although it looks like installation is a slight pain: http://wiki.openwrt.org/toh/mikrotik/rb450g - it's probably easier to install as a metarouter if you're just playing w/ it: http://wiki.mikrotik.com/wiki/Manual:Metarouter


If you are looking to make a diy router check out these: http://www.pcengines.ch/alix.htm

its not arm its x86 I think, but you can put bsd and m0n0wall or pfSense on them. Also I believe these boards are designed for what you want to do and would do abetter job then a beaglebone.


Why mess around with modifying something that's not a router? You can get a very nice 5 port gigabit, wireless-N TP-Link router for $45. OpenWRT has very good support for them.


I feel like I've fallen behind. I loved my beagleboard, opted out of the pandaboard, and was never interested in the raspberry pi.

Beaglebone's a little cheaper, but I'm not sure what it's allure is supposed to be (The $88 version)?

The new beaglebone looks like an inexpensive and tempting nettop replacement.


Also: Udoo

http://www.kickstarter.com/projects/435742530/udoo-android-l...

Freescale i.MX6 Cortex A9 and Atmel SAM3X8E ARM Cortex M3 on the same board!


Minor point but the Raspberry Pi model B has come with 512MB RAM for a while now. The original model B was 256 but they upgraded some time before I got mine (which was in January).


These look great. What are folks doing with them? Is there a separate sensor plugin market where I can shop for ideas?


A couple of popular hobby type websites are Sparkfun (https://www.sparkfun.com/) and Adafruit (http://adafruit.com/). You can obviously also buy sensors from places like Mouser or Digikey, but you'll have to do a fair bit of digging through datasheets. The nice thing about Sparkfun and Adafruit is they publish plenty of tutorials for getting stuff running with Arduino or Raspberry Pi.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: