Loading DesignSpark, please wait...

We apologise for the slowness of this page You are using Internet Explorer 6, upgrading your browser will greatly enhance your experience using DesignSpark

The gateway to online resources and design support for engineers, powered by RS ComponentsAllied

Blog

The BeagleBone Revisited

Posted by Andrew Back on

    7069 views

    BeagleBone Ports

    As the BeagleBone approaches one year old a look how it compares with its slightly younger, not-so-distant but arguably more glamorous relative, Raspberry Pi.

    When the BeagleBone was announced it caused quite a stir with its combination of a reasonably powerful ARM-based SoC, hacker-friendly nature and low price point. However, it wasn't long before it was eclipsed by the similar but even lower cost Raspberry Pi, which in the UK received much coverage in the mainstream media and quickly went on to become a household name.

    Since the Raspberry Pi has become so well known it serves as an excellent benchmark for other embedded platforms, and a closer comparison of the Pi and BeagleBone is useful as it brings to light their respective strengths. What follows is a comparison of just some of the major differences and for comprehensive details consult the official documentation.

    Base system

    The Raspberry Pi and BeagleBone both use SoCs with an ARM processor clocked at around 700MHz and each have 256MB RAM. However, the AM3359 SoC used by the BeagleBone employs an ARMv7 core whereas the Pi uses an older ARMv6, with the BeagleBone therefore benefiting from a dual-issue superscalar architecture and NEON SIMD extensions. In terms of execution speed the BeagleBone comes in at 1440 DMIPS compared to the Pi's 965 DMIPS.

    Both boards include Ethernet and USB, but the BeagleBone's Ethernet MAC is provided by the SoC whereas the Pi provides Ethernet via another chip which hangs off USB. Meaning that the aggregate I/O throughput of the BeagleBone is going to be higher than the Pi.

    Other I/O related considerations include that the mini-USB socket on the BeagleBone is connected to a dual port USB hub, which is in turn routed to the SoC USB and an FTDI USB-serial converter that can be used for console access and JTAG debugging. The SoC USB accessed via this port can be configured to either present the SD card as a storage device or provide Ethernet-over-USB. In contrast the Pi's mini-USB is used only to supply power to the board.

    Where the Raspberry Pi clearly beats the BeagleBone is in its graphics capabilities, as while the former provides both HDMI and composite video the BeagleBone requires additional hardware to provide DVI-D. In addition to which the Raspberry Pi also provides audio via a 3.5mm jack and includes two USB host ports compared to the BeagleBone's one.

    Hardware expansion

    BeagleBone Breadboard Cape

    The BeagleBone Breadboard Cape (© CircuitCo, GFDL v1.3)

    With 65 pins of GPIO the BeagleBone offers more scope for expansion than the Raspberry Pi with its 17 pins, and it uses two 46 pin headers to provide support for stackable expansion boards similar to Arduino shields, albeit named capes so as to avoid confusion. The BeagleBone also provides 7 analogue inputs with a resolution of 12 bits, whereas the Pi has no on-board ADC.

    Operating systems

    BeagleBone httpd default content

    BeagleBone slides served from the default httpd configuration

    The Raspberry Pi is supplied without an operating system although it does have an official Linux distribution in the form of the Debian-based Raspbian. The BeagleBone on the other hand ships with a microSD card with Ångström Linux pre-installed and configured with a httpd and development tools.

    Alternative Linux distros for the Raspberry Pi include the Debian armel port and ArchLinux, with FreeBSD support possibly on the the horizon. All of these are supported on the BeagleBone hardware, which also has images available for Ubuntu, Gentoo, Fedora and Android.

    Software development

    The Cloud9 IDE

    The browser-based Cloud9 IDE with an example project loaded

    Given that both boards run Linux and there are drivers and libraries for things such as GPIO, I2C and SPI, development can be done using any one of a wide number of programming languages. However, Python is the “educational language” supported by the Raspberry Pi Foundation, whereas the BeagleBone is supplied with the Cloud9 IDE configured and can be programmed in JavaScript via the browser. Note that this is achieved via a httpd and the node.js server-side running on the BeagleBone itself and does not rely on a remote Internet-based service.

    Prototyping

    BeagleBone Schematic Detail

    Detail from the BeagleBone schematic (beagleboard.org, CC BY-SA 3.0)

    The Raspberry Pi is designed as a tool to promote the teaching of computer science in education and the Broadcom SoC used and its documentation is, at the time of writing, only available to high volume customers. In contrast the BeagleBone is better suited to prototyping as the hardware design is provided under a liberal licence, “clones” are encouraged and the AM3359 SoC can be secured in smaller quantities and detailed technical documentation is available online.

    Conclusion

    Where learning and basic experimentation is the objective the Raspberry Pi and its sizeable community of enthusiasts wins out, and if you want a compact and reasonably powerful embedded Linux platform with video support the Pi is hard to beat on cost.

    The BeagleBone may be more expensive than the Raspberry Pi but it still represents excellent value for money and there are uses where it has a clear edge over the Pi. Such as in prototyping hardware and with projects that require more processing power, greater I/O throughput or more GPIO. In addition to which its turnkey development environment may appeal to those with a web development background and experience of JavaScript.

    Andrew Back

    Top image: BeagleBone ports annotated (© Gerald Coley/BeagleBoard.org, CC BY SA3.0)

    8 comments

    Comments

    • jgmartinez Avatar jgmartinez

      Posted by jgmartinez at

      What about AC isolation? European standars reqires 3000 volts isolation and USA satandars 1500 volts. Either a transformer or hall effect IC's are the only suitable for aplications like that. I do not know if the design will be sold, do not worry, health security is important goal to take care with. Some other constrainst have to taken in accout too, for example is this circuit to be connected to another device by some wired data transmission system? if yes the AC isolation is need too because if does not, probably the circuit will burn when connected to another device safety grounded.

      The hall efect IC's are qite cheap, 680-7131 cost 4.25 euros per unit and large quantities may reduce the cost at 50%, less than a transformer + rectifier + filter and are really linear AC current to DC voltage translation. Commercial parts are well characterized, so we can predict about the final design specificaion complaint with and it is ussually cheaper than make something by us if there are parts cost efective available in the market.

      It's only my opinion, feel free to take it in account or not.

       

    • bugs bunny Avatar bugs bunny

      Posted by bugs bunny at

      (Continued) The multimeter must be set on a DC scale, not an Ac one , as the signal is already rectified. Mea Culpa. The reading will represent the mean value of the signal, which is 2/pi or .636 Vpeak for a sinewave. As the RMS value is (sqr2)/2 or .707 Vpeak, you must multiply your reading by .707/.636 or 1.111 to recover the RMS (sinewave!) value from the displayed one. The voltage drop (and error) induced by the diodes of the bridge (1.4V) can be considered negligible with respect to the peak value of the 220Vac (311V), so that this simple circuit operates quite linealy, even with small load currents.

    • bugs bunny Avatar bugs bunny

      Posted by bugs bunny at

      Create your own rectifier instead of using pre-build circuits! Here is the way to get the best results at the lowest cost. Insert a brigde in SERIE with one of the AC line (the ~ ~ symbols as input/output for the ac current to be mesured). Connect e.g. a 2.7 ohms/5W resistor between the +/- terminals of the brigde. With 0.8 amps, the dissipated power will be 2.7*.8*.8 = 1.7W -> a 5W resistor is sufficient.  Connect an AC multimeter across the 2.7 resistor, set on 2V full scale. A current of .5 amps  will be displayed as 1.35V. You can of course use other resistor values with adapted power ratings, and calculate the corresponding V/I scale from the Ohm's law. For further processing, search the WEB for op-amp based full- or half-wave rectifiers schemes if your goal is to obtain a proportional DC output. Enjoy!

    • shapau Avatar shapau

      Posted by shapau at

      How can I measure current in the range 220ac 0 to 2 amp and get a proportional Vdc output.

      Can you please help

      I am a novice playing around with an Ardiuno board.

       

    • jkvasan Avatar jkvasan

      Posted by jkvasan at

      Hi,

      You can use a Current Transformer or a series low ohm, high watt resistor. Then the output AC voltage can be rectified using a active full wave rectifier with a Op-amp. The output of Op-amp is not a average value but represents the peak value. Find the DC Value from the Peak Value with standard calculations.

      Bye

    • jgmartinez Avatar jgmartinez

      Posted by jgmartinez at

      Thats devices are, see technical doc available at RS.

    • shapau Avatar shapau

      Posted by shapau at

      thx for feedback

      my problem is to get proportional vcd with low current reading of .3 to .8 amp

    • jgmartinez Avatar jgmartinez

      Posted by jgmartinez at

      You can use parts like that available at RS  522-030. or 724-8739 or 680-7131 that connected to an ADC Arduino input can measure AC and DC. There are much more alternatives at RS you can look for as current sensor, curren transducer, etc.

    Leave a comment