or years, the Arduino IDE (Integrated Development Environment) was the gold standard for ease of use when it came to programming embedded platforms, which wasn’t saying much. Cross platform by dint of being written in Java, the IDE grew over the years, adding support for multiple boards in the Arduino family – and, later, other microcontroller-based development board families, via third-party board support packages (BSPs).
Create is the Arduino project’s attempt to replicate the success of the Arduino IDE as an in-browser package, and now it has a feature that makes it hard to ignore: the ability to take almost any Arduino sketch and port it to a range of powerful single-board computers, including the Aaeon UP², BeagleBone and – naturally – the Raspberry Pi.
There are obviously trade-offs. The biggest is that a Raspberry Pi, for example, has no real-time capabilities. Comparatively, even the cheapest Arduino clone operates in a wholly real-time manner, so a task that takes a second to complete will always take a second to complete. ON a Pi, though, that task may take more or less than a second depending on a wide variety of factors.
There are advantages, too. A Raspberry Pi 3
B+, with its 1.4GHz quad-core 64-bit CPU and
1GB of RAM, is rather more powerful than an Arduino Uno with its 16MHz single-core 8-bit processor and 2kB (not a typo) of RAM. As a result, it’s possible to run multiple sketches simultaneously on the Pi, and even have them interact with each other through a new feature dubbed the Arduino Connector.
Using Arduino Create is about as straightforward as possible; visit https://create.arduino.cc in any modern browser, and you can create a free account. Log in, and you have immediate access to the web editor – a browser-based successor to the Arduino IDE – and a new Device Manager section. Adding a new device runs you through a wizard in which, if your Pi is configured for SSH access, you can install the required software by simply entering the IP address, username and password. If it doesn’t have SSH access, you’re given manual installation instructions instead.
Once installed, the software talks to Arduino Create automatically, with a simple
dashboard for monitoring disk space, memory and any sketches uploaded. These can be toggled on and off with a simple mouse click, and updated or replaced remotely across as many devices as you like.
The dashboard also links through to a few (currently basic) maintenance functions, too. You can install or update packages through a web interface and add or remove repositories, although there’s no option to launch a secure shell for browser-based interactivity. That’s a disappointment when allowing you to add custom software repositories is already a security concern.
There are a few rough edges though. Aside from small niggles such as spelling mistakes, the software currently feels slightly unfinished. Loading example sketches makes no attempt to ensure they’re suitable for your particular board – the ‘Blink’ sketch, for example, relies on a pin name that doesn’t exist outside the true Arduino boards, and must be manually edited before it can be compiled and uploaded. There’s also no readily accessible documentation on what pin numbers correspond to which physical pins on a given board.
It’s an impressive first attempt, though, and it will be worth watching as the Arduino team continue to build up its feature set.
Arduino Create now supports boards such as the Raspberry Pi, with a simple setup process
The management interface is neat, but lacks some relatively basic features, such as remote power-off