There’s a different computing game in town—do-it-yourself electronics using open-source hardware and software. One of the most popular platforms is from Arduino. The Arduino platform is rapidly growing in popularity, even though it’s been around since 2005. Arduino markets boards, mini-boards called modules, board add-ons called shields, kits, and software. The Arduino open-source electronic prototyping platform enables interactive, or Internet of Things (IoT) prototyping for anyone with the drive to innovate and learn, even if they have minimal knowledge of code or electronics. Arduino solutions are used by hobbyists for learning and personal projects as well as by hard-core developers and for commercial prototyping purposes.
What Is an Arduino Board?
An Arduino board is a microcontroller motherboard. Essentially, it is a simple computer meant to run one program at a time. In other words, it is great for prototyping tasks or needs that are repetitive. Examples of good use cases for Arduino boards include reading sensors for a given value, such as temperature, monitoring a heart rate, motion detection, you name it. If it’s relatively simple, an Arduino board can be programmed to do it.
Multiple varieties of Arduino boards are marketed to meet different needs; these levels include entry-level, advanced, IoT, and wearables, in addition to specialized boards for education and 3D printing.
Every Arduino board has at least one USB connection, so it can be plugged into a computer or a wall outlet (with the appropriate adapter).
Boards can be used as they are, using only the Arduino software to prototype a project, or developers and hobbyists can develop their own code and flash it to the board. Arduino uses C/C++ itself, but C#, CmdMessenger, Snap4Arduino, and Ardublock can also be used for coding, as can any programming language that can be compiled. Python and pySerial enable communicating with the board via a serial connection.
You can also add other components to build out prototypes, such as external sensors, robots, motors, lasers, LEDs, small real-time operating systems (RTOS), and modules and shields from Arduino, to name a few. It’s important to note, however, that the boards won’t support typical operating systems, such as Linux.
Our Experience with Arduino
At Prowess Consulting, we’ve completed several projects using the Arduino 101 board with the Intel Curie module. One of our projects was a prototype for a neonatal wearable IoT baby monitor. The project involved the board, code, Zephyr Project open-source RTOS, and sensors to read heart rate, respiratory rate, blood-oxygen level, and temperature through an external sensor. We used Bluetooth low energy (BLE), natively supported on the Arduino 101 board, to keep power use to a minimum for the monitor. True to the open-source nature of Arduino use and development, we were able to use some pre-existing code to get to the finished prototype much faster than if we’d started from scratch. You can read more about the neonatal monitor in our previous post: Zephyr Project Prototype Device.
While the neonatal baby-monitor prototype we created was of moderate complexity, the more recent projects we’ve been working on have been slightly simpler. In fact, we had one of our testers—one who doesn’t develop code or do electronics—test the simpler devices. He was able to quickly dive in and deconstruct the devices as part of his testing process.
That’s part of the beauty of the Arduino platform—anyone can get in and use it without a lot of hassle or a significant learning curve. Conversely, experienced developers and electronics experts can use it to rapidly and easily prototype more complex solutions in less time than might be needed to develop code and build a board of their own.
A Whole Community of Experience
A sizeable community has grown around the Arduino platform—whose work and shared research helped our engineers get a jump-start on the neonatal monitor we created. Through the Arduino website, the community shares code and research findings and projects that can be used as the foundation for other projects and ideas. Projects range from ones as seemingly silly as a voice-activated blinking LED heart to more serious potential applications, such as a robotic plotting tool and a personal healthcare assistant.
I’m personally considering creating a motion-sensor activated water gun for my dog on the warm summer days when she’s in the yard and I’m at the office. You can find how to build it on the Arduino Project Hub.
To learn more about Prowess Consulting research projects, visit the Research section on our website.