Board game idea, questions about identifying game pieces

Hi there,

I have been reading posts and searching these forums and the internet for about an hour a day over the last week. I am hoping that I am not going to annoy anyone by posting a question here. Please let me know if I made this post in the wrong way or in the wrong forums and I will delete it.

I am a web programmer and I have built a career in this area of expertise for the last 15 years now. I would like to learn more about electronics in order to create prototypes for various project ideas I have. I have also experimented with Bluetooth Low Energy (BLE112 and BLE113) boards using my TI debugger and I have done some soldering or hooked up little breadboard prototypes following the internet instructions. So I have had a very minimal amount of electronics/pcb experience.

More recently, I have an idea for a game that I would like to pursue. I want to develop a game board and game pieces. I want the game board to sense when a game piece is connected to it. The game board will be communicating with a computer game.

I want each game piece to retain a unique identifier and not to use RFID, to save cost. Each game piece will have a multicolor LED in it.

When my gamer makes a color change in the computer game, the arduino powered game board will light the led on that game piece with a specific color from then on.

Once some activity happens in the game, the LED will turn off. At that time, the gamer must physically pick up the game piece and place it on another area of the board. This triggers a charging sound and turns the light back on. Then the player may move the piece back onto the board which triggers an activity in the computer game.

After researching,

I found a post here:

by (Chagrin) that may apply

It seems like it would be possible to use surface contacts for this project. In order to store a unique identifier in the game piece, it looks like I may be able to use the ATTiny. The LED in the game piece could have it's own separate set of surface contacts in the game piece so that it can be controlled directly by the arduino powered game board.

When a game piece is placed on the game board, the arduino senses the game piece, reads the identity of the game piece from the ATTiny and then lights the LED light with the color that has been configured for that game piece identity.

I am not as concerned about the communication from the arduino to the computer game at the moment. I am more concerned about the basic concepts of the design I am describing here.

  • Is it possible for an arduino to have a series of 10-20 surface contacts that an ATTiny with surface contacts could be placed upon, and then for the arduino to detect the presence immediately of the ATTiny on any one of those contacts?

  • Is it possible for the arduino to detect which surface contact the ATTiny game piece is placed upon or removed from?

  • Is it possible for the arduino to read an ID from the ATTiny through surface contacts?

  • Is it possible for the ATTiny to be placed into a small game piece without a power source and to retain a previously programmed identifier to be read by the arduino at some later time?

  • Is there an easier way to do this?

I also have further detail about how the game would work on the computer, a story and some characters for the pieces as well as some idea of how I can develop the outside shell for the pieces using the game characters. Since that stuff isn't the important part for the purposes of this post, I thought I would just stick to the design questions.

Any help would be much appreciated and thanks for reading

Why not just use 4 contacts = Power, Gnd, SCL, SDA - and have each piece programmed with an ID (preprogrammed, or program with a piece docking station that reads 6-7 dip switches or similar to give the piece its new identity). Will be a lot more reliable with fewer contacts.
Piece powers down when removed, powers up on placing onto board and reacts however.
Run at 3.3V, 1 MHz for low power usage. Place pins/pads such that only one orientation will allow all 4 contacts to mate correctly and eliminate any chance of power being applied incorrectly.
Or allow a couple of orientations to work so pieces can be placed facing one opponent or the other.

You could use the one wire bus, with a chip in each piece. Each 1 wire device has a built in unique ID number and you can get latches so that could control your LEDs in the piece.

However a lot depends on how many positions you have on the board.

Look carefully at any plug+socket: computer connectors or even a wall socket. If you have a chip-and-pin credit card, look at the gold contacts there. You will notice that the contacts on the plugs get a strip scored in them by the contacts in the socket. This is called "wiping" because the socket wipes any dust or grease off the plug every time it's inserted.

If you just have a flat board with contacts and place the pieces down with no wiping, the connection will be very unreliable. It will work for your tests at home but the first time you demo it to someone, you will be wiping the pieces on your pants to try to get them to work again. Maybe if the pieces are heavy enough, sharp pointed pogo pins might make contact.

