Author Introduction: Liu Duanyang, founder of the MBH Raspberry Pi Intelligent Robot Club (hereinafter referred to as the MBH Club), a promoter of the collaborative model of intelligent hardware crowdsourcing in China, who first proposed the use of “crowdsourcing + collective intelligence programming” to solve problems in the scientific research process.
-
Integration of hardware and software has been a recurring topic this year. Nowadays, we can see many successful cases of hardware entrepreneurship, such as Jawbone Up and Pebble watches, which can sync with users’ mobile phones, achieving the combination of software and hardware. There are still many concepts surrounding hardware innovation and software integration. However, how to turn ideas into reality remains a challenge. Many large companies choose to keep hardware closed source, creating technical barriers and patent rights that hinder the development of small-scale innovators. Open source hardware allows entrepreneurs to more easily turn their ideas into reality.
From left to right: Arduino Uno, BeagleBone, Raspberry Pi
-
We love to create some novel gadgets at Digital Dinner. Various projects are always underway here. Most of our projects in recent days have included one electronic component — a microcontroller. If you haven’t been inspired by the “Maker” spirit, we strongly recommend you try it out; it will give you a great sense of achievement! If you already have some programming background, there are several websites, platforms, and tools that can help you acquire the necessary knowledge for hardware development, gradually allowing you to use buttons, knobs, and actuators to create practical products. Software development is indeed fun, but turning your ideas into actual products is even better!
-
However, there are currently many excellent platforms available for creating digital devices, which makes our choices a bit overwhelming. For example, we are currently working on a “hydroponic garden” project and need a controller to drive a water pump and read sensor data. However, there are many options available to achieve these functions. This may leave beginner developers of open source hardware feeling somewhat lost. Therefore, we have chosen to compare three of the most popular open electronic prototyping platforms, hoping to facilitate everyone’s selection; of course, all three platforms are highly recommended.
-
The three open platforms we are comparing are Arduino, BeagleBone, and Raspberry Pi. The reason for selecting them is that they are readily available, affordable, and similar in size (approximately 2*3 inches). More importantly, they can be widely used in electronic product development. Before the comparison, let’s first provide a brief introduction.
-
Arduino Uno is very common in the Maker community. There are many different sizes and features of Arduino, but here we choose Arduino Uno as a representative. It is a very easy-to-develop platform, and many developers also choose it as their development environment, and its design makes it easy to connect with other devices.
-
Compared to Arduino, Raspberry Pi is a relatively new member. It is essentially an embedded computer. It is also an inexpensive full-featured desktop computer. As a $35 computer, it serves as a good platform for many projects.
-
BeagleBone may be the least known among the three platforms, but it has excellent compatibility and can be used in many projects. It is a powerful Linux computer and can be installed in Altoid’s container.
Back of Arduino
Back of Raspberry Pi
Back of BeagleBone
-
These three platforms each have their strengths and are very valuable for enthusiasts. The following table summarizes the specifications and features of the three platforms.
-
First, Arduino and Raspberry Pi are very cheap, costing less than $40. BeagleBone is nearly three times the value of Arduino Uno, while Arduino’s throughput rate is about 40 times slower than the other two, and its RAM is 1/128000 of the other two. From this, you can see that their differences gradually emerge; Arduino and Raspberry Pi are lower in price, while Raspberry Pi and BeagleBone have stronger functionality. From this perspective, Raspberry Pi seems to be the best choice, but it is not that simple. First, its price is not as good as it seems at first glance, because to run Raspberry Pi, you need to provide an SD card, which adds an additional 5% to 10% to the cost.
-
In addition, aside from the similar performance in terms of throughput rate, in our tests, BeagleBone’s operating speed is almost twice that of Raspberry Pi. This may seem counterintuitive; for beginners, Arduino may actually perform better. This is because Raspberry Pi and BeagleBone are both based on the Linux system. This system allows them to run multiple programs on small computers and supports multi-language programming. Arduino’s design is very simple; it can only run one program at a time and only supports low-level C++ programming.
-
BeagleBone and Raspberry Pi also have an interesting feature: they can run on Flash cards (Raspberry Pi uses SD cards, BeagleBone uses microSD). This means you can achieve system portability by swapping storage cards. On different storage cards, you can store different settings. By simply changing the storage card, you can continue the project you were previously developing. Because these two boards are quite complex, this means you can easily change the operating system by swapping cards.
-
So, how do you choose a platform that suits you?
-
For beginners, we recommend Arduino. It has a large community of users, numerous example projects and tutorials, and can easily connect with other external devices. There are many ways for beginners to learn how to use Arduino.
-
The design of this board is intended to facilitate interaction with different sensors without the need to design additional circuits, so you don’t need much circuit-related support to get started easily. If you haven’t tried this yet, why not give it a shot (it’s not very expensive), and you’ll likely gain an interesting experience.
-
Arduino Uno is a highly regarded tool, featuring an open-source microcontroller, and its software development environment is also free.
-
Raspberry Pi is credit card-sized and can be directly plugged into a TV. Many functions traditionally found on computers, such as word processing, spreadsheets, and games, can run on Raspberry Pi.
-
With low prices and strong hardware scalability, BeagleBone is a product tailored for enthusiasts of embedded Linux systems. BeagleBone can also serve as an external USB or network expansion module for BeagleBoard or Beagleboard-xM.
-
If the developed product requires a small size, we recommend Arduino. The sizes of these three platforms are similar, but the SD storage card of Raspberry Pi makes it appear larger. The style of Arduino is compact, but what sets Arduino apart from other platforms is its special microprocessor and some software. It uses a microprocessor embedded system from Atmel, which is small and affordable. For projects that require very small dimensions, you can purchase Atmel’s chips for $1 to $2 and use the Arduino Bootloader (a program that grants basic functionality to Arduino). After installation, you will have another Arduino.
Various sizes of Arduino
BeagleBone next to its big brother BeagleBoard
-
BeagleBoard has a larger, more powerful version — BeagleBoard. If you need greater scalability, BeagleBoard is a good choice.
Arduino Uno, BeagleBone, and Raspberry Pi, with the latter two having network interfaces
-
If your project requires network connectivity, we recommend BeagleBone or Raspberry Pi. Both are true Linux computers. They both have built-in Ethernet interfaces and USB, making it easy to connect to the network. By connecting a wireless module via USB, you can access the network without a wired connection. Additionally, the Linux system has many built-in components that provide advanced networking features.
-
Simply connect a USB WiFi device to BeagleBone or Raspberry Pi, and the Linux system will support these external devices.
-
Arduino supports peripherals, called “shields”. Although it has the ability to connect to the network, its networking capabilities are quite limited. If you spend time purchasing expansions, it can be equivalent to directly purchasing a higher-end circuit board with more complete functions.
-
If your project requires connecting to external sensing devices, we recommend Arduino and BeagleBone. Arduino is easier to connect to external sensors compared to other devices. Different versions of Arduino use different voltages (3.3V or 5V), allowing for easy connection to various external devices. BeagleBone can only connect to 3.3V external devices and, in some cases, may require additional resistors or other external circuits to connect to external devices. Both Arduino and BeagleBone have analog-to-digital signal interfaces, making it easy to connect devices that output different voltages. BeagleBone has a higher resolution for analog-to-digital signals, which makes it the best choice for certain projects.
-
As mentioned above, you must pay attention to the devices you plan to connect, including small sensors, and whether they have digital interfaces known as I2C or SPI. All three platforms support these external devices, so communication is not an issue.
-
For battery-powered projects, we recommend Arduino. Arduino has the lowest power consumption. When comparing performance per watt, BeagleBone has the highest energy consumption. However, Arduino has a wider range of compatibility, as it can work with many different input voltage devices. This requires Arduino to use different models of batteries, and it can continue to operate even when the battery is depleted.
-
If a user interface is needed, I recommend using Raspberry Pi. Raspberry Pi stands out because it has an HDMI output. This means you can connect a keyboard and mouse and directly plug it into your TV. In this regard, you have a fully equipped computer with a user interface. This allows Raspberry Pi to be used in projects that require user interaction, enabling low-cost web browsing devices to be built. In fact, just for entertainment, we installed Arduino development tools on Raspberry Pi and wrote a simple program on Raspberry Pi to download to Arduino. It is not a high-performance computer, but it is indeed a computer.
-
Conclusion
-
Arduino is a highly extensible platform that facilitates interaction with various devices. For beginners, it is an excellent choice for small projects. Raspberry Pi is suitable for projects that require a user interface and network support, offering good value for money.
-
BeagleBone combines the good scalability of Arduino with the fast processor of Raspberry Pi and the flexible development environment of Linux. Therefore, if you want to do a project similar to a hydroponic garden, we recommend BeagleBone. Its input-output capabilities are well-rounded, and it is easy to connect to the network, allowing us to monitor the data it transmits via the web.
-
All three of these devices are the cornerstones of our digitization projects. Of course, there are other platforms available. For example, we use Sun SPOTs to monitor our tomato garden, but these three devices can generally meet our needs unless you require more advanced functionality.
-
Love me? You must follow me, click me, click me, click me…….