diff --git a/targets/libraries/Matrix/examples/hello_matrix/hello_matrix.pde b/targets/libraries/Matrix/examples/hello_matrix/hello_matrix.pde
new file mode 100644
index 000000000..b8e19713c
--- /dev/null
+++ b/targets/libraries/Matrix/examples/hello_matrix/hello_matrix.pde
@@ -0,0 +1,39 @@
+// Hello Matrix
+// by Nicholas Zambetti <http://www.zambetti.com>
+
+// Demonstrates the use of the Matrix library
+// For MAX7219 LED Matrix Controllers
+// Blinks welcoming face on screen
+
+// Created 13 February 2006
+
+/* create a new Matrix instance
+   pin 0: data  (din)
+   pin 1: load  (load)
+   pin 2: clock (clk)
+*/
+Matrix myMatrix = Matrix(0, 2, 1);
+
+void setup()
+{
+}
+
+void loop()
+{
+  myMatrix.clear(); // clear display
+
+  delay(1000);
+
+  // turn some pixels on
+  myMatrix.write(1, 5, HIGH);
+  myMatrix.write(2, 2, HIGH);
+  myMatrix.write(2, 6, HIGH);
+  myMatrix.write(3, 6, HIGH);
+  myMatrix.write(4, 6, HIGH);
+  myMatrix.write(5, 2, HIGH);
+  myMatrix.write(5, 6, HIGH);
+  myMatrix.write(6, 5, HIGH);
+
+  delay(1000);
+}
+
diff --git a/targets/libraries/Matrix/examples/sprite_animation/sprite_animation.pde b/targets/libraries/Matrix/examples/sprite_animation/sprite_animation.pde
new file mode 100644
index 000000000..f6099fc7a
--- /dev/null
+++ b/targets/libraries/Matrix/examples/sprite_animation/sprite_animation.pde
@@ -0,0 +1,45 @@
+// Sprite Animation
+// by Nicholas Zambetti <http://www.zambetti.com>
+
+// Demonstrates the use of the Matrix & Sprite libraries
+// Displays animated waveform graphic on screen
+
+// Created 29 March 2006
+
+/* create a new Matrix instance
+   pin 0: data  (din)
+   pin 1: load  (load)
+   pin 2: clock (clk)
+*/
+Matrix myMatrix = Matrix(0, 2, 1);
+
+/* create a new Sprite instance
+   8 pixels wide, 4 pixels tall
+*/
+Sprite wave = Sprite(
+  8, 4,
+  B00011000,
+  B00100100,
+  B01000010,
+  B10000001
+);
+
+void setup()
+{ 
+}
+
+int x = 0;
+
+void loop()
+{
+  myMatrix.write(x, 2, wave);     // place sprite on screen
+  myMatrix.write(x - 8, 2, wave); // place sprite again, elsewhere on screen
+  delay(75);                      // wait a little bit
+  myMatrix.clear();               // clear the screen for next animation frame
+  if(x == 8)                      // if reached end of animation sequence
+  {
+    x = 0;                        // start from beginning
+  }
+  x++;                            // advance x coordinate to the right
+}
+