Table of Contents
IntroductionSteve Kinney provides an overview of the course, which is about building robots with Node.js. Steve reviews the hardware package needed for the course, Johnny-Five Inventor's Kit.
Setting Up the Tessel 2Steve walks students through setting up their Tessel 2 devices. He also takes a tour of the Johnny-Five Inventors Kit.
Setup DebuggingSteve reviews how to resolve potential issues when working with multiple Tessel devices.
Tessel 2 LED
Introducing Johnny-FiveSteve introduces Johnny-Five, an open source library that provides convenient abstractions for working with a wide variety of boards.
Wiring Up an LEDSteve wires a LED directly to the Tessel 2.
Controlling an LED with Johnny FiveSteve writes code using Johnny Five to make the LED blink at a regular interval.
The Problem with LED PulsingSteve explains what pulse width modulation (PWM) is and how digital devices use it to emulate analog signals.
Breadboard OverviewSteve explains how a breadboard works and why they are used when prototyping hardware.
Wiring Up an LED to the BreadboardAfter wiring up an LED using a breadboard, Steve makes it blink again and attempts unsuccessfully to make it pulse.
Pulsing LEDsSteve uses port A7 to make the LED pulse successfully.
Wiring Up a ButtonSteve adds a button to the breadboard.
Programming the ButtonSteve gets events from the button programmatically.
Make the Button Control the LEDSteve writes code to turn the LED on when the button is pressed and off when it is released.
Wiring Up a RGB LEDSteve wires up an RGB LED to the breadboard.
Programming & Debugging RGB LEDSteve programs the RGB LED to rotate through red, green, and blue colors.
Add WebSockets for Real-TimeSteve adds in Socket.io to allow for real-time control of the color of the RGB LED.
Reading Weather Data
Wiring Up the BME280Steve wires up the BME280 weather sensor to the breadboard.
Visualizing Sensor Data Using BarcliSteve uses Lodash's throttle method and Barcli to visualize data in the terminal.
Update Web Page with Device Data ExerciseIn this exercise, students create a page that displays real-time temperature data.
Update Web Page with Device Data SolutionSteve walks through the solution to show how to code a page to display the current sensor readings in real-time via Socket.io.
Updating a Remote Server with Device DataSteve posts sensor readings to a remote server.
Magnetic Door Switch
Wiring Up a Magnetic Door SwitchSteve wires up a magnetic door switch to detect when a door or drawer has been opened.
Programming the Magnetic Door SwitchSteve writes code to detect when a door has been opened.
Using Third-Party APIs with HardwareSteve writes functionality to send him an email whenever a door has been opened with the SendGrid API.
Displaying Data with an LCD Screen
Wiring Up and LCD ScreenSteve wires up an LCD screen to the breadboard.
Programming the LCD ScreenSteve create a web-based UI for updating the messages on the screen.
Showing Tweets on the LCD ScreenSteve pulls in a real-time Twitter stream and sends it to the LCD.
Other Kit Items & Wrap UpSteve wraps up the course by discussing other parts in the Johnny-Five Inventor's Kit and applications of nodebots.