All workshops are 2 hours and hands on. You will will need a laptop! You will need a few different USB cables . . . one that is your computer's port to USB-C and another that is your port to micro-usb. If you have USB-C you will alse need a USB-A dongle. Sometimes Windows is easier and sometimes Mac or Linux is easier but usually it's possible with either.
Web USB & Web Bluetooth: The Perfect Pair
Requirements: A laptop with a USB-A plug or an adapter from usb-c to USB-A.
TensorFlow fun with Sparkfun
This is an experiential workshop that focuses on the use of TensorFlow Lite on a low-power microcontroller to perform machine learning. Modalities that are covered include word recognition in speech; gesture recognition using accelerometer values; and human presence detection using imagery.
The workshop covers machine learning model training, deployment, and operation, with a majority of time that is spent on a gesture-recognition activity, “Magic Wand”, that is based on the content of Pete Warden’s book, TinyML: Machine Learning with TensorFlow on Arduino and Ultra-Low-Power Microcontrollers.
Requirements: A laptop with the Arduino IDE installed and a <your laptop connector> to micro-usb cable.
TinyML for Everyone with Arduino
This workshop will introduce you to the process of deploying machine learning (ML) models to microcontrollers (MCUs). You will record real-time sensor data from an Arduino Nano 33 BLE board Using this data you will train deep learning model with TensorFlow. Finally, the ML model will be converted so that it can be run on the Arduino with real-time performance.
Prerequisites: A laptop with the Arduino IDE installed and a <your laptop connector> to micro-usb cable.
Resources: Guide in Github
Sewable Circuits: Making a Wearable WebThing
This workshop will light you up! In this 2 hour session you will learn to build a circuit using stitches. Using a microcontroller and a sewable LED, participants will make a light up patch they can control over a network using Mozilla’s WebThings IoT Gateway.
Requirements: A laptop and a <your laptop connector> to micro-usb cable.
Device Hacking 101: Build a Serverless Application for an IoT Device
Building a secure, scalable, performant and managed backend for an IoT device can seem like a huge challenge. In this workshop, we'll build a serverless backend, utilizing readily available open-source hardware devices and AWS services, such as AWS Lambda and AWS IoT. Hacking is really all about taking advantage of available resources and so we'll cover the best practices to help you get started the right way, and onto hacking your next great thing.
- Program and connect an ESP32 M5Stick smartwatch to AWS IoT
- Interact with a remote device using AWS Lambda
- Deploy a serverless application using the Serverless Application Repository
Prerequisites: A laptop and a way to plug in a USB-A cable.
Resources: AWS Blog
Asset Tracking and Location with BLE and Microcontrollers
Get hands on with the new Microchip PIC® & AVR®-BLE development boards, and learn how to build BLE nodes from the ground up which will culminate in you building an asset location device from scratch. In this class, you will learn some of the basics behind Bluetooth Low Energy® (BLE), its role in the IoT landscape, and development tools for quickly prototyping your own BLE nodes.
After familiarizing ourselves with the hardware and software as well as the out-of-the-box demo, we’ll get to work building our own application from the ground up. You’ll then get to take the hardware home for your own projects.
- Windows/Mac/Linux laptop**
- Android phone with LightBlue® App installed OR iPhone with LightBlue® App installed
- MPLAB X IDE v5.30
- Microchip AVR Toolchain
- MPLAB XC8 Compiler
- Type A Male to Micro B USB Cable (such as this)
- We will have a limited number of these for use during the class, but bring your own if you have it.
We will briefly walk through downloading and installing those items in the workshop as well, but they're large files so download them before if you want to have time for the hands-on portion of the class.
** Note for macOS® and 32-bit OS users: The latest version of macOS, 10.15 Catalina, removes support for 32-bit applications. This means that current versions of MPLAB XC32/32++ and MPLAB XC16 IDE will not run on this operating system.
A Hands-on Intro to Managing a Fleet of 1000's of IoT Devices with Balena
The balenaCloud workshop is a hands-on lesson in how to properly deploy, secure, and manage IoT devices, using the balenaCloud platform and Arm-powered devices, in this case a Raspberry Pi 4. This will be a guided, instructor-led activity that is co-hosted by Arm and balena, and each participant will follow along with their own hardware that we will provide them with! We will go through the process of creating a free account with balena, naming an application, provisioning a device, downloading a customized balenaOS, flashing that image to an SD Card using balena Etcher, powering up, and watching the devices come online in the Dashboard. From there, we will go through the steps of installing the balena CLI and cloning a GitHub repository, running a Docker container build, and pushing the resulting Container to the Raspberry Pi. We’ll also explore scaling and fleet management, more advanced container builds, and cover sample projects.
Woven throughout our discussion will be conversations about how to choose the most appropriate IoT hardware depending upon the application or use case, the various capabilities of Arm SoC’s, container-centric development, and other topics of interest to the group depending on any time remaining.
Prerequisites: A laptop and a <your laptop connector> to micro-usb cable. We’ll be flashing SD Cards, installing a CLI utility, building Docker containers, and pushing code to the devices all from the laptop so tools for doing that work will come in handy too (i.e. have Docker installed already!).
Mighty IoT with MicroPython
Get ready to get your hands dirty! In this hands-on workshop, we will discuss getting started with Micropython for building effective and efficient IoT devices. We will be using an ESP32 development board in this workshop. We will be using Micropython to interface sensors, control outputs and publish data to the cloud.
You'll have an ESP32, a breadboard, sensors, resistors and LEDs and you'll wire it up and use a few lines of Micropython to make it all work. Beginners welcome! Nothing to install on your computer! Just open a file and start writing!
Prerequisites: A laptop and a <your laptop connector> to micro-usb cable. Install Thonny IDE (https://thonny.org/). On Windows 7 laptops, install the following serial port driver (https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers).
Azure IoT workshop
Calling all AIoT DevFest attendees! Join Microsoft for a 2 hour IoT cloud workshop where you will be able to send a GIF to your brand new IoT device. After completing the workshop, each participant will receive an MXChip IoT Device to bring home and continue working on IoT projects independently.
Prerequisites: A laptop and a <your laptop connector> to micro-usb cable.
And here are a few notes Harj wanted to share . . hopefully the repo is updated soon!
Do not install apps from windows app store, please install from executables or MSI
Section 3 before uploading file to mxchip
Package-lock.json line 358, remove “,” at end of line
Section 3.2 ,,, skip the firmware upgrade by coping to device instead, open board manger in VS Code and upgrade firmware
Section 5 …start server
- cd server
- npm audit fix ## fixes package version issues
- npm install
- npm start