Preface
In the era of the Internet of Things (IoT), it has become very important to rapidly develop and test prototypes of your hardware products while also augmenting them using software features. The Arduino movement has been the front-runner in this hardware revolution, and through its simple board designs it has made it convenient for anyone to develop DIY hardware projects. The great amount of support that is available through the open source community has made the difficulties that are associated with the development of a hardware prototype a thing of the past. On the software front, Python has been the crown jewel of the open source software community for a significant amount of time. Python is supported by a huge amount of libraries to develop various features, such as graphical user interfaces, plots, messaging, and cloud applications.
This book tries to bring you the best of both hardware and software worlds to help you develop exciting projects using Arduino and Python. The main goal of the book is to assist the reader to solve the difficult problem of interfacing Arduino hardware with Python libraries. Meanwhile, as a secondary goal, the book also provides you with exercises and projects that can be used as blueprints for your future IoT projects.
The book has been designed in such a way that every successive chapter has increasing complexity in terms of material that is covered and also more practical value. The book has three conceptual sections (getting started, implementing Python features, and network connectivity) and each section concludes with a practical project that integrates the concepts that you learned in that section.
The theoretical concepts and exercises covered in the book are meant to give you hands-on experience with Python-Arduino programming, while the projects are designed to teach you hardware prototyping methodologies for your future projects. However, you will still need extensive expertise in each domain to develop a commercial product. In the end, I hope to provide you with sufficient knowledge to jump-start your journey in this novel domain of the IoT.