diff --git a/examples/usb-basic.py b/examples/usb-basic.py
new file mode 100755
index 0000000000000000000000000000000000000000..df1e3125c5f4196c7b29e40ac55c43bc6587d2df
--- /dev/null
+++ b/examples/usb-basic.py
@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+#
+# Basic example for Fadecandy, talking directly to the
+# Teensy using PyUSB.
+#
+# Micah Elizabeth Scott
+# This example code is released into the public domain.
+#
+
+import usb.core
+import usb.util
+import random
+import time
+import binascii
+
+dev = usb.core.find(idVendor=0x1d50, idProduct=0x607a)
+if not dev:
+	raise IOError("No Fadecandy interfaces found")
+
+dev.set_configuration()
+
+print "Serial number: %s" % usb.util.get_string(dev, 255, dev.iSerialNumber)
+
+
+while True:
+
+	for index in range(25):
+		if index == 24:
+			# Final
+			control = index | 0x20
+		else:
+			control = index
+
+		data = chr(control) + ''.join(chr(random.randrange(256)) for i in range(63))
+		dev.write(1, data)
+		print binascii.b2a_hex(data)
+		time.sleep(0.1)
+
+	print
+	time.sleep(2)
+