Wifi Ducky (*build for Mac Users)

Introduction: Wifi Ducky (*build for Mac Users)

About: Using Science and Technology to achieve Evil Villain status I like to build things. All kinds of things. Some involve electricity, some involve fire, some involve coding. If I can think it, I have to build ...

Take control of a computer by plugging this device into the usb port.

Parts List:

Arduino Pro Micro

D1 Mini NodeMCU

Arduino IDE

✔*Optional Micro USB Male to USB Female OTG Adapter Converter

✔ Wire

This tutorial is focused on Mac users. There are plenty of tutorials to make this and similar devices but all geared towards Windows and Linux users. So this will help Mac user get through some of the hurdles that pop up when trying to flash the software.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Grab the Software

First we'll grab the source code and bin file. We'll get this from Github user spacehuhn. Click HERE and then click the folder arduino_wifi_duck. Download the arduino_wifi_duck.ino file. This is what we will flash to our Arduino.

After your Arduino code is downloaded, click back to the Wi-Fi Ducky Git page and click on the releases tab. Download the esp8266_wifi_duck_4mb.bin link to download the bin file we will flash to our D1 Mini.

Step 2: Set Up the Arduino

Now that we have the software, lets set up our Arduino IDE to recognize the Pro Micro

Make sure You're using the latest version of the Arduino IDE.

First we'll add the spark fun IDE board manager to your Arduino IDE.

Open up Arduino, then go to the Preferences (File > Preferences). Then, towards the bottom of the window, paste this URL into the “Additional Board Manager URLs” text box:


Then we need to add it in our Boards Manager.

Go to Tools, scroll down to Board: and scroll to the top and click Boards Manager. In the search box search "Sparkfun" and Select the SparkFun AVR Boards to install. After it is done, restart your Arduino IDE.

Open the arduino_wifi_duck.ino file in your Arduino IDE, set your SparkFun Pro Micro for your board and select your port and flash the Arduino.

Step 3: Download Drivers and Software for the D1 Mini

Now you can sit the Arduino aside and grap you D1 mini.

Before we can flash this, we have to download the CH34x driver. There is a serial adapter built into the D1 that is not recognized by OS X.

Download the CH34x driver for your OS version-

El Capitan


High Sierra

After you Install the CH34x driver, plug your D1 Mini into a usb, open up Terminal, and San for port in use by typing in this command:

ls /dev/cu.* 

Find the one that says /dev/cu.wchusbserial1420 or something similar, that is the port your D1 Mini is connected to.

It's almost time to flash the D1 Mini but first we need to install a flasher. We are going to download the esptool into our Documents folder Move into your Documents directory by typing

cd Documents 

Now you can download the tool by typing:

git clone <a href="https://github.com/themadinventor/esptool.git" rel="nofollow"> https://github.com/themadinventor/esptool.git</a>

After the download is complete, move into the esptool directory by typing:

cd esptool

Install esptool by typing

sudo python setup.py install

Step 4: Flash the D1 Mini

It's time to flash the esp8266_wifi_duck_4mb.bin file to the D1 mini.

In Terminal type or paste in the command:

sudo python esptool.py --baud 115200 --port /dev/cu.wchusbserial1420 write_flash -fm dio 0x00000 ~/Desktop/PATH_TO_FILE/esp8266_wifi_duck_4mb.bin 

Make sure you fill in the port name from your scan you just did and the file path to your esp8266_wifi_duck_4mb.bin file.

Now your D1 Mini should be flashed.

A few solder connections and we're done.

I recommend testing this on a breadboard before soldering everything up.

Step 5: Wire It Up

For the connection, Connect The Arduino TX to the D1 Mini RX. Arduino RX to the D1 Mini TX. Arduino RAW to D1 Mini 5V. Arduino Ground to D1 Mini Ground. Thats it!

At this point, you can plug it in to your target computer with a USB cable or use a Micro USB Male to USB Female OTG Adapter Converter. If you use the converter, put a piece of electrical tap on the bottom to prevent it from possibly shorting out.

Step 6:

With your wifi ducky plugged in, you should now see a Wifi connection called Wifi Ducky on your mobile device. Click to connect to it. The default password for this connection is quackquack .

Once connected, open your web browser and go to 

This is the dashboard where you can run live commands or execute saved commands.

Here's a quick Ducky Script I wrote for a wifi ducky Rick Roll.

DELAY 1000


DELAY 1000

STRING chrome

DELAY 1000


DELAY 1000

STRING   http://tinyurl.com/4poyc6x

This project is provided for education only. Only replicate this at your own risk. I am not responsible if you go to jail or die!

Be the First to Share


    • Finish It Already Speed Challenge

      Finish It Already Speed Challenge
    • Arduino Contest 2020

      Arduino Contest 2020
    • First Time Author Contest

      First Time Author Contest


    DIY Hacks and How Tos

    Hello there!

    We're glad you want to share something with the Instructables community!

    And we’re here to help you out.

    Due to some recent changes on the site, we are no longer able to publish stand-alone videos and other forms of incomplete posts. In order to be published live on the site, Instructables must consist of the following things:

    - Multiple steps showing how you made your project

    - Written instructions in each step

    - Your own original images

    Beyond making your Instructable simply publishable, this guide (https://www.instructables.com/id/How-to-Create-a-Feature-Worthy-Instructable/) explains what is required to have your Instructables featured by our site editors. It’s very helpful, and definitely worth checking out.

    We would love to review your project again after you have made the necessary edits, and we will publish your project if it is eligible.

    If you have any questions, please feel free to ask right here or send us an email at service@instructables.com.


    Instructables Community Manager