You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(creator5): HTTP-only mode for Creator 5 / 5 Pro (no legacy TCP)
The Creator 5 / 5 Pro run no legacy TCP server (no port 8899) — they are
HTTP-only (OrcaServer on 8898). Add an httpOnly mode to FiveMClient so it can
drive them without the TCP control channel.
- FiveMClientConnectionOptions.httpOnly + FiveMClient.httpOnly; auto-enabled in
verifyConnection() when a Creator 5 / 5 Pro is detected from /detail.
- initControl() succeeds on the HTTP product command alone in httpOnly mode;
verifyConnection() skips the TCP getPrinterInfo() probe; dispose() skips TCP.
- TempControl set/cancel route through HTTP temperatureCtl_cmd (rightNozzle/
leftNozzle/platform/chamber; -200 = no change, -100 = off) instead of TCP
g-code; waitForPartCool() is a no-op in httpOnly.
- Files.getLocalFileList() falls back to HTTP /gcodeList when no TCP channel.
- Control TCP-only ops (home/runout/filament-load) return false (logged) in
httpOnly instead of hanging on a dead socket.
- Backfill CHANGELOG for 1.3.3 / 1.3.4; +13 tests (364 total).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LEiNF9KzwvnF4kAinmvu2a
Copy file name to clipboardExpand all lines: CHANGELOG.md
+25Lines changed: 25 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,31 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [Unreleased]
9
9
10
+
## [1.3.5] - 2026-06-24
11
+
12
+
### Added
13
+
14
+
-**HTTP-only mode for the Creator 5 / Creator 5 Pro.** These printers run no legacy TCP server (no port 8899) — they are HTTP-only (`OrcaServer` on 8898). `FiveMClient` now supports an `httpOnly` connection so it can drive them:
15
+
- New `FiveMClientConnectionOptions.httpOnly?: boolean` and public `FiveMClient.httpOnly`. Set it explicitly (e.g. when the model is known from discovery's USB product ID), or let `verifyConnection()` auto-enable it when a Creator 5 / 5 Pro is detected from `/detail`.
16
+
- In HTTP-only mode `initControl()` succeeds on the HTTP product command alone (never opens the TCP control channel), `verifyConnection()` skips the TCP `getPrinterInfo()` probe (no connect timeout), and `dispose()` skips TCP teardown.
17
+
-`TempControl` set/cancel extruder/bed temperatures route through the HTTP `temperatureCtl_cmd` (args `rightNozzle`/`leftNozzle`/`platform`/`chamber`; `-200` = leave unchanged, `-100` = off) instead of TCP G-code. `waitForPartCool()` is a no-op in HTTP-only mode (poll `info.get()` instead).
18
+
-`Files.getLocalFileList()` falls back to the HTTP `/gcodeList` (10 most-recent files) when there is no TCP channel.
19
+
-`Control` TCP-only operations (`homeAxes`, `homeAxesRapid`, `turnRunoutSensorOn/Off`, `prepareFilamentLoad`/`loadFilament`/`finishFilamentLoad`) return `false` with a clear log in HTTP-only mode rather than hanging on a dead socket.
20
+
21
+
## [1.3.4] - 2026-06-22
22
+
23
+
### Added
24
+
25
+
-`JobControl.startCreator5Job(params)` — Creator 5 native print start via `POST /printGcode` (the Creator 5 does material matching at print-start, not at upload time), with optional per-tool `materialMappings` (`{ toolId, slotId, materialName }`). `Creator5JobParams` / `Creator5MaterialMapping` types exported.
26
+
27
+
## [1.3.3] - 2026-06-22
28
+
29
+
### Added
30
+
31
+
- Creator 5 / Creator 5 Pro `/detail` model support: `nozzleTemps[]` / `nozzleTargetTemps[]` (per-tool arrays), `lidar`, `model`, and `FFMachineInfo` fields `IsCreator5`, `IsCreator5Pro`, `Model`, `HasCamera`, `HasLidar`, `HasDoorSensor`, `ToolTemps`.
32
+
-`FiveMClient` Creator 5 flags (`isCreator5`, `isCreator5Pro`, `model`, `hasCamera`, `hasLidar`, `hasDoorSensor`, `toolTemps`) and capability derivation (`deriveCapabilities`, `ProductCapabilities`) from `/product` (polarity `1` = available), with a Creator 5 Pro filtration force-enable (its `/product` under-reports the fan control states).
33
+
- Creator 5 PIDs added to model detection (`0x28` Creator 5, `0x29` Creator 5 Pro).
0 commit comments