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.
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.
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.
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.