diff --git a/docs/courses/csintro/radio/overview.md b/docs/courses/csintro/radio/overview.md index a5cfe9dc..7689ed8b 100644 --- a/docs/courses/csintro/radio/overview.md +++ b/docs/courses/csintro/radio/overview.md @@ -3,10 +3,17 @@ Up to this point, we have been primarily challenging students to collaborate while they create their own projects. This lesson, on communication using the micro:bit radio, is a great opportunity to have students work in pairs on a project. Have kids find a partner to work with for this lesson, and make sure they are seated next to each other.   Note: Many teachers find the concept of “pair programming” to be a valuable way to have students collaborate when programming. Two students share one computer, with one student at the keyboard acting as the driver, and the other student providing directions as the navigator. Students must practice good communication with each other throughout the entire programming process. -  + The micro:bit allows you to communicate with other micro:bits in the area using the blocks in the Radio category. You can send a number, a string (a word or series of characters) or a string/number combination in a radio packet. You can also give a micro:bit instructions on what to do when it receives a radio packet. -  + +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + This lesson starts with a “plugged” unplugged activity, in which students use their micro:bits to explore an advanced simulation. The code is quite complex, so students will focus more on how to use the micro:bits to explore aspects of viruses and epidemics, than the intricacies of the code itself.   The project for this lesson will challenge students to work together to send and receive some sort of data to and from each other. There is a wide range of simple and complex projects kids can try, but whatever they choose it is a whole lot of fun to communicate with each other using the micro:bits! - diff --git a/docs/courses/csintro/radio/project.md b/docs/courses/csintro/radio/project.md index 533910c6..35832342 100644 --- a/docs/courses/csintro/radio/project.md +++ b/docs/courses/csintro/radio/project.md @@ -23,6 +23,14 @@ When a key is pressed, it sends a number over the radio to a second micro:bit th ![Second micro:bit that plays notes](/static/courses/csintro/radio/microbit-number-two.png) Second micro:bit that plays the notes +#### ~ hint + +This project uses touch pin inputs. See how the @boardname@ detects a press at a pin or on something connected to a pin in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + +#### ~ + #### 3-Note keyboard program ```blocks diff --git a/docs/projects/SUMMARY.md b/docs/projects/SUMMARY.md index 4c145d66..eaace7b4 100644 --- a/docs/projects/SUMMARY.md +++ b/docs/projects/SUMMARY.md @@ -86,3 +86,5 @@ * [Accelerometer](https://youtu.be/byngcwjO51U) * [Light Sensor](https://youtu.be/TKhCr-dQMBY) * [Temperature Sensor](https://youtu.be/_T4N8O9xsMA) + * [Pin Pressed](https://youtu.be/GEpZrvbsO7o) + * [Radio](https://youtu.be/Re3H2ISfQE8) diff --git a/docs/projects/banana-keyboard/make.md b/docs/projects/banana-keyboard/make.md index 2c400814..3605a047 100644 --- a/docs/projects/banana-keyboard/make.md +++ b/docs/projects/banana-keyboard/make.md @@ -78,6 +78,14 @@ input.onPinPressed(TouchPin.P1, () => { }); ``` +#### ~hint + +How is touching a piece fruit detected by the @boardname@? Find out in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + +#### ~ + Grab a the orange with one hand. With the fingers of your other hand, tap the banana to play sound. Your banana keyboard is ready! ## ~button /projects/banana-keyboard/code diff --git a/docs/projects/guitar/pinpress.md b/docs/projects/guitar/pinpress.md index 0b854678..a290a7e7 100644 --- a/docs/projects/guitar/pinpress.md +++ b/docs/projects/guitar/pinpress.md @@ -63,7 +63,13 @@ https://youtu.be/PAIU-vHqyGU **with the other hand alternately touch the 0, 1 and 2 pins** ## ~hint + **The electric signal traveled from pins, between your hands to `GND` and the @boardname@ detected the electric signal!** + +How is the touch dectected? Find out in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + ## ~ ## Step 2: Installing conductive foil on the guitar diff --git a/docs/projects/infection.md b/docs/projects/infection.md index 100a3bde..b927d963 100644 --- a/docs/projects/infection.md +++ b/docs/projects/infection.md @@ -51,6 +51,15 @@ Icons used in the game: * Incubating: `IconNames.Confused` * Healthy: `IconNames.Happy` +## ~ hint + +Take a look at this video to see how the @boardname@ uses radio to spread "disease" +in this game: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + ## Project share ### ~ hint diff --git a/docs/projects/reaction-time/make.md b/docs/projects/reaction-time/make.md index aee0e0d5..1b3a41c1 100644 --- a/docs/projects/reaction-time/make.md +++ b/docs/projects/reaction-time/make.md @@ -9,6 +9,14 @@ https://youtu.be/DgJ-S0q0EMs * Fold the foil squares and place them around the cardboard. * Connect each piece of foil to the appropriate pin on the @boardname@. +### ~hint + +How is a touch on the piece of foil detected by the @boardname@? Find out in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + +### ~ + **Note:** Although the video shows a connection to the **P2** pin, it isn't used in this experiment. That's it! diff --git a/docs/reference/input/on-pin-pressed.md b/docs/reference/input/on-pin-pressed.md index ffdebff9..7d384c6e 100644 --- a/docs/reference/input/on-pin-pressed.md +++ b/docs/reference/input/on-pin-pressed.md @@ -29,6 +29,12 @@ instead of the USB cable. * ``name`` means the pin that is being pressed, either `P0`, `P1`, or `P2` +## Pin presses in action + +See how the @boardname@ detects a press at a pin or on something connected to a pin in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + ## Example: pin pressed counter This program counts how many times you press the `P0` pin. @@ -36,10 +42,10 @@ Every time you press the pin, the program shows the number of times on the scree ```blocks let count = 0 -basic.showNumber(count, 100) +basic.showNumber(count) input.onPinPressed(TouchPin.P0, () => { count = count + 1 - basic.showNumber(count, 100) + basic.showNumber(count) }) ``` diff --git a/docs/reference/input/pin-is-pressed.md b/docs/reference/input/pin-is-pressed.md index e5d01f08..4ba150a5 100644 --- a/docs/reference/input/pin-is-pressed.md +++ b/docs/reference/input/pin-is-pressed.md @@ -25,6 +25,12 @@ instead of the USB cable. * a [boolean](/blocks/logic/boolean) that means whether the pin you say is pressed (`true` or `false`) +## Pin presses in action + +See how the @boardname@ detects a press at a pin or on something connected to a pin in this video: + +https://www.youtube.com/watch?v=GEpZrvbsO7o + ## Example This program shows `1` if `P0` is pressed, and `0` if `P0` is not pressed: diff --git a/docs/reference/radio/on-received-number.md b/docs/reference/radio/on-received-number.md index 8557319a..ffa2e4e4 100644 --- a/docs/reference/radio/on-received-number.md +++ b/docs/reference/radio/on-received-number.md @@ -11,6 +11,14 @@ radio.onReceivedNumber(function (receivedNumber) {}) * **receivedNumber**: The [number](/types/number) that was sent in this packet or `0` if this packet did not contain a number. See [send number](/reference/radio/send-number) and [send value](/reference/radio/send-value) +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + ## Examples ### Tell me how fast diff --git a/docs/reference/radio/on-received-string.md b/docs/reference/radio/on-received-string.md index 048fc6c6..cb22faf6 100644 --- a/docs/reference/radio/on-received-string.md +++ b/docs/reference/radio/on-received-string.md @@ -10,6 +10,14 @@ radio.onReceivedString(function (receivedString) {}) * **receivedString**: The [string](/types/string) that was sent in this packet or the empty string if this packet did not contain a string. See [send string](/reference/radio/send-string) and [send value](/reference/radio/send-value) +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + ## Example This program continuously sends a cheerful message. It also receives a messages from nearby @boardname@s. It shows these messages on the screen. diff --git a/docs/reference/radio/on-received-value.md b/docs/reference/radio/on-received-value.md index f85b675b..8b61fb40 100644 --- a/docs/reference/radio/on-received-value.md +++ b/docs/reference/radio/on-received-value.md @@ -11,6 +11,14 @@ radio.onReceivedValue(function (name, value) {}) * **name**: a [string](/types/string) that is a name for the value received. * **value**: a [number](/types/number) that is the value received. +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + ## Example This program keeps sending numbers that say how fast the @boardname@ is diff --git a/docs/reference/radio/send-number.md b/docs/reference/radio/send-number.md index b90ae729..15303c6f 100644 --- a/docs/reference/radio/send-number.md +++ b/docs/reference/radio/send-number.md @@ -10,6 +10,13 @@ radio.sendNumber(0); * **value**: a [number](/types/number) to send. +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ ## Examples diff --git a/docs/reference/radio/send-string.md b/docs/reference/radio/send-string.md index e6f1e2e5..2be21662 100644 --- a/docs/reference/radio/send-string.md +++ b/docs/reference/radio/send-string.md @@ -11,6 +11,13 @@ radio.sendString("Hello!") * **msg**: a [string](/types/string) to send by radio. +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ ## Example: Two-way radio diff --git a/docs/reference/radio/send-value.md b/docs/reference/radio/send-value.md index 0441cd08..8bff6537 100644 --- a/docs/reference/radio/send-value.md +++ b/docs/reference/radio/send-value.md @@ -12,6 +12,14 @@ radio.sendValue("name", 0); * **name**: a [string](/types/string) that is the name of the value to send. * **value**: a [number](/types/number) that is the value to send. +## ~ hint + +Watch this video to see how the radio hardware works on the @boardname@: + +https://www.youtube.com/watch?v=Re3H2ISfQE8 + +## ~ + ## Example: Broadcasting acceleration This program sends your @boardname@'s **acceleration** (amount it is