Introduction

EDUCATIONAL COMPUTING HAS a long and storied history, beginning with the adoption of mechanical calculators to aid with mathematics classes through to the early days of microcomputing with initiatives like the BBC Computer Literacy Project in the 1980s. As the cost of computers came down and their capabilities increased, schools around the world rapidly went from a single shared computer to entire rooms filled with computers, integrating them into lessons from languages and history to engineering and art.

Today many homes have a computer of their own, or in some cases more than one. While access to computers has increased, actually operating them brings with it a sense of being disconnected from their inner workings. The BBC Micro, the 1980s microcomputer designed by Acorn Computers and at the heart of the BBC Computer Literacy Project, loaded straight into a text-based programming language known as the Beginner’s All-Purpose Symbolic Instruction Code (BASIC) and invited experimentation; today, the majority of computers load into a graphical user interface (GUI) which emphasises the use of pre-written programs over creating your own.

The BBC micro:bit is designed to bring back the days of learning to write your own code on a low-cost, easily-understood platform. Designed to sit at the heart of an international computer literacy programme directly inspired by the BBC’s original Computer Literacy Project, the BBC micro:bit is an affordable microcontroller on which you can run your own programs to do everything from spell out your name or play a game to turn lights on and off or communicate via radio.

Schools around the world have begun to adopt the BBC micro:bit in their curricula, but it’s by no means exclusively for structured educational use. The device’s readily accessible nature means it can be used to teach programming and computing concepts to children of any age, its robustness and small size mean it’s extremely portable and well-suited to wearable projects, and its surprising power and flexibility mean that you’re unlikely to find yourself restricted by its capabilities even when using it at the heart of more complex projects.

Who This Book Is For

This book is written for anyone interested in working with the BBC micro:bit. You don’t need pre-existing knowledge of computers, electronics, or programming to be able to pick up a BBC micro:bit and get started.

All you need to get the most from this book is the ability to read and a willingness to learn. If you’ve used computers before, you’ll find that you are able to skim through some of the early chapters on general concepts. If you’ve used other microcontroller-based development boards, you can skip still more. If you’ve written your own computer programs, then you’ll find programming for the BBC micro:bit immediately familiar. And if you know your way around an electrical circuit, the later chapters should hold few surprises.

Whether you’re an existing user of the BBC micro:bit or a complete newcomer, this book aims to get you started on your journey with a minimum of fuss and maximum enjoyment.

What This Book Covers

The march of technology is constant, and the BBC micro:bit is no exception. This book has been written based on the most recent version of the BBC micro:bit hardware, revision 1.3b, but it is entirely applicable to all versions going back to the first prototype versions given to schools for testing purposes. Equally, it will remain applicable to all future revisions thanks to the sterling work of the Micro:bit Educational Foundation, which has been instrumental in the development of this book.

The software for the BBC micro:bit is, as with the hardware, under constant development. References to the software in this book are accurate at the time of writing, and all screenshots and related materials have been captured on the very latest software versions. Over time, small changes may be made to the way the software looks, but the way it works will remain the same.

This is especially important for the programs contained within the book. Although the languages available for the BBC micro:bit will expand over time and gain additional features, the existing features will always be available. A program taken from this book today will still be usable with the BBC micro:bit years down the line.

How This Book Is Structured

Part I, ‘An Introduction to the BBC micro:bit’, offers a guide to the hardware and how it works, step-by-step instructions on unpacking your first BBC micro:bit and exploring its sample program, and connecting the BBC micro:bit to your computer so you can load a program of your own. This section also contains a number of tips on working with the BBC micro:bit, including how to handle it to protect it against possible damage. Even if you’ve already worked with a BBC micro:bit, reading this section is well advised.

Part II, ‘Coding for the BBC micro:bit’, gets you started writing your own programs. You learn the languages available for the BBC micro:bit and how they differ, and you learn to write your own programs from a simple message scrolling across the BBC micro:bit’s display and reading from its various built-in sensors to writing a simple game.

There’s a chapter dedicated to each of the three main programming languages used with the BBC micro:bit: JavaScript Blocks, JavaScript, and Python. Each chapter is designed to be as close to identical to the others as possible, allowing you to quickly see how the process of writing each program differs between languages. You can use the comparison table at the start of the section to pick a favoured language and read only that language’s chapter, or you can work through all three chapters in turn to get a real feel for how each operates.

Part III, ‘Advanced BBC micro:bit Projects’, goes a step further, introducing the radio module with examples on communicating between individual BBC micro:bits and groups of BBC micro:bits without the need for wires. There’s also a chapter dedicated to using the BBC micro:bit with the popular Raspberry Pi educational single-board computer, extending the capabilities of both devices.

In addition, you learn how to add external components like switches and LEDs to the BBC micro:bit, building electronic circuits from basic components to further extend its functionality. There’s no soldering involved, and the circuits described are designed to be safe and accessible for even the youngest reader; they require only a small number of affordable electronic components.

You will now have a sound understanding of how the BBC micro:bit works, how to program it, and how to use it with other devices. You still won’t have reached the end of its capabilities, though, so the final chapter offers information on additional resources, including add-on hardware which can further increase the BBC micro:bit’s flexibility, and websites offering more project ideas and formal lesson plans for use in structured education.

Finally, the appendices have full program listings for every program mentioned in the book in all three languages, making it easy to type them in without getting distracted by comments and explanations of what each part of the program is doing. If you’d rather save your fingers, you can download the same program files from the book’s website at www.wiley.com/go/bbcmicrobituserguide. You’ll also find a pin-out diagram of the BBC micro:bit with a full list of its capabilities.

What You Need to Use This Book

Technically speaking, you can begin using this book even without a BBC micro:bit of your own; simulators allow you to write programs designed for the BBC micro:bit and see how they run even without loading them onto a physical BBC micro:bit. You’ll get the most from the book if you have at least one BBC micro:bit with which to experiment, however, along with a few extras detailed here.

To run the main program samples listed in this book, you need the following:

  • A BBC micro:bit
  • A fully-wired micro-USB cable
  • A computer running Microsoft Windows, Apple macOS, or Linux, with a free USB port
  • An up-to-date web browser and working Internet connection

For the radio programs included in Chapter 8, ‘The Wireless micro:bit’, you also need:

  • A total of three BBC micro:bits

To run the programs listed in Chapter 9, ‘The BBC micro:bit and the Raspberry Pi’, you need:

  • A Raspberry Pi Model B+, Raspberry Pi Model 2, Raspberry Pi Model 3, or Raspberry Pi Zero W
  • A micro-USB On-The-Go (OTG) adapter cable, if using the Raspberry Pi Zero W

To build the circuits detailed in Chapter 10, ‘Building Circuits’, you also need the following:

  • Wires with crocodile clip or 4mm banana plug connectors
  • A button or switch
  • An LED
  • A current-limiting resistor (see Chapter 10 for an explanation)
  • A potentiometer

These parts are readily available via the Internet or in high-street electronics component shops, and they can frequently be supplied by BBC micro:bit resellers alongside the BBC micro:bit itself.

Conventions

To help you get the most from the text and keep track of what's happening, we've used a number of conventions throughout the book.

Technical terms are presented in italic when they’re first used. The same applies to acronyms and initialisms, which are presented in full when first used and then in their abbreviated form.

Metric measurements are used throughout this book, with imperial measurements provided in brackets where appropriate.

When a line of code would extend past the border of the page, a ↩ symbol is printed. When you see this symbol, continue to type the code without pressing the Enter or Return keys. If you’re not sure how a line of code should be entered, visit the website at www.wiley.com/go/bbcmicrobituserguide to download plain-text versions of each program; these can then be used for reference or even simply copied and pasted directly into the editors.

Contact Me

Comments, corrections, and questions from readers are heartily welcomed via email at [email protected], while other publications of mine can be found at freelance.halfacree.co.uk.

You can also get in touch with me via Twitter at twitter.com/ghalfacree and via encrypted message at keybase.io/ghalfacree.

Enjoy the book, and happy travels on your BBC micro:bit journey!

—Gareth Halfacree

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.217.5.86