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?