Posts Tagged ‘smart’
Smart A Install
Written by eipromb on April 22, 2008 – 1:59 pm -Here’s the install guide for the Smart A Backlight mod. It’s a bit short, but should clear up any questions you might have in regards to installation. So, in the same tradition as the other guides, what you’ll need is:
What you’ll need:
A Nintendo Wiimote
A Triwing Screwdriver
Smart A Mod (DIY or Prebuilt)
Soldering Iron and Solder
Circuit Tape (optional, included in prebuilt kit)
Step 1:
If you have circuit tape (included with the prebuilt kit), you’ll need to cut a strip of it to wrap around one of the solder pads. This step isn’t neccessary, but will make installation alot quicker. Since the solder pad for the push button is very low, the circuit tape will help to make the solder to connect easier.
Step 2:
Next wrap it around the pad as shown in the picture. Don’t worry if it doesn’t hold very well, you can solder it down permanently a few steps below.
Step 3:
Shown here are the points that you’ll want to line up the mod to solder to. The GND connection as shown can actually be any one of the four pins on that side of the IC, they’re all connected.
Step 4:
Here’s the mod soldered down. It’s probably best to solder the ground and input connections first, the +V connection is probably the hardest so you’ll want to have the mod as stable as possible when doing it. I’ve used a small wire (30ga) to bridge the gap between the pad and pin, to make things easier and neater for this guide.
Step 5:
And that’s pretty much it. If you want to check your installation, use a continuity tester on the points shown in the picture. If it tests okay, I would recommend testing the wiimote with batteries in before closing the housing.
Tags: install, multicolour, smart, wiimote
Posted in Mods | 9 Comments »
Smart A Worklog
Written by eipromb on April 22, 2008 – 1:51 pm -This is not really guide but more of a worklog. After hearing and seeing complaints about the difficulty of the Multicoloured A Button Backlight mod, I decided to make it a bit easier. This is where the Smart A Button Backlight comes in, its the Multicoloured A Button Backlight at heart but powered by a microcontroller instead of the wiimote. Its interface to the wiimote would use a similar method as most of the newer modchips dubbed the ‘Quick-Solder’ method.
Choosing Components:
The mod would consist of 4 multi-coloured LEDs, appropriate current limiting resistors, a circuit board and a microcontroller to drive it. The 4 LEDs were an easy choice, I would use the same 0603 LEDs in blue, red, green and yellow at the original mod. For the resistors, it would have to be a value to keep the power consumption to a minimum, again using the same 0603 package as the LEDs. The circuit board would probably be the most expensive individual component as it is with most electronics of this nature, it’s design would have to incorporate the ‘Easy-Solder’ method of installation. And finally the microcontroller, my choice with this project was the Atmel ATTiny12. It’s a tiny and inexpensive chip at roughly $2 each, the chip also contains onboard eeprom memory, which its smaller brother the ATTiny11 doesn’t have. Why is eeprom memory important? It will be used to store the user’s preferred LED colour when the wiimote is powered down.
Schematic:
This is the schematic I came up with for this project, it’s rather simple.
Normally you would see LEDs being individually driven by a single pin on the microcontroller, the ATTiny12 has 6 I/O pins - 3 on each side. In this project however the LEDs aren’t driven by a dedicated pin, they’ve been charlieplexed to drive 4 LEDs using 3 pins. I’ve designed it this way to prevent a problem with designing the circuit board, I’ll explain it in futher detail in the board design section of this log.
Because this mod is mostly independent from the wiimote, there needed to be a way to set the colour of the LED. On the original Multicoloured A Button Backlight mod there were wires directly connected to each of the wiimote’s original LEDs, however this mod’s purpose was to avoid that problem all together. To solve this program I’ve used the PB1 pin of the microcontroller, this pin will be used as an input to set the colour of the LED and will be connected to the ‘home’ button on the wiimote. If you’re wondering why I used PB1 instead of the other 5 pins, it’s because this pin is the only pin on the ATTiny12 that can be used as an external interrupt. I’ll explain more about the interrupts, if you’re not familiar, once we get to the programming portion of the work log.
At this time the work log is only completed to this section, I’ll continue it and eventually get to the final product over the next few days. For the impatient ones, you can watch a short clip of the prototype over on youtube.
Circuit Board:
The circuit board was designed in PADS, which isn’t as popular as Eagle or OrCad but was what I was trained in and comfortable working with. There were obvious restrictions when designing the circuit board; it needed to fit in the wiimote, all the components and circuit traces had to work around the QuickSolder installation pads, and to make it DIY friendly it had to be done on a single layer.
The image above shows the layout I was able to design. Since the board would be designed single-sided, using 4 pins would have forced me to use a via (a plated hole that connects two or more copper layers) and be double-sided. Some may notice that there are 2 pins not being used, why didn’t I just use those? PB5 (pin 1) as an output can only act open-drain, meaning it is unable to directly drive an LED. PB0 (pin 5) would have worked, but would have required a second layer.
Smart A Button Firmware:
Here’s the source code for the Smart A Button’s microcontroller. It’s in assembler and was programmed in AVR studio, I realize that it may not be the neatest or most optimized code, but it is open for everyone to see and update if you desire.
If you’re not familiar with assembler, or just don’t want to bother looking over it, I’ll explain it’s function.
Upon powerup, the ucontroller looks for the pattern ‘01010101′ in the eeprom. If the ucontroller finds this code it will then retrieve the last saved setting in the eeprom and turn on the appropriate LED. If it does not find the pattern, it assumes that either this is the first time powering on, or the eeprom has been corrupted. It will then write the pattern, and a valid save setting into memory.
After powering on, and initializing the LED, the ucontroller goes into idle mode and does nothing. This is to keep the ucontroller from wasting power. A press on the ‘home’ key will activate an interrupt and awaken the ucontroller, it then waits for 1 second to pass before it allows the user to change the LED setting. It will turn off the LED as a visual indication that it is able to change settings, further presses on the ‘home’ button will cycle through the LEDs. After 2 seconds of inactivity, the ucontroller saves the setting in eeprom and returns to idle mode.
Pretty simple no? That also explains how to use it; hold the ‘home’ button down until the LED turns off, then keep pressing the ‘home’ button until the Mod has cycled to the LED you want to leave on. Leave the ‘home’ button for 2 secs and the value will be saved.
Here’s the source code for those who want to make your own, or edit it to make the mod do fancy tricks. I’ll post any user submission I get, so please send them in!
What you’ll need:
1x Blue 0603 LED
1x Red 0603 LED
1x Green 0603 LED
1x Yellow 0603 LED
3x 15ohm 0603 resistors
1x Atmel ATTiny12 SOIC8 package
1x Etched Circuit Board
If you have access to a programmer to program the ATTiny12 - the source code can be downloaded. And if you’re etching your own board - a 1:1 photopositive PDF of the board can be downloaded.That should be enough info to make your own for those who can, if you’re not able then you can get yours on the mod kits page.
Tags: backlight, multicolour, smart, wiimote
Posted in Guides | 8 Comments »










