This Instructable further builds upon the previous version by incorporating wireless buttons separate from the remote. A lap tray with a velcro layer was also created to allow the user to place external buttons where he or she chooses.
The wireless unit utilizes an Arduino XBEE chips to operate.
The Instructable is divided into three sections:
1. Programming the Arduino
2. Building the circuit boards for the wireless unit
3. Wiimote Modification (Receiver)
4. Lap Tray Unit (Transmitter)
Step 1: XBee Wireless Chip Configuration
• 2 Arduino Duemilanove USB Boards (Sparkfun, SKU: DEV-00666)
• 2 Arduino Xbee Empty Shields (Sparkfun, SKU: DEV-09063)
• 2 Xbee 1 mW Chip Antenna (Sparkfun, SKU: WRL-08664)
• 1 Standard USB Cable A-B (Adafruit Industries)
• X-CTU Software (www.Digi.com)
• Arduino Software (www.Arduino.cc)
• 1 9V Regulated DC Wall Power Adapter (Adafruit Industries)
• 1 9V Battery Holder with Switch and 2.1 mm Plug (Adafruit Industries)
• 1 9V Battery
The first step is to configure the Xbee chips so that they are able to communicate effectively with each other. Xbee chip configuration requires the X-CTU Software.
1. Download and install the X-CTU Software from the Digi website
2. CAREFULLY remove the microprocessor from the Arduino board. A flathead screwdriver is a good tool to use for this. Be sure not to damage the microprocessor’s pins. Note the position of the microcontroller since you will need to replace it after the Xbee module has been configured.
3. Place the Xbee module into the Proto Shield
4. Attach the Xbee module and the Proto Shield onto the Arduino board
5. Switch the two jumpers on the Proto Shield from XBEE to USB.
6. Attach the USB cable to the computer and the Arduino board. You should be able to see and LED on the Proto Shield blinking. NOTE: NEVER CONNECT THE POWER ADAPTOR TO THE ARDUINO AT THE SAME TIME AS THE USB CABLE
7. Open the X-CTU program
8. Under the PC Settings tab, select the proper COM port for your Arduino.
9. Make the Baud rate=9600, Flow Control=NONE, Data Bits=8, Parity=NONE, Stop Bits=1
10. Hit the Test/ Query button. If a message comes up that says “Communication with modem..OK” then proceed to the next step. If an error occurred then change the baud rate until you can establish communication with your Arduino.
11. Select the Modem Configuration tab and select the “Read” button. This displays the settings that are currently on the Xbee module
12. Click on PAN ID and change it to 3137. This can technically be changed to any four-digit number as long as is it the same across all Xbee modules in your network. It is recommended to change this value from the default value since you may experience from other Xbee module in the area.
13. Change the SH-Serial Number High to 13A200 (this may not be needed for setup)
14. Change the SL-Serial Number Low to 404BF3B6 (this may not be needed for setup)
15. Change the BD- Interface Data Rate to 19200. This value is for newer chips. You may also want to test higher baud rates since this increases transmission speed. Note that each Xbee module has a maximum baud rate before a buffer overflow error occurs. If you are testing higher baud rates then make sure to use the same baud rate among all Xbee modules or you will not be able to successfully communicate between modules.
16. Press the “Write” button. At the bottom of the window you should get a message that says that the write was successful.
17. You are now done with configuring the Xbee chip. Switch the two jumpers on the Xbee Shield back to XBEE. Remove the USB cable. CAREFULLY re-insert the microcontroller into the Arduino board.
The same setup above should be used to configure the other Xbee chip. The only difference is that in step 13, the SH-Serial Number High should be set to 404BF3B6, and in step 14 the SL-Serial Number Low should be set to 13A200. Steps 13 and 14 may not be needed.