← Back to CoursesMicro:bit: De Clubhut
MISSIE 9★★★★

De Clubhut · micro:bit

Degeheimtaal

Wat bouw je? Twee micro:bits die elkaar berichten sturen door de lucht: een geheime lijn tussen de Clubhut en Liens kamer.
Brecht Corbeel · schoolium.me
MISSIE 9

Lien woont naast de Clubhut. 's Avonds wil ze de anderen iets laten weten. Gsm? Heeft ze nog niet. Roepen? Dan hoort de hele straat het.

"Micro:bits hebben een radio," zegt Kiko. "Geen gsm-netwerk nodig. Alleen twee toestellen en een afgesproken kanaal."

Jouw missie: bouw met een partner een geheime berichtenlijn. Je werkt met z'n tweeën.

Level 9 ★★★★Tijd 60 minVoor 11-13 jaar

Zo ziet het eruit als het af is

Echte schermafbeelding uit de simulator van MakeCode.

Skills die je vrijspeelt

  • Een radiogroep (kanaal) instellen
  • Een getal en een tekst versturen
  • Reageren als er een bericht binnenkomt
  • Twee micro:bits testen in de simulator

Je uitrusting

  • MakeCode, nieuw project 'geheimtaal'
  • Twee micro:bits, allebei met hetzelfde programma
  • Een partner, en een afgesproken groepsnummer van 0 tot 255 (elk duo een ander)

Hoe werkt de radio?

De micro:bit zendt radiogolven uit, op dezelfde frequentie als bluetooth en wifi (2,4 gigahertz). Een bericht wordt een klein pakketje met een paar bytes. Elke micro:bit in de buurt vangt het op.

De groep is een etiket op het pakketje. Een micro:bit gooit pakketjes van een andere groep gewoon weg. Geheim is het dus niet echt: wie jullie groepsnummer raadt, leest mee. Het bereik is ongeveer 10 tot 20 meter.

Stap voor stap

1

Kies jullie kanaal

Radio
Open Radio en zet Radio instellen groep in bij opstarten. Kies jullie geheime nummer. Zet in wanneer knop A wordt ingedrukt het blok Radio verzend nummer 1. Het getal 1 betekent: kom naar de Clubhut.
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
radio.setGroup(7)
input.onButtonPressed(Button.A, function () {
    radio.sendNumber(1)
})
Tip. Zitten er meer duo's in de klas? Elk een ander groepsnummer, anders lezen jullie elkaars berichten.
2

Een bericht ontvangen

Radio
Sleep wanneer de radio ontvangt receivedNumber naar de werkruimte. Zet erin: als receivedNumber = 1 dan toon een hart. In de simulator staan nu twee micro:bits.
Jouw blokken in MakeCode
jouw blokken
De simulator
simulator
Toon de code (JavaScript)
radio.setGroup(7)
input.onButtonPressed(Button.A, function () {
    radio.sendNumber(1)
})
radio.onReceivedNumber(function (receivedNumber) {
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Heart)
    }
})
Gelukt als ... Druk op A van de ene micro:bit: de andere toont een hart.
3

Stuur ook tekst

Radio
Zet Radio verzend zin met "HOI" in knop B. Voor het ontvangen gebruik je wanneer de radio ontvangt receivedString met toon tekens receivedString.
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
radio.setGroup(7)
input.onButtonPressed(Button.A, function () {
    radio.sendNumber(1)
})
radio.onReceivedNumber(function (receivedNumber) {
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Heart)
    }
})
input.onButtonPressed(Button.B, function () {
    radio.sendString("HOI")
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})
4

Afwerken

Basis
Wis het hart na een seconde. Toon bij opstarten een eendje: dat is het teken dat de lijn openstaat.
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
radio.setGroup(7)
basic.showIcon(IconNames.Duck)
input.onButtonPressed(Button.A, function () {
    radio.sendNumber(1)
})
input.onButtonPressed(Button.B, function () {
    radio.sendString("HOI")
})
radio.onReceivedNumber(function (receivedNumber) {
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Heart)
        basic.pause(1000)
        basic.clearScreen()
    }
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})
5

Test met twee micro:bits

Simulator
Druk in de simulator op A en B van de ene micro:bit en kijk naar de andere. Zet daarna het programma op twee echte micro:bits. Hoe ver kunnen jullie uit elkaar gaan?
De simulator
simulator
Toon de code (JavaScript)
radio.setGroup(7)
basic.showIcon(IconNames.Duck)
input.onButtonPressed(Button.A, function () {
    radio.sendNumber(1)
})
input.onButtonPressed(Button.B, function () {
    radio.sendString("HOI")
})
radio.onReceivedNumber(function (receivedNumber) {
    if (receivedNumber == 1) {
        basic.showIcon(IconNames.Heart)
        basic.pause(1000)
        basic.clearScreen()
    }
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})

Testen en op je micro:bit

Eerst in de simulator

Links in de editor staat de simulator: een micro:bit op je scherm. Telkens je iets verandert, start hij opnieuw. Klik op A en B, of op SHAKE om te schudden. Sensoren krijgen een schuifje of bolletje waarmee je zelf licht, warmte of richting kiest.

Dan op je echte micro:bit

Steek de micro:bit met de USB-kabel in de computer en klik op Downloaden. Heb je hem gekoppeld (basisboekje), dan gaat je programma er meteen op. Anders krijg je een bestand dat eindigt op .hex: sleep het naar de schijf MICROBIT. Het gele lampje achteraan knippert. Stopt het? Dan draait je code.

Kies je pad

Iemand anders kan meeluisteren als hij jullie groepsnummer raadt. Wat doen jullie?

Er is geen fout antwoord. Klik op een keuze en lees de gevolgen. Bespreek ze met je club.

Bonuslevels

Bonuslevel 1
Maak jullie codeboek af: minstens vijf getallen met elk een eigen pictogram bij de ontvanger.
Bonuslevel 2
Een radio-deurbel: schud de ene micro:bit en de andere speelt een melodietje.
Eindbaas-level
Combineer met boekje 6: het schatkist-alarm stuurt een stil alarm naar jouw micro:bit.

Eindbaas-vragen

Niet opzoeken: denk, test, en schrijf je antwoord op.

Missie geslaagd als ...

Woorden voor je codeboek

radiostuurt berichten door de lucht naar andere micro:bits
groepkanaal van 0 tot 255; alleen dezelfde groep leest mee
pakketjeeen klein bericht dat door de lucht reist
receivedNumberhet getal dat net binnenkwam
Download als PDFGewone A4: één pagina per blad. A5: boekjesformaat. Vouw-A4: dubbelzijdig, korte kant omslaan.