Posted By: wraggster
Via liquidice
Cadex has documented his findings on the nunchuk in the wiili wiki. He is able to get some of the status from the controller expansion device . He writes:
I found the first piece of the expansion port communication puzzle, I'm able to get at least parts of the status of an attached Nunchuk controller. This is really just a first step, but by telling you what I found out, probably other people will soon find out more
The data at 0x04A4000A-0x04A4000C seems to be acceleration data (values "85 D9 61" in the hexdump above). These values seem to be similar, but still a bit different from the acceleration values provided by the Wiimote (values seem to jump when certain boundaries are reached)
Bit 0 of the byte at 0x04A4000D shows the state of the "Z"-button; the state of the "C"-button does not seem to be contained in that byte though.
The byte at 0x04A40008 seems to contain the X value of the Nunchuks joystick, 0x04A40009 the Y value
Data seems to get repeated every 0x100 bytes (see example), so probably bits 8-15 of the address (= the third byte) is ignored when reading from the Nunchuk, only addresses 0x04A40000-0x04A400FF are relevant (see example)
It seems to make a difference at which address one starts to read the data. Reading 0x10 bytes starting at 0x04A40000 will contain the interesting values, whereas reading 0x10 (or 0x0F) bytes starting at 0x04A40001 will return completely different data.
Writing an other value than 0x01 or writing to a different address in the 0x04A4004- region changes the middle part of the data being returned.
More Info