diff --git a/l2ork_addons/K12/icons/wiimote_axes.png b/l2ork_addons/K12/icons/wiimote_axes.png
new file mode 100644
index 0000000000000000000000000000000000000000..971d53e90bde441125a94016cfca5db6f76e637f
Binary files /dev/null and b/l2ork_addons/K12/icons/wiimote_axes.png differ
diff --git a/l2ork_addons/K12/objects/wii_nunchuk_buttons.png b/l2ork_addons/K12/objects/wii_nunchuk_buttons.png
index f075adc6d27e72c9d3401ecade8316d25164dcd3..fd625e5d563ec3b41e779a2cb5a9c5534777e347 100644
Binary files a/l2ork_addons/K12/objects/wii_nunchuk_buttons.png and b/l2ork_addons/K12/objects/wii_nunchuk_buttons.png differ
diff --git a/l2ork_addons/K12/objects/wii_nunchuk_buttons_C.png b/l2ork_addons/K12/objects/wii_nunchuk_buttons_C.png
index f7dbdf5fb68057a336e0a51a0459b4ca08ee60d3..d23eb902569c06dcddfabb1d54d3a86d48f12798 100644
Binary files a/l2ork_addons/K12/objects/wii_nunchuk_buttons_C.png and b/l2ork_addons/K12/objects/wii_nunchuk_buttons_C.png differ
diff --git a/l2ork_addons/K12/objects/wii_nunchuk_buttons_Z.png b/l2ork_addons/K12/objects/wii_nunchuk_buttons_Z.png
index a18317a8046e9d87b817a2114d76186c01dfb623..57cea3508d56dba97147ace8b91cd06c11ea9f46 100644
Binary files a/l2ork_addons/K12/objects/wii_nunchuk_buttons_Z.png and b/l2ork_addons/K12/objects/wii_nunchuk_buttons_Z.png differ
diff --git a/l2ork_addons/K12/wii_accelerometer-help.pd b/l2ork_addons/K12/wii_accelerometer-help.pd
new file mode 100644
index 0000000000000000000000000000000000000000..55b703669fbaa247a7a703e46ef4e2dbe8c8b457
--- /dev/null
+++ b/l2ork_addons/K12/wii_accelerometer-help.pd
@@ -0,0 +1,31 @@
+#N canvas 407 89 508 563 10;
+#X obj 18 133 cnv 15 478 156 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#N canvas 507 463 450 134 META 0;
+#X text 8 43 INLET_0 Connect the Wii Connect object here;
+#X text 7 68 OUTLET_0 Outputs values between -1 and 1 for the selected
+axis;
+#X text 8 9 DESCRIPTION Monitors Wiimote's x-axis \, y \, or z-axis
+acceleration;
+#X restore 456 499 pd META;
+#X obj 24 21 K12/wii_connect;
+#X obj 8 -6 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
+0;
+#X obj 24 318 K12/math_number;
+#X obj 251 -30 preset_hub k12 %hidden% %node% 2 5 14 %node% 2 5 28
+%node% 2 3 7 %node% 2 8 1 %node% 2 1 33 %node% 2 1 34 %node% 2 6 7
+%node% 2 7 10 %node% 2 7 6 %node% 2 7 6 %node% 2 4 7 %node% 2 8 6;
+#X obj 8 -35 cnv 15 501 28 empty empty Wii/Accelerometer 5 14 0 20
+-139274 -262144 0;
+#X obj 478 -2 ggee/image @pd_extra/K12/icons/l2ork.png 0;
+#X obj 24 139 K12/wii_accelerometer;
+#X text 123 146 The Wii Accelerometer object takes one input from the
+Wii Connect object. It can monitor one of the three axes (X \, Y \,
+and Z) of the Wiimote. It outputs values between -1 and 1 reflecting
+selected axis' acceleration and direction. Its output can be used in
+data calculations or to drive an instrument (e.g. control how loud
+it is based on wiimote motion.Click on one of the three buttons to
+select x \, y \, or z axis as your source.;
+#X obj 282 409 image @pd_extra/K12/icons/wiimote_axes.png 0;
+#X connect 2 0 8 0;
+#X connect 8 0 4 0;
diff --git a/l2ork_addons/K12/wii_accelerometer.pd b/l2ork_addons/K12/wii_accelerometer.pd
index 8ecc29f61c78fb1b70e5b75f842f95415367f398..a233d372a03b91edc95f0b87b51634336af85623 100755
--- a/l2ork_addons/K12/wii_accelerometer.pd
+++ b/l2ork_addons/K12/wii_accelerometer.pd
@@ -1,4 +1,4 @@
-#N canvas 693 136 522 373 10;
+#N canvas 693 136 537 383 10;
 #X obj 46 268 outlet;
 #X obj 65 -75 inlet;
 #X obj 65 -53 route acceleration;
diff --git a/l2ork_addons/K12/wii_connect.pd b/l2ork_addons/K12/wii_connect.pd
index 3b03fde2d7dcd068482cc439aadb939660a96c89..b0353b8545edb4215087b9063122cbf36f0ddbc0 100755
--- a/l2ork_addons/K12/wii_connect.pd
+++ b/l2ork_addons/K12/wii_connect.pd
@@ -3,7 +3,7 @@
 #X obj 337 78 bng 76 250 50 0 empty connect_r empty 17 7 0 10 -258699
 -1 -262144;
 #X obj 337 333 outlet;
-#N canvas 372 128 547 266 running_the_wiimote 0;
+#N canvas 372 128 648 266 running_the_wiimote 0;
 #X obj 20 8 inlet;
 #X obj 20 238 outlet;
 #X msg 20 113 discover;
@@ -13,26 +13,26 @@
 #X msg 262 84 reportAcceleration \$1;
 #X obj 262 57 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
 1;
-#X msg 408 84 reportExpansion \$1;
 #X obj 408 59 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
 1;
-#X obj 227 6 inlet;
+#X obj 227 8 inlet;
 #X text 281 5 On connection \, start these;
 #X msg 94 113 disconnect;
-#X obj 94 11 inlet;
+#X obj 94 8 inlet;
+#X msg 408 84 reportExpansion \$1 \, togglePassthrough \$1;
 #X connect 0 0 2 0;
 #X connect 2 0 1 0;
 #X connect 3 0 1 0;
 #X connect 4 0 3 0;
 #X connect 5 0 1 0;
 #X connect 6 0 5 0;
-#X connect 7 0 1 0;
+#X connect 7 0 12 0;
+#X connect 8 0 4 0;
+#X connect 8 0 6 0;
 #X connect 8 0 7 0;
-#X connect 9 0 4 0;
-#X connect 9 0 6 0;
-#X connect 9 0 8 0;
-#X connect 11 0 1 0;
-#X connect 12 0 11 0;
+#X connect 10 0 1 0;
+#X connect 11 0 10 0;
+#X connect 12 0 1 0;
 #X restore 337 289 pd running_the_wiimote;
 #X obj 337 267 delay 1000;
 #X obj 375 103 ggee/image @pd_extra/K12/objects/wii_connect_off.png
diff --git a/l2ork_addons/K12/wii_nunchuk_accelerometer-help.pd b/l2ork_addons/K12/wii_nunchuk_accelerometer-help.pd
new file mode 100644
index 0000000000000000000000000000000000000000..208fddebf9ab6f7ece6898fd153cd3e65e134ae5
--- /dev/null
+++ b/l2ork_addons/K12/wii_nunchuk_accelerometer-help.pd
@@ -0,0 +1,32 @@
+#N canvas 401 100 508 564 10;
+#X obj 18 133 cnv 15 478 156 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#N canvas 507 463 450 134 META 0;
+#X text 8 43 INLET_0 Connect the Wii Connect object here;
+#X text 7 68 OUTLET_0 Outputs values between -1 and 1 for the selected
+axis;
+#X text 8 9 DESCRIPTION Monitors Nunchuk x-axis \, y \, or z-axis acceleration
+(requires nunchuk extension);
+#X restore 453 500 pd META;
+#X obj 24 21 K12/wii_connect;
+#X obj 8 -6 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
+0;
+#X obj 24 318 K12/math_number;
+#X obj 251 -30 preset_hub k12 %hidden% %node% 2 5 14 %node% 2 5 28
+%node% 2 4 7 %node% 2 8 1 %node% 2 1 33 %node% 2 1 34 %node% 2 6 7
+%node% 2 7 10 %node% 2 7 6 %node% 2 7 6 %node% 2 9 5 %node% 2 8 5;
+#X obj 8 -35 cnv 15 501 28 empty empty Wii/NunchukAccelerometer 5 14
+0 20 -139274 -262144 0;
+#X obj 478 -2 ggee/image @pd_extra/K12/icons/l2ork.png 0;
+#X obj 24 140 K12/wii_nunchuk_accelerometer;
+#X text 123 146 The Wii Nunchuk Accelerometer object takes one input
+from the Wii Connect object (REQUIRES NUNCHUK EXTENSION). It can monitor
+one of the three axes (X \, Y \, and Z) of the Nunchuk. It outputs
+values between -1 and 1 reflecting selected axis' acceleration and
+direction. Its output can be used in data calculations or to drive
+an instrument (e.g. control how loud it is based on wiimote motion.Click
+on one of the three buttons to select x \, y \, or z axis as your source.
+;
+#X obj 278 409 image @pd_extra/K12/icons/wiimote_axes.png 0;
+#X connect 2 0 8 0;
+#X connect 8 0 4 0;
diff --git a/l2ork_addons/K12/wii_nunchuk_buttons-help.pd b/l2ork_addons/K12/wii_nunchuk_buttons-help.pd
new file mode 100644
index 0000000000000000000000000000000000000000..3c2400e5f54810a1df1b5b5268c3ba7c1a4bd45c
--- /dev/null
+++ b/l2ork_addons/K12/wii_nunchuk_buttons-help.pd
@@ -0,0 +1,30 @@
+#N canvas 407 89 508 398 10;
+#X obj 18 133 cnv 15 479 121 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#N canvas 507 463 450 120 META 0;
+#X text 8 43 INLET_0 Connect the Wii Connect object here;
+#X text 5 10 DESCRIPTION Monitors nunchuk button activity (requires
+nunchuk);
+#X text 7 68 OUTLET_0 Outputs 1 when selected button is pressed and
+0 when it is released;
+#X restore 455 333 pd META;
+#X obj 24 21 K12/wii_connect;
+#X obj 8 -6 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
+0;
+#X obj 24 273 K12/math_number;
+#X obj 251 -30 preset_hub k12 %hidden% %node% 2 5 14 %node% 2 5 28
+%node% 2 4 7 %node% 2 8 1 %node% 2 1 33 %node% 2 1 34 %node% 2 6 7
+%node% 2 8 10 %node% 2 9 7;
+#X obj 8 -35 cnv 15 501 28 empty empty Wii/NunchukButtons 5 14 0 20
+-139274 -262144 0;
+#X obj 478 -2 ggee/image @pd_extra/K12/icons/l2ork.png 0;
+#X obj 24 141 K12/wii_nunchuk_buttons;
+#X text 123 140 The Wii Nunchuk Buttons takes input from the Wii Connect
+object and outputs two values. It REQUIRES NUNCHUK EXTENSION. Like
+Wii Buttons object \, click on the button you wish to monitor and whenever
+the said button is pressed \, the object will output a 1 Whenever the
+buttons is released \, it will output a 0 Object's output can be used
+in data calculations \, typically to initiate or stop a specific event.
+;
+#X connect 2 0 8 0;
+#X connect 8 0 4 0;
diff --git a/l2ork_addons/K12/wii_nunchuk_buttons.pd b/l2ork_addons/K12/wii_nunchuk_buttons.pd
index 01f8c328a1c9c3b8fd8b75d67323cac901039e5d..98041701ca132f675758d6e00bf7320bd84139dd 100644
--- a/l2ork_addons/K12/wii_nunchuk_buttons.pd
+++ b/l2ork_addons/K12/wii_nunchuk_buttons.pd
@@ -18,7 +18,7 @@
 #X obj 240 -25 r blah;
 #X obj 65 -33 route button;
 #X obj 65 229 > 0;
-#X obj 262 116 ggee/image @pd_extra/K12/objects/wii_nunchuk_buttons.png
+#X obj 261 106 ggee/image @pd_extra/K12/objects/wii_nunchuk_buttons.png
 1;
 #X connect 0 0 9 0;
 #X connect 0 0 7 0;
diff --git a/l2ork_addons/K12/wii_nunchuk_stick-help.pd b/l2ork_addons/K12/wii_nunchuk_stick-help.pd
new file mode 100644
index 0000000000000000000000000000000000000000..a23d03deac3311410e5a3b500c1249f159eea324
--- /dev/null
+++ b/l2ork_addons/K12/wii_nunchuk_stick-help.pd
@@ -0,0 +1,34 @@
+#N canvas 407 89 508 398 10;
+#X obj 18 133 cnv 15 477 116 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#N canvas 507 463 450 120 META 0;
+#X text 8 43 INLET_0 Connect the Wii Connect object here;
+#X text 7 68 OUTLET_0 Outputs values between -1 and 1 for the X axis
+;
+#X text 7 88 OUTLET_1 Outputs values between -1 and 1 for the Y axis
+;
+#X text 5 10 DESCRIPTION Monitors nunchuk stick X and Y axis position
+(requires nunchuk);
+#X restore 451 330 pd META;
+#X obj 24 21 K12/wii_connect;
+#X obj 8 -6 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
+0;
+#X obj 24 273 K12/math_number;
+#X obj 251 -30 preset_hub k12 %hidden% %node% 2 5 14 %node% 2 5 28
+%node% 2 4 7 %node% 2 8 1 %node% 2 1 33 %node% 2 1 34 %node% 2 6 7
+%node% 2 8 10 %node% 2 9 7;
+#X obj 8 -35 cnv 15 501 28 empty empty Wii/NunchukStick 5 14 0 20 -139274
+-262144 0;
+#X obj 478 -2 ggee/image @pd_extra/K12/icons/l2ork.png 0;
+#X obj 24 139 K12/wii_nunchuk_stick;
+#X obj 118 273 K12/math_number;
+#X text 123 146 The Wii Nunchuk Stick takes input from the Wii Connect
+object and outputs two values. It REQUIRES NUNCHUK EXTENSION. The first
+is the X axis (horizontal) of the joystick with a range of -1 to 1
+\, an the second one is the Y axis (vertical) with the same range of
+-1 and 1 Its outputs can be used in data calculations or to drive an
+instrumentt (e.g. control pitch or loudness using stick position).
+;
+#X connect 2 0 8 0;
+#X connect 8 0 4 0;
+#X connect 8 1 9 0;
diff --git a/l2ork_addons/K12/wii_speed-help.pd b/l2ork_addons/K12/wii_speed-help.pd
index 6aafc2c0192a648bec6c7a28954915d8a8802021..764e91c929771bd4175acaa7286ec713b659cd33 100755
--- a/l2ork_addons/K12/wii_speed-help.pd
+++ b/l2ork_addons/K12/wii_speed-help.pd
@@ -1,32 +1,34 @@
-#N canvas 363 24 502 429 10;
+#N canvas 363 24 508 448 10;
 #X obj 248 -25 preset_hub k12 %hidden%;
 #X obj 17 -1 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
 0;
-#X obj 26 136 cnv 15 481 210 empty empty empty 20 12 0 14 -228856 -66577
+#X obj 26 136 cnv 15 483 235 empty empty empty 20 12 0 14 -228856 -66577
 0;
 #X obj 33 142 K12/wii_speed;
-#N canvas 402 50 450 514 META 0;
-#X text 12 37 INLET_0 Attach the Wii Connect object here.;
+#N canvas 402 50 450 119 META 0;
 #X text 12 7 DESCRIPTION This tells you how fast the Wiimote is moving
-;
-#X text 12 64 OUTLET_0 Connect to an instrument to drive its loudness
-or to some other mathematical object that will modify its value;
-#X restore 464 374 pd META;
+(requires motion plus extension);
+#X text 12 37 INLET_0 Attach the Wii Connect object here;
+#X text 12 54 OUTLET_0 Outputs values between -1 and 1 Connect to an
+instrument to drive its loudness or to some other mathematical object
+that will modify its value;
+#X restore 464 388 pd META;
 #X obj 17 -30 cnv 15 501 28 empty empty Wii/Speed 5 14 0 20 -139274
 -262144 0;
-#X obj 488 1 ggee/image @pd_extra/K12/icons/l2ork.png;
+#X obj 488 1 ggee/image @pd_extra/K12/icons/l2ork.png 0;
 #X obj 33 24 K12/wii_connect;
-#X text 143 141 Wii Speed registers the motion of the Wiimote via the
-Wii Motion Plus Attachment. It takes one input from the Wii Connect
-object and outputs values between -1 and 1 that are displayed on the
-object and reflect the speed and motion direction. You can connect
-it to other mathematical objects or directly to a sound-making device
-to drive its loudness or some other parameter.;
-#X text 143 242 Since Wii Motion Plus by design requires calibration
-\, in the case the initial calibration is incorrect (e.g. the output
-reads something else than zero even though you are not moving the Wiimote)
-\, you canre-calibrate the object by laying wiimote flat and while
-keeping it still click anywhere on the object. The value should now
-read zero and you can pick up the Wiimote and resume playing with it.
-;
+#X text 143 141 Wii Speed registers the sum of all motion (x \, roll
+\, and y axes) of the Wiimote via the Wii Motion Plus Attachment (MOTION
+PLUS REQUIRED). It takes one input from the Wii Connect object and
+outputs values between -1 and 1 that are displayed on the object and
+reflect the speed and motion direction. You can connect it to other
+data objects or directly to a sound-making device to drive its loudness
+or some other parameter.;
+#X text 143 253 Since Wii Motion Plus by design requires calibration
+\, the object tries to automatically calibrate itself as soon as it
+receives data from the Wii Connect object. In case the object outputs
+value other than 0 while Wiimote is still \, it may need to be recalibrated.
+You can re-calibrate the object by laying wiimote flat and while keeping
+it still click anywhere on the object. The value should now read zero
+and you can pick up the Wiimote and resume playing with it.;
 #X connect 7 0 3 0;
