Now delivering into kids hands in UK
BBC micro:bit has, as I write this, been delivered into the hands of 450 000 UK schoolchildren with a further 500 000+ to be handed out over the next couple of weeks. On 22nd March I was present at the official launch at The London Stock Exchange where the BBC micro:bit opened the day’s trading. There has been huge media coverage in the UK press and media which has resonated around the globe. BBC micro:bit is making a lot of waves. So what is it, and how did this all come about?
BBC micro:bit opens the London Stock Exchange
Hi! I’m BBC micro:bit!
BBC micro:bit is tiny 4cm x 5cm printed circuit board that can do quite a lot. It is a pocket-sized, take me anywhere computer for kids to become engaged and bond with. It has been purposefully designed to meet requirements of functionality that allow cool things to be done, whilst at the same time meet a cost point that offers ubiquitous access without barrier.
At its heart is a Nordic Semiconductor nRF51822 Bluetooth Smart SoC. This device carries most of the weight in this nifty little product, it handles all Bluetooth Smart communications with smartphones, tablets, computers and indeed other BBC micro:bits. But that’s only a fraction of what it helps achieve its extensive set of interface and I/O ports are brought out to an edge strip which allow BBC micro:bit to physically interface to the wider world, so think extra sensors, custom boards, robot kits etc etc. Finally, and probably most importantly, it is on this chip that the kids code actually runs, so the nRF51822 is the engine for their creativity. Other devices on board are a USB controller, a compass and an accelerometer and there is a power supply port to connect a battery holder so BBC micro:bit can be operated away from a connection to the computer. Along one edge is a connector strip allowing input/output to ports and interfaces. This strip is where BBC micro:bit connects physically to its world.
BBC micro:bit overview
We expect to see a raft of add-ons for this little thing and we expect to see interfaces added to products to allow BBC micro:bit to be plugged in and used for control, communication or just about anything. If you flip it over there is an array of 25 LEDs, these create a very nice vehicle for generating immediate visual feedback with your programs, these could be scrolling text, emoticons, simple games etc. This is a key aspect as we know kids get bored easily, so it’s imperative in those first minutes with their personal BBC micro:bit they make progress, see results and are engaged.
Howard’s dream – the story begins
A few years back, Howard Baker as Innovation Editor at BBC learning saw the need for young people to be more engaged in the creative aspects of digital technology. As a veteran industry expert he passionately wanted technology to be as exciting for youngsters growing up as it was for him. The imminent arrival of The internet of Things (IoT) also brought things into sharp focus, this was probably going to be the biggest technological shockwave in living memory, probably with greater impact even than that of personal computing. A plan was hatched to bring something affordable, easy to use but impressive enough that it became a must have popular addition to young people’s lives, not a mere gimmick. With his connections he started to bring together the actors who are today’s BBC micro:bit partners, of which Nordic was one.
Howard Baker presents the BBC micro:bit
Building a flexible platform
As said one of the most important objectives for BBC micro:bit was the ease of software development for complete new beginners whilst also providing a learning path onto more advanced programming languages and methods. This really necessitated having some abstraction on the main device, the nRF51822. It is typical for developers on this device work very closely with the hardware on the chip. This offers experienced developers the ability to achieve high levels of performance and optimizations, however it isn’t a place for beginners to start as it requires a large degree of familiarity with embedded systems and firmware development. So there was a need for a middle layer between the Nordic hardware and the higher level programming languages that would be employed, typically scripting languages such as MicroPython or Javascript. This is where mbed from ARM and a dedicated run-time environment from Lancaster University came in. mbed is a platform from ARM that, among many other things, allows for using software modules in a common way with common APIs across Cortex CPUs. The runtime builds on mbed by providing common drivers and mechanisms such as a scheduler that supports lightweight threading to support and take advantage of BBC micro:bit’s capabilities. The runtime is written in C/C++ and has many elegant features such as the uBit class which allows simple access to BBC micro:bit’s most commonly used features.
The uBit class and a simple runtime program that scolls some text on the BBC micro:bit
Learning to code - from visible objects to objects
On the development side a range of programming methods are available that target various levels of programming and software development skills. At the highest level is Microsoft’s Block Editor, a very cool graphical development environment offering a ‘plug-and-code’ approach to making programs. This environment has a jigsaw piece feel to it and as such you cannot put a particular object, a function or parameter operation in an unsuitable place, so it is a nice broad first step into coding. Next up is Microsoft Touch Develop, again a graphical development environment for touch based mobile devices. This takes the complexity up a notch and programs developed in the graphical way can be immediately flipped to the script code equivalent and vice versa. Code Kingdoms as a partner offer support for the BBC micro:bit with their graphical Javascript editor, again bridging the step from graphical logical associations and text based code logic. Once kids have made it this far they can move on to MicroPython and eventually their adventure ends up at the daddy of them all, C and even object oriented C++ then they can develop as most embedded developers do today. BBC micro:bit is nothing if not flexible.
BBC micro:bit is supported by a range of coding environments
Why use the nRF51822?
When asked about the Nordic nRF51822 involvement he stated Jonny Austin from ARM (Technical lead for this project) demonstrated the mbed tools in conjunction with a nRF51822. Howard recalls, "When I saw what it could do, it was our dreams fulfilled, the nRF51822 sold itself into the BBC micro:bit, a decision was made."
nRF51822 at the heart of the BBC micro:bit
Perhaps there’s no more to be said on the matter, but we should look at why this was the case. The nRF51822 was the world’s first Bluetooth Smart SoC to incorporate a 32-bit processor, the ARM Cortex-M0. This took the computing possibilities of a Bluetooth Smart IC to the next level. With up to 256kB flash and 32kB of RAM (The BBC micro:bit is a 256kB/16kB variant) this processor could really shift. A wide range of interfaces and peripherals enabled lots of possibilities in this one device. People involved at the early stage say that the nRF51822 as a microcontroller alone was compelling for inclusion on the BBC micro:bit, throw in Bluetooth Smart as well and it really represented a big leap forward in modern chip design. Further investigation found the range of really innovative features such as direct peripheral interations using the Programmable Peripheral Interconnect (PPI), Direct Memeory Access (DMA) for the radio and especially innovative, yet simple to use power management and energy saving features. nRF51822 was ‘Seriously Ingenious’ as we said at the time of its launch, the BBC agreed.
Bluetooth Smart the voice of BBC micro:bit
Bluetooth Smart really deserves a special mention when talking about BBC micro:bit. The ability for them to communicate wirelessly is a huge deal in terms of the fun factor and interest level involved. Bluetooth Smart has demonstrated itself to be the ideal wireless technology for ultra-low power devices, since its introduction by the Bluetooth SIG in 2011it has become ubiquitous in all mobile devices, PCs and a raft of connectable products, the wearables revolution being a stand-out example. Bluetooth smart with its power performance and adaptability was ideal for BBC micro:bit as it has for so many other things. Bluetooth SIG worked hard with Lancaster University’s Computer Science Dept. to develop a cutom BBC micro:bit profile which allows simple access to the major features on BBC micro:bit and allows kids programs to benefit from them. Thanks Bluetooth!
A little bit of history repeating
This story isn’t totally new for the BBC. In 1980 they saw the approach of the personal computing revolution and realized the UK would need a generation of computer-savvy citizens. A project was begun to bring a computer to the schools of the UK to introduce schoolchildren to computing, The BBC Computer Literacy Project came to life, and in 1981 BBC microcomputer was born. It centered around an 8-bit 6502 CPU clocked at 2MHz with a whopping 32kB of RAM. It remains an iconic and seminal machine in the pantheon of computing and has been cited by a great number of captains of industry and significant figures within the world of computing as their introduction to a lifelong love of all things digital.
The BBC Microcomputer, a BBC micro:bit ancestor
The sky’s the limit
Already even at this nascent stage allsorts of things are being done with BBC micro:bit. I’ve seen guitars, gamecontrollers, footballs, you name it and the list is going to be a very long one. One particularly nice application was from Rishworth School in West Yorkshire, they put BBC micro:bit into space! In conjunction with a pair of Raspberry Pis it went up to 100,000 feet in a helium balloon and recorded temperatures of -49.5ºC (that’s outside official spec. yay!) and recorded pictures on the descent via parachute back to terra firma.
BBC micro:bit still happy at 100 000 ft and -49.5ºC
Yes, you can get your hands on one too!
Premier Farnell are a key BBC micro:bit partner and are the partner responsible for its assembly, production and delivery. From the summer Premier Farnell will be making BBC micro:bit available to the wider public, so don’t worry if you’re considerably older than 10 years old and feeling left out. Everone can get a BBC micro:bit this year if they wish for one.
What does the future hold?
A legacy group is in operation for the BBC micro:bit project, this involves all the partners associated with its creation. Right now the focus is on getting it out to the kids in the UK schools, but we don’t want to stop there. Going forward we would love to see the world embrace micro:bit and make this a global phenomenon. It is perfect for any kid, in any country, it’s low cost, it does the job, and the tools are all going to be available, so let’s make this run around the world.