Skip to content

feat: show hall filament width sensor - #1981

Merged
pedrolamas merged 1 commit into
fluidd-core:developfrom
pedrolamas:pedrolamas/hall-filament-width-sensor
Oct 12, 2026
Merged

pedrolamas merged 1 commit into
fluidd-core:developfrom
pedrolamas:pedrolamas/hall-filament-width-sensor

Conversation

@pedrolamas

Copy link
Copy Markdown
Member

Klipper now reports the runout state (enabled, filament_detected) for [hall_filament_width_sensor], so it can be listed alongside the filament switch and motion sensors.

  • Lists hall_filament_width_sensor in the Runout Sensors card, with the filament-detected icon and the enable switch (SET_FILAMENT_SENSOR).
  • Shows the measured filament diameter under the sensor name while width measurement is active.
  • Sensors that do not report filament_detected are skipped, so older Klipper versions that do not report the runout state for this sensor are unaffected.

Lint and type-check pass. Not tested against a printer with this sensor.

Signed-off-by: Pedro Lamas pedrolamas@gmail.com

🤖 Generated with Claude Code

Klipper now reports the runout state for hall_filament_width_sensor, so
list it in the runout sensors card along with the measured diameter.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
@pedrolamas pedrolamas added the FR - Enhancement New feature or request label Oct 12, 2026
@pedrolamas pedrolamas added this to the 1.37.7 milestone Oct 12, 2026
@pedrolamas
pedrolamas requested a balanced review from Copilot October 12, 2026 15:39
@github-actions

Copy link
Copy Markdown

Bundle size report (gzip)

Chunk Base Head Δ
assets/index-*.js 161.9 kB 161.9 kB +83 B
assets/BeaconCard-*.js 4.3 kB 4.3 kB +32 B
sw.js 11.2 kB 11.2 kB +7 B
assets/Dashboard-*.js 63.2 kB 63.2 kB +4 B
assets/Diagnostics-*.js 15.9 kB 15.9 kB +4 B
assets/Console-*.js 367 B 370 B +3 B
assets/AppBtnCollapseGroup-*.js 639 B 641 B +2 B
assets/Jobs-*.js 499 B 501 B +2 B
assets/MacroCategorySettings-*.js 2.0 kB 2.0 kB +2 B
assets/Settings-*.js 23.3 kB 23.3 kB +2 B
assets/TimelapseRenderSettingsDialog-*.js 1.8 kB 1.8 kB +2 B
assets/AppColorPicker-*.js 13.0 kB 13.0 kB +1 B
assets/Configure-*.js 776 B 775 B -1 B
assets/ConsoleCard-*.js 2.0 kB 2.0 kB +1 B
assets/DiskUsageCard-*.js 3.2 kB 3.2 kB -1 B
assets/FileSystem-*.js 31.9 kB 31.9 kB +1 B
assets/FullscreenCamera-*.js 423 B 424 B +1 B
assets/GcodePreview-*.js 368 B 369 B +1 B
assets/GcodePreviewCard-*.js 13.2 kB 13.2 kB +1 B
assets/History-*.js 3.8 kB 3.8 kB +1 B
assets/JobHistoryItemStatus-*.js 1.2 kB 1.2 kB +1 B
assets/NotFound-*.js 437 B 438 B +1 B
assets/Timelapse-*.js 1.9 kB 1.9 kB +1 B
assets/Tune-*.js 3.4 kB 3.4 kB -1 B
Total 2.9 MB 2.9 MB +150 B

119 chunks compared, 24 changed. Sizes are gzip, matching what nginx serves.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The change is small, well-scoped, and consistent with Klipper's actual hall_filament_width_sensor reporting (verified against its RunoutHelper.get_status and SET_FILAMENT_SENSOR registration), with no regressions for existing sensors or consumers.

0 open findings

What changed in this PR

This PR extends Fluidd's Runout Sensors card to also list Klipper's [hall_filament_width_sensor], which recent Klipper versions now expose with a runout state (enabled, filament_detected) via RunoutHelper. The sensor is rendered alongside existing filament switch/motion sensors, with its enable switch wired to SET_FILAMENT_SENSOR and the live measured filament diameter shown as a subtitle. Sensors that don't report filament_detected (older Klipper) are skipped, keeping existing behavior unchanged.

Changes:

  • Added optional enabled, filament_detected, and flow_compensation_enabled fields to HallFilamentWidthSensorState and a diameter? field to the RunoutSensor type.
  • Updated getRunoutSensors to include hall_filament_width_sensor, skip sensors without filament_detected, and expose the measured diameter only while width measurement is active.
  • Rendered the measured diameter as a list-item subtitle in RunoutSensorsCard.vue.
File Description
src/​typings/​klipper.d.ts Adds optional runout/flow-compensation fields to the hall sensor state type to match Klipper's get_status.
src/​store/​printer/​types.ts Adds optional diameter to RunoutSensor for the measured value.
src/​store/​printer/​getters.ts Includes the hall sensor key, filters out sensors lacking filament_detected, and derives diameter when active.
src/​components/​widgets/​runout-sensors/​RunoutSensorsCard.vue Displays the measured diameter as a subtitle when present.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@pedrolamas
pedrolamas merged commit 16563c4 into fluidd-core:develop Oct 12, 2026
6 checks passed
@pedrolamas
pedrolamas deleted the pedrolamas/hall-filament-width-sensor branch October 12, 2026 15:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

FR - Enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants