Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Communiceren met twee micro:bits via radio

Updated: 12 May 2026

Je kunt twee micro:bits met elkaar laten communiceren via radiosignalen. In dit robotproject gebruiken we:

Beide micro:bits krijgen exact dezelfde programmacode. Daardoor hoef je maar één programma te onderhouden.

Hoe werkt dit?

We gebruiken twee micro:bits:

micro:bitfunctie
micro:bit 1afstandsbediening
micro:bit 2robotbesturing

Wanneer je op knop A drukt:

De andere micro:bit ontvangt het radiosignaal en voert dezelfde actie uit. Zo kun je de robot:

met hetzelfde programma.

Radio aanzetten

Om radio te gebruiken moet je eerst de radio-module importeren en inschakelen.


from microbit import *
import radio

# instellingen

RADIO_GROEP = 7
radio.on()
radio.config(group=RADIO_GROEP)

De RADIO_GROEP zorgt ervoor dat micro:bits alleen luisteren naar berichten binnen dezelfde groep.

Gebruik voor jouw robotgroep dus steeds hetzelfde groepsnummer.

Signalen afspreken

We spreken vaste berichten af.

RIJD_VOORUIT = "vooruit"
STOP = "stop"

Deze berichten sturen we via radio.

Eén actie uitvoeren op twee manieren

De robot moet vooruit rijden als:

Dat schrijven we zo:

from microbit import *
import radio

# instellingen

RADIO_GROEP = 7
LINKER_MOTOR_PIN = pin0
RECHTER_MOTOR_PIN = pin1
MOTOR_AAN = 1
MOTOR_UIT = 0
RIJD_VOORUIT = "vooruit"
STOP = "stop"
radio.on()
radio.config(group=RADIO_GROEP)

# functies

def rij_vooruit():    
	LINKER_MOTOR_PIN.write_digital(MOTOR_AAN) 
	RECHTER_MOTOR_PIN.write_digital(MOTOR_AAN)

def stop_robot():    
	LINKER_MOTOR_PIN.write_digital(MOTOR_UIT) 
	RECHTER_MOTOR_PIN.write_digital(MOTOR_UIT)
# programma

while True:    
	bericht = radio.receive()    
	if button_a.was_pressed() or bericht == RIJD_VOORUIT:   
		radio.send(RIJD_VOORUIT)        
		rij_vooruit()    
	
	if button_b.was_pressed() or bericht == STOP:
		radio.send(STOP)
		stop_robot()

Hier gebeurt dus hetzelfde bij:

button_a.was_pressed()

en bij:

bericht == RIJD_VOORUIT

Dat betekent:

lokale knop = radiosignaal = dezelfde actie

Waarom gebruiken we dezelfde code?

Beide micro:bits krijgen dezelfde code.

Dat heeft voordelen:

De micro:bit op de robot reageert dus op:

De afstandsbediening stuurt signalen, maar kan dezelfde actie ook lokaal uitvoeren.
Als daar geen motor op aangesloten is, gebeurt er lokaal gewoon niets zichtbaars.