diff --git a/l2ork_addons/K12/wii_speed_xry-help.pd b/l2ork_addons/K12/wii_speed_xry-help.pd
new file mode 100644
index 0000000000000000000000000000000000000000..c8920d5050829af0c3cd8a56f4ed7d6e88b0fc6a
--- /dev/null
+++ b/l2ork_addons/K12/wii_speed_xry-help.pd
@@ -0,0 +1,36 @@
+#N canvas 407 89 508 541 10;
+#X obj 18 133 cnv 15 480 262 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#N canvas 507 463 450 134 META 0;
+#X text 8 43 INLET_0 Connect the Wii Connect object here;
+#X text 7 68 OUTLET_0 Outputs values between -1 and 1 for the selected
+axis;
+#X text 8 9 DESCRIPTION Monitors Motion Plus x-axis \, y \, or z-axis
+acceleration;
+#X restore 451 472 pd META;
+#X obj 24 21 K12/wii_connect;
+#X obj 8 -6 cnv 3 501 3 empty empty empty 5 14 0 20 -260097 -191407
+0;
+#X obj 24 418 K12/math_number;
+#X obj 251 -30 preset_hub k12 %hidden% %node% 2 5 14 %node% 2 5 28
+%node% 2 4 7 %node% 2 8 1 %node% 2 1 33 %node% 2 1 34 %node% 2 6 7
+%node% 2 7 10 %node% 2 7 6 %node% 2 8 10;
+#X obj 8 -35 cnv 15 501 28 empty empty Wii/SpeedXRY 5 14 0 20 -139274
+-262144 0;
+#X obj 478 -2 ggee/image @pd_extra/K12/icons/l2ork.png 0;
+#X obj 24 139 K12/wii_speed_xry;
+#X text 123 146 The Wii Speed XRY (X axis \, Roll \, Y-axis) object
+takes one input from the Wii Connect object. It calculates when the
+Wiimote's angular speed. This object REQUIRES MOTION PLUS to work.
+It outputs values between -1 and 1 reflecting speed and direction.
+Its output can be used in data calculations or to drive an instrumentt
+(e.g. control how loud it is based on wiimote motion.Click on one
+of the three buttons to select x \, roll \, or y axis as your source
+or click anywhere else inside the object to recalibrate motion plus.The
+object will automatically calibrate itself as soon as it receives first
+data from the wiimote object. In case the object outputs value other
+than 0 while Wiimote is still \, it may need to be recalibrated. To
+manually recalibrate motion plus \, place wiimote on a flat surface
+\, make sure it is still and click on the object.;
+#X connect 2 0 8 0;
+#X connect 8 0 4 0;
diff --git a/l2ork_addons/K12/wii_speed_xry.pd b/l2ork_addons/K12/wii_speed_xry.pd
index f2ed3e634e612769a027481fa6c2a03ca2244cd3..0aead4c01e47c05ebfc51606e62aad94890b8723 100644
--- a/l2ork_addons/K12/wii_speed_xry.pd
+++ b/l2ork_addons/K12/wii_speed_xry.pd
@@ -1,4 +1,4 @@
-#N canvas 519 50 431 501 10;
+#N canvas 519 50 431 363 10;
 #X obj 120 132 bng 82 250 50 0 empty empty empty 17 7 0 10 -262144
 -1 -1;
 #X obj 3 198 inlet;
@@ -10,9 +10,9 @@
 #X obj 15 238 f;
 #X obj 79 240 f;
 #X obj 15 271 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 11
--262144 -1 -1 7874 256 0;
+-262144 -1 -1 0 256 0;
 #X obj 79 271 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 11
--262144 -1 -1 7887 256 0;
+-262144 -1 -1 0 256 0;
 #X obj 15 308 outlet;
 #X obj 79 307 outlet;
 #X obj 277 305 outlet;
@@ -29,7 +29,7 @@
 #X obj 23 211 t b b b;
 #X obj 144 240 f;
 #X obj 144 271 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 11
--262144 -1 -1 7687 256 0;
+-262144 -1 -1 0 256 0;
 #X obj 144 307 outlet;
 #X obj 386 305 outlet;
 #X connect 0 0 1 0;
@@ -94,10 +94,11 @@
 #X connect 18 0 7 0;
 #X connect 19 0 18 0;
 #X restore 3 299 pd motionplus_logic;
-#X obj 3 529 outlet;
+#X obj 3 388 outlet;
 #X obj 155 62 loadbang;
 #X msg 3 322 \$1 50;
-#X obj 162 159 ggee/image @pd_extra/K12/objects/wii_speed.png 1;
+#X obj 162 159 ggee/image @pd_extra/K12/objects/wii_speed_xry.png 1
+;
 #X obj 3 345 line 0 25;
 #X msg 155 85 open @pd_extra/K12/objects/wii_speed_xry.png;
 #X obj 210 127 preset_node k12;