In this chapter, we understood the difference between pull-up and pull-down resistors to wire pushbuttons and read their status with the
wiring-x86 libraries. We understood the difference between reading the pushbutton statuses with polling and working with interrupts and interrupt handlers.
We created consistent code that allowed the user to perform the same actions with either pushbuttons in the breadboard or HTTP request. We combined code that reacts to changes in the statuses of the pushbuttons with a RESTful API built with Tornado Web server. As in the previous chapters, we took advantage of Python's object-oriented features and we created classes to encapsulate pushbuttons and the necessary configurations with the
mraa and ...