Introduction: Hacking Guide to the Wii GiftCard

Target is handing out Wii GiftCards in anticipation of Nintendo's release of this remarkable console. The cards are a bit thicker than your regular credit card and house some pretty nifty electronics. Pressing the button on the outside of the card turns on a ominous blue Wii glow that lasts about ten seconds. I'll pop the case on this little thing and check out the internals. After that we'll add a bit of functionality to the LEDs.

Gather up some tools...

#0 Phillips Screwdriver
Small Flat Screwdrivers
Soldering Iron & Solder
Forceps or Needle Nose Pliers

and lets get started!

Step 1: Crack the Case

On the back side of the card are four #0 Phillips screws to remove.

Carefully remove the backplate and observe the four light diffusers on the edges of the card.

Stash the backplate, diffusers, and screws somewhere safe.

Step 2: What's on the Inside

Now that you've got the thing open lets take a look at the innards.

-Six blue LEDs are mounted on the corners to illuminate the edges of the card and two more are pointed into the Wii logo at the center.
-The diffuser bars only fit into their spots one way, notice the larger area of plastic extending towards the outside.

Remove the circuit board.

-Note the button mounted in the front plastic cover, it lines up with the metal button on the board.
-On the circuit board there are several key spots that I highlighted. Most important is the little black glob just right of center on the bottom. This is most likely a 555 timer IC, it controls the delay that keeps the LEDs lit.
-There are three 10ohm current limiting resistors on the board to protect the LEDs from high currents. The one noted on the top regulates the inner LEDs, the two on the right side of the board regulate the left and right sets of wired LEDs.
-The transistor switches on the LED circuit when the middle pin is connected to ground. This is needed because the current draw of the LEDs is to great for the little blob IC. The right pin runs to the LEDs, the pin on the left, to the positive rail.

Step 3: The Batteries

Depending on how many people have played with the card before you got it you might have to change the batteries. Target made this surprisingly easy to do. The circuit bard holds three G10A (LR54) coin batteries. Each one provides 1.5V and the board is designed to run them together in series for a total of 4.5V.

To remove the batteries, bend the tabs on the outside edges of the battery holders. You may have to pry them up with a small screwdriver first and then grip them with pliers. Be careful not to break them off.

Next, push the battery out and slip in your new ones.

At this point you could solder some wires to the noted contacts and power the card from a 5V wall adapter. You'll have to short out the two resistors to the right of the blob to make the LEDs stay lit.

Step 4: Don't Read the Fine Print!

The back of the card lets everybody know that you found it at Target, it's a gift card, and its copyrighted. It would look a lot better just clean and white. It took me awhile to figure out exactly how to git rid of the text. The top part is printed in a dye, as is the copyright in the lower left. The center bar code and the stuff on the bottom right is stamped with some kind of non-reflective ink. I think this prevents people from changing the bar codes and, unfortunately, erasing them too.

I thought that acetone might be a good approach as it eats plastic, sadly I was wrong.

Next I tried a Dremel buffer wheel, nix that plan too. The wheel gets too hot and burns the plastic randomly.

The best way to remove the text ended up being a simple razor blade and some patience. Start at one side of the card with the razor blade vertical. Scrape the blade softly across the surface of the card and you should start to see the writing peal off. This'll leave the card a bit dull and scratched looking so you might have to sand it down with some 600 grit sandpaper. You can usually find sandpaper this fine at hobby stores.

If you want to take it a step further you could spray paint your own logo on the back with a stencil and then finish it off with a protective gloss.

Step 5: Cutting Out the Logo

Say you don't like the Wii and you still want a flashy card to show off to your friends. The front of the card is a sticker, easily pealed off and tossed aside.

Once you've done that, flip the card over and take a look at the clear plastic piece in the center. This is held on with a couple of melt rivets that can be cut off to pull the clear insert out of the front.

After this, start up your Dremel and cut out the rest of the plastic in the center window.

Step 6: Some MOD Ideas

I mentioned that you can power this thing from an external source and turn it into a cool night light or some other static art piece, but static just doesn't cut for me. So here's some Ideas to get you started...

Change the LED colors -
The LEDs are 3mm standard size and run at about 3.3V. With the current limiting resistor at only 10ohms we can assume that these LEDs are of the "Super Bright " category. Any color led of that takes a 3V 20mA input should be fine here. I "photoshoped" a little preview below.

