Python

Developer/Provider:Calliope and Lulububu (optimizations and adaptation for Calliope mini), Open Source development by the Microbit Foundation with many other community contributors
Type of application:Web application
Operating system:Windows, Mac, Linux, or Chromebook computers
Calliope mini Version:V3 (V1 and V2 currently supported to a limited extent)
Account required:No
Installation:No
Usable offline:Yes, once loaded, also usable offline

MicroPython is a version of Python specifically adapted for microcontrollers. The main difference is that MicroPython does not require an operating system; once you use it, it essentially becomes the system running on the Calliope mini.
Python is an excellent introductory text-based programming language. Its instructions and syntax are based on natural language, making the code easy to read, understand, and modify.
Python is widely used not only in education but also in industry, especially in data science and machine learning.

Start Editor

File Management

Save Project

The program can be saved as a HEX file on the computer and imported back into the editor.

The code can also be saved as a Python text file, which can also be loaded into the editor.

Transfer Programs

If you want to send your code directly to your Calliope mini without downloading it as a HEX file first, you'll need to use either Google Chrome, Microsoft Edge, or Opera. Then click on "Send to Calliope mini" and follow the on-screen instructions.

The saved HEX file can also be copied to the Calliope mini's drive to run the program. Simply drag and drop the file onto the "MINI" drive.

Open Project

Projects can be opened either via the "Open" button or by drag & drop.

Share Program

Programs can be shared as saved HEX or Python text files.

Program Features

Reference

The reference section makes it easy to discover what Python and the Calliope mini can do, similar to browsing blocks in MakeCode or Scratch.

Use Code Examples

Working code examples can be dragged directly into the editor and tested immediately. This saves time and helps overcome barriers caused by lack of keyboard skills.

Automatic Completion

Questions like which command to start with or even what to type at all are hurdles when starting text-based programming. With many hints and suggestions during input, you are supported and can develop programs faster.

Code Structure Highlighting

Different colored code blocks highlight the structure of Python programs. It's easier to understand the flow of a program when it's clear which lines of code belong to, for example, a loop or an "if...then" statement. Python requires indenting code sections, which also helps with program structuring.

Error Highlighting / Debugging

Errors or bugs are a normal part of programming. Red circles next to the line number help identify and fix errors before sending the code to the Calliope mini. Hovering over the circle displays an explanation of the error.

Simulator

The simulator allows you to test the code before sending it to a Calliope mini.
This helps with development, testing, debugging, and evaluating code.

Programming Concepts

Block-based programmingNo
Text-based programmingPython
MultithreadingNo
Events (event-based programming)No
VariablesYes
ListsYes
Loops: While / For / ForeachYes / Yes / Yes
Functions / with parameters / with return valueYes / Yes / Yes
Serial communicationYes
Sensors/actuators extensionsYes, they can be imported as external modules