-
Notifications
You must be signed in to change notification settings - Fork 0
Adventurer 4 Series
The Adventurer 4 series comprises the Adventurer 4 Pro and Adventurer 4 Lite. Both are TCP-only printers with no HTTP REST API, sharing an identical 33-command TCP protocol on port 8899.
| Feature | Adventurer 4 Pro | Adventurer 4 Lite |
|---|---|---|
| Product ID | 0x001E | 0x0016 |
| Firmware Version | v1.2.1 (Sept 2023) | v2.0.5 (May 2022) |
| Build Volume | 220 × 200 × 250 mm | 220 × 200 × 250 mm |
| HTTP API (port 8898) | No | No |
| TCP API (port 8899) | Yes (33 commands) | Yes (33 commands) |
| Camera | MJPEG on port 8080 (optional) | MJPEG on port 8080 (optional) |
| Authentication | None | None |
| Cloud Services | Polar3D + FlashCloud | Polar3D + FlashCloud |
| Architecture | ARM 32-bit | ARM 32-bit |
| UI Framework | Qt 4.8.6 | Qt 4.8.6 |
The Pro and Lite share the same TCP command set and protocol behavior. Both models expose exactly 33 TCP commands with identical syntax and response formats. The only differences are Product ID, firmware version timelines, and hardware capabilities.
| Protocol | Port | Status |
|---|---|---|
| TCP Control | 8899 | Primary and only control interface |
| UDP Discovery | 19000 | Multicast on 225.0.0.9 |
| Camera HTTP | 8080 | MJPEG stream (optional accessory) |
| HTTP REST | 8898 | Not available |
All 33 commands supported by both the Pro and Lite:
| Command | Description |
|---|---|
| G1 | Linear move |
| G28 | Home axes |
| G90 | Absolute positioning |
| G91 | Relative positioning |
| G92 | Set position |
| Command | Description |
|---|---|
| M17 | Enable steppers |
| M18 | Disable steppers (warning: Z may drop) |
| Command | Description |
|---|---|
| M23 | Select file for printing |
| M24 | Start / resume print |
| M25 | Pause print |
| M26 | Stop / cancel print |
| M27 | Report print status and progress |
| Command | Description |
|---|---|
| M28 | Start binary file upload |
| M29 | End binary file upload |
| M661 | List files on printer storage |
| M662 | Get file thumbnail (PNG with custom header) |
| M663 | Get enhanced position (XYZEF) |
| Command | Description |
|---|---|
| M105 | Get current / target temperatures |
| M114 | Get current XYZ position |
| M115 | Get firmware info (name, SN, build volume, MAC) |
| M119 | Get endstop status, machine status, LED state |
| Command | Description |
|---|---|
| M104 | Set extruder temperature |
| M108 | Cancel heat wait (stubbed on some firmware) |
| M140 | Set bed temperature |
| Command | Description |
|---|---|
| M106 | Fan on (on/off only, no variable speed) |
| M107 | Fan off |
| M144 | LED on (EEPROM write — avoid frequent use) |
| M145 | LED off (EEPROM write — avoid frequent use) |
| M146 | Set LED RGB color (preferred, no EEPROM wear) |
| Command | Description |
|---|---|
| M601 S1 | Request control session |
| M602 | Release control session |
| M610 | Rename printer (triggers network restart) |
| Command | Description |
|---|---|
| M650 | Get calibration values |
| Command | Description |
|---|---|
| M112 | Emergency stop (immediate halt) |
The Adventurer 4 series uses the legacy UDP discovery protocol.
| Property | Value |
|---|---|
| Multicast Address | 225.0.0.9 |
| Port | 19000 |
| Packet Size | 140 bytes (Big Endian) |
| Offset | Size | Type | Description |
|---|---|---|---|
| 0x00 | 128 | char[] | Machine Name (null-terminated) |
| 0x80 | 4 | bytes | Padding |
| 0x84 | 2 | uint16 | Command Port (typically 8899) |
| 0x86 | 2 | uint16 | Vendor ID |
| 0x88 | 2 | uint16 | Product ID (Pro: 0x001E, Lite: 0x0016) |
| 0x8A | 2 | uint16 | Status Code (0=Ready, 1=Busy) |
Important: The 140-byte legacy discovery packet does not contain the serial number. Retrieve the serial number via TCP ~M115 after connecting.
See Discovery Protocol for the complete discovery specification.
When the optional camera accessory is installed, both models serve an MJPEG stream via a custom OutputHttp class (not MJPG-Streamer).
| Property | Value |
|---|---|
| Port | 8080 |
| Format | MJPEG over HTTP |
| Availability | Optional accessory |
The Adventurer 4 reports machine status via ~M119 (MachineStatus field) and ~M27 (print progress), identical to the Adventurer 3 series.
| MachineStatus | Description |
|---|---|
| READY | Idle, ready to accept commands |
| BUILDING_FROM_SD | Printing from storage |
| BUILDING_COMPLETED | Print finished |
| PAUSED | Print paused |
| BUSY | Processing non-printing operation |
See State Machines for the unified state model across all printer families.
| Feature | Adventurer 4 Series | 5M / AD5X Series |
|---|---|---|
| Primary Protocol | TCP only | HTTP REST (primary) + TCP (fallback) |
| HTTP API | None | Full REST API on port 8898 |
| Authentication | None required | Serial number + check code |
| File Upload | M28/M29 binary over TCP | HTTP multipart (/uploadGcode) |
| Architecture | ARM 32-bit | ARM Cortex-A7 (5M) / MIPS32 (AD5X) |
| Material Station | No | AD5X only (IFS, 4 slots) |
| Air Filtration | No | 5M Pro only |
Despite the presence of libmicrohttpd in the Adventurer 4 firmware, no HTTP API is exposed on port 8898. The library exists in the system libraries but is not used by the printer application. The TCP protocol on port 8899 is the only control interface available.
This has been confirmed through testing on both Pro and Lite models.