The Raspberry Pi range of computers provides an easy-to-use hardware development platform for both makers and professionals. This year, the Raspberry Pi Foundation has released its final product in the Pi range: the Raspberry Pi A 3+.
What is the Pi A+, what can you expect from it and what design considerations should you make?
The Raspberry Pi A+: what not to expect
The $10 reduced price tag may make the Raspberry Pi A+ a tempting choice for your next Pi project, but before purchasing the A+ in favor of another model (such as the Model B 3+), you should first understand what the Raspberry Pi A+ is and isn’t.
The lower price of the Raspberry Pi A+ is reflected in the reduced RAM size and lack of networking capabilities and hardware connections, so using a Raspberry Pi A+ as a computing system (with office applications and gaming) will prove to be challenging. However, the A+ does have a number of advantages over typical Pi computers with a smaller weight, footprint and energy consumption, making it ideal for both maker and commercial applications involving remote computing, basic monitoring, data analysis, portable computing and robotics.
Model A 1+ vs. Model B 1+
Both plus models are the lowest-cost system in their respective ranges, but each system has their own advantages/disadvantages. First, the A 1+ is $5 cheaper than the B 1+, making the A 1+ more appealing in mass-production environments. However, the reduced price sees the A+ having far fewer peripherals with no networking capabilities and only one USB slot.
See related product
The Model B 1+, however, has four USB slots and an Ethernet port. It should be said that the latest Model A, the A 3+, does have a built-in wireless controller but, as a result, is $5 more.
In terms of mechanical construction, the Mode A 1+ is physically smaller and lighter than the Model B 1+ thanks to fewer I/O peripherals. However, both Model 1 boards (A and B) have the same RAM size of 512 MB and processor (32-bit ARM1176 clocked at 700 MHz) as well as the same power consumption when both are not under load from external devices (such as an external USB device and monitors).
Understanding the hardware on the A 1+
Power is provided to the A 1+ via a micro B USB cable, which can be connected to most USB ports including PCs, laptops, phone chargers and even mains plugs with built-in USB charging ports. While portable applications would still need to power the Pi via a micro USB cable, a portable power source such as a phone power bank could be used.
The A 1+ computer contains the same 40-pin GPIO header as that found on standard Raspberry Pi computers, which include multiple 3.3-V and 5-V sources, SPI, digital input/output, I2C and UART. The GPIO is accessible via a 40-pin (2 × 20 way) header with a 2.54-mm pitch, making it very easy to prototype with commonly used circuit construction techniques including stripboard, breadboard and even custom PCBs.
Use in projects
The A 1+ model, while having fewer peripherals than its counterparts, is considerably cheaper and, therefore, could be useful in applications that require a microcontroller with a powerful core, but GPIO access times and speed are not critical.
For example, IoT projects that use external sensors with slow access times such as accelerometers, magnetometers, temperature and humidity sensors could highly benefit from the 1 A+ if used in conjunction with a USB Wi-Fi dongle (note that the A 3+ has built-in Wi-Fi). The 40-pin GPIO allows the 1 A+ to interface with external circuitry including motor control in robotics, signal control in an industrial process or even an LED display for an advertisement board (such a design could be updateable via the internet if used in conjunction with a Wi-Fi adaptor).
First-time setup considerations
While some projects may require the use of no operating system, the vast majority will as an operating system automatically handles low-level hardware routines and provide a platform for high-level languages (such as Python and Java) to run on. Installing an operating system onto a Raspberry Pi can typically be done using an external USB flash drive, but because the 1 A+ has only one USB slot, an external USB hub will be needed (for connecting the keyboard, mouse and flash drive).
However, not all USB hubs are created equal, with some users reporting that certain brands and models don’t work. Therefore, designers have three choices when obtaining a USB hub:
1. Choose a hub from this list of proven hubs
2. Purchase a hub from the Raspberry Pi Foundation, which is designed for use with the Pi
3. Use this Adafruit USB hub (available from Arrow)
The operating system that you, as a designer, choose will heavily depend on your application and preferred platform. The most commonly used OS is Raspbian, which provides both a GUI mode and console mode (for those wanting to save on system resources), while others such as Windows 10 IoT provide the .net platform with the specific intention of being used in IoT projects.
Access considerations
As discussed previously, accessing a Model A 1+ provides some challenges due to only one USB port being available. Unless a combined keyboard and mouse are used, then a USB hub is required to connect both at the same time. If the system is running in console mode (i.e., no GUI), then a keyboard is the only interface device required, but even then, a display is still required to be connected.
If connecting the system to such I/O devices is a problem due to the mounting location or remoteness, then it would not be a bad idea to connect the only USB slot to a Wi-Fi dongle. This will allow access over a network via SSH, which allows for updating software, retrieving files and even running diagnostics.
Language considerations
The computer language that will be used is something that is not to be decided lightly and can make or break any project. While too large of a topic to cover in one article, there are many aspects to a language that need to be considered, including the complexity of the language, processing time, memory usage and ease of use. Interpreted languages such as Python make accessing GPIO trivial and performing complex routines a breeze but require more resources than compiled languages such as C and are considerably slower to execute. If a project requires fast I/O access, then C and C++ will be a better choice, but if complex libraries are required (such as camera access), then using Python or Java may see a project be developed in a much shorter timeframe.