Paperback: 400 pages
Publisher: Packt Publishing (February 27, 2015)
Product Dimensions: 7.5 x 0.9 x 9.2 inches
Shipping Weight: 1.9 pounds (View shipping rates and policies)
Average Customer Review: 4.8 out of 5 stars See all reviews (17 customer reviews)
Best Sellers Rank: #824,923 in Books (See Top 100 in Books) #61 in Books > Computers & Technology > Hardware & DIY > Mainframes & Minicomputers #321 in Books > Computers & Technology > Hardware & DIY > Single Board Computers #604 in Books > Computers & Technology > Programming > Languages & Tools > Python
The book begins with an appropriate introduction to three main subjects: Python programming language, the dialect of C/C++ used in Arduino, and the basics of the Arduino platform.Those subjects are covered in the first 47 pages and are not explained in depth, but all the main features are properly introduced.Anyone who is familiar with a high level language can find this jump start suitable for his needs.The book is full of interesting tools and tips to speed up your learning experience.I particularly appreciate that there are many examples of code; first of all in Python, but often also in Arduino's own language.The next part of the book provides a lot of recipes for various components (servo and DC motors, LEDs, speakers and so on) presenting a mini-project with the appropriate hardware configuration and a suitable Python program to deal with it.If you need to find the proper hardware to complete those mini-projects, you will be pleased to notice that there is a very useful choice of URLs to online stores (such as ).Then, the author describes how to build graphical interfaces with a GUI library called Tkinter, storing and reading data from files and plotting charts with input values from sensors.At the end of this part, a more complex example is introduced: DIY Thermostat. To complete this project, Raspberry PI is described and there are the main guidelines to use it to deploy the project.Another half of the book is devoted to illustrate the use of Arduino and Python dealing with networks. At the beginning the basics are presented; then the author deals with "Internet of Things" projects and very advanced features such as web servers, REST interfaces and AWS services.
First my background: I'm an old software/hardware guy who first used the Intel 4004 microprocessor back in 1973. Since thenI have been professionally involved with microprocessors and microcontrollers, even after retirement. I've taughtcollege level courses on the micro. I know and have used quite a few languages from assembly to C++.Going all the way through this book would keep anyone out of trouble for a long time. I must admit not gettingall the way through at this writing, although I have skimmed the remainder.The author, in his easy to follow style, is honest and points out when Python should be used and when other "static"(compiled) languages such as C would be better choice. He demonstrates use of both C and Python in the examples.Fair treatment of the three major operating systems is refreshing. Those are Windows, Mac, and Linux. Linuxmay not be the most popular, but many experimenters who would find this book useful do use Linux. He alsospends a good amount of time bringing new users of Python and the Arduino gently up to speed. Some backgroundin writing computer programs and elementary knowledge of electronics is desirable, but may not be necessaryas he explains most things in detail.The "Firmata" protocol was totally foreign to me, and I finally figured out (correctly?) that the more commonterm might be "debugger". First time encountering that term, but of course "sketch" (meaning source code) was alsoforeign to me before encountering the Arduino. I did not see the common term "bootloader" mentioned. Theauthor is using the terminology of the Arduino enthusiast rather than those of mainstream hobbyists andprofessionals.
I had an Arduino Uno board at home for some time. I had few projects in my head but I didn’t have the required knowledge of electronics and C programming to bring them to an end. I have been programming in Python for a long time and I bought this book with the hope of being able to somehow simplify the projects by using a more familiar programming language. The book was extremely useful as it clearly explains which part of the code should be written in C and when it is possible to use Python.The first chapter of the book introduces the reader to both Python and Arduino and can be safely skipped if the reader is already familiar with both of them. The author provides detailed step by step instructions on how to install what is needed. Throughout the book instructions are given for Linux, Mac OS X, and Windows.The next chapter is about the Arduino Firmata protocol and the pySerial Python library. This chapter was probably one of the most interesting to me as it shows how to interact with the Arduino board by using Python.The following chapters are a little bit more complex but they are still easy to follow, and the author shows how to use various electronic components such as a passive infrared (PIR) sensor to detect movements, a potentiometer, a buzzer, a DC motor, a servomotor, a temperature sensor, a humidity sensor, and a light sensor. Almost every chapter proposes little projects that can be as easy as blinking an LED or rather complex. The instructions of the projects are always very clear and the provided schemes are (at least for me that I have no experience in electronics) extremely useful.A portion of the book is devoted to provide a GUI to the projects. The author chose to use Tkinter.