Attach a lanyard -
Kinda simple, but definitively a necessity. Pierce a hole in one of the corners to attach a small cord to, or make a loop that attaches to some other lanyard.

I went a bit over the top and decided to add a PIC microcontroler to the card and flash some Morse code over the LEDs. I'll show you exactly how to do this in the following step.

Step 7: PIC Morse Code

PIC microcontrolers are programed in assembly and can be a bit tricky to learn. I don't really have the time to show you the ins and outs of programing PICs, but I can start you off with a little Morse code program I wrote for the Wii release. You'll need to program the chips before you solder them into the circuit becasue the programing lines are going to be used by the card.

To send a Morse code string use the subroutines "S" for a dot, "L" for a dash, "CS" for a letter separator, and "WS" for a word space.

The sleep command will keep the PIC in a low power state until the button is pressed on the card. Just before sending the PIC to sleep I read the status of the port into the "sandbox" register so that the chip would know how the button changed.

The following code was written for the PIC10F202.

start	init	movlw	b'00010101'			; Configure options (weak pull-up, wake on change)	option 	movlw	0x00				; Future button variable	movwf	state	movlw	0x08				; Set GP0-2 to outputs	tris	GPIOWii	call	S					;WII	call	L	call	L	call	CS	call	S	call	S	call	CS	call	S	call	S	call	WS	call	S					;FOR	call	S	call	L	call	S	call	CS	call	L	call	L	call	L	call	CS	call	S	call	L	call	S	call	WS	call	L					;THE	call	CS	call	S	call	S	call	S	call	S	call	CS	call	S	call	WS		call	S					;WIN	call	L	call	L	call	CS	call	S	call	S	call	CS	call	L	call	S	call	WS	movf	GPIO, W				;Check GPIO for Sleep	nop			sleep	goto	Wii;-------Subs-----------L							; Dash	bcf		GPIO, 0	call	Delay	call	Delay	call	Delay	bsf		GPIO, 0	call	Delay	returnS							; Dot	bcf		GPIO, 0	call	Delay	bsf		GPIO, 0	call	Delay	returnCS							; Space between letters	call	Delay	call	Delay	returnWS							; Space between words	call	Delay	call	Delay	call	Delay	call	Delay	return;------Delays-----------Delay			;199993 cycles	movlw	0x3E	movwf	d1	movlw	0x9D	movwf	d2Delay_0	decfsz	d1, f	goto	$+2	decfsz	d2, f	goto	Delay_0			;3 cycles	goto	$+1	nop			;4 cycles (including call)	return	END                       ; directive 'end of program'

Step 8: Adding a PIC

The PIC I chose to use for this project is one of the smallest DIP microcontrolers you can find, the PIC10F202. Microchip makes surface mount versions of this chip that I would have liked to use but at 2.6mm I couldn't reasonably work with them.

You can leave the casing of the card "as is" and still have room for the PIC in the center, right underneath the Wii logo. I did this with my versions and and didn't have a problem.

You'll need to start by cutting a trace on the board that runs from the button to the little blob IC. We're going to tap into the button and avoid adding another. You'll want to make the cut close to the black blob so that we can solder a wire directly to the remaining trace. You'll know that the cut worked when you can't press the button to turn on the LEDs (when you insert the batteries, the LEDs will still turn on for ten seconds).
{picture coming soon}

Once you've cut the trace, scrape off a little bit of the solder mask coating the trace. This is where you'll solder the wire to your PIC.

Now we need to add wires to bring power off the main board and to the PIC. Remember the two pads that I pointed out for ground and +4.5V. You'll need to solder a wire to each of these pads.

The final wire you'll need should be soldered to the bottom right resistor on the board, this is a current limiting resistor for the transistor. Solder to the side of the resistor closest to the black blob. There isn't really a need to cut a trace here since we already disabled the time by cutting the button trace.

Now your ready to place your PIC.

Solder the two power lines to the corresponding pin on the PIC. +4.5V should go to Vdd(Voltage drain) and the ground should go to Vss(Voltage source).

Solder the wire from the LED transistor to the PIC's Port 0.

Solder the wire from the button to Port 3 on the PIC, thats the input only port.