Switch to the store?

Python Programming for Arduino

More Information
  • Design and develop your own hardware prototypes using Arduino
  • Interface Arduino to a computer using the Firmata protocol and Python
  • Acquire hands-on experience in developing applications for a variety of popular sensors
  • Develop graphical user interfaces to control your components and plots to visualize sensor data
  • Access your Arduino prototype from the Internet
  • Implement messaging protocols for Arduino communication
  • Connect your hardware project to cloud-based services
  • Create advanced Internet of Things applications through projects in the book

The future belongs to applications and services that involve connected devices, requiring physical components to communicate with web-level applications. Arduino combined with the popular open source software platform Python can be used to develop the next level of advanced Internet of Things (IoT) projects with graphical user interfaces and Internet-connected applications.

Starting with designing hardware prototypes using Arduino, this book will then show you everything you need to know to be able to develop complex cloud applications. You will delve into domain-specific topics with incremental complexity, ending with real-world projects. You will quickly learn to develop user interfaces, plots, remote access, messaging protocols, and cloud connectivity. Each successive topic, accompanied by plenty of examples, will help you develop your cutting-edge hardware applications.

  • Transform your hardware ideas into real-world applications using Arduino and Python
  • Design and develop hardware prototypes, interactive user interfaces, and cloud-connected applications for your projects
  • Explore and expand examples to enrich your connected device’s applications with this step-by-step guide
Page Count 400
Course Length 12 hours 0 minutes
ISBN 9781783285938
Date Of Publication 27 Feb 2015
Motion-triggered LEDs – the project description
The project goal
Method 1 – using a standalone Arduino sketch
Method 2 – using Python and Firmata
Learning Tkinter for GUI design
Your first Python GUI program
The Button() widget – interfacing GUI with Arduino and LEDs
The Entry() widget – providing manual user inputs
The Scale() widget – adjusting the brightness of an LED
The Grid geometry manager
The Checkbutton() widget – selecting LEDs
The Label() widget – monitoring I/O pins
Remaking your first Python-Arduino project with a GUI
Thermostat – the project description
Stage 1 – prototyping the thermostat
Stage 2 – using a Raspberry Pi for the deployable thermostat
The design methodology for IoT projects
Project overview
Stage 1 – a monitoring station using Arduino
Stage 2 – a control center using Python and the Raspberry Pi
Stage 3 – a web application using Xively, Python, and Amazon cloud service
Testing and troubleshooting
Extending your remote home monitoring system
Project overview
Stage 1 – a smart power strip with Arduino and relays
Stage 2 – the Python code to process tweets
Testing and troubleshooting
Extending the project with additional features


Pratik Desai

Pratik Desai, PhD, is the Principal Scientist and cofounder of a connected devices start-up, Imbue Labs, where he develops scalable and interoperable architecture for wearable devices and Internet of Things (IoT) platforms during the day. At night, he leads the development of an open source IoT initiative, the Semantic Repository of Things. Pratik has 8 years of research and design experience in various layers of the IoT and its predecessor technologies such as wireless sensor networks, RFID, and machine-to-machine (M2M) communication. His domains of expertise are the IoT, Semantic Web, machine learning, robotics, and artificial intelligence.

Pratik completed his MS and PhD from Wright State University, Ohio, and collaborated with the Ohio Center of Excellence in Knowledge-enabled Computing (Kno.e.sis) during his doctoral research. His doctoral research was focused on developing situation awareness frameworks for IoT devices, enabling semantic web-based reasoning and handling the uncertainty associated with sensor data.

In his personal life, Pratik is an avid DIY junkie and likes to get hands-on experience on upcoming technologies. He extensively expresses his views on technology and shares interesting developments on Twitter (@chheplo).