2021-05-30

2021-05-30 Saturday: Book Review - Creative DIY Microcontroller Projects with TinyGo and WebAssembly

 


Creative DIY Microcontroller Projects with TinyGo and WebAssembly

A practical guide to building embedded applications for low-powered devices, IoT, and home automation

https://www.amazon.com/Creative-Microcontroller-Projects-TinyGo-WebAssembly/dp/1800560206/

Published: May 14, 2021, 322 pages

By Tobias Theel, Lead Software Engineer with ClariLab

Caveat: Teny Thomas (Marketing Coordinator at PacktPublishing) graciously provided me with an eBook copy to review.

My Amazon Review Headline: Crisp, Concise, Well-Written - Focused on Building Practical Hands-on Skill and Knowledge

Things I Liked About This Book:

  • There is no fluff in this book – the writing is crisp, clear, concise, and packed with interesting hands-on exercises. For a technologist who wishes to begin their exploration of micro-controller programming - it is highly entertaining - and informative. Highly recommended.
  • This book was a fun read. Although it focuses on hardware aspects that are outside of my normal day-to-day professional work – it opened new doors for me to new insights and knowledge that expands my breadth of awareness – which I can integrate and use to elevate my understanding of many other practical problems in both my professional and personal domains of interest.
  • The accompanying github and Code In Action YouTube videos.
  • The book is focused on immediately developing knowledge and skills.
  • The project/coding examples are interesting – and extensible to other types of projects.
  • The example of writing a driver for a servomotor.
  • Controlling devices.
  • Writing a library for a sensor, and reading data from a sensor.
  • The environment/tooling setup instructions in the first chapter covered several different scenarios.
  • The discussions of the differences/benefits between different Arduino device specs.
  • Understanding the purpose and use/fit of the SPI and I2C interfaces.
  • The building of the reader’s knowledge to tackle a practical and interesting Internet of Things (IoT) type project – that also incorporates Wi-Fi and an MQTT broker to demonstrate pub/sub event handling.
  • The writer gently takes the reader by the hand – and guides them step-by-step. Even a hobbyist/neophyte programmer should be able to enjoy working through the well-written instructions for the projects.
  • The inclusion of the Questions section at the end of each chapter – providing further stimulus for the reader to develop further confidence in the knowledge they have just gained.
  • The author has managed to maintain a keen balance of information imparted, pace of interesting hands-on exercises – without becoming mired in minutiae. Yet, there are subtle but important points that the author calls out – so that the neophyte is well advised to consider additional concerns that are beyond the scope of the book (e.g., security, encrypted communications, authentication).
  • I am keenly interested in practical applications of both Go and Wasm. Learning more about TinyGo was also of interest. The book is written for Go 1.15 and newer releases.
  • I have a number of personal automation projects I would like to develop (many related to my 1963 35 ft. Pearson Alberg sailboat)  – but my knowledge of microcontrollers is very limited. This book provides many practical examples that I feel will give me the practical hands-on foundations from which to explore further on my own.

 

Chapters:

1 – Getting Started with TinyGo

2 – Building a Traffic Lights Control System

3 – Building a Safety Lock Using a Keypad

4 – Building a Plant Watering System

5 – Building a Touchless Handwash Timer

6 – Building Displays for Communication using I2C and SPI Interfaces

7 – Displaying Weather Alerts on the TinyGo Wasm Dashboard

8 – Automating and Monitoring Your Home Through the TinyGo Wasm Dashboard

 

 

Additional Notes

Source code for the book’s project:

YouTube: Code in Action

TinyGo

Errata reported to Packt:

No comments:

Copyright

© 2001-2021 International Technology Ventures, Inc., All Rights Reserved.