The future of IoT on micro:bit

I’ve been around micro:bit for a few years now in a number of different roles.  I’ve seen micro:bit go from an idea, to a project, to a product and slowly but surely become a global movement.  Most recently my role has veered towards developing IoT capabilities for micro:bit, and in this role I am often asked what the future of IoT on micro:bit is.  This blog is my considered and long answer.

To understand what the future holds for micro:bit, we first need to understand a bit about the history; at its core, what is the micro:bit really?

Entry level

The most fundamental requirement for micro:bit, from its earliest conception, was that it would be a physical device that would easily allow young learners to connect coding on screen with real world effects… physical computing for the masses.

It is an entry level tool.  Unapologetically and proudly.  It is the first physical device that you would own – designed to be the easiest transition into physical computing.  Engineered from the bottom up to be the simplest and most accessible microprocessor in this space – the first step.

Price

The aspiration was to build a product accessible to the mass market.  Initially one million year 7 (12/13 year old) school children in the UK would be given a micro:bit free of charge, and then the ambition was to reach young learners all over the world.  It could be argued that the people with the greatest need for micro:bit are those in economically disadvantaged areas.  The cheaper micro:bit could be sold for, the greater its impact would be.  So keeping the cost low was a guiding principle in its design.

A lot of time, research and effort was put into getting the product just right. Suffice to say that there are reasons why it has exactly 5×5 mono LEDs, why it has 2 buttons, why a Bluetooth aerial and not Wi-fi, why not a little speaker, etc. Nothing was left to chance and every component had to justify its cost.

Ecosystem

But success has to be earned – potential is often not enough. An affordable entry level device, by itself, would not have stormed the world they way micro:bit has.

The BBC and a host of other big names – Microsoft, ARM, Nordic Semiconductors, Bluetooth Special Interest Group and the IET to name but a few, poured their efforts into developing the whole ecosystem: learning materials, coding environments, teacher training, media – it was all masterfully crafted and knitted together.

This ecosystem is the third strand to the success of micro:bit. The excellent code editors, the vast cache of free learning materials and projects, the huge array of great peripherals and the people using it. The more micro:bit grows, and doesn’t change, the greater the richness of the ecosystem.

Has it been a success?

micro:bit has succeeded spectacularly in its objective, which is to get kids coding. Some say that by the end of this year as many as 5m of the units might be in circulation, and there is no sign of the momentum slowing. A number of school systems have adopted micro:bits, but perhaps even more importantly micro:bit has helped keep the conversation about physical computing in schools on the agenda

The success was curated: it traces back to plans and actions that were put in place several years ago (almost 7 years now!). It is no accident that the root of this success is the combination of it being the perfect entry level device, being affordable and having a rich and growing ecosystem – that was the vision of the original creators.

But how can that success be maintained in an ever changing market?

Does the world need an updated micro:bit?

Does Moores law apply at the entry level? Put differently, does an entry level device become obsolete in the same way that a cutting edge device does?

When a product has been crafted, as micro:bit was, to be a bridge between a knowledge gap and ‘enlightenment’, it becomes resilient to obsolescence.

Think of it this way – as computing gets more complex its like we’re adding stairs to an ever growing staircase. Micro:bit is the first step, and will remain so regardless of how high the staircase reaches.

This leads to the conclusion that having new and updated versions of the micro:bit is not only unnecessary – it undermines the argument that the current micro:bit is the perfect entry level device!  In addition, having multiple versions of the micro:bit would fracture the ecosystem: imagine having to check every code library, peripheral, project, learning material etc to see if it is compatible with the version of micro:bit you have?  No thanks!  And its likely (though not inevitable) that updates would put pressure on the price.

A new version of micro:bit would fundamentally weaken 2 or 3 of the core factors behind its success…. the future of micro:bit is NOT “macro:bit” or “micro:more” or maybe even “micro:bit 2.0”!

So the idea of replacing micro:bit with a new, upgraded version is contrary to what makes micro:bit unique in the first place. But there is a knee-jerk inclination in the tech world to constantly release updated hardware – try to imagine Apple NOT releasing a new iPhone every year!  I congratulate the Micro:bit Educational Foundation for recognising this – for resisting the calls to release a more powerful version and instead to focus on growing the user base and building the ecosystem.

But I want a new, improved micro:bit!

Don’t get me wrong, a lot of us who are passionate about micro:bit would love an upgraded device!

BUT it is young leaners with no previous exposure to physical computing who remain the target. I’ve spoken to a LOT of teachers on the ‘coal face’ – they consistently praise micro:bit for its simplicity and ease of entry. I have never heard one criticise it for not being powerful enough!

And here lies a dilemma: for people coming to micro:bit for the first time it is ample and adequate. For those of us who have been around it for a long time, we are way too aware of where it falls short.  We see gaps and the limitations they impose on us, but we love the platform and value its efficacy in the classroom.  We want more but we’re just not ready to switch to Arduino or RPi!