Can you set up your board with sockets, like the Arduino headers? If not, then you will have to use some non-contact method, like RFID. Having an independent RFID reader under every square on the board is likely to be expensive but there's many other ways to do it.

Do the pieces have batteries? Do they dock on a charging station to be recharged at the end of the game? You could probably do it without batteries and use a supercapacitor to light the LED for a few seconds while it's disconnected from the board and then recharge with a large inductive loop under the whole play area.

Having an independent RFID reader under every square on the board is likely to be expensive

Not if you make your own readers.

http://www.thebox.myzen.co.uk/Hardware/RFID_Sequencer.html

Why not just use 4 contacts = Power, Gnd, SCL, SDA - and have each piece programmed with an ID (preprogrammed, or program with a piece docking station that reads 6-7 dip switches or similar to give the piece its new identity).

@CrossRoads - Yes, that sounds good, but what would be inside the game piece to hold the program? Is the ATTiny a good option for this or can the ID be stored in the game piece in another way?

You could use the one wire bus, with a chip in each piece. Each 1 wire device has a built in unique ID number and you can get latches so that could control your LEDs in the piece.

@Grumpy_Mike - 1 wire is something I was reading about last night for a little while.

  • So for the purposes of a game piece, what is the minimum 1 wire device that would be required to just store an ID?

The number of positions on the board could be a little flexible but I think it should be at least 10 positions.

Do you have any good links for me on understanding how to build a sort of contact matrix/socket matrix that will allow 1 wire devices to be removed and added using 1 wire and arduino and then detect the position of the added device on the matrix and the ID of the device immediately on the arduino just by sensing a new device was found?

first time you demo it to someone, you will be wiping the pieces on your pants to try to get them to work again.

@MorganS - You make a good point here. I had wondered about that.

Can you set up your board with sockets, like the Arduino headers?

@MorganS - I think the sockets would be a better way to go.

Do the pieces have batteries? Do they dock on a charging station to be recharged at the end of the game?

@MorganS - The super capacitors would be a really nice touch, but I think I'll just need to make the LED turn on only when connected to make it a little easier. I'm hoping the game piece can hold it's identity without having any power to it at all, so that the game pieces can be sitting off by themselves and then turn on when connected to the game board.

@ALL -

Thanks so much for the read and your great responses. An activity community is a really nice aspect of this product and so I really appreciate people like you.

A couple of things I didn't add in the original post. The game board is actually sloped at a pretty steep angle in places, so the pieces need to sort of cling to it. I was thinking that a custom magnetic connector, sort of like the Apple laptop power cord connector, might be a good way to sort of snap the game piece onto the connector and hold it there.

The games pieces need to be pretty small, cone shaped and no larger than about the size of an AA battery or maybe a little shorter, but very lightweight, so I would be using a very light material on the casing (plastic or molded latex maybe?)

The game board needs to be pretty small as well, about 4-5" long by 3" wide, so the connectors will need to be spaced pretty close. The reason for this is that the game board will actually be embedded in a figurine, which will contain the arduino module inside.

Since there would not be enough weight in the game pieces to hold the connection, then I suppose I am looking at some pretty powerful magnets on each connector, and then some pins on the inside. I was thinking of 3d printing the female/male ends of these contacts and then embedding the magnets in the contacts with some solid glue on the inside of the groove.

@Grumpy_Mike- The RFID Sequencer looks awesome! But I need this to work on a much smaller scale and I'm okay with contact pins in the connector.

@ALL -

  • What could I get inside the game pieces that would give me an identity immediately when a piece is moved from one slot to another?

  • How could I assign and sense a sort of slot identifier on the matrix that tells the arduino where the game piece was connected or disconnected from/to?

  • Would the ATTiny be the way to identify the game piece or is there another 1 wire device maybe that I could put in the game piece that would give me an identity? Or maybe the dip switch that @CrossRoads spoke about?

  • How many pins would I need to dedicate to the multicolor LED on the game piece connector and how many to check the identity?

  • Would the identity be retained with no power in the game piece after is has been disconnected for a long period of time?

Thanks again for the read and your responses! Any help thinking this through is much appreciated!