Damien works with students and teacher from around the world, bringing the effective use of technology to the classroom.  

Damien is a member of the MCP (Mindstorms Community Program), a small group of experts who collaborate with LEGO to make the MINDSTORM product better.

VEX IQ Robotics
Damien is a member of the VEX IQ Super User group, a small group of experts who collaborate with VEX to make the VEX IQ platform a better product 



Teacher Resource Books

Global Map

See where the DomaBot and RileyRover is being used around the world


Simon Game - LEGO EV3 version


The game of Simon has been popular for many years.  The basic premise is this:
Device does an action (display a light, plays a sound etc.)  Player has to repeat the action (press a button corresponding to the light/sound etc).  The device then does the original action plus a new action.  Player has to repeat the sequence.  Each time the player gets the sequence right, the device adds another action onto the sequence making it harder and harder to remember.

This is my EV3 version of the Simon Game.


I'm using 3 colour sensors to represent the actions that the device can show.  If you set the Colour sensor to measure ambient intensity, the LED inside glows blue.  If you set it to measure reflected intensity, then it glows red.  I'll be using these as flashing lights only, and am not interested in the actual sensor readings that they generate.

I'm using the Brick buttons (left, centre, right) as the player inputs.  If the left Colour Sensor goes red, that means the Player has to press the left Brick Button to match the sequence.  



Create a Numeric Variable Array and set it to 0

Set each Colour Sensor to be in Ambient mode (showing a blue light)

Generate sequence
Create a Random number, between 1 and 3, and append it to array (append is a fancy way of saying tack on a new number to the end of the array).  

I then show on the EV3 screen the length of the array to let the Player know what level they're up to.  If the array/sequence is 5 actions long, then they are on Level 5.
Take the random number, if it is 1, play a low note and briefly change Colour Sensor 1 to red and then back to blue.  If the random number is 2 or 3, play a medium / high note and flash the appropriate Colour Sensor.
Repeat this process as many times as there are numbers in the array.  ie. If the array/sequence is 6 numbers long, then repeat this 6 times.


Check the sequence
Wait for either the Left, Centre or Right Brick button to be pressed.  Each button represents a number, and this number is checked with the equivalent position in the array.  If the numbers are equal, it means the Player pressed the right button for that part of the sequence.  A brief high pitched note is played to indicate success and the next number in the sequence is checked.  If the numbers don't matched, then it means they got it out of sequence.  A suitable sound is played and the main loop is interrupted (exited).  The score stays on screen for 5 seconds so you can see what level you got to.



Workshop EV3 Quick Build

My RileyRover is my favourite build when I'm working with groups over more than just a session or two as it relatively sturdy and has a lot of great places to add attachments and modifications.  However, in my shorter workshops (around 2hrs) I was looking for something just a little bit quicker to build and this is what I came up with.  

It's ugly and a little bit flimsy, but if you have all the parts already separated from the rest, a novice builder can put it together in around 5-10 minutes.  This means students have a chance for some valuable building time without sacrificing too much programming time.  There is a super simple Light Sensor attachment (the same design as the RileyRover) and UltraSonic Sensor arm as well.

The gripper is the simplest that I could pare it down to.  It's ugly, it sags and is prone to falling apart, but it is quick and can grab paper cups and softdrink cans quite nicely :)

Feel free to use in your class and if you find it useful, please let me know about it.

>> Download the full Colour Pdf <<


Contracting out robot design for competitions?

So I recently had this email land in my mailbox and was quite disturbed.  Identifying details removed.

"I am a teacher of IT and preparing elementary students for participating in a national XXXXXX robotics competition. The truth is that I don't have so much time. I want to give to my students the happiness to make the Robot there and pass to the final of the competition.

I want to ask you if you can help me to build and program the Robot that can give the solution to the XXXXXX challenge. I can pay you of course for your work if you can help me."

I've heard rumours before of this happening and frankly I think it is just about impossible to stop a determined Teacher / Team mentor. 

This was my reply - 


I was disappointed to receive you email.  As you are no doubt aware, these kinds of competitions exist to promote Science, Technology, Engineering and Math skills amongst our students.  By providing them with a ready built solution deprives them of the opportunity to learn themselves through the valuable trail and error process.  Design skills, creative thinking and problem solving techniques are never learnt when someone else does all the work for you.
In addition, these competitions require that the students do the majority of the work, and so to have someone else design and build would go against the ethos of the competition as well as be blatant misrepresentation of the work that they have done.  
I deeply implore you not to go down this route and instead encourage the students to come up with and test their own solutions.  The ultimate aim of these such competitions and initiatives is not to win, and your students would achieve and learn considerably more with a robot that doe not make the finals (that they have built themselves) then they would from a robot that did make the finals (that they had nothing to do with).

Damien Kee


Given how highly regarded all these types of competitions are becoming.  Winning them does bring with it a lot of fantastic publicity as well as financial incentives.  I understand that having the competitive part of a challenge can be a very big drawcard and can often be a big factor in the success of such a program, but how do we combat the 'win at all costs' mentality? 

In RoboCupJunior Australia we are making a concerted effort to not only personally interview every team that comes in, and by initiatives such as rewarding teams that document and share their solutions regardless of how they perform on the day.

I'd love to hear your thoughts. 




Using the LEGO WeDo kits with scratch

I recently ran some workshops for Grade 3 students with the LEGO WeDo kits.  150 students over 3 days, in 2.5hr sessions at a time.  This particular school had a very extensive XO laptop program so they were keen to utlise them as much as possible.  The standard programming language that comes with the WeDo kits however is not supported on the XO laptops, so we used Scratch instead.  While the programming complexity of Scratch is a little higher than the LEGO software, it is still easy enough to use and the grade 3's were up and running within minutes.

I started out just showing them how to enable the WeDo blocks within Scratch and then a quick exploration about motors going 'this way' as opposed to 'that way'.  As usual I played dumb and let the kids discover and teach me which way was clockwise and which way was anti-clockwise (for the record, 'this way' is clockwise when looking at the motor from the front.)



We built a simple gate and had a play around with the duration and power levels to see if we could get fine control of the motor and get it to stop in set positions.  ie.  Gate open / Gate closed.


Once that was under control, students set about building their enclosures.  The only restrictions I gave them was "it has to hold an animal" and "I don't have any animals, so you have to build your own!".  That permission to be creative resulted in some extremely engaged students and a menagerie of animals.  We ended up with ducks, birds, dogs, hippos, snakes, snails, crabs, chickens and so on....  even a 3 eyed monster.  I just wished I had taken more photos!



We did simple programs to open and close the gate based on a keyboard press and then introduced the distance sensor.  This was the framework of the final program that the students did, although most decided to customise with extra sounds and speech bubbles!

A quick video of some of the final creations.




VEX IQ with "Modkit for VEX" Teacher Resource

It's been a long time in the making but I'm finally proud to announce that my next book in the 'Classroom Activities' series is now available!.  This book utilises the new VEX IQ robot kit from VEX along with the freely available Modkit for VEX programming language.  The book is available as either a hard copy or eBook download.

Any questions, don't hesitate to contact me!

More info about the book can be found here - Classroom Activities for the Busy Teacher: VEX IQ with Modkit for VEX


Modifying activities to suit Special Needs students

I work with a lot of students throughout the year and it is not uncommon to have a student in a wheelchair in my workshops from time to time.  While the vast majority of my activities take place on classroom floors, I'll quite happily modify the activities to make sure that everyone is included.  Usually this means setting up masking tape mazes on table tops rather than on floors so that student in wheelchairs can also participate.

The Wave activity (easily my favourite activity) is a little trickier as we need to line up all the robots on the floor.  This would normally mean the wheelchair student has to get another student to start their robot so I've taken to including a few extra parts in my workshop kit to help out.  This little extension uses a Touch Sensor mounted as high as possible and by putting this robot on the end of our Wave line the wheelchair student can still reach the button.


I then go to their program and inset a 'Wait for Touch Sensor' block at the very start.  We start their program normally while they're holding it, and then place it in the line along with everyone else's.  Rather than having to press the center button of the EV3 (which is incredibly low to the ground, they can just press the Touch Sensor which is at a more reasonable height.


I got this really nice email from the classroom teacher which absolutely made my day :)


Thank you so much for being so accommodating today with the young man in the wheelchair. His mother is so grateful and asked me to convey her thanks and gratitude. Often we do things that seem no trouble, like you did today, yet to another person it means the world and brings so much happiness.



EV3 Teacher Resource book now available in Spanish 

Well, to be honest it's been available for a little while now, but I've finally got my copy.  I don't understand a word of it, but it looks fantastic!!!

Classroom Activities for the Busy Teacher: EV3 - Spanish Version



PS. Don't forget there's also a French version available as an eBook


WeDo Teacher Resource book, now free!

LEGO no longer produces the Animal set that this book our WeDo Teacher resource book was written for.  The programming section is still very relevant for anyone using the WeDo kit, but unless you already have the Animal set along with your WeDo kit, you may struggle to build the models.  As such Fay and I have decided to released the book as a free download. Enjoy!!


Download free pdf version of "Exploring Our Coral Reefs"


miniVEX - VEX-IQ Classroom robot design

Most people know that I'm a big fan of simple robots in the classroom.  While the more elaborate ones look great, I'm all for having a design that is quick to build with as few parts as possible.  This allows classrooms to more quickly get into the programming side of things.

So here is my miniVEX design.  It can be made by any of the VEX-IQ starter packs that were released after Summer 2014.  If you have a pre-summer 2014 VEX-IQ kit, have a look here for a design that will work with your kit.  - old miniVEX

This design is the one I use for all the activities in my upcoming Teacher Resource book.

As with all my designs, they're completely Creative Commons so please share them around.  All that I ask is that you let me know if you're using them!

--> Full Colour PDF download <--


Carol of the Bells

I know it’s late, but the end of the year just got a little too busy for me.

Here is my LEGO MINDSTORMS EV3 version of ‘Carol of the Bells’.  I found a version of the song in 3 parts and assigned each voice to an EV3.  Timing was particularly difficult as while the notes played as expected, things like Loop and Bluetooth functions all take a finite time, which can throw out the timing of the song.  In the end I sent a bluetooth message from the Master EV3 (left hand one) to the two Slaves ever 4 bars of the song.  It does a pretty good job of keeping it roughly in time.


To make the Brick Lights flash in time with each note, requires some multi-tasking.  I start the musical note and turn on the brick light at the same time.  Then as the note is still playing, I take the note duration, divide by 3 and wait for that amount of time before turning the light off.  This gives a nice effect whereby longer notes have the light left on for a longer period of time.  Rather than do this for every single note, I used the My Block Builder to create my own block.  It accepts inputs of Note name, Note Duration and Volume and then send all those variables to the right places.

This is a screenshot of one of the programs.  You can download the full project file here - carol_of_the_bells.ev3