A few more LEDs and it would be able to show characters from non-latin languages; a small speaker would add loads of great use cases; a little bit more memory would allow longer hex files and more Bluetooth functionality, 2 extra buttons would enable more game control options, WI-FI!…

I am sure anyone who has worked with micro:bit for a period of time has their own wish-list!  But as long as the micro:bit meets the core need, to introduce young learners to physical computing, there is nothing to be gained, and everything to be lost, from fiddling with its winning formula.

So we are stuck with micro:bit as it is, but times are marching on.  How can micro:bit stay relevant to the changing needs and trends of the EDTECH sector?  How can it keep up without super-charging the hardware?

Trends in EDTECH

Walk around any EDTECH trade show, or talk to educators on the coal face, and you will encounter the following themes:

  • IoT
  • AI
  • Data science

To meet the demands of educators, providers of EDTECH solutions need to have a strategy to address some or all of the themes listed above. I’ll look at each of those in turn with the same question in mind: how can micro:bit deliver valuable learning opportunities in each of these areas?

Internet of things (IoT)

In its simplest form, IoT refers to a network of devices that are connected to the cloud.  Within such a network those devices can communicate and interact with each other, and they typically do so without human intervention.  So, your IoT connected heart rate monitor can send an SMS to your doctor’s mobile phone if you have cardiac issues, or your IoT connected GPS device can send your location to your smart home, turning on the heating and getting a nice cuppa ready for when you return!

Futurists are unlikely to contest the idea that IoT is one of the defining technologies of our era, and is at the heart of the technological trajectory – it will be ubiquitous in the workplaces young learners will find themselves in.  There is pressure to bring IoT into the classroom and micro:bit cannot afford to be sub-par in its IoT support.

At the heart of IoT is devices communicating with each other – sending and receiving messages. Devices can of course be connected by cables and share data across those cables. Typically, though, IoT relies on devices being able to communicate wirelessly. There are a broad range of ways in which 2 devices can communicate wirelessly:

  • Radio
  • Bluetooth
  • Wi-fi
  • LoRa / LoRaWAN
  • Sigfox
  • 3G / 4G / 5G

There are other means too, but the vast majority of IoT comms between connected devices occurs using one of these methods.

The micro:bit has a built in aerial that can be used to send and receive radio signals, or to ‘pair’, via Bluetooth, with other devices (but not other micro:bits). Anyone who has worked with radio and Bluetooth on micro:bit will be familiar with the great options they provide, but also with their limitations. They are key tools in the IoT toolbox, but on their own they are inadequate to unlock the full potential of IoT on micro:bit.

To remain relevant and to offer true IoT capabilities it is necessary for micro:bit have solutions for as many of these communication options as possible. the full richness of IoT lies beyond the capabilities of a single communication protocol.

It feels like a few paragraphs weighing up the pros and cons of each of the different connection options would add value to this article.  As with any tool, each option is better suited to some uses than others – only special interest groups would argue that one technology is all you need for a rich IoT experience!  But to avoid fanboys of one communication method or another getting heated about the minutiae of their preferred tech I will offer a conclusion few could argue with:

The more communication protocols available for micro:bit, the more robust the IoT offering will be. Having access to LoRa, Wi-fi, radio and all the others means of wireless communication gives the broadest possible choice, and therefore puts the maximum possible set of learning outcomes in reach of young learners.

I’ll make the assertion below that radio / Bluetooth cannot deliver a full IoT experience on micro:bit. This is a bold statement that needs to be justified.  For the record I am a great fan of Bluetooth, it is a fantastic protocol when used to its strengths and I have built many fun applications on micro:bit using the radio.  I am reluctant to be the one to call out the weaknesses of Bluetooth on the micro:bit, but I am making a case in this blog for the provision of a rich IoT offering on the micro:bit.  It is necessary to clarify why the native functionality of micro:bit is inadequate to deliver this.

At the beginning of the year I spent over a month researching how best to implement IoT on a micro:bit and I consulted some of the leading experts on micro:bit connectivity.  My hope was that radio / Bluetooth could deliver a full experience and eliminate the need to use communication methods that weren’t available natively on the micro:bit.  Bluetooth, and indeed radio, are both excellent tools to connect devices – the radio can connect multiple micro:bits and the Bluetooth can connect a micro:bit to other devices.  If your goal is to create a closed network, or communicate data to your phone / tablet, or take advantage of other Bluetooth enabled devices then you have everything your need in your micro:bit already.  But IoT on micro:bit requires a ‘gateway’ – a device that makes a link between an individual micro:bit (or a network of them) and the cloud.  There are no native solutions for this – we need to look to Wi-fi, LoRa, Sigfox or 3G / 4G / 5G.

As a POC I built a little app that sets up a small ‘network’ of micro:bits communicating over radio to a Wi-fi enabled micro:bit, (the gateway).  This gateway then passes on the data to an IoT platform. The app shows how a gateway can work with a network to provide a classroom access to an IoT platform, all done with micro:bit.  You can check out the project here.

During my research I came across the Bluetooth Mesh protocol, which deserves a special mention.  It is a protocol based on Bluetooth Low Energy that allows for many-to-many communication over Bluetooth radio (you can read about it here).  Sophisticated peer-to-peer networks can be built using this protocol: in theory 10,000 or more micro:bits could be paired up via this method, covering a large physical area.  A proprietary network like this has great value and no doubt lots of potential applications.  But it is not true, cloud-based IoT.

So Bluetooth on micro:bit cannot deliver the full IoT experience, but it must be said that the limitation is NOT a weakness in the Bluetooth specification – not at all. One issue is that the amount of onboard memory on the micro:bit is inadequate to support a full implementation of Bluetooth.  In addition, Bluetooth Mesh is not supported by the micro:bit DAL (although in theory it could be).  The protocol is not flawed, micro:bit just doesn’t have the power to support it properly.

IoT on the micro:bit

My argument against upgrading the micro:bit and my argument that non-native functionality is necessary to offer the fullest and richest possible IoT experience leads to an inevitable conclusion:

Add-ons / peripherals are necessary to deliver a robust IoT solution on micro:bit.

At this point I should declare an interest: I work for a company that produces peripherals for micro:bit and, surprise surprise, we sell microbit add-ons that provide these communication options. For what its worth, I had reached the conclusions outlined in this blog long before I joined XinaBox. I hope that the reader will see that the arguments presented here are pretty solid, regardless of any subconscious bias I might be carrying.

Artificial Intelligence (AI)

We all have a basic understanding of what AI is – anyone who has watched a sci-fi movie has been exposed to the idea. Hasta La Vista, Baby.

For the lay person, like me, it is sufficient to think of AI as being a repository of very clever functionality that I am unlikely to ever understand. I don’t really understand my car or laptop either, but I can still use AI to undertake complex tasks, such as:

  • You want to know what is shown in an image? Send the image to an AI service and the AI will tell you.
  • You have a pile of data and you want to use it to make predictions? Send the data to an AI service and it will provide you with insights.
  • You want to get beaten at chess? Play against an AI.

The key factors of AI that are relevant to this blog are:

  • It is complex – way too complex for a meaningful AI program to reside on a micro:bit.  I hope someone very clever proves me wrong on this, but until that happens AI is going be realised outside of a micro:bit.
  • It is a tool that can be used for a broad range of things, mostly which fall under the heading of ‘data analysis’. It is just a tool though… you send some stuff to an AI service and it sends you some stuff back. Forget killer robots, sentient swarms and smart wellington boots – the level of AI that young learners will engage with initially is a transactional one. We send data to an AI service, we tell it what we are interested in, it does its clever processing and then it sends data back to us. The magic lies in what it does with our data.

So, any engagement of micro:bit with AI will require the micro:bit to communicate with an AI service. It follows that a robust IoT offering is necessary to enable any engagement with AI.

Put differently, without IoT there will not be any meaningful AI solutions for the micro:bit.

Data Science

We live in a data driven society – at every turn decisions and actions are made based on ‘the data’. Understanding data and learning to use it are key elements of ‘data science’, and educators are sanguine about the importance of teaching this in the classroom.

The micro:bit is already a great tool to introduce young learners to the principles of data science. Not only is it a very capable data collection device, you can use radio or UART (USB) to share data with a laptop. In addition the bitty Bluetooth app allows you to pair your micro:bit with another bluetooth device and stream data to see real time visualisations. Entry level data science is already part of the core micro:bit package.

But as with AI, the real power of data science resides on the cloud – not only the tools that are available today, but those that will be released tomorrow. Access to IoT means having access to a universe of data science tools that will never be outdated or obsolete.

Conclusion

At the beginning of this piece I set out to investigate how micro:bit can deliver a rich IoT offering.  Stripped of the lengthy arguments above, my conclusions are pretty simple:

  • micro:bit will continue to go from strength to strength, as long as the Micro:bit Foundation continues the great work it does and stays focussed on supporting the ecosystem and the device in is current form.
  • IoT on the micro:bit will ensure it remains relevant to the ever changing demands of educators.
  • Native functionality on the micro:bit, specifically radio and Bluetooth, is inadequate to deliver a rich and complete IoT offering.
  • Any upgrade / extension to micro:bit should come from the development of peripherals / add-ons and NOT from upgrading the micro:bit itself.
  • Through IoT the micro:bit will have access to online tools that will provide integration with AI services as well as provide sophisticated data science tools.

Many involved with micro:bit like to argue that it has a ‘low floor and a high ceiling’… with the addition of IoT capabilities that ceiling just got a heck of a lot higher!

Thanks

P