Wii Remote Zibo Zou, Daniel Maertens, Steven Duan 1

advertisement
Wii Remote
Zibo Zou, Daniel Maertens, Steven Duan
1
What is a Wiimote?
- The Wii is a video game console made by Nintendo at around 2006.It was the first
console to use an interactive remote
- A player could use motions and gestures in addition to buttons to play games
- The remote is a light rectangular shaped controller that contains a combination of
built-in accelerometers and infrared detection.
- Expanded to the remote is a “nunchuk”, which holds an accelerometer and a
traditional analog stick.
2
http://brettrolfe.com/wii-mote-autops/
3
Outputs
- Sound
- Wii Remote can make its own sound
- Can be calibrated with Wii sound to make a 3D sound effect
- Example: shooting bow and arrow
- Rumble
- Vibrates the remote for feedback during games
- Implemented as small motor attached to off
center weight
http://wiibrew.org/wiki/File:Wii_Remote_Rumble.jpg
4
Accelerometer
- ADXL330 Accelerometer by Analog Devices (in the Wiimote)
- Used to send acceleration on x, y, z axis
- Mostly used during games that require movement.
- LIS3L02 (in the Nunchuk)
http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL330.pdf
http://www.adrirobot.it/iniziale.htm
5
Sensor Bar
- Emitter for IR light
- 10 IR LEDs
http://wiibrew.org/wiki/File:Wii-Remote-Camera.jpg
- Used to orient Wiimote and to calculate the rotation of the Wiimote
- Does not actually communicate with the Wii or the Wiimote
- The IR Camera in the Wiimote is the PixArt Multi Object Tracking, responsible
for sensing motion from the remote.
https://farm6.staticflickr.com/5128/5337604469_90256fefe4_z.jpg
http://www.amazon.com/s?ie=UTF8&page=1&rh=i%3
Aaps%2Ck%3Anintendo%20wii%20sensor%20bar
6
Bluetooth Communication
- Broadcom BCM2042 (Bluetooth 2.0)
- Used to transmit data from remote to Wii
- Data sent
- Position (calculated from IR sensor),
- Accelerometer XYZ,
http://wiibrew.org/wiki/File:Wii_Remote_Broadcom.jpg
- Buttons (A, B, power, etc)
- Optional Data from add-ons / additional remotes
- Nunchuck: analog joystick, accelerometer
- Wii MotionPlus: tuning-fork gyroscope, single axis gyroscope
7
Data Reporting
- The Bluetooth establishes a HiD (Human Interface Device) connection with the
Wiimote and its host.
- A report can be thought of a network port assigned to a particular service.
- A HiD descriptor block is used, which holds an enumeration of reports that the
Wiimote can understand.
- An “Input” report is sent by Wiimote to the host and is prepended by 0xA1
- An “Output” report is sent by host to the Wiimote and is prepended by 0xA2
8
Generalized Example of Data Reporting
Request Core Buttons
Request Wiimote movement
Request IR Camera Position
Return Core Button Data
Return Accelerometer Data
Return IR Camera Position
From Address:
0x33
9
10
http://wiibrew.org/wiki/Wiimote#HID_Interface
Peripherals: 6-Pin Expansion Controllers
- The Wiimote has a series of 6-pin expansion port
connected at the bottom of the Wiimote.
- The 6-pin expansion ports are communicated through
I2C serial connection.
- The communication is encrypted, but people have found
ways to decrypt it.
- Examples:
- Nunchuck
- Wii MotionPlus Gyroscope
- Classic Controller
- Guitar Hero 3 Guitar
http://wiibrew.org/wiki/Wiimote/Extension_Controllers
- Wii Balance Board
11
Nunchuk
- Specifically, the nunchuk has
- 6 types of data readable at register address
0xA40008
- C and Z buttons are membrane switches
- Joystick is an axial potentiometer, 30K ohms
- Different accelerometer from the Wiimote
- LIS3L02 Accelerometer
- Different microcontroller from the Wiimote
http://www.gaminggenerations.com/store/im
ages/wiinunchuck1.jpg
http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck
12
https://allaboutmcu.wordpress.com/2012/11/05/interfacing-a-wii-nunchuck-with-a-dspic30f4011-using-i2cabout-time-ps-this-is-adraft/
13
Wii MotionPlus
- Add on to the normal Wii remote that adds additional functionality
- Biggest features include adding 2 gyroscopes
- Pass through external extension connector
- Allows use of other add ons at the same time
https://en.wikipedia.org/wiki/Wii_MotionPlus#/med
ia/File:Wiimote-with-Motionplus-Attach.jpg
14
Gyroscope
- Used in the Wii MotionPlus to add additional functionality
- Allows remote to capture complex motion more accurately
- Nintendo: “Enables actions to be rendered identically on the screen in real
time”
- Actually includes 2 different types of gyroscopes
- Dual axis Tuning fork gyroscope (InvenSense IDG-600)
- Measures pitch and roll
- Single axis gyroscope (EPSON TOYOCOM X3500W)
- Measures yaw
http://www.gamespot.com/forums/system-wars-314159282/wow-3ds- 15
will-have-a-software-installer-27349754/?page=2/
http://www.rcgroups.com/forums/showthread.php?t=1335765
16
Example of Utilizing the Wii Motion Plus
https://youtu.be/uUWqBkQOr4U?t=1m1s
17
DEMONSTRATION
18
QUESTIONS???
19
References
All the References are in the notes. The below are just the important links
http://wiibrew.org/wiki/Wiimote#0x22:_Acknowledge_output_report.2C_return_fu
nction_result
https://www.youtube.com/watch?v=ETAKfSkec6A
http://wiibrew.org/wiki/Wiimote
20
Download