Skip to main content

Raspberry Pi or Arduino Uno? One Simple Rule to Choose the Right Board

Article Featured Image

Here at Make: we see new, ingenious projects from our community every day. Many of these are made possible by the use of development boards. However, if you’re new to the subject, it can be confusing to parse out the differences between boards and the advantages of using one over another.
We’ve created this super simple guide to help you get started. Then, when you’re ready check out Arduino Uno and Raspberry Pi Starter Kits, which come with all the goodies you need for your inaugural projects. Not sure you want all those peripherals yet? Start with the essentials: Grab the board of your choice and bring yourself up to speed with our Getting Started With series for Arduino and for Raspberry Pi.
Courtesy of Tech Uni
Courtesy of Tech Uni

What is the difference between the two?

An Arduino is a microcontroller motherboard. A microcontroller is a simple computer that can run one program at a time, over and over again. It is very easy to use.
A Raspberry Pi is a general-purpose computer, usually with a Linux operating system, and the ability to run multiple programs. It is more complicated to use than an Arduino.

What would I use each for?

An Arduino board is best used for simple repetitive tasks: opening and closing a garage door, reading the outside temperature and reporting it to Twitter, driving a simple robot.
Raspberry Pi is best used when you need a full-fledged computer: driving a more complicated robot, performing multiple tasks, doing intense calculations (as for Bitcoin or encryption)

Is there a simple rule of thumb to help me decide?

Yes, there is! Think about what you want your project to do. If you can describe it with less than two ‘and’s, get an Arduino. If you need more than two ‘and’s, get a Raspberry Pi.
Examples:
“I want to monitor my plants and have them Tweet me when they need water.” That can best be done by an Arduino.
“I want to monitor my plants and have them Tweet me when they need water and check the National Weather Service, and if the forecast is for fair weather, turn on the irrigation system and if the forecast is for rain, do nothing.” That would best be handled by a Raspberry Pi.

Isn’t that rule of thumb oversimplifying what is actually a much more complex issue?

Yes. That’s what a rule of thumb is.

Look, this is confusing! Just tell me which one I should buy!

An Arduino. It’s a system designed for beginners.

Comments

Popular posts from this blog

Setting up the Tarot T4-3D gimbal on the Pixhawk 2.4.8 with Specktrum dx6 Gen2 toggle switch

So i took the challenge of setting up the Tarot gimbal not just for inherent stable video footage but also the flexibility of controlling it from the radio control. However, I encountered quite a few challenges which made me aware that I'm not the one only in this battle . It's quite clear that the setup of the Tarot gimbal using its own software is completely different from how it's been described in the Ardupilot/Arducopter webpage and in mission Planner. In Mission Planner and it's associated site makes one believe that it should be done through software, only to realize that in actual fact the setup is more complex than that.  After two evenings of trying various combinations, I realized the getting the pixhawk Aux channels to communicate with the T4 gimbal requires the following steps: - The Pixhawk Pin9 (Aux1) needed to be activated to pass through user-chosen channel from the transmitter. For the Dx6 Gen2 it was the channel 6, which can assigned the

Matlab to C/C++ code development - Some learning points

Over the last few years, the engineers at the company have invested both their time and sleepless nights in formulating a process for the development of Machine learning algorithms that will satisfy real-time constraints with minimal RAM usage. This is quite a tall task as per default, that would force one to do their development directly in C language. Although that seems like the right choice, the downside is the direct correlation of the debugging time with algorithm complexity.  Such a time could have been rather used in optimizing the algorithm within the MATLAB environment which has excellent tools for the analysis, plotting and debugging. So it was decided to rather learn the Code generation process with the hope that future algorithm could be designed in a similar fashion without the hassle of the compiler-specific run-time issues. The development of this machine learning algorithm would eventually be implemented in a 32bit, 160Mhz speed, 260KB RAM microcontroller.

The hard climb of innovation

For the last couple of months, our design team has been hard at work at detail development of our drone concept which we hope to make public early 2021. These have been unprecedented times with so many changes within our company: people moving countries, stuck at airports, universities closing and transitioning to online classes and exams; all in the space of one year! Nevertheless, one of the fundamental challenges facing the drone industry in developing countries next year, is how to operate within an environment where shipping of critical parts (amongst other things) has been disrupted due to the covid-19 pandemic. If the most critical items (propellers, batteries, sensors, etc. ) of the system are also associated with the longest lead time, this has a significant impact on the operating cost and service coverage that can be achieved. Unfortunately, there's no easy way of solving this issue except if it was envisioned as part of the development process. But this is seldom the ca