robot start
Picks which robot you have. Put it first, in on start, before any other robot block. Robot › robot … start.
robot.elecfreaksCuteBot.start()
Robotics challenges · Find each block in the MakeCode toolbox (the category is at the end of each line).
Picks which robot you have. Put it first, in on start, before any other robot block. Robot › robot … start.
robot.elecfreaksCuteBot.start()
Stops both wheels. End every move and every program that should finish with it.
robot.motorStop()
Set the start value once, in on start. change adds to whatever the variable holds now.
let count = 0
input.onButtonPressed(Button.A, function () {
count += 1
basic.showNumber(count)
})
The same, then waits that many milliseconds before the next block. Click + on the block to add the time. It does not stop the motors: follow it with robot motor stop.
robot.motorTank(50, -50, 500)
Runs the blocks inside every time the button is pressed. Choose A, B or A+B. Input.
input.onButtonPressed(Button.A, function () {
blocks
})
A named job. Making it does not run it: a call block runs it. Advanced › Functions.
function name () {
blocks
}
Sets the left and right wheel speeds, from −100 to 100. Same speeds go straight, opposite speeds spin, different speeds curve. The robot keeps going until another motor block.
robot.motorTank(50, 50)
Sets the robot's lights to a colour. Click the colour to choose another; black turns them off.
robot.setColor(0xff0000)
Runs the blocks inside again and again. Blocks in on start run only once.
basic.forever(function () {
blocks
})
Runs the blocks inside only when the condition is true; does nothing when it is false. Logic.
if (condition) {
blocks
}
Exactly one part runs: the first when the condition is true, else the second. Click + on an if block.
if (condition) {
blocks
} else {
blocks
}
How far away the nearest thing in front is, in centimetres (up to 40; 40 means nothing in range). Read it again in forever to follow it.
robot.obstacleDistance()
True when that line sensor (left or right) is over the dark line. Steer towards the side that still sees it.
robot.detectLine(RobotLineDetector.Left)
Shows a ready-made picture. Basic › show icon; click the picture to choose another.
basic.showIcon(IconNames.Heart)
Pictures inside forever repeat, in order. Each pause holds the picture before it.
basic.forever(function () {
basic.showIcon(IconNames.Heart)
basic.pause(500)
basic.showIcon(IconNames.SmallHeart)
basic.pause(500)
})
Another question, asked only if the ones above were false. The first true one wins.
} else if (condition) {
A random whole number from the first to the second, both included. Math.
randint(0, 10)
Plays a note on the robot's buzzer: a frequency (262 is middle C) for a time in milliseconds.
robot.playTone(262, 500)
Runs the blocks inside every time the micro:bit is shaken (or tilted, if you choose another gesture). Input.
input.onGesture(Gesture.Shake, function () {
blocks
})
Runs its blocks when you touch the gold logo on the front of the micro:bit (V2 only; on a V1, use on shake). Input › on logo pressed.
input.onLogoEvent(TouchButtonEvent.Pressed, function () {
})
Shows an arrow pointing a direction. Basic › more › show arrow.
basic.showArrow(ArrowNames.West)
Plays notes on the micro:bit: a letter for each note, - for a rest, at a speed in beats per minute. Until done waits for the tune to end; in background moves on at once. Music › play melody.
music.play(music.stringPlayable("C D E F G A B C5", 120), music.PlaybackMode.UntilDone)
Shows a number; numbers above 9 scroll. Basic › show number.
basic.showNumber(0)
Puts a value in a variable, throwing the old value away. Make the variable in Variables first.
let count = 0
Picks a channel (0 to 255). Only micro:bits in the same group hear each other. Radio.
radio.setGroup(1)
Runs each time a number arrives; receivedNumber holds it. Radio.
radio.onReceivedNumber(function (receivedNumber) {
blocks
})
Sends a word to every other micro:bit in the group. Radio.
radio.sendString("hi")
Runs each time a word arrives; receivedString holds it. Radio.
radio.onReceivedString(function (receivedString) {
blocks
})
Plays one note on the micro:bit for a number of beats. In background, so the program carries on. Music › play tone.
music.play(music.tonePlayable(262, music.beat(BeatFraction.Whole)), music.PlaybackMode.InBackground)
Scrolls a word or message across the screen. Basic › show string.
basic.showString("Hello")
Waits before the next block. 1000 ms is one second. Basic › pause.
basic.pause(500)
Adds to a variable's value. Change by -1 counts down. Variables.
count += 1
Sends a number to every other micro:bit in the group. Radio.
radio.sendNumber(0)
One on radio received gets every message; receivedNumber says which one arrived.
radio.onReceivedNumber(function (receivedNumber) {
if (receivedNumber == 1) {
blocks
} else if (receivedNumber == 2) {
blocks
}
})
A variable can hold true or false, to remember what is happening now. Logic.
waiting = true