speaker-page

Jeff Fischer, Daniel Mizyrycki, Robert Queenin

Jeff Fischer has held developer, management, and research roles in small and large companies. He currently is consulting for a commercial research laboratory, advising them on how to spin-off a healthcare IoT project. Previously, he was co-founder and VP of Engineering at Quaddra Software, a file analytics startup. He has a PhD in Computer Science from UCLA, focused on programming languages and software verification. His current technical interests include IoT analytics, machine learning, distributed systems, and programming languages. Jeff first used Python in the last century and is a co-organizer of the Bay Area Python Interest Group (BayPiggies).

Daniel Mizyrycki has been programming in Python for over a decade in industry (GreenBusinessCA, Amazon, Docker) and educational (CCSF, RCSD) environments. Previously, he used assembly, C, perl, bash, founded the first Argentinean Linux User Group (1993) and consulted for early Argentinean ISPs. He loves Python's community being a PSF Contributing Member at SFPython, PyLadies, Baypiggies, PyCon and authoring sphinxserve and loadconfig. Today, he teaches Python to hundreds of Cisco engineers.

Robert Queenin is a Software Engineer at Industrial Light & Magic.

Speaker home page

Description

If you want to know more about the Internet of Things and hardware, this is the workshop for you! In the first half of the morning, you will learn some basic electronics, wire up a light sensor to a low-power wireless controller board (based on the ESP8266), flash MicroPython into its firmware, and interactively write simple applications to sample and transmit light levels. This system is yours to keep!

In the second half of the morning, we will break into teams, brainstorm on projects that build on the basic ESP8266 system, and then implement these ideas, using a provided collection of additional sensors and actuators. At the end of the workshop, each team will get to demonstrate their project.

Abstract

Want to learn more about the Internet of Things and hardware? This IoT Hackathon is an expanded version of the super popular tutorial offered at SF Python’s Project Night. We will guide you through a basic light sensor system and then form teams to work on more open-ended projects.

Who should attend?

If you want to know more about the Internet of Things and hardware, this is the tutorial for you. Everyone gets to take home their project board!

Participants are generally expected to already know Python and how to use the Python Read-Eval-Print Loop (REPL). It is recommended that you are familiar with installing Python packages via pip and with Python's virtual environment tools. No special hardware knowledge is required. In past sessions of this class, we had a few people who were true Python beginners. With a little help, they got their boards working!

If you already have some IoT experience (perhaps you attended a previous incarnation of the IoT tutorial at SF Python’s Project Night), then you can lead a team on the project phase (we’ll throw in some extra hardware for your efforts).

Workshop Description

Due in large part to the availability of cheap, low-power, internet-connected microcontrollers, the Internet of Things is taking off. Python developers can get in on the excitement with MicroPython, an implementation of Python 3 that runs on very small devices with no operating system. MicroPython provides the standard Python REPL (read-eval-print-loop) interface, so you can interactively develop and debug applications on these small devices.

In the first half of the workshop, you will learn some basic electronics, wire up a light sensor to a low-power wireless controller board (based on the ESP8266 microcontroller), load the MicroPython firmware, and interactively write simple applications to read from the sensor and send to another system via the MQTT messaging protocol.

In the second half of the workshop, we will break into teams, brainstorm on projects that build on the basic ESP8266 system, and then implement these ideas. We will provide a collection of sensors and actuators to use in your project. At the end of the workshop, each team will get to demonstrate their project.

Here is the instruction manual for the first phase of the workshop.

Preparation

You will need to bring a laptop with a USB port that has Python 3 installed. Mac and Linux are recommended, as we have more experience with those machines. People have been successful with Windows, so that works, too. Other than the laptop, we will provide all the hardware (development board, breadboard, sensor, wires, USB cable, etc.).

There are a few software dependencies that you will need to download and install (the MicroPython firmware, some github repositories, etc.). To save some time on the day of the hackathon, we recommend that you install the dependencies in advance. A few days before the hackathon, we will provide a link to a Zip archive containing all the dependencies (other than Python), so you don’t have to download them individually. The prerequisites are also documented in the instruction manual.