diff --git a/scripts/support/dfuutil.sh b/scripts/support/dfuutil.sh
new file mode 100755
index 0000000..feac1a8
--- /dev/null
+++ b/scripts/support/dfuutil.sh
@@ -0,0 +1,64 @@
+#!/bin/sh
+
+# This script is inspired from ./openocd.sh, and from both flash_dfu.sh and
+# fwversion.sh, included in arduino101-factory_recovery-flashpack.tar.bz2,
+# which is available from https://downloadcenter.intel.com/download/25470
+
+DFUUTIL_EXE=${DFUUTIL:-dfu-util}
+DFUUTIL_CMD="$DFUUTIL_EXE -d,$DFUUTIL_PID"
+
+test_exe() {
+    if ! which $DFUUTIL_EXE >/dev/null 2>&1; then
+        echo "Error: Unable to locate dfu-util executable: $DFUUTIL_EXE"
+        exit 1
+    fi
+}
+
+test_img() {
+    if [ ! -f "$DFUUTIL_IMG" ]; then
+        echo "Error: Unable to locate binary image: $DFUUTIL_IMG"
+        exit 1
+    fi
+}
+
+find_dfu() {
+    $DFUUTIL_CMD -l |grep "$DFUUTIL_ALT" >/dev/null 2>&1
+}
+
+do_flash() {
+    test_exe
+    test_img
+
+    # Wait until DFU device is ready
+    reset_dfu=0
+    if ! find_dfu; then
+        reset_dfu=1
+        echo "Please reset your board to switch to DFU mode..."
+        until find_dfu; do
+            sleep 0.1
+        done
+    fi
+
+    # Flash DFU device with specified image
+    # Do NOT reset with -R, to avoid random 'error resetting after download'
+    $DFUUTIL_CMD -a $DFUUTIL_ALT -D $DFUUTIL_IMG
+    ok=$?
+    if [ $ok -eq 0 -a $reset_dfu -eq 1 ]; then
+        echo "Now reset your board again to switch back to runtime mode."
+    fi
+    return $ok
+}
+
+CMD=$1
+shift
+
+case "$CMD" in
+  flash)
+    do_flash "$@"
+    ;;
+  *)
+    echo "Unsupported command '$CMD'"
+    exit 1
+    ;;
+esac
+
