My organization is working with the BBC Microbit Foundation to make these devices more popular in the US education system. I find the Microbit to be far less intimidating than the Arduino, since the IDE is entirely web based and students can copy a program onto it just as they would copy a file onto an external USB drive.
One feature that kills it in the classroom is the Microbit's built-in 5 x 5 LED matrix, which means right out of the box it's "blink" program is much more interesting than the Arduino's one orange LED. Some kids will just spend the entire first day playing with the LED matrix, like getting their name to scroll across it, or programming the LEDs individually to make cool patterns. The Microbit also comes with an external battery holder for two AAA batteries, and feels a lot better to carry in your pocket than an Arduino or Raspberry Pi.
After seeing the tremendous adoption in the UK and meeting the Microbit founders, I am very confident this board will play a big role in introducing K-12 students to digital electronics.
I'm volunteering with a school in the Puget Sound as part of TEALS and would love to get in touch about augmenting some of our curriculum with these bad boys (especially since the block language is similar to Snap, which is used in Intro CS). Do you have an email I can reach you at?
I work for the micro:bit Foundation, who have taken ownership of the project on from the BBC - great to see some love on HN for this! There's more at http://microbit.org but for the Hacker News audience you're probably interested in http://tech.microbit.org though ;). There's even a reference design to make your own microbit-derived designs.
One minor comment - the article really made me want one, and when I went to the home page, it took me around five or six clicks to get to a place where I can buy one! Finally I found it at the very bottom of the page under "About". And even then when I click on the adafruit one and it takes me to the adafruit homepage. Why not have a giant button on the homepage? Do you folks really not want people to buy your stuff? :-)
I helped test the microbit and I wrote a small program for pedagogical purposes. The hardware was very neat and I liked the leds on the back.
Originally there was going to be a coin cell battery but they removed it because children might eat it.
Also there is a Bluetooth radio on the microbit but the runtime was 12k and there wasn't enough space to load micropython and Bluetooth at the same time .
In case anyone gets the impression that bluetooth is completely unavailable, you can use Espruino (JS) http://www.espruino.com/MicroBit, Microsoft's http://codethemicrobit.com (scratch-like drag and drop), or C / C++ amongst others, including bluetooth access to the compass and accelerometer.
As a CS student normally working with lower level languages and IoT devices using Arduino I was a bit skeptical when first trying out this. I've tried MicroPython based devices before but they have left a bad taste in my mouth with their need to have Python on a device that I'm probably only going to start once and then leave indefinitely for a task. But I have to say I was very pleasantly surprised by the MicroBit. I participated at a mini-hackathon with Zach Shelby at the University of Tromsø and I ended up using almost exclusively the JavaScript drag-and-drop stuff. Mostly to try it out and see how much you could do with it, and it actually worked really well. Teaching kids to program without having them worrying over missed commas or mismatched brackets is certainly something that would be beneficial. And it really didn't put as many limits on what I wanted to do as I expected either. Only time I dropped down to code was when I wanted to start organising my program for reuse. And Zach was very friendly and talked about how the devices worked under the hood and explained how the compilation was done in the browser so the only thing you load over is a hex of precomplied code. This allows you to really utilise all of the hardware for the device and even means that they could update things on their end which would make your experience smoother without having to upgrade the device.
With regards to worries about shorting the connector with crocodile clips on the large I/O pads - the adjacent contacts are 'guard' ones connected to the same place so there's no problem.
I have been working with the micro:bit in my role as a volunteer STEM ambassador almost since it became available and it's a fun tool. My main STEM angles are computing and electronic engineering and initially it was very hard to get good info on the I/O functionality (coding and electronic), but things have come on in leaps and bounds, notably with the micropython guys, and I have concentrated on developing some fun 'advanced expansion' projects, such as a loud 3V audio amplifier (powered from the micro:bit), sound detector and a 5 band audio 'spectrum analyser'. Currently I am working on an alarm clock radio with the micro:bit being a plug-in add on controller (via its buttons and bluetooth). The LED matrix is good for a quick win with visuals, but adding a small OLED display makes a world of difference to what you can do - it would have been really cool if one of the small 0.91" OLED panels was baked in to the micro:bit.
The biggest challenge I originally found was the lack of a focal point for teachers, volunteers and developers to share ideas - I subscribe to many educational forums and groups and the most active I have found is the micropython mailing list (but if anyone knows of others let me know) and there seemed to be little encouragement or management from the official micro:bit side to centralise and promote the community spirit, plus there was a huge delay in getting out the full technical specs and schematics - and boy was it was impossible to get hold of an edge connector for months - so there was a lot of poking and prodding needed to work things out; very kindly some of the tech guys from the companys involved in micro:bit distribution and add-on kits were extremely generous at sharing what they had found out in the early days, especially about the quirky way the LED matrix is wired and driven. A bit more oversight from the project originators in the early days would have really helped.
PS: Totally agree about the RAM - 16K is just a tad tight and 32K would have been a better size.
There is actually a C/C++ layer that supports the higher level languages known as the micro:bit runtime[0], which means you can also program the device using C/C++... Another level of progression for children.
I've got a 5yo that loves to play with micro:bit. She doesn't read (non-capital) yet, and doesn't know English (as it's not her native tongue), so I read out/explain what each block does, and she decides what she wants to do. Drawing pictures and producing music is currently the most enthralling bit :)
One thing I wish for is that there were visual cues / icons she could distinguish the blocks by (there are a few icons on a few blocks, but not all are covered, they mostly aren't unique, and not intuitive / easy to remember).
My (non techie) partner has used these very successfully with older students who have dropped out of or disengaged with traditional schooling; particularly for numeracy outcomes, but more generally as well.
It's important to not forget their potential as a general educational tool, rather than just something to teach coding with. Have a read of Mindstorms by Papert if you are interested in this space.
We use it to teach kids to code. It's OK, but the screen is way too limited for it to be much fun. It is crying out for a good colour screen that can show more than one character at a time. Also, debugging is a pain. They need some sort of event log that can be inspected on the pc
In some ways the limitations help, don't have kids wanting to program Quake 7.
I use mu, the micropython editor, it shows the error messages on the PC when connected via USB, instead of trying to read them scrolling across the display
Having trialled these at my school, I think they have the potential to be the new turtle. I only hope that the botched rollout in the UK hasn't damaged the project's reputation to much.
Quick question: I've been unable to order these in US but will be traveling to UK in May, is there a store that carries these (and other similar goodies)?
I must be missing something. Why would a kid get excited about making a 5x5 array of LEDs to blink when they can easily program a ~2000x1000 array of lights (their laptop/phone/tablet screen) using their browser ?
they can easily program a ~2000x1000 array of lights
Easy for you doesn't mean easy for a 6 year old. Is there really easy pixel-by-pixel programming on any of the devices you mention? As simple as entering few lines of python code and pressing 1 single button? Let alone with direct full-screen access? (I'm really curious, maybe there is).
Also check the example: like 15 lines of Python which make the device play a tone based on the compass. Again: I'm really curious if there are alternatives which achieve this is such an easy way (IIRC even the simplest Arduino style boards I tried required installing an IDE, fiddling with some settings, and the code wasn't nearly as easy as Python). And I'm also not sure if laptop/phone would be amongst those alternatives.
Yay... great to see MicroPython on the micro:bit getting some love. In case you're interested, here are the docs for MicroPython on the board -- you can do a remarkable amount on such a small device: https://microbit-micropython.readthedocs.io/en/latest/
(Caveat - I was involved in the MicroPython side of things. So good to see the other dev environments represented in the comments here.)
I wonder whether it would be possible to make MicroPython functional on an original 1980s BBC Micro, which has a 6502 and a whole 32K of RAM. The "beeb" stores interpreters on pluggable 32K ROMs.
We've been doing outreach work teaching 11-13 year olds to program microbits with Python. It's been a great tool and allowing the kids to see their code running on such a simple device turns out to be a great motivator.
I also think a shout out to https://create.withcode.uk/ is worthwhile. They've got a nice little microbit emulator for trying things out before downloading onto the microbit.
Introduced it to my University of Washington students. It's a primitive but good tool for prototyping. Students don't have to fuss with installing an IDE, learning a new language, etc. Thank you TouchDevelop team.
We have some wacky ideas for microbit:microbit mesh experiments.
[+] [-] primitivesuave|9 years ago|reply
One feature that kills it in the classroom is the Microbit's built-in 5 x 5 LED matrix, which means right out of the box it's "blink" program is much more interesting than the Arduino's one orange LED. Some kids will just spend the entire first day playing with the LED matrix, like getting their name to scroll across it, or programming the LEDs individually to make cool patterns. The Microbit also comes with an external battery holder for two AAA batteries, and feels a lot better to carry in your pocket than an Arduino or Raspberry Pi.
After seeing the tremendous adoption in the UK and meeting the Microbit founders, I am very confident this board will play a big role in introducing K-12 students to digital electronics.
[+] [-] simooooo|9 years ago|reply
[+] [-] tyingq|9 years ago|reply
Easy ways to demonstrate bitwise ops, double buffering, 2d arrays, ring buffers, pwm, etc.
[+] [-] mynameisvlad|9 years ago|reply
[+] [-] jaustin|9 years ago|reply
We'll be hiring tech people again soon, so if you want to come and help us teach kids around the world to be inventors, keep your eye on https://micro-bit-educational-foundation.workable.com/
Finally, as the author hoped, the revision of the hardware now shipping is more resilient to ESD than the previous one :)
[+] [-] makmanalp|9 years ago|reply
https://www.sparkfun.com/products/14208
One minor comment - the article really made me want one, and when I went to the home page, it took me around five or six clicks to get to a place where I can buy one! Finally I found it at the very bottom of the page under "About". And even then when I click on the adafruit one and it takes me to the adafruit homepage. Why not have a giant button on the homepage? Do you folks really not want people to buy your stuff? :-)
[+] [-] dhon_|9 years ago|reply
[+] [-] abchatra|9 years ago|reply
[+] [-] zitterbewegung|9 years ago|reply
Originally there was going to be a coin cell battery but they removed it because children might eat it. Also there is a Bluetooth radio on the microbit but the runtime was 12k and there wasn't enough space to load micropython and Bluetooth at the same time .
A link to the example is here https://github.com/bbcmicrobit/micropython/blob/master/examp... .
[+] [-] mbrookes|9 years ago|reply
Here's a rundown: https://blog.bluetooth.com/developing-applications-bbc-micro...
[+] [-] askvictor|9 years ago|reply
[+] [-] unknown|9 years ago|reply
[deleted]
[+] [-] PMunch|9 years ago|reply
[+] [-] linker3000|9 years ago|reply
I have been working with the micro:bit in my role as a volunteer STEM ambassador almost since it became available and it's a fun tool. My main STEM angles are computing and electronic engineering and initially it was very hard to get good info on the I/O functionality (coding and electronic), but things have come on in leaps and bounds, notably with the micropython guys, and I have concentrated on developing some fun 'advanced expansion' projects, such as a loud 3V audio amplifier (powered from the micro:bit), sound detector and a 5 band audio 'spectrum analyser'. Currently I am working on an alarm clock radio with the micro:bit being a plug-in add on controller (via its buttons and bluetooth). The LED matrix is good for a quick win with visuals, but adding a small OLED display makes a world of difference to what you can do - it would have been really cool if one of the small 0.91" OLED panels was baked in to the micro:bit.
The biggest challenge I originally found was the lack of a focal point for teachers, volunteers and developers to share ideas - I subscribe to many educational forums and groups and the most active I have found is the micropython mailing list (but if anyone knows of others let me know) and there seemed to be little encouragement or management from the official micro:bit side to centralise and promote the community spirit, plus there was a huge delay in getting out the full technical specs and schematics - and boy was it was impossible to get hold of an edge connector for months - so there was a lot of poking and prodding needed to work things out; very kindly some of the tech guys from the companys involved in micro:bit distribution and add-on kits were extremely generous at sharing what they had found out in the early days, especially about the quirky way the LED matrix is wired and driven. A bit more oversight from the project originators in the early days would have really helped.
PS: Totally agree about the RAM - 16K is just a tad tight and 32K would have been a better size.
[+] [-] gunmania0|9 years ago|reply
[0] https://lancaster-university.github.io/microbit-docs/
[+] [-] Niten|9 years ago|reply
[+] [-] senko|9 years ago|reply
One thing I wish for is that there were visual cues / icons she could distinguish the blocks by (there are a few icons on a few blocks, but not all are covered, they mostly aren't unique, and not intuitive / easy to remember).
[+] [-] askvictor|9 years ago|reply
It's important to not forget their potential as a general educational tool, rather than just something to teach coding with. Have a read of Mindstorms by Papert if you are interested in this space.
[+] [-] monk_e_boy|9 years ago|reply
[+] [-] mavhc|9 years ago|reply
I use mu, the micropython editor, it shows the error messages on the PC when connected via USB, instead of trying to read them scrolling across the display
[+] [-] askvictor|9 years ago|reply
[+] [-] toyg|9 years ago|reply
[+] [-] Jun8|9 years ago|reply
[+] [-] jeffwass|9 years ago|reply
[+] [-] tonylemesmer|9 years ago|reply
[+] [-] AlexeyBrin|9 years ago|reply
[+] [-] askvictor|9 years ago|reply
[+] [-] viubui|9 years ago|reply
[+] [-] stinos|9 years ago|reply
Easy for you doesn't mean easy for a 6 year old. Is there really easy pixel-by-pixel programming on any of the devices you mention? As simple as entering few lines of python code and pressing 1 single button? Let alone with direct full-screen access? (I'm really curious, maybe there is).
Also check the example: like 15 lines of Python which make the device play a tone based on the compass. Again: I'm really curious if there are alternatives which achieve this is such an easy way (IIRC even the simplest Arduino style boards I tried required installing an IDE, fiddling with some settings, and the code wasn't nearly as easy as Python). And I'm also not sure if laptop/phone would be amongst those alternatives.
[+] [-] abritinthebay|9 years ago|reply
What you describe is several orders of magnitude more complex to do for a child.
It's like saying "why would they build a 2d game with Scratch when they could build a 3D FPS in C++?"
[+] [-] ntoll|9 years ago|reply
(Caveat - I was involved in the MicroPython side of things. So good to see the other dev environments represented in the comments here.)
Hurrah! :-)
[+] [-] LeoPanthera|9 years ago|reply
[+] [-] pjmlp|9 years ago|reply
Nice work.
[+] [-] kdelok|9 years ago|reply
I also think a shout out to https://create.withcode.uk/ is worthwhile. They've got a nice little microbit emulator for trying things out before downloading onto the microbit.
[+] [-] deboboy|9 years ago|reply
We have some wacky ideas for microbit:microbit mesh experiments.
[+] [-] forgottenacc57|9 years ago|reply
[+] [-] ausjke|9 years ago|reply
[+] [-] Symbiote|9 years ago|reply
[+] [-] sebow|9 years ago|reply
[+] [-] deavmi|9 years ago|reply
[deleted]