This article provides an overview of the range of new features and improvements available in the MakeCode Editor 2020 release at You can also find details about this update on the and a walkthrough on mixer.

New music blocks

There are a couple of new, highly requested blocks in the  Music category.  

  • Set Volume was very frequently requested by Teachers in classrooms full of micro:bits and speakers. You can set it to 0 to mute the sound output and up to a maximum of 255. 
  • Play Melody was created by Microsoft intern, Kim and is now available to use with the micro:bit.

Flashing from the browser/Web USB improvements

WebUSB offers a way to dynamically program the micro:bit without having to drag and drop a hex file onto it and it's available in chrome-based browsers like Google Chrome and Microsoft Edge. The pairing process has been made easier in MakeCode and you can now pair, connect and disconnect your micro:bit from the Download button in the editor.

WebUSB requires the latest micro:bit firmware and a Chrome-based browser such as Google Chrome or Microsoft Edge

Functions with return values

Functions let you group together blocks of code that you might want to use multiple times in your program. They can be found in the Advanced > Functions blocks menu. In addition to calling the function, the new blocks allow you to return a value from that function that can be used elsewhere in your program.

Collapse/Expand Blocks

You can now collapse and expand clusters of blocks and Functions to help tidy the Workspace and make large programs more readable.

Python language support

In addition to being able to view your code in Javascript. You can now switch to a Python view in the editor.

This is a MakeCode flavour of Python and not the same as MicroPython available in the Python Editor and other third party editors, so you won't be able to use MakeCode Python in another editor.

Code Debugger

Debuggers are critical tools to help students understand the state of their program execution flow and are often included in code editors. The Bug icon in the simulator lets you enter a Debugging mode, where you can step through the program looking for issues. You can add a break point, that lets you view the variables available to the program at that point.

Code degbugger Tutorial

Github Projects

if you have a GitHub account (Available for those 13 years and older, geographic terms  ), you can now store MakeCode projects in a GitHub repository. This is great for group projects, version control, and teaching students about open source software development.

Github in MakeCode Tutorial

Break & Continue loops

These blocks can be found in the Loops category and allow you to break or exit out of long-running loops, or continue processing after a check or pause.

Dot-to-Dot Connectors

Additional indicators have been added to help dragging and dropping embedded blocks to the right place.

Project name and code options

When you click on a new project, you will now be prompted to give it a name. The more descriptive, the more smiley hearts :)

Code options also give you the ability to select between Blocks and text programs or just text-based programs, for teachers who would prefer their students only to work in a text-based coding environment.

MakeCode Multi-Editor

The multi-editor provides a way to simulate the true experience of running radio programs on the micro:bit. The multi editor provides two separate editor windows to program your transmitter and your receiver respectively. Create, modify, and test out two programs at the same time. Try out the Multi-edit version of the editor at

Writing your own tutorials

You can now write and share Tutorials directly from the editor. A specific URL will take students directly into the tutorial itself. Useful if you want to walk students through the program online.

The update also contains the latest Monaco (text editor) with updated tooltips, IntelliSense (autocomplete), QR code sharing for projects, full iPad (touch) support and accessibility improvements for screen readers.

A reminder to those updating content...

  • Right-clicking anywhere in the workspace allows you to Download a Screenshot a PNG of the blocks in order to paste into your document.

  • Sharing the project provides you with code to embed into your website or blog.