MeArm (Raspberry Pi Edition) - Pocket Sized Robot Arm
The MeArm Pi is an easy-to-build robot arm kit that's designed to get children (and adults!) learning about technology, engineering and programming.
It's been expressly designed to be easy to build (age 11+) and use. At its heart is the Raspberry Pi, a low cost computer that has been developed to make learning about computing accessible and fun.
Please note: Raspberry Pi is not included in this kit
The MeArm Pi can be controlled directly through the on-board joysticks, or you can learn to code by making it move using one of the many programming languages run on the Raspberry Pi.
All of the software is free and covers a wide range of skill levels, from absolute beginner to experienced programmer. To make things even easier, it can all be controlled straight from your web browser, with no need to buy additional hardware like monitor, keyboard and mouse
How do I build it?
The MeArm Pi has been designed from the ground up to be easy to assemble. Children can build it themselves and we suspect adults may be able to build it unaided too. The only tool you'll need to build it is a hex key, and one is included in the box!
Here's a more detailed build video if you'd like to follow the process:
Here's what's included:
- Plastic parts for the structure of the arm
- Socket head screws for easy assembling
- Hex key so you don’t need your own tools
- 4 Metal gear servos
- A Raspberry Pi HAT with two on-board joysticks
How can I program it?
The big benefit of being integrated with the Pi is the access to all of the great programming languages that already run on it. We've put a lot of effort into making it simple to start programming your MeArm as soon as you've got it built. Here's a quick video demo of some of the ways of programming it:
There are two approaches to programming it; on-board programming and in-browser programming
The MeArm is controlled directly from the GPIO pins on the Raspberry Pi via the custom HAT we’ve built. This means that any programming language that is able to control the pins on the Pi can be used to control it. We’ve already had it working with Node.js, Python and Ruby but because it’s all open and documented it’s easy to get other languages controlling it too (Scratch, Perl, Java and Basic should all run with no problems)
The technical bit
We’ve tried to keep the workings of the MeArm Pi as straightforward as possible. The servos are driven directly from the GPIO pins so you can access them easily. The joysticks need an ADC to convert their input so we’ve used an I2C ADC that the Pi can communicate directly with. There’s an on-board RGB LED we use to show status and this too is driven directly from the GPIO pins so that if you want to play around with it (and learn!) you can. For power, we’ve found that the standard 2A Raspberry Pi power supplies work without any issues. If you're plugging more things in to it you might want to use the 2.5A supply. The HAT has a micro USB power input the same as the Pi so you can just switch the power over and the same power supply will power both the arm and the Pi. The HAT follows the reference design for Pi HATs to the letter.
Software-wise, there’s a Node.js app we’ve written which can do a few key things:
- Control the servos in the arm via the GPIO pins
- Read the state of the joysticks via the ADC so you can control it directly
- Has a WebSocket based API for control of the Pi over the network
- Serves out some local web pages which run apps that communicate over the WebSocket API
The neat thing about this is that you can run the arm without having to plug it into a monitor and keyboard and control everything through your web browser.
As it's just a Node.js library it will run on any OS that supports Node. We've been using it on the stock Raspbian.
It’s all open source (of course!) and we’ll be continuing to develop this and add features based on your feedback.
Which model Raspberry Pi?
The HAT is designed to be compatible with B+ form factor models (those that have 40 pin GPIO headers). It works equally well with the Raspberry Pi 2, 3 and Zero W. Unfortunately it won't work with the early model Raspberry Pi's that had fewer GPIO pins as the HAT won't fit.