Skip to content

File Transfer

ESP3D-X supports several methods for transferring files to and from the device.

POST /files
Content-Type: multipart/form-data

Form fields:

  • path — Target directory path
  • myfiles — File(s) to upload
  • <path><name>S — Size field for each file
POST /sdfiles

Same multipart format as flash upload.

POST /updatefw

Upload a .bin firmware file for OTA update.

WebDAV provides standard file operations via HTTP methods:

MethodAction
GETRead file / list directory
PUTWrite file
DELETEDelete file/directory
MKCOLCreate directory
PROPFINDList properties

Base URL: http://<esp-ip>/webdav/

Enable with: [ESP190]STATE=ON

The /wsdata endpoint (subprotocol esp3d-v1) supports high-speed binary file transfer using the ESP3D WebSocket Protocol V1.

  1. Probe — Send SR, receive RS with idle state
  2. Start — Send SU with path + filename + total size → receive US (ack)
  3. Packets — Send UP with packet ID + data → receive PU ack
  4. End — Send EU → receive UE
  1. Probe — Send SR, receive RS with idle state
  2. Start — Send SD with path + filename → receive DS (ack)
  3. Packets — Server sends DP with packet ID + data → client sends PD ack
  4. End — Server sends ED → client sends DE

See WebSockets API for the complete V1 frame format.

SD card files can also be managed via ESP commands:

  • ESP720 — List flash filesystem
  • ESP740 — List SD filesystem
  • ESP750 — SD file operations (remove, mkdir, etc.)