Abstract:
Imagine a world where you plug in your USB printer and a webpage opens up to the manufacturer's website, and without leaving your web browser, drivers are installed and a test page is already printing. What if you could plug in an Arduino and immediately be directed to a web app that lets you program it on the spot, all without having to set up your toolchain? This is a reality that is coming upon us sooner than we think.
Brief Description:
First, we will drive briefly into the cryptic and often misunderstood USB protocol and what it takes to implement a software driver. We will then cast that all aside and implement our driver in Web USB - a standard currently in spec draft that defines a way to interface at a low level with USB devices through the browser much like how we allow a website to access our location, camera, or microphone. We will make a USB device "blink" as a classic Hello World for hardware demo, and finally discuss security implications.
Name: Sam Thompson Twitter Handle: samdtho GitHub Username: @samt Employer: Particle Talk Length: 30-45mins
Title: Web USB (Working Title)
Abstract: Imagine a world where you plug in your USB printer and a webpage opens up to the manufacturer's website, and without leaving your web browser, drivers are installed and a test page is already printing. What if you could plug in an Arduino and immediately be directed to a web app that lets you program it on the spot, all without having to set up your toolchain? This is a reality that is coming upon us sooner than we think.
Brief Description: First, we will drive briefly into the cryptic and often misunderstood USB protocol and what it takes to implement a software driver. We will then cast that all aside and implement our driver in Web USB - a standard currently in spec draft that defines a way to interface at a low level with USB devices through the browser much like how we allow a website to access our location, camera, or microphone. We will make a USB device "blink" as a classic Hello World for hardware demo, and finally discuss security implications.