Wednesday 25 September 2013

Communicating between the devices

Now that the technology and devices that will be used have been decided begins the implementation of the platform. Here is an outline from a technical point of view of what every SunSPOT will be able to do once the game is in effect.

Upon contact by another playmate, the SunSPOT will :

  1. Recognize the ID of whichever of whichever playmate made contact.
  2. Play a sound to acknowledge that contact has been and give auditive clues to both players.
  3. Query the color of the "assailant".
  4. Replace its own color with the new color.
Technically, playing a sound (only possible with newer SunSPOTs) and changing colors are very simple tasks that should be easily implemented.

 How well the RFID detection will work is still uncertain at this point. The parts needed (RFID tags as well as readers) have been ordered and should be available for experimentation on 27/9. The readers will need soldering to connect them to the SPOTs, so we have preemptively done some research, mainly due to our lack of experience in this domain. Hopefully reading a tag will be easy to implement in a SPOT. For the moment, we can experiment using the switches on them.

Our work has been mostly focused on the communication between the SunSPOTs. We tried to see if radio communication could satisfy our needs, but we quickly realized that directional communication is not appropriate for this game. Indeed, only one of the two devices that want to communicate knows when it needs to do so. Since opening communications with every device is not realistic, we had to look into using another protocol. Fortunately, SunSPOTs also support sending datagrams as multicast.

 Here are some diagrams to explain the principle of the communications:

In the beginning, all SPOTs are in a state of "listening to an ID".
TAG4 (associated to SPOT4) makes contact with SPOT1.
SPOT1 reads "SPOT4" in the RFID tag.
SPOT1 broadcasts a message containing the ID "SPOT4".
SPOT1 goes in a "listening for a color" state.
Since all SPOTs are in a listening state, they all receive the message.
Only SPOT4 reacts to the message, recognizing its own ID.
SPOT4 broadcasts a message containing its own color, "RED".
SPOT1, the only SPOT listening for a color, reacts to the message.
SPOT1 changes its color with the own in the message.
SPOT1 goes back in a "listening for an ID" state.
Since the datagram protocol is unreliable, we need to experiment with this model to see how big is the risk of packet loss, considering that the two SPOTs communicating are close to each other. Depending on how successful it is, we may need to refine this method.

Tuesday 24 September 2013

Thoughts on tag game variations

Googling about the tag game I came up with this project from 2004: Citytag. It's very interesting to see a similar idea and the technology they managed to use almost 10 years ago.

In our version of the tag game (we should give it a name!) there are two color teams, for example: the blue and the read team. Each team will try to be the dominant one: when a blue kid touches a red kid, the red kid turns blue. Now the new blue kid has to go after other red kids to turn them blue too.

Citytag had another version: after being "tagged" you were trapped in the other team color, and another member of your original color had to be close to you to "save" you and give you back your original color.

That made us think that our game is actually open to both interpretations. It's up to the kids to decide if they want to really become part of the new team once they are tagged, or if they want somebody from their original team to "untag" them. We like to have a game with some rules but that it still lets an open door to variations, as the original tag game does.

Our game could also have other two alternatives (that require to be considered in the program):
  • Having only one "tagged" person at a time instead of teams (like the original tag game)
  • Having more than 2 teams (more than 2 colors)

Monday 23 September 2013

Taking the "tag" game to a whole new level!

After exploring several ideas, we decided to design a special version of the "tag" game that could benefit from wireless mobile devices.

In this special version of the tag game there would be 2 teams (at least) that have different colors. Let's say that we have team Red and team Blue. Red kids go after blue kids to try to "turn" them red and viceversa. When a blue kid touches a red kid, the red kid "turns" into a blue kid and now has to go after more red kids to turn them blue.
So, we think that technology can enable this game because we can give visual feedback on the color team where a kid belongs at a specific moment, in other words, color teams could be identifiable.

Thinking on specifying the requirements that we need to fulfil to build the technology necessary to play this game, we came up with this list:

  • Each kid should be identifiable with a color. Some wearable device should give continuous feedback on the color team the kid belongs at a specific moment.
  • The wearable device that the kid uses should be able to "remember" and also change the color team of the kid.
  • The interaction between kids should be touching an easy to reach part of the body of a playmate (shoulder, arm or back). When a kid A touches a kid B, the color of A should be transferred to B.

So what technology can we use to do this? We had several model ideas for a platform al around using SunSPOTs. SunSPOTs can communicate easily with each other and are small enough to carry in some sort of armband. They also have RGB LEDs and a little memory where we can store our program and also "remember" the current color team of the kid.
The main problem we needed to resolve was: how do we transfer the color from one kid to the other when they touch?

The design that we chose to solve this includes two wearable devices:

  • An armband carrying the SunSPOT with an RFID reader and LEDs displaying the current color team of the kid
  • A "handband" with an RFID tag
Let's say that we have the kid A with color red, and kid B with color blue and we have this sequence:
  1. A touches with the handband the arm of B with the armband
  2. The sunSPOT in the armband reads the RFID tag in the handband. The RFID tag holds the address of the sunSPOT of A
  3. The sunSPOT of B communicates with the sunSPOT A to ask him for the color or A.
  4. sunSPOT A responds to sunSPOT B the color of A
  5. sunSPOT B changes its color from blue to red. 



This implies that before starting the game there are armbands and handbands that correspond with each other, because the RFID tags have to already store the address of their corresponding sunSPOTs.

Now we have to start building the platform!



Thursday 19 September 2013

Research

From 11th of September to 18th of September we have been researching on the topic "Playgrounds".


We were digging in these points:
  • How children have fun in playgrounds?
  • What kind of games children play?
  • What did we used to play when we were young?
  • Which games based on technology are already out in the market?
  • Which is the state of research related to playgrounds, games for kids... ?

  • Based on those questions we found out some inspirational links:

  • Playgrounds
  • Playground games
  • What children like to do?
  • How to add multimodal feedback to cardboard boxes
  • Link 1 Link 2 Link 3 Link 4
  • Playgrounds for story-telling games

  • After all this reading and thinking it was time to brainstorm about the different ideas we had in our minds:

  • Hopscotch: we observed that kids like to jump, colors changing and sounds. So we came up with a solution based on an interactive floor where tiles could change color, emit sounds and interact with objects that kids should use to play on it. Finally we discarded this solution because there were more teams trying to do something similar.

  • Box: This idea consisted on giving kids objects where they could record sounds and other lighting objects. Kids should use them to configure some big boxes that would be used as spaceships. (We came up with this idea because all of us had a big box at some point in our childhood that we used as a fortress or a spaceship).

  • Wand: Following the idea of "magic" we thought that a magic game should have a wand in its core. So we were trying to bring up games with wands and spells. We discard it because it seemed pretty difficult to solve with this technology.

  • Tag: is one of the most famous games kids play in every playground. We think it is possible to do this idea and put some extra behaviors to this game and bring it to a next interaction level.