Since the first edition of this book was released in 2013, some things in the world of Arduino have stayed surprisingly constant and others have changed. The Arduino Uno is still most people’s idea of what an Arduino should be and the Arduino IDE has kept its simple interface, whilst adding some great new features such as the Library and Board Managers.

The main changes to this edition are:

* A new chapter – “When is an Arduino not an Arduino?”. This chapter shows you how to use the Arduino IDE with “Arduino compatible” boards such as the ESP8266 and ESP16 boards as well as ARM m0 boards such as the Adafruit Circuit Playground Express and Trinket m0 boards.

* A new chapter – “Interfacing with Arduino” that explains the theory behind interfacing with microcontrollers that you will need to understand when working with I2C, SPI and UART serial.

The “Networking” chapter from the first edition has been extensively revised, to include both on official Arduino network programming, but also the probably more widely used ESP8266 and ESP32 WiFi programming. The chapter has also been extended to look at parsing JSON web services and use of the dweet.io IoT service.

The other chapters of the book have also been given a general update.