Master the Raspberry Pi Pico in C, Mike James, Harry Fairhead (9781871962987) — Readings Books

Become a Readings Member to make your shopping experience even easier. Sign in or sign up for free!

Become a Readings Member. Sign in or sign up for free!

Hello Readings Member! Go to the member centre to view your orders, change your details, or view your lists, or sign out.

Hello Readings Member! Go to the member centre or sign out.

Master the Raspberry Pi Pico in C
Paperback

Master the Raspberry Pi Pico in C

$161.99
Sign in or become a Readings Member to add this title to your wishlist.

Adding WiFi to the Raspberry Pi Pico turns this low-cost, small form factor device into a true IoT device. The extra capabilities added to the Pico W open up loads of opportunities, but only if you are prepared to do battle with the two libraries that provide networking and security - Lightweight Internet Protocol (lwIP) and Mbed Transport Layer Security (mbedTLS), respectively. The problem with these large libraries of code is that they are poorly documented and don't refer directly to the Pico W and its SDK. This book sets out to remedy this by providing a guide to these libraries along with examples of what you can do with them. This second edition has been updated to cover the second generation Pico 2W as well as the original Pico W and has been extended to cover FreeRTOS, which offers significant advantages when working with lwIP and mbedTLS. Having introduced the Pico WiFi Stack and basic network connections, we look at how to use TCP to create the all-important Protocol Control Block and then tackle implementing an HTTP client. As well as covering the basic mechanics of using lwIP, we also look at how to organize the use of an asynchronous library based on callbacks.

The problem of IoT security is unique because IoT devices can be physically accessed by an attacker. Even so it is worth implementing encryption and this is achieved using mbedTLS to create an HTTPS client and server, complete with certificates. We cover the basics of cryptography, including the problem of generating random numbers, what an encryption suite is and the various modes of AES encryption.

Next come four chapters devoted to specific protocols. We look at UDP as an alternative to implementing a server; SNTP as a way of setting the Pico W's real time clock; SMTP to allow email notifications and MQTT as a scalable architecture. Each of these chapters includes example programs which do the basics of the task.

To make use of sockets, the de-facto standard way of writing networking programs we need an operating system. The final chapters of this book introduce FreeRTOS and how to use sockets to implement HTTP and HTTPS clients and servers including an initialization server which lets the user configure an IoT device using WiFi.

Harry Fairhead is the author of Programming The Raspberry Pi Pico/W In C, Fundamental C: Getting Closer To The Machine, Applying C For The IoT With Linux, and IoT titles for the Raspberry Pi and the ESP32.

Mike James is the co-author of Programming the Raspberry Pi Pico/W in MicroPython; Raspberry Pi IoT In Python Using GPIO Zero, and Raspberry Pi IoT In Python Using Linux Drivers. He is the author of Extending and Embedding Python Using C and the Programmer's Python: Something Completely Different series of books and many other programming and computer science titles.

Read More
In Shop
Out of stock
Shipping & Delivery

$9.00 standard shipping within Australia
FREE standard shipping within Australia for orders over $100.00
Express & International shipping calculated at checkout

MORE INFO

Stock availability can be subject to change without notice. We recommend calling the shop or contacting our online team to check availability of low stock items. Please see our Shopping Online page for more details.

Format
Paperback
Publisher
I/O Press
Date
30 August 2025
Pages
316
ISBN
9781871962987

Adding WiFi to the Raspberry Pi Pico turns this low-cost, small form factor device into a true IoT device. The extra capabilities added to the Pico W open up loads of opportunities, but only if you are prepared to do battle with the two libraries that provide networking and security - Lightweight Internet Protocol (lwIP) and Mbed Transport Layer Security (mbedTLS), respectively. The problem with these large libraries of code is that they are poorly documented and don't refer directly to the Pico W and its SDK. This book sets out to remedy this by providing a guide to these libraries along with examples of what you can do with them. This second edition has been updated to cover the second generation Pico 2W as well as the original Pico W and has been extended to cover FreeRTOS, which offers significant advantages when working with lwIP and mbedTLS. Having introduced the Pico WiFi Stack and basic network connections, we look at how to use TCP to create the all-important Protocol Control Block and then tackle implementing an HTTP client. As well as covering the basic mechanics of using lwIP, we also look at how to organize the use of an asynchronous library based on callbacks.

The problem of IoT security is unique because IoT devices can be physically accessed by an attacker. Even so it is worth implementing encryption and this is achieved using mbedTLS to create an HTTPS client and server, complete with certificates. We cover the basics of cryptography, including the problem of generating random numbers, what an encryption suite is and the various modes of AES encryption.

Next come four chapters devoted to specific protocols. We look at UDP as an alternative to implementing a server; SNTP as a way of setting the Pico W's real time clock; SMTP to allow email notifications and MQTT as a scalable architecture. Each of these chapters includes example programs which do the basics of the task.

To make use of sockets, the de-facto standard way of writing networking programs we need an operating system. The final chapters of this book introduce FreeRTOS and how to use sockets to implement HTTP and HTTPS clients and servers including an initialization server which lets the user configure an IoT device using WiFi.

Harry Fairhead is the author of Programming The Raspberry Pi Pico/W In C, Fundamental C: Getting Closer To The Machine, Applying C For The IoT With Linux, and IoT titles for the Raspberry Pi and the ESP32.

Mike James is the co-author of Programming the Raspberry Pi Pico/W in MicroPython; Raspberry Pi IoT In Python Using GPIO Zero, and Raspberry Pi IoT In Python Using Linux Drivers. He is the author of Extending and Embedding Python Using C and the Programmer's Python: Something Completely Different series of books and many other programming and computer science titles.

Read More
Format
Paperback
Publisher
I/O Press
Date
30 August 2025
Pages
316
ISBN
9781871962987