Chapter 1, Setting Up Your Development Environment, this chapter covers the Raspberry Pi and how to use and set it up. This includes setting up raspbian on an SD card, installing Node.js, installing the Johnny-Five library, and installing the Raspi-IO library. The chapter will also explain the overarching concepts of Johnny-Five and Raspi-IO, as well as the benefits programming robotics in JavaScript brings.
Chapter 2, Creating Your First Johnny-Five Project, in this chapter, the reader will build their development environment for their Johnny-Five projects, and create their first Johnny-Five project: a blinking LED
Chapter 3, Building Interactive Projects with RGB LED, in this chapter, readers will be introduced to digital and PWM IO pins via LEDs–they will create a couple of projects with multiple LEDs and an RGB LED and explore fully the Johnny-Five LED API. We will also look at including outside Node.js libraries by including the color library to control the color of the RGB LED.
Chapter 4, Bringing in Input with Buttons, in this chapter, we'll show users how to incorporate basic input into their projects with buttons. Readers will learn to track the button by using Johnny-Five Button event.
Chapter 5, Using a Light Sensor to Create a Night-Light, in this chapter, we will add a sensor and create our first practical project: a night-light! The night-light will work by reading from the light sensor and if it's bright in the room, leave an LED off, but if it's dark, light it up! We'll also discuss the role sensors play in the robotics project ecosystem.
Chapter 6, Using Motors to Move Your Project, in this chapter, we will talk about making your project move with motors. This includes the extra hardware you will need for your project to be powered properly, how to wire motors to your project, the johnny-five motor API, and troubleshooting common problems when it comes to using motors with the Raspberry pi.
Chapter 7, Using Servos for Measured Movement, in this chapter, we will discuss measured movement in robotics projects with the servo, and build a servo that responds to a sensor. Readers will learn about servos and the Johnny-Five servo API, as well as build o project with one. They will also learn about the differences between servos and motors in the context of making robotics projects that move.
Chapter 8, The Animation Library, the animation library is a great way to fine-tune control over your johnny-five servo projects by controlling the speed, acceleration curve, and start and end points of your servo's movement. In this chapter, we'll look at the animation library and walk through how to control precision servo movements.
Chapter 9, Getting the Information You Need, in this chapter, we will look into why you would want to connect your NodeBots projects to the internet. We'll start by looking at ways you can use GET requests to obtain information from websites; like weather forecasts for your area. We'll build our first internet-connected bot using weather data and an RGB LED.
Chapter 10, Using MQTT to Talk to Things on the Internet, in this chapter, we'll talk about MQTT, a common IoT communications protocol. We'll look into using an MQTT broker, subscribing to it with our NodeBot, and using that data to react in real-time.
Chapter 11, Building a NodeBots Swarm, in the final chapter, we will go over possible paths to continue on your NodeBots journey. We will look at how to take the skills developed in the previous chapters and apply them to building multiple connected NodeBots, as well as exploring the avenues left to explore in the Johnny-Five library.Â