How to upgrade the xTool D1 firmware

Article author

NOTE: Below is the firmware upgrade instructions for xTool D1, NOT for D1 Pro. Please make sure it is D1 of yours and proceed.

(For D1 Pro, you may upgrade firmware on XCS or follow the instructions via the link below:




For Windows OS, upgrade firmware with xTool D1 Firmware Tool

1. Download xTool D1 Firmware Tool


2. Install the exe file and then open it.

3.Click the green button to upload the firmware. (PS: Use USB cable to connect the machine and computer.)


4.Select bin file then click open.



5. Click start upgrade button.

After the upgrade process is complete ,System will prompt PASS.




For macOS, upgrade firmware with upgrade tool

1. Download the upgrade package file and unzip it.


2. Open the MAC console and install the Python environment.
a) mac comes with pyhon environment, so there is no need to install python, skip this step.
b) Install pip manually.
Use curl to download the script, open a command line terminal in the mac, and enter the following command,Then Click Enter

curl -o


Execute the script.Then click Enter, If system prompt Password ,Please just input your passwod and click Enter

sudo python3


If  red character prompt appears as above, please ignore

Wait for the execution to finish, then pip will be installed successfully.

3. Get the esptool firmware burning tool. Use the pip installed in the previous step to install esptool
pip install esptool,

pip install esptool

4. Connect the machine and power it up. 
5. Check the corresponding port number of the machine under Mac: PORT_D1.
You can use laserbasic to check the corresponding port number. Note that the port number format under

Mac is: /dev/tty.* or /dev/cu.*

6. Burn D1 firmware.


The PORT_D1 is the usb port on the user's computer. 

FILE_PATH is the firmware file File path, i.e. the .bin file in the upgrade package,

Please copy the full path of the file directly, and the burn command is:



sudo python --chip esp32 --port PORT_D1 write_flash -z 0x10000 FILE_PATH
  • Red characters are fixed,
  • green characters need to be switched according to the USB port and firmware path.


Such as 


My MAC USB port : /dev/tty.serial-2120

File Path: User/Apple/Downloads/D1_upgrade_mac/D1_firmware_V1.1. 0B3_20211124.bin

Input below command and click enter

./esptool -p /dev/tty.serial-2120 -b 512000 --connect-attempts=15 write_flash 0x10000 User/Apple/Downloads/D1_upgrade_mac/D1_firmware_V1.1. 0B3_20211124.bin


Was this article helpful?

1 out of 6 found this helpful

Contact Us



  • Comment author
    Ryan B

    The download firmware tool link is not an .exe file but rather a .rar file. Is there anyway you guys can resolve this so we can update the firmware? Thank you

  • Comment author
    Keith Samuels
    • Edited

    Mac directions need LOTS of updating. No way any normal user would figure that out with the latest OSX. Python is now Python3 so all your python commands fail. Most of the sideloaded scripts are depreciated and have warnings. If the path to your firmware file has a space in the path name it fails. Since you never added esptool to the path you must first change directory to where you extracted the rar too. You tell people to find the USB port in Laserbox basic, but fail to mention you have to quit laserbox or it will keep the USB tied up and the commands will fail. 

    The command shown in the screenshot at the end seems close to correct but the text above the screenshot is all wrong.


  • Comment author
    chris randazzo


    Anyway you can help me out with this. You seem to know what to do to fix this.

    D1 Pro tells me my firmware version is 0.0. Trying to do any of what is listed above doesn't work. I ended up installing Python3 from Python's site and was able to, I THINK get esptool installed but I'm not sure. Any help is appreciated.

  • Comment author
    Keith Samuels

    I'm not sure,  the Pro is a different board from my original D1. But the firmware can't be 0.0
    I think you have some other issue going on there. 

  • Comment author
    Keith Samuels
    1. Download and extract D1_upgrade-mac.rar
    2. Open Terminal app on your Mac.
    3. Copy each of the commands below and paste in to terminal, one at a time, and press enter. If you are asked for a password, you need to enter the password of the Admin user of your machine. 
    • curl -o
    • sudo python3
    • pip install esptool
  • Change directory to where you extracted the firmware file. For me, I extracted it to the desktop so the following commands put you in that folder.
    • cd desktop
    • cd D1_upgrade-mac
  • Run the LaserBox Basic software or for Pro run xTool Creative Space.
  • Attach to laser via USB
  • When the software attaches you will see the name of your USB port, write that down, you need it. Changes every time you plug it in so you have to check every time.
  • Mine was  /dev/tty.usbserial-1440
  • Quit and exit LaserBox or Creative Space to release the USB port.
  • Edit the below command to reflect your setup.
    • Replace  “YOUR_PORT_HERE” to the one discovered above.
    • Replace “YOUR_FIRMWARE_FULL_PATH_HERE” with the path and filename of the firmware you are sending.
    sudo python3 --chip esp32 --port YOUR_PORT_HERE write_flash -z 0x10000 YOUR_FIRMWARE_FULL_PATH_HERE

    Use this as an example ONLY (do not use this on your system, it's for mine):
    sudo python3 --chip esp32 --port /dev/tty.usbserial-1460 write_flash -z 0x10000 /Users/shared/D1_firmware_V40.30.005.01B2_20220524.bin

  • Comment author
    chris randazzo

    Thanks for all the info. Got through everything up until it wanted to install the firmware. After adding the last line of code (

    sudo python3 --chip esp32 --port /dev/tty.usbserial-14140 write_flash -z 0x10000 /Users/Shared/D1_firmware_V40.30.005.01B2_20220524.bin) I got an error of INVALID HEAD OF PACKET (0xDA)

    Tried again several times and got an error of POSSIBLE SERIAL NOISE OR CORRUPTION.

    I'll pass this onto support ... but this is getting to be a bummer. I couldn't wait for this thing to show up and now I can't use it.

    Thanks for your help. I wouldn't have gotten this far without it!

  • Comment author
    Keith Samuels

    Try a different USB cable if you have one.

    Turn off all other programs, disconnect from wifi, stop any anti-virus, or any programs that might be trying to watch the USB port.

    Try a different port on the Mac

    Looks like you are using a USB-C to USB-A Adapter? The adapter could be flaky.

  • Comment author

    This completely sucks..  I don't want to be screwing around with python and terminal commands and wasting hours.  I may just pack the stupid thing up and send it back.  I can't even unpack the rar file, mac wants to open it with video editing software.   Arggghhh...

  • Comment author
    chris randazzo

    Well after Keith and others gave me ideas to try, I finally did something I thought would be the last resort to get my D1 Pro to upgrade the firmware... I hooked it up to wifi and the upgrade happened without an incident. I tried usb but it wouldn't work. Even tried an apple usb-c to usb adapter and it still didn't work. Hope this helps, and thanks Keith for the help!

  • Comment author
    Keith Samuels

    Wifi update is only for the pro, the above directions are all for non PRO.

    For the RAR file on Mac, go to the App Store and download:

    "The Unarchiver" it handles most every compression out there and is free.

  • Comment author

    I was able to successfully do the update following Keith’s instructions. A note for others.I had trouble with the file path, I was still in the directory where the file was located, so I didn’t need the /user/…/ part of the address. Just needed the part from d1 on. Unfortunately, the laser is still not working, just outputting garbage that isn’t even close to what is in the file. Trying to just engrave a single letter on basswood doesn’t work. Not sure what to try next. Reset the x1, uninstall all the software and start from scratch?

  • Comment author
    Rachel Cardwell

    I've got a windows 10 machine and I cannot get the exe to open. I think its because the file is made for windows 8? Does anyone have any advice?

  • Comment author

    I have attempted to upgrade the firmware for my Xtool D1 using both the laserbox option which disconnects my machine for some reason and downloading the xtool firmware upgrade tool but there is no exe file. Please advise what I need to do.


Please sign in to leave a comment.