Musical micro:bit sings Happy Easter

singing micro:bit
python code to make a micro:bit sing

This term in Computing Y8s have been looking at the ways that computers can store, manipulate and display images. Amongst other things, we’ve been using BBC micro:bits to create images, animations and games.

One thing we didn’t get time to look at this term was the data representation of sound.

Maplin (the people who sell all sorts of electronic gadgets and maker kit) have launched a competition where you have to use a BBC micro:bit to create a musical instrument so if anyone’s keen on experimenting over the Easter holidays you can have a lot of fun and possibly win £1,000 worth of gadgets.

This is my entry to the competition, to try to win the maker bundle to share out as prizes at the STEM club I run on Monday lunchtimes at Fulford School, York.

The idea is pretty simple: the latest version of micropython for a micro:bit allows you to write code that will get your micro:bit speaking. You can change the pitch of the speech to make it sound like it’s singing and you can change the speed of the speech to make each word last more or less time.

The code below hooks up the built-in accelerometer to the pitch and speed so that you can tilt your micro:bit to get it singing.

I’ve coded in a series of random Easter messages but you can change the text on line 10 if you want to get it singing your own lyrics.

The singing works in the simulator on create.withcode.uk as long as you’re using chrome, firefox or edge. Sadly, I haven’t made it work in Internet Explorer yet – you can download the audio it generates but it wont let you play it automatically.

Have fun, and see what you can create! But if you use my code and win the £1,000 prize I’ll expect my share of the goodies!

What can you make your micro:bit sing?

Happy Easter.

Code your own ticklish talking Dalek: microbit python speech

It’s been less than a year since I first launched create.withcode.uk to let students and teachers write, run and debug python code without needing to download any software or create any user accounts. Since that time, a new job and new baby have made me fall behind some of the amazing new features added to the micropython runtime for the BBC microbit.

Thankfully, the Christmas holidays have arrived and I’ve now got a little bit of time whilst the boys are asleep – whilst I should be starting on the sack full of marking, reports and lesson prep – to catch up and post some new resources.

microbit ticklish talking dalek python project
microbit python speech: code your own ticklish talking dalek

I’ve posted before about being able to connect up a speaker to a micro:bit to play sounds. Well, Nicholas Tollervey and the team working on the microbit python runtime have been adding some old speech synthesis code from the 1980s into the micropython runtime that lets your microbit speak. It sounds suspiciously like a dalek from Dr Who, but it’s a really fun feature on such a small device.

I’ve been working on the microbit simulator to let you try out the new speech module in your code. I’ve tested it with firefox and chrome but Internet Explorer doesn’t support web audio so if you’re stuck with using that you can still write and run your code and download it to your microbit but it wont actually speak unless you download the sound file each time your code tries to speak.

Here’s an example program that turns your microbit into a talking dalek that you can tickle by pressing button A:

Curious computing
Try changing the values and see what happens

Have a play and see if you can:

  • add your own phrases that you’d like the micro:bit to say when you tickle it.
  • use the API documentation to get the micro:bit to sing a song
  • find out the maximum length of text that the micro:bit can say. What happens if you try and say more than this?

 

RPi GPIO python simulator

RPi GPIO python simulator

Following on from the micro:bit python simulator on create.withcode.uk, many students and staff have requested a python simulator for the Raspberry Pi GPIO pins.

This quickstart guide talks you through how to start writing code for physical computing using the GPIO pins on a Raspberry Pi.

It’s designed for teaching students how to do physical computing without having to invest in a separate Raspberry Pi for each student.

You can write, run, debug and share code that simulates the GPIO pins reading inputs and controlling outputs in a web browser then just have one (or more) Raspberry Pis set up with LEDs and switches connected up to demonstrate the same code.

This speeds up development time and reduces set up time and costs.

RPI GPIO Python simulator
RPI GPIO Python simulator

Physical computing is much more fun when students can actually see their code controlling a real life device – so this isn’t designed to replace actually plugging in and connecting up the physical components.

This simulator is designed to supplement and complement the actual physical computing: to iron out the more frustrating parts of the development process so students can focus on tinkering with the code, debugging, sharing, collaborating and exploring.

Try out the RPI GPIO python simulator here: https://create.withcode.uk/python/A3

recording

I hope it’s useful!