46 lines
3.5 KiB
Markdown
46 lines
3.5 KiB
Markdown
|
# Project: Fidget Cube
|
||
|
|
||
|
A fidget cube is a little cube with something different that you can manipulate on each surface. There are buttons, switches, and dials, and people who like to “fidget” find it relaxing to push, pull, press, and play with it. In this project, students are challenged to turn the micro:bit into their very own “fidget cube”.
|
||
|
|
||
|
Show students some examples of fidget cubes:
|
||
|
* Original Kickstarter Fidget Cube - https://www.kickstarter.com/projects/antsylabs/fidget-cube-a-vinyl-desk-toy (there is a funny video showing the fidget cube in action).
|
||
|
|
||
|
## Discussion questions
|
||
|
* Do any of your students fidget?
|
||
|
* What kinds of things do they fidget with? Spinning pens, fidget spinners, rings, coins?
|
||
|
* There are many different versions of fidget cubes available now. Do any students have any?
|
||
|
* Have they seen them before?
|
||
|
* What are the types of fidget activities?
|
||
|
* If students could add or modify features of the fidget cube, what would they choose to do?
|
||
|
* What would make the ultimate fidget cube?
|
||
|
|
||
|
Remind students that a computing device has a number of inputs, and a number of outputs. The code that we write processes input by telling the micro:bit what to do when various events occur.
|
||
|
|
||
|
## Project
|
||
|
Make a fidget cube out of the micro:bit, create a unique output for each of the following inputs:
|
||
|
* on button A pressed
|
||
|
* on button B pressed
|
||
|
* on button A+B pressed
|
||
|
* on shake
|
||
|
|
||
|
See if you can combine a maker element similar to what you created in Lesson 1 by providing a holder for the micro:bit that holds it securely when you press one of the buttons.
|
||
|
|
||
|
![](/static/courses/csintro/algorithms/fidget-cube.jpg)
|
||
|
Sample fidget cube designs
|
||
|
|
||
|
## Project Mod
|
||
|
* Add more inputs and more outputs - use more than 4 different types of input. Try to use other types of output (other than LEDs) such as sound!
|
||
|
|
||
|
## Assessment
|
||
|
|
||
|
| | 4 | 3 | 2 | 1 |
|
||
|
| - | - | - | - |
|
||
|
| ============= | =============== | =============== | ============== | ============= |
|
||
|
| Inputs | At least 4<br/>different inputs<br/>are successfully<br/>implemented | At least 3<br/>different inputs<br/> are successfully<br/>implemented | At least 2<br/>different inputs<br/>are successfully<br/>implemented | Fewer than 2<br/>different inputs<br/>are successfully<br/>implemented |
|
||
|
| ============= | =============== | =============== | ============== | ============= |
|
||
|
| Outputs | At least 4<br/>different outputs<br/>are successfully<br/>implemented | At least 3<br/>different outputs<br/>are successfully<br/>implemented | At least 2<br/>different outputs<br/>are successfully<br/>implemented | Fewer than 2<br/>different outputs<br/>are successfully<br/>implemented |
|
||
|
| ============= | =============== | =============== | ============== | ============= |
|
||
|
| Micro:bit<br/>program |Micro:bit<br/>program:<br/>- uses event<br/>handlers in a<br/>way that is<br/>integral to the<br/>program<br/>- compiles and<br/>runs as<br/>intended<br/>- includes<br/>meaningful<br/>comments | Micro:bit<br/>program lacks 1<br/>of the required<br/>elements | Micro:bit<br/>program lacks 2<br/>of the required<br/>elements | Micro:bit<br/>program lacks all<br/>or of the<br/>required<br/>elements |
|
||
|
| ============= | =============== | =============== | ============== | ============= |
|
||
|
| Collaboration<br/>reflection | Reflection piece<br/>includes:<br/>- brainstorming<br/>ideas<br/>- construction<br/>programming<br/>beta testing | Reflection piece<br/>lacks 1 of the<br/>required<br/>elements | Reflection piece<br/>lacks 2 of the<br/>required<br/>elements | Reflection piece<br/>lacks 3 of the<br/>required<br/>elements |
|