Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/takluyver/ubit_kernel

Jupyter kernel for the BBC micro:bit
https://github.com/takluyver/ubit_kernel

Last synced: 3 months ago
JSON representation

Jupyter kernel for the BBC micro:bit

Lists

README

        

The micro:bit is a single-board computer designed by the BBC as a way to learn
about programming. It is being delivered to all year seven students (11-12) in
the UK.

.. image:: ubit_front.jpg
:scale: 50%
:alt: The front side of a micro:bit

The micro:bit has a 5x5 grid of red LEDs, two buttons, an accelerometer and a
compass. There are also pins to connect components like motors or speakers.

MicroPython is a variant of the Python programming language that runs on such
tiny computers. It's a powerful way to program the micro:bit. For tutorials
and reference information, see `BBC micro:bit MicroPython
`__.

`Jupyter `__ is a set of tools for interactive programming.
This package allows Jupyter interfaces to run MicroPython code directly on the
micro:bit.

Set-up steps:

1. Plug in your micro:bit and ensure it has MicroPython on it. To do this,
`create a Python script in the web editor `__,
and follow the instructions there to flash it onto the micro:bit. It doesn't
matter for this what the script does.

2. Depending on your system, you may need some extra setup so that the kernel
can talk to your micro:bit using a serial port.

* On Linux, you may need to add yourself to the *dialout* group.
Run ``sudo usermod -a -G dialout ``, then log out and in again.
* On Windows, you need to `install the mbed driver
`__.

3. `Install Jupyter `__.

4. Install this package::

pip install ubit_kernel
python3 -m ubit_kernel.install

When you start the Jupyter Notebook, there should be a *micro:bit* option in the
menu to create a new notebook.

To use the kernel from other Jupyter interfaces, start them with ``--kernel ubit``.

**See also** `nodemcu_kernel `__,
which provides a MicroPython kernel on the `NodeMcu `__
platform, using code adapted from this project.