Sunday 20 October 2013

Video ;)


Finally, here we are with a video that we have created to explain you how our project works. We hope all of you enjoy it!



Friday 11 October 2013

Posters

The day of the presentation has arrived and we have been designing some posters to catch our audience.
I hope you like them and enjoy our Show & Tell & Test.



Thursday 10 October 2013

Games

In our aim to play more with the technology we have created 2 games instead of only 1 game. Considering that only one game all the time could result little bit boring, we came up with the idea of coding another game with the same concept.

We have introduced a new Sun SPOT which acts as a master. The master can change from Game 1 to Game 2 and send this information to all the players broadcasting the message.

Each player needs two things for playing this game:
  • Wristband to put in the arm (which contains a Sun SPOT)
  • Element to transmit the light
    • Glove
    • Sword
    • Wand

Game 1:
Each player starts with a different color. The goal is to transfer your color to all the players. Once a player transmits his color to another player they become part of the same team and they have to transmit it to the others.
No one can save you from others, so you need to be more agile and faster than your opponents.


Game 2:
This second game is the classical Tag game. All players but one will start with the green light. The other player will start with the red light. Run far away from the red light player, he/she will try to exchange lights to become free. If you get the red light, you need to get rid off it!!

Whenever you need to restart the game or change the game, use the master Sun SPOT.
  • Left Switch: used to transmit the game
  • Right Switch: used to change the game
    • Green Light: Game 1
    • Red Light: Game 2
How to switch games?
First, use the Right Switch to select your desire game.
Second, transmit the previous information to every player clicking the Left Switch.


Coming soon with more news ;)

(Posted by Germán and Víctor)

Tuesday 1 October 2013

RFID ready

After agreeing on a main design of the system we started integrating the RFID reader to the Sun-Spot.

The first task was to get some readers.
We decided to start with the ID-12 RFID reader because it was the smallest.

In order to connect the SunSpot with the RFID reader we needed a breakout, a little board that will bring the 2mm spaced pins out to two 0.1" spaced headers. 

The connections are visible with a thin line, that should be checked after the soldering

None of us had any experience soldering so we start practicing with a breakout and some cables, after gaining some confidence we start with the ID-12 reader.

In our first attempt to make the RFIDs work with the Sun Spot we found that it is essential to solder the breakout to the RFID. We found that it was impossible to make tries because the connection was really really poor.

This was our first time, for all the members, trying to solder this kind of components. We found really useful to use a voltmeter to check that all our solder points were correct and current was going well from point to point. We also found really useful to picture in our minds how it should look like after soldering. Therefore, we recommend you to take a look at this website.



After that we obtained this





Once done the soldering process, we made some tests with this code that we found online done by someone who faced this same problem before.


Surprise! It wasn't working really well and at some point it stopped working. So started crashing our heads against the wall. The code seemed to work and we checked that current was passing through perfectly before testing it with the code.

Oh! We found out that our soldering points weren't good enough, and in the pin we were using to transmit the info from the RFID to the Sun Spot the connection was weak. We fixed and checked all the soldering points.

Yuhuuu! It was working properly.


A test confirming that everything was working

See you in the next post.
Víctor & Germán

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!