# data[].attributes.attachment_link.description
Een overzicht van alle voorbeelden die op deze site over de micro:bit zijn opgenomen. Een naambutton maken. Een getal genereren tussen 0 en 9. Een thermometer maken. Een kloppend hart maken. Tafels oefenen van 0 t/m 9. Een bingospel maken. Een bibberspiraal maken. Een stopwatch maken. Het spel 'Karel de Led' maken.

# data[].attributes.headline
Maak een micro:bit gamecontroller met Scratch

# data[].attributes.subject
Maak een micro:bit gamecontroller met Scratch

# data[].attributes.attachment_link.readable_text
Om de beste ervaring te bieden gebruiken wij technologieën zoals cookies om informatie over je apparaat op te slaan en/of te raadplegen. Door in te stemmen met deze technologieën kunnen wij gegevens zoals surfgedrag of unieke ID's op deze site verwerken. Als je geen toestemming geeft of je toestemming intrekt, kan dit een nadelige invloed hebben op bepaalde functies en mogelijkheden.

De technische opslag of toegang is strikt noodzakelijk voor het legitieme doel het gebruik mogelijk te maken van een specifieke dienst waarom de abonnee of gebruiker uitdrukkelijk heeft gevraagd, of met als enig doel de uitvoering van de transmissie van een communicatie over een elektronisch communicatienetwerk.

De technische opslag of toegang is noodzakelijk voor het legitieme doel voorkeuren op te slaan die niet door de abonnee of gebruiker zijn aangevraagd.

De technische opslag of toegang die uitsluitend voor statistische doeleinden wordt gebruikt. De technische opslag of toegang die uitsluitend wordt gebruikt voor anonieme statistische doeleinden. Zonder dagvaarding, vrijwillige naleving door uw Internet Service Provider, of aanvullende gegevens van een derde partij, kan informatie die alleen voor dit doel wordt opgeslagen of opgehaald gewoonlijk niet worden gebruikt om je te identificeren.

De technische opslag of toegang is nodig om gebruikersprofielen op te stellen voor het verzenden van reclame, of om de gebruiker op een website of over verschillende websites te volgen voor soortgelijke marketingdoeleinden.

# data[].attributes.attachment_link.title
Maak een micro:bit gamecontroller met Scratch - CodeKinderen

# data[].attributes.attachment_link.description
Om de beste ervaring te bieden gebruiken wij technologieën zoals cookies om informatie over je apparaat op te slaan en/of te raadplegen. Door in te stemmen met deze technologieën kunnen wij gegevens zoals surfgedrag of unieke ID's op deze site verwerken.

# data[].attributes.attachment_link.title
YouMagine - Designs by Pauline Maas on YouMagine

# data[].attributes.attachment_link.description
The best open source print files and designs available for you to build upon or simply download and 3D print!

# data[].attributes.body
Een website vol lesideeën

# data[].attributes.attachment_link.description
Eenvoudige linken naar de microbit101.nl website met 1 klik linken naar alle projecten.

# data[].attributes.body
Bekijk de ideeën of word lid van de Microbitcommunity in Nederland

Pagina van meester Harald

Lesideeën van Herman van Schie

# data[].attributes.headline
Maak een afstandbediening van 2 Microbits

# data[].attributes.subject
Maak een afstandbediening van 2 Microbits

# data[].attributes.body
Microbit   Spotify (Windows) - Hackster.io

# data[].attributes.attachment_link.readable_text
It's been just over a month since I created the original micro:bit + Spotify project for my Halloween party. The project got a lot of interest, and I've had a couple of people request I do a Windows version. As promised, here it is.

As much as possible, I'll try to keep the same format as the other project. Note, given the Node Spotify libraries have varying support on Windows vs Mac, I'm having to vary the project on Windows to fit the library a little.

micro:bit serial

The micro:bit has serial support, which is a fairly universal way for devices to talk to each other over the wire. This means one micro:bit will have to be connected to my computer the whole time, and it will be communicating (as a proxy) with both the computer (which controls Spotify) and the other micro:bit.

micro:bit 1 (Proxy)

Let's start of by going to makecode.microbit.org. The "proxy" micro:bit is going to simply take any messages it receives over the radio and send them through the serial.

Let's also set a radio group, so we don't interfere with any other micro:bits around.

Here's the complete code for the proxy micro:bit. I've added a nice animation to play when we receive something over the radio: https://makecode.microbit.org/_HDu3bbMuR77k

micro:bit 2 (Remote control)

The other micro:bit will be controlling the playlist remotely, it will send messages that will eventually make their way to the computer (through the proxy micro:bit).

The two messages I got started with were "Play" and "Pause" when the user hits any of the buttons (A or B). The remote micro:bit will basically act as a toggle switch to pause and resume our music.

This is the code I ended up with:

And here's the code share: https://makecode.microbit.org/_LjUD9hMrsHYD

I plugged the controller micro:bit to a couple of batteries and it was ready to go.

Node + serial

This is were things get interesting. In order for my micro:bit to communicate with my computer, I need some process on my computer that's listening to the right serial ports. I'm going to use Node for this. If you're not familiar with Node, you can get started here. I'll publish everything you need for this project at the end if you'd prefer to skip figuring this part out.

There's a really good Node library called node-serialport. First off, let's install it. Create a new directory wherever you want this project to live, and run the following:

npm install -g serialport

Using your favourite text editor, create a new file, let's call it microbit-spotify.js and edit that file.

We'll start off by importing the serialport library, and configuring it with the correct port to listen to:

var SerialPort = require("serialport"); const Readline = SerialPort.parsers.Readline; var port = new SerialPort('COM7', { baudRate: 115200, autoOpen: false })

Setting the path and the baudRate (115200) is how we tell the serial library that we have a micro:bit connected to the computer, and where to find it. For me, the path was "COM7", this will most likely vary on your computer. To find the path of your micro:bit, run the following command:

And use the first field in the list that it returns. For example, here's what I got:

COM7 USB\VID_0D28&PID_0204&MI_01\9900023432044E45005480180000004500000000CFCF28BD mbed

We're only interested in the first column, which is "COM7". If you have a number of micro:bits plugged into your computer, you'll see a number of these. Unplug them so you can narrow down the micro:bit port you're interested in.

Next, let's setup the Readline parser so we make sure we read the serial data line by line, this way the messages aren't cut in parts when we're processing them.

const parser = new Readline(); port.pipe(parser);

Let's open the serial port, and handle messages that we receive:

port.open(() => { console.log("Port open"); parser.on('data', (data) => { console.log('Received Data: ' + data.toString()); processData(data); }); }) function processData(data) { }

I've added a few console logs throughout so we know when the port is open and when we are receiving data. Whenever we receive data over the serial port, we will call the function processData with the data received, so let's place all our code that handles what messages we receive in that function. Here's how we can handle the different messages that we could receive:

function processData(data) { if (data.indexOf('PLAY') == 0) { // Handle PLAY

It's now time for the last component, interacting with Spotify.

Spotify + Node

I began my search trying out a few Spotify node packages, and I finally settled for spotify-web-helper. Here are a few others if you'd like to do some experimentation yourself:

Just like before, let's install that package, run the following in your working directory:

npm install spotify-web-helper

Let's import the spotify package at the top of our microbit-spotify.js file and create an instance of the helper:

var SerialPort = require("serialport"); var const spotify = SpotifyWebHelper({'port': 4381}); ...

Note I passed in an option to set the port of the helper to 4381. This is because the default port the library uses is 4370, and that is no longer the default port for the Spotify Web Helper process.

When we receive the "PAUSE" message, we'll call the spotify helper and tell it to pause the current song, like so:

spotify.player.pause(true);

And for "PLAY":

spotify.player.pause(false);

Notice we are calling the same function but with a boolean parameter whether to pause or not pause (ie: resume).

That's about all it takes, let's give it a go. In order to run our script, in a terminal window, run the following command:

node microbit-spotify.js

We should see the "Port open" message, and we should be ready to receive messages from the micro:bit.

Here's the complete code for the Node script (microbit-spotify.js): https://gist.github.com/anonymous/e7da9b7e8036792a85734c6f9ef81bf9

# data[].attributes.attachment_link.description
It's been just over a month since I created the original micro:bit + Spotify project for my Halloween party. The project got a lot of interest, and I've had a couple of people request I do a Windows version. As promised, here it is.

# data[].attributes.attachment_link.title
Programmeer je naam in licht (met een Microbit)

# data[].attributes.attachment_link.title
Programmeer een slimme thermometer (met een Micro bit)

# data[].attributes.attachment_link.title
Hack de kerstverlichting (met je Microbit)

# data[].attributes.attachment_link.title
Fruitige Beats programmeren met je Microbit 🍊

# data[].attributes.attachment_link.title
Missie 2 Bouw een digitale dobbelsteen (met een MicroBit)

# data[].attributes.attachment_link.title
Programmeer een kamer alarm met je Microbit

# data[].attributes.attachment_link.title
Missie 3 Maak je eigen MicroPet (met een Microbit)

# data[].attributes.attachment_link.readable_text
Uitvinden met de Microbit

In deze missies ga je een digitaal huisdier, games en wearables uitvinden en muziek maken met de Microbit.

Start met de video van missie 1

Programmeer je naam in licht

Ontdek wat een microcomputer is, wat je ermee kan en schrijf je eigen naam in lichtjes.

Over deze challenge

De missies in de challenge 'Uitvinden met de Microbit' maken kinderen op een laagdrempelige manier kennis met technologie. Ze leren een aantal basisprincipes van programmeren en ontdekken de mogelijkheden van het maken met een microcomputer.

Technologie heeft een enorme invloed op onze wereld. Computers, robots en software programma's zijn niet meer weg te denken uit ons leven, ze spelen altijd en overal een rol.

Als je weet hoe computers en software werken en ze daardoor kan gebruiken om problemen op te lossen geeft je dat een voordeel in bijna alle beroepen. Dus ook als je zelf geen programmeur wilt worden.

De missies stimuleren een probleemoplossende, creatieve en onderzoekende houding bij kinderen en ontwikkelen een beter begrip van ICT en elektronica.

Vaardigheden

Computational thinking

ICT-basisvaardigheden

Probleemoplossend vermogen

Leeftijd

Vanaf 8+

Duur

Ca. 30 minuten per missie

# data[].attributes.attachment_link.description
In deze missies ga je een digitaal huisdier, games en wearables uitvinden en muziek maken met de Microbit. Start met de video van missie 1 Programmeer je naam in licht Ontdek wat een microcomputer is, wat je ermee kan en schrijf je eigen naam in lichtjes.

# data[].attributes.attachment_link.authors[].name
Skillsdojo - Klaar voor een slimme toekomst

# data[].attributes.attachment_link.title
Bouw en programmeer een ventilator met je Microbit

# data[].attributes.body
Maak met je melkpak en een servomotor een robot met de micro:bit

# data[].attributes.headline
Microbitrobot met knipperende ogen #microbit

# data[].attributes.subject
Microbitrobot met knipperende ogen #microbit