Books

Books : reviews

Harry Fairhead, Mike James.
Programming the Raspberry Pi Pico/W in MicroPython: 2nd edn.
I/O Press. 2022

+

The Raspberry Pi Pico is a remarkable microcontroller. It has a power and sophistication that would have been unthinkable just a short time ago. For the sort of jobs it is ideal for, it has plenty of processing power and enough memory to make tasks that would have once required careful planning, relatively easy. Instead of struggling with the machine, you can now focus on a good implementation of your algorithms.

MicroPython is a good choice of language to program the Pico. It isn’t the fastest way, but in most cases it is fast enough to interface with the Pico’s hardware and its big advantage is that it is easy to use. As a high-level language, MicroPython is based on Python 3 and is fully object-oriented. This means that you can create classes to encapsulate hardware and make it easier to use and understand.

The purpose of the book is to reveal what you can do with the Pico’s GPIO lines together with widely used sensors, servos and motors and ADCs. After covering the GPIO, outputs and inputs, events and interrupts, it gives you hands-on experience of PWM (Pulse Width Modulation), the SPI bus, the I2C bus and the 1-Wire bus. One of the key advantages of the Pico is its PIO (Programmable I/O) and while this is an advanced feature, it is introduced in this book. After finding out how the PIO works, we apply it to writing a PIO program for the DHT22 and the 1-Wire bus.

The original Pico lacked WiFi connectivity, a limitation overcome by the launch of the Pico W. Two new chapters are dedicated to how to make use of the additional features of the Pico W including how to create a web client and a web server, use HTTPS and asyncio.