diff --git a/pi_mqtt_gpio/modules/piface2.py b/pi_mqtt_gpio/modules/piface2.py
new file mode 100644
index 0000000000000000000000000000000000000000..1cd12d8242765b9c6aac8717005ca7d6d5da0894
--- /dev/null
+++ b/pi_mqtt_gpio/modules/piface2.py
@@ -0,0 +1,29 @@
+from pi_mqtt_gpio.modules import GenericGPIO, PinDirection, PinPullup
+
+
+REQUIREMENTS = ("pifacedigitalio", "pifacecommon")
+
+DIRECTIONS = None
+PULLUPS = None
+
+
+class GPIO(GenericGPIO):
+    """
+    Implementation of GPIO class for PiFaceDigital IO board.
+    """
+    def __init__(self, config):
+        import pifacedigitalio as pfdio
+        pfdio.init()
+        self.io = pfdio
+
+    def setup_pin(self, pin, direction, pullup, pin_config):
+        pass
+
+    def set_pin(self, pin, value):
+        self.io.digital_write(pin, value)
+
+    def get_pin(self, pin):
+        return self.io.digital_read(pin)
+
+    def cleanup(self):
+        self.io.deinit()