Designing #microbit Virtual Pets & Monsters – So many possibilities!

At the end of last year, I was lucky enough to have the opportunity to test two new design technology / makerspace projects utilizing MakeyMakey and Micro:bit. This is the second project, and it’s one that I am very keen to reteach and extend in the future.

I ran this project with one Year 4 class, starting out with some very simple instruction and exploration of the basic functions of a BBC Micro:bit. These students were familiar with Scratch visual programming, but this was their first time using the Microsoft MakeCode editor. Due to their age and this being a design technology project, we deliberately kept the programming requirements simple – although students were welcome to experiment with more complex functions.


The Scenario

Welcome to the wonderful world of toy design. You have the important task of designing and building a prototype virtual pet or a “monster” for a classmate. 

Please note: You will likely have to share a micro:bit, so please make sure you can easily remove the devices from your constructed projects. 

Success Criteria 

  To succeed in this task, you will need to:

  • Program the LED screen to display information or emotion (e.g. smiley/sad faces)  
  • Use the physical buttons and/or accelerometer to enable owners to interact with the virtual pet (e.g. feeding it, putting it to sleep)

  Complete this engineering design journal by  

  • Defining the problem
  • What are the pet owner’s needs/desires? 
  • How will the owner interact with their pet?
  • Listing the required tools and materials
  • Constructing and testing the virtual pet, seeking the new owner’s feedback.
  • Reflecting on the success of the design process 

If you are interested in extending your visual programming skills, you are welcome to experiment with the following:

  • Use the accelerometer to make the pet respond to being picked up or dropped
  • Discover how to use the Broadcast and Receive feature to make two Micro:bit Pets communicate with each other. 
  • See if you can work out how to use variables and timers to program your robot to express loneliness or hunger when it is not picked up or fed for a certain period of time. This might be quite a challenge!

Inspiration Resources

Identify the Problem

After some micro:bit tinkering time and research into existing virtual pet toys, students interviewed their ‘client’ partner and recorded their design requirements.


Design Solutions

Most students were able to program the Micro:bit buttons and LEDs. Some experimented with the accelerometer functions (shake, pick up, drop), and two girls took a deep (guided) dive into the use of variables for a background countdown timer (For example, if the pet isn’t interacted with for 60 seconds, then it will be ‘sad’). Most students succeeded in using the MakeCode editor to enable their pet to emote and/or respond to user input.

Exploring the use of the accelerometer (shake) and button input.

Use of buttons and exploration of countdown timer variables.

Final Thoughts

I am very proud of how students interviewed their clients regarding their product needs, and how they shared and sought verbal feedback on their prototype designs at the end of the design cycle. This was an extremely powerful learning experience for the students and resulted in a diverse range of products.

It would have been more efficient if we had required students to design their projects on paper and upload a photo to the OneNote. We made an accidental and extremely useful discovery that it was possible to directly embed shared Microsoft MakeCode projects within the OneNote editor itself  – this will be a requirement in the future. I would also provide students with 6×6 grid paper squares to help them work out how to ‘draw’ faces on the micro:bit with the LEDs. Finally, I’d take more time at the start to more effectively model the use of the LEDs and accelerometer, ideally with my own demonstration Micro:bit pet.

Overall, this project was a useful introduction to Micro:bit for Year 4 students – with the scope for improvements in the design documentation and programming complexity.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Leave a Reply

Your email address will not be published. Required fields are marked *