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 a D1 of yours and proceed.

(For D1 Pro, you may click: How to Upgrade xTool D1 Pro Firmware?)




Method 1: Upgrade D1 firmware with XCS (Recommended)

NOTE: DO NOT upgrade D1 firmware with Laserbox basic or LightBurn.1280X1280__19_.PNG

  • Make sure your network is in good condition.
  • Make sure your computer stays on, and do not enter Sleep mode during the process.
  • Do not power off D1 during the process.
  • Make sure the Upload Switch is on (as below).1280X1280__20_.PNG

1. Power on and connect D1 to your computer via the original USB cable.


2. Launch XCS, click on Connect Device, and select your device from the Device list.1280X1280__22_.PNG

3. Click on the gear icon and then click on Check for updates.image__9_.png

4. If a new firmware version is available, click on Update.


5. Firmware update starts. 1280X1280__24_.PNG

6. Firmware update in progress.1280X1280__25_.PNG

7. Firmware update completes.


Method 2: Upgrade D1 firmware in XCS Developer Mode


  • Your XCS version should be V1.0 or above where Developer Mode is available.
  • Make sure your computer does not enter Sleep Mode during the process.
  • Do not turn off your D1 during the process.
  • Make sure the Upload Switch on the motherboard is turned on.



1. Power on and connect the D1 to your computer via the original USB cable.
2. Launch XCS, normally the device will connect to XCS automatically. If not, click on Connect Device, and select your device from the Device list.
3. Click Settings> Developer mode> Start.


4. Select D1.
5. Select the Serial port.
5.1 Right-click on Start.


5.2 click Device Manager>Ports and find the port for USB-SERIAL CH340.


  5.3 Click on the drop-down menu and select the corresponding Serial Port.


Note: If you do not find the port for USB-SERIAL CH340, it's probably because the driver is missing and you may download it here: and complete the installation.
6. Set Baud to 230400.


7. Click on Latest firmware> Update
or click on Firmware from local disk> Select the firmware or drag it here> Update.
8. Wait for the "Firmware update succeeded" notification.




Method 3: Upgrade firmware with xTool D1 Firmware Tool for Windows


  • Make sure your network is in good condition.
  • Make sure your computer stays on, and do not enter Sleep mode during the process.
  • Do not power off D1 during the process.
  • Make sure the Upload Switch is on (as below).


1. Download the xTool D1 Firmware Tool and unzip it on your local disk.



2. Open the folder and double-click the "xTool D1 Firmware Tool.exe" to launch the program. 


3. Connect D1 to your computer via the original USB cable and switch it on, select the correct Port.


4. Click and import the bin file (select the latest one or the specific one you had in mind), "D1_firmware_V40.30.007.01B4_20220829.bin" for example as below.




5. Click on "Start Upgrade". 


6. When it finishes successfully, a PASS notification will show in the lower right corner.



Was this article helpful?

4 out of 15 found this helpful

Have more questions?


  • 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

  • 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.


  • Keith,

    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.

  • 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. 

    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
    4. 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
    5. Run the LaserBox Basic software or for Pro run xTool Creative Space.
    6. Attach to laser via USB
    7. 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.
    8. Mine was  /dev/tty.usbserial-1440
    9. Quit and exit LaserBox or Creative Space to release the USB port.
    10. 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

  • 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!

  • 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.

  • 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...

  • 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!

  • 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.

  • 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?

  • 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?

  • 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.


Article is closed for comments.