How to teach transmission of data using binary using a BBC micro:bit
Created by David Franks
last edited Mar 09 2017 by David Franks
How is the best way to teach data transmission within networks?
Students need to have some concept of understanding that data can be encoded in binary and then sent digitally to another device, but there needs to be some standard to make sure that the way they encode information is the same as how the other device decodes it.
These resources include a hex file which can be placed on two microbits. When pressing the A button on a microbit, the other one will show a ‘0’ and pressing the B button will make the other display a ‘1’.
The task should be quite discussion based and is appropriate for KS3 and KS4. Ask the students to work out who is their paired microbit and work out how they think they can send information to the other person if there is only two possible inputs and two outputs.
Students generally will come up with a range of possible options, and should understand the efficiency of each in terms of how many button presses (bits of information) is required to transmit their data. e.g.
What happens if the person they are sending it to is on the other side of the room, they may not know what method of data transmission you are using.
In order to have multiple pairs of students working together, the hex file will need to be adapted, by changing the group of the microbits. For more information see the PXT help files at: http://community.computingatschool.org.uk/resources/4960
The students can then be given the first sheet (6 bit alphabet) which introduces them to some method of ‘standardising’ the way in which they can send or receive data and still know what it is. The task should be to get the students to send a short message to each other.
Hopefully they discover some of the issues inherent with this:
The students can then be given the second of the sheets (6 bit alphabet with control) this includes some of the control characters networks use in the available spaces in their alphabets. They could send an ok to the sender after every letter to say that they received it and were able to decode it. The sender should wait until receiving the ok before sending the next letter, or if doesn’t hear anything after x amount of time, resend.
This topic can raise a lot of discussion topics, such as how many times to retry, or should we timeout.
The second part of the task could involve trying to send an image from one person to another. This is a great introduction to image representation and colour depth. Best to be done with small images and black and white images, however it brings a great topic of discussion about how does the other person know how big the image should be (head metadata) and the reason high quality or big images require so much storage space.