This month’s issue of The MagPi Magazine includes another of my tutorials for those looking to get started with the MicroPython platform on the Raspberry Pi Pico microcontroller: a Pico-powered burglar alarm driven by one or more passive infrared sensors.
Originally written as part of Get Started with MicroPython on Raspberry Pi Pico: The Official Guide, my guide to physical computing on Raspberry Pi’s first-ever microcontroller development board, the burglar alarm tutorial builds up step-by-step from introducing a single passive infrared motion sensor to interfacing with multiple sensors, printing status reports over the serial console, and triggering a piezoelectric buzzer in place of a real alarm’s rather louder horn.
As with other tutorials written for the book, full source code – in MicroPython – is provided, along with wiring references designed to make it as easy as possible to add the components to a Raspberry Pi Pico installed on a solderless breadboard. There’s scope for further extension, too: adding break-beam sensors, glass-break sensors, or a code pad for disabling and enabling the alarm on-demand.
The Solo V2 is, as the name suggests, a second-generation follow-up to the original Solo. The core of the project hasn’t changed: it’s an open-source project which aims to create a FIDO/FIDO2-compatible security dongle. Like its proprietary equivalents, the Solo V2 includes both USB and NFC communication capabilities, supports standard protocols, and even has a tamper-proof design with the bulk of the circuit held on a module encased in transparent resin.
Where the Solo V2 splits from its competition is in the firmware. Written in Rust, the biggest change from the original variant, the firmware is entirely open – allowing anyone to not only inspect the code for any reason, from finding security vulnerabilities to ensuring there are no deliberate back doors, but to modify the code in order to add new features.
The FunKey S is, like the Solo V2, designed to hang on your keyring. It’s not a security dongle, though: it’s an entirely functional self-contained games console, running a customised Linux distribution packed with emulators for everything from the Nintendo Game Boy to the Sony PlayStation. Designed to mimic, roughly, the look of the Game Boy Advance SP, the folding console is ridiculously compact – and absolutely everything, from the circuit design to the plastic case, is open source.
Finally, Retro Computer Colouring Book from Quick Web Books sounds like a joke, and it at least partially is: as the bumph on the back of the book makes clear, vintage computers from the 1970s and 1980s were primarily beige or black – and one of the machines included, the Sinclair ZX80, was the same white as the underlying paper. A joke, then, but one which is also usable: machines are represented with custom-drawn line art, and it’s entirely serviceable as a colouring book – and there’s nothing to stop you reimagining machines like the Altair 8800 in a hot pink or lurid purple.
As with all projects in the book, the reaction game is designed to build up gradually. The reader is first taken through wiring up a simple circuit with a single LED and a single button, using one to trigger the other. Gradually, the complexity is increased: using the LED to trigger a countdown stopped only when the button is pushed, giving the user a look at how quickly they can react.
The project’s culmination comes with the integration of multiplayer: two buttons are used, and whichever player hits their button first is declared the winner. It’s a simple game, admittedly, but a surprisingly competitive one – and one which introduces a range of core concepts for input handling, timing, and conditional statements.
In this month’s Hobby Tech column I take a look at how GL shaders can make the video output from emulators – in particular DOSBox – look an awful lot closer to how you remember the same software running on real hardware, review the Argon One M.2 case for the Raspberry Pi 4 family of single-board computers, and take a look at an unusual children’s book: Big Data Girl by Fred Wordie with illustrations by Santiago Taberna.
First, the shaders. Few would argue that the move away from bulky and power-hungry cathode-ray tube displays to modern liquid-crystal displays was a bad thing, except for possibly vintage game enthusiasts. The “pixel art” of old, you see, was never meant to show big, blocky, individual pixels: the CRT would smooth and blend things as a by-product of its relative inaccuracy, meaning when you fire up a classic like Doom or Moraff’s World and feel disappointed in its appearance it’s not entirely down to rose-tinted spectacles.
Shaders, typically but not exclusively written in GL Shader Language, can help. In the opening piece for this month’s column, I look at how these handy add-ons can turn the block output of an emulator into a surprisingly convincing simulation of a CRT – complete with curvature and overscan, if that’s your wont. The difference in appearance is little short of astounding – though it may take some customisation before you’re fully satisfied with the results.
The Argon One M.2, meanwhile, looks externally a lot like the previous entries in the Argon One case family. There’s the same metal shell, which doubles as a heatsink and means the built-in temperature-controlled fan rarely activates, the same magnetic cover hiding a colour-coded and silkscreened general-purpose input/output (GPIO) header, and the same layout which puts all the Raspberry Pi’s various ports to the rear for neater cabling.
Where the new design differs is in a larger base, which hides the circuitry for converting an M.2 SATA SSD into a USB-attached storage device. Unlike the NESPi 4, reviewed back in Issue 210, this one works properly in USB Attached SCSI (UAS) mode, giving a throughput of 387/300MBps read/write on a test SSD rated at 500/320MBps.
Finally, Big Data Girl is a bit of a departure for the column, as it’s a children’s book – but one with a difference: Wordie’s crowdfunded title aims to introduce the concept of “big data,” anthropomorphised as a friendly little girl, highlighting both how useful it can be and how it can impact your privacy. It’s a smart idea, and Taberna’s illustrations are fantastic, but serves more as a conversation starter for parents already familiar with the concepts than a stand-alone guide to the subject.
Custom PC Issue 213 is available now at all good supermarkets, newsagents, digital distribution platforms, and from the official website with international delivery.
All the projects in the book, the traffic light simulator being no exception, work step-by-step in building the simplest possible incarnation of each then adding increasing complexity – and in doing so introducing new concepts. In the case of the traffic light simulator, it starts off as a simple set of three LEDs which are under timed control.
As the project progresses, the reader adds a button to act as a trigger for a pedestrian crossing – which adds the concept of threading, taking advantage of the second CPU core on the Raspberry Pi Pico’s RP2040 microcontroller – before finishing the project with a buzzer providing audible feedback for when it’s safe to cross.
The BBC Doctor Who HiFive Inventor Coding Kit is an interesting mash-up of ideas. From the BBC’s side is the Doctor Who IP, with current Doctor Jodie Whittaker loaning her voice to the step-by-step programming lessons which are unlocked with a single-use code included in the box; SiFive, meanwhile, provides the hardware platform, a hand-shaped microcontroller development board based on its RISC-V microcontroller cores.
It doesn’t stop there, though: the HiFive Inventor was originally launched solo as a device “inspired” by the BBC micro:bit – an inspiration which runs so deeply it’s entirely possible to use BBC micro:bit accessories with the HiFive Inventor’s edge connector. Now, the board is available exclusively as part of the BBC bundle – though apart from a new colour, it’s entirely unchanged in design.
The Raspberry Pi Pico, on the other hand, is a lot simpler to trace: it’s a wholly in-house creation from Raspberry Pi, representing both its first microcontroller board and the first outing for its RP2040 microcontroller chip – the first product of its application-specific integrated circuit (ASIC) team. Designed to offer a wealth of functionality, including clever programmable input/output (PIO) state machines, at a very low cost, the Raspberry Pi Pico is proving a device to watch.
Finally, Initiating Paraneon is a short graphic novella designed to act as a precursor to Robert Willis’ upcoming Paraneon comic book series. Billed as being written by hackers for the next generation of hackers, it’s a book that wears its inspiration – from 2000 AD to The Matrix – on its sleeve, but sadly never truly comes out of the shadow of its forebears.
Custom PC Issue 212 is available now at all good supermarkets, newsagents, and online via the official website.
This month’s The MagPi Magazine carries my six-page guide to getting started with physical computing projects using the newly-launched Raspberry Pi Pico, the first microcontroller in the Raspberry Pi family.
Taken from my book, Get Started with MicroPython on Raspberry Pi Pico: The Official Guide, the tutorial walks the reader through programming the Raspberry Pi Pico using MicroPython – starting with the physical computing equivalent of “hello, world,” lighting up an LED. No additional hardware is needed for this part: the Raspberry Pi Pico includes a surface-mount user-addressable LED at the top of the board.
The reader is then shown how solderless breadboards work, introduced to importing MicroPython libraries and handling delays, how external LEDs require resistors, how to read a button input, and finally how to put it al together into a simple circuit which can toggle the LED based on the user’s button presses.
The NAS, first, is a device I was excited to put on the test bench. A follow-up to Kobol’s earlier and considerably more Heath Robinson Helios4, the Helios64 is an open-spec network attached storage system built around the Rockchip RK3399 six-core Arm processor – not, sadly, the faster RK3399Pro, following an unplanned downgrade when SARS-CoV-2 hit the supply chain.
The board has five SATA ports, one shared with an on-board M.2 SATA slot for an SSD, a chunky heatsink, and both gigabit and 2.5-gig Ethernet – though the first batch of the devices suffers from an unfortunate design flaw in the latter. Other issues abound in the design of the very smart-looking bundled case and plastic drive sleds, though if Kobol’s promise to address these in future production runs is fulfilled the Helios64 could well take its place at the top of the hobby-friendly NAS league.
The Keyboardio Atreus, meanwhile, is an interesting beast: it’s an ultra-compact ergonomic mechanical keyboard based on switching between multiple layers to make up for the reduced number of physical keys. It’s also not Keyboardio’s own design: the company has made a name for itself in mechanical keyboard circles by adopting open-source keyboard designs, with the full consent of their original creators, and bringing them to the mass market via crowdfunding.
Finally, Retro Tea Breaks is a compact hardback tome which also owes its existence to a crowdfunding campaign, this time courtesy of Neil Thomas’ RMC – formerly Retro Man Cave – YouTube channel. The book gathers together transcripts, lightly edited and in some cases updated, of interviews carried out with some big names from the classic gaming scene – ranging from the Oliver twins to George “The Fat Man” Sanger and, surprisingly, Jon St. John, the voice of Duke Nukem himself.
You can find the latest issue of Custom PC Magazine on all good supermarket shelves, at your local newsagent, or online with global delivery now.
This month’s MagPi Magazine celebrates the launch of the new Raspberry Pi Pico with my 14-page feature introducing the first Raspberry Pi microcontroller, the first in-house silicon which powers it, and walking the reader through getting started programming the device with MicroPython – as well as talking to three of the people behind the effort.
Built around the RP2040, the first silicon chip produced by Raspberry Pi’s in-house ASIC team, the Raspberry Pi Pico is a fascinating device. While accessible enough for education, thanks to MicroPython support and a breadboard-friendly layout, it’s also designed to work as a module for industrial and embedded projects – and even launches with a port of TensorFlow Lite for machine learning work.
My feature begins with a look at the Raspberry Pi Pico and the RP2040, covering all the major features from RP2040’s programmable input/output (PIO) to the handy single-wire debug (SWD) header at the bottom of the Raspberry Pi Pico. As always, there’s plenty of photography.
The feature then moves on to an interview with Nick Francis, senior engineering manager, James Adams, chief operating officer, and Eben Upton, chief executive officer, covering the work done on both RP2040 and Pico, their hopes for the device, and how it aims to pack a surprising amount of functionality into a £3.60 gadget – “cheap as chips,” Adams told me.
Finally, the feature closes with a series of hands-on tutorials walking the reader through setting the Raspberry Pi Pico up on their Raspberry Pi or other computer, flashing the MicroPython firmware, and working on their first physical computing program.
Today’s launch of the Raspberry Pi Pico, an affordable breadboard-friendly development board accessible enough for education and powerful enough for industrial use, comes alongside the launch of my latest book: Get Started with MicroPython on Raspberry Pi Pico: The Official Raspberry Pi Pico Guide.
Building on my earlier title The Official Raspberry Pi Beginner’s Guide, Get Started with MicroPython on Raspberry Pi Pico offers newcomers to both the Raspberry Pi Pico and the MicroPython programming language an easy way to get started. Building up from an introduction to the board, electronic circuit concepts, MicroPython in general, and MicroPython on the Raspberry Pi Pico specifically, the book walks through a series of physical computing projects – some requiring only the Raspberry Pi Pico, others using low-cost and readily-available additional hardware components.
Each successive project introduces a new concept, from simply lighting an LED and reading a button input to using hardware interrupts, running code on the second CPU core, and making use of the on-board non-volatile flash memory to store logged data. By the end of the book, the reader should know how to use all the most important features of the Raspberry Pi Pico in MicroPython – even if they started knowing nothing about electronics or programming at all.
As always, thanks must be given to those who helped during the production of the book. Particular thanks must go to Ben Everard, who acted as co-editor and also contributed a chapter on using I2C and an appendix on using the programmable input/output (PIO) functionality; Sam Adler, too, returned to provide eye-catching illustrations without which the book would be a considerably duller read.
Also to be thanked are those who provided technical assistance: Alasdair Allan, Aivar Annamaa, Damien George, Gordon Hollingworth, Graham Sanderson, and Andrew Scheller, along with all those who proofed the book ahead of publication. Not forgetting, of course, others at Raspberry Pi Press who work to bring these books to life and to shelves across the world.