It’s almost a week since the BBC announced that it would be giving away one million free ‘Micro Bits’ to Year 7 students in September. This small computer is designed to be programmed by students to do fun things like flash lights and respond to inputs from sensors and encourage them to try their hand at a spot of programming. Whilst the BBC’s move has been met with skepticism by some, there are many people like me who are very much looking forward to the Micro Bit’s arrival and getting them into the hands of students for programming fun and hardware hacking!
But, whilst several details of the BBC’s “Make It Digital” programme (of which the Micro Bit is a key element) have been made public, the hardware details of the Micro Bit itself are still a little unclear, which is a bit frustrating to those of us champing at the bit to get going with planning projects for it. So, in this blog post, I thought I’d pull together what I’ve discovered so far and, over the next few weeks and months, keep you updated with the latest news as it becomes available.
The first thing to note is that the hardware that has been shown at the launch is a prototype device that has been used in a recent pilot project. Several people have noted that the prototype Micro Bit is based around an ATMega32U4 processor and this has led to speculation that it is some variant of the Arduino Leonardo board. But, as I’ll explain later, that doesn’t seem to be the case. You can go to the website associated with the pilot project and have a go at using the Blockly-based programming language and even run your code on the simulated prototype Micro Bit there. If you’ve ever written a program in Scratch then Blockly should look fairly familiar.
What’s clear is that the prototype is actually quite different from what the finished project will be, although on the surface it may look quite similar with it’s 5 by 5 matrix of LEDs. According to this post on the ARM Connected Community website, the final version of the Micro Bit will based on one of Freescale’s ARM processors and it seems likely that this might be one of their Cortex-M0 processors within the ‘mbed’ platform. If you’ve not heard of mbed, you’ve been missing out: whereas Arduino boards and the like require the installation of drivers and an IDE, mbed is much simpler to get started with. Firstly, the IDE is web-based and, secondly, the mbed boards appear as a standard flash drive on your PC when connected via USB. Once you’ve written your code in the web-based IDE, you simply click ‘compile’ and then download a binary file that you drop into the mbed’s folder. It’s really all very easy!
So what can we expect to see on this new version of the Micro Bit? Well, the 5 by 5 LED array should stay, and there will be a low-power Bluetooth chip which means you will be able to download code wirelessly from your phone or tablet and not just by USB. According to Wired’s article on the Micro Bit, the final version will also include an accelerometer and magnetometer, which should add to the fun. It seems that you will be able to program the Micro Bit using Blockly, Python or with C++ (like all mbed-based boards).
So what of the prototype? Well, although it contains an ATMega32U4, a bit of digging in the tools provided on the pilot project’s website suggests that it doesn’t use the Arduino bootloader and, instead, uses a bootloader provided by Atmel which allows binaries to be downloaded via USB. That’s not to say it couldn’t be configured to work with the Arduino tools, of course.
So that’s about it for now. Hopefully more details about the hardware will emerge soon but, in the meantime, I’m going to be experimenting with the mbed platform and the Blockly language and will bring you more blog posts about the Micro Bit as soon as possible!