Summary
Materials Needed
The following is a list of all the materials and teaching resources that are needed to complete the VEX 123 Lab. First listed are the materials needed for the entire Lab, including the 123 Robot. In certain Labs, links to teaching resources in a slideshow format have been included. Not all Labs will include a slideshow. These slides can help provide context and inspiration for your students. All slides are editable, and can be projected for students or used as a teacher resource.
| Materials | Purpose | Recommendation |
|---|---|---|
|
123 Robot |
For performing the behaviors in Lab activities. | 1 per group |
|
Coder |
For building a project to use with the 123 Robot. | 1 per group |
|
Coder cards |
For inserting into the Coder to create a project. | See Environment Setup for which Coder cards each group will need. |
|
123 Field |
For a place on which to use the 123 Robot. | 1 tile per group |
|
Lab 2 Image Slideshow Google Doc / .pptx / .pdf |
For visual aids while teaching. | 1 for class to view |
|
Bug Printable (optional) Google Doc / .docx / .pdf |
For students to use when debugging. | 1 per group |
|
Dry erase marker and white board eraser |
To write on the Tile and erase it. | 1 per group |
Environment Setup
- Gather the materials each group needs before class. For this Lab, each group of two students will need a 123 Robot, a Coder, and a 123 Field to test on. They will also need the Coder Cards below. You may want to provide students with additional Coder cards when they are debugging in Play Part 2 of each Lab if they need an additional challenge.
- Four "Drive 1" Coder cards
- One "Drive 2" Coder card
- One "Turn right" Coder card
- One "Turn left" Coder card
-
In Play Part 1, students will use the same setup used in Play Part 2 of Lab 1, as shown below. If you have not already prepared the tiles, you may want to prepare them with the numbers 1, 2, and 3 written on them before students start Play Part 1; or you may want to have students write their own numbers on the Tile as part of the Lab activity. You may want to mark the starting position of the 123 Robot as well, to help students setup their Tile more easily.
Tile setup for Play Part 1 - To help students take turns and stay focused during Lab activities, give students direction for how to share responsibilities. For groups larger than the recommended two students, provide students with more granular roles. Examples of responsibilities for students in this Lab:
- Placing the 123 Robot on the field in the correct location.
- Inserting the Coder cards and pressing the "Step" button.
- Swapping out the "bugged" Coder Card for the chosen "debugged" Coder Card.
Engage
Begin the lab by engaging with the students.
-
Hook
What if there was a button on the Coder that could make debugging a project easier?
-
Demonstrate
Show students a bugged project twice - once using the "Start" button on the Coder, and once using the "Step" button. Discuss with students what they notice about the differences in the way the project runs when using the Step button as opposed to the Start button.
-
Leading Question
How can we use the "Step" button on the Coder to make it easier to find and fix a bug in a project?
Play
Allow students to explore the concepts introduced.
Part 1
The teacher will guide the students through the process of using the Step button on the Coder to help identify, find, and fix a bug in a bugged project. Students will build the project in their small groups, and then use the Step button to step through the project one card at a time in order to find the Coder card that is causing the bug. They will choose a card to fix it, and test their project to see if it is successful. For more information about using the Step button on the Coder, see this article in the VEX STEM Library.
Mid-Play Break
Students will discuss how they used the Step button as a tool to debug their project, and will share things they have learned by identifying, finding, and fixing bugs in 123 projects. The teacher will emphasize the pride students feel when they find and fix bugs in their projects.
Part 2
Students will be given a new project with a bug in it, and work together in small groups to use the Step button on the Coder to identify, find and fix the bug in the project by stepping slowly through the project. They will determine which Coder card is causing the bug, and then replace it with the correct Coder card. They will test the project to see if it is successful.
Alternate Coding Methods
While this Lab is written for use with the Coder, it can also be completed using touch buttons on the 123 Robot to code or VEXcode 123. If using the touch buttons to code, have students sequence button presses to create a project that has the 123 Robot move on their 123 Field. For more information about coding using the Touch buttons on the 123 Robot, see the Coding with the Touch Buttons on the 123 Robot article. While students cannot step through a project using Touch buttons, they can slow down and add one command at a time to the project before running it. This could simulate the same stepping process. To provide students with a 'bugged' Touch project, use the VEX 123 Printables. They can reference the project on the sheet to determine where the bug is in the project. See this article to learn more about the available VEX 123 Printables.
If using VEXcode 123, give students a tablet or computer and build the bugged projects using the blocks in VEXcode 123. Debug the project using the Step button in VEXcode 123. For more information about VEXcode 123, reference articles in the VEXcode 123 section of the STEM Library. For specific information about stepping through projects using the Step button in VEXcode 123, see this article.
Share
Allow students to discuss and display their learning.
Active Share
Students will share the bug they found in the project, and how they used the Step button to help identify, find and fix the bug.
Discussion Prompts
- How did using the Step button on the Coder make debugging the project easier?
- Which Coder card was causing the problem in the project, and what card did you choose to fix it?
- What will you do next time you encounter a bug in a project?