Skip to content

feat(Happy Hare): Adds new flowguard meter for monitoring clog and tangles#1759

Merged
pedrolamas merged 14 commits intofluidd-core:developfrom
moggieuk:flowguard
Dec 17, 2025
Merged

feat(Happy Hare): Adds new flowguard meter for monitoring clog and tangles#1759
pedrolamas merged 14 commits intofluidd-core:developfrom
moggieuk:flowguard

Conversation

@moggieuk
Copy link
Contributor

@moggieuk moggieuk commented Dec 11, 2025

Description:
This adds a "FlowGuard" meter to replace or compliment the encoder clog meter. It uses the sync-feedback buffer input and controller in Happy Hare to offer feedback and prediction of clogs and tangles.

Shown here on printer with MMU with encoder and sync-feedback buffer. If only one or the other sensor is present, only the respective meter is available/shown.
Screenshot 2025-12-11 at 6 26 29 PM

SIgned off by: Paul Morgan (moggieuk@hotmail.com)

@pedrolamas pedrolamas added the FR - Enhancement New feature or request label Dec 12, 2025
@pedrolamas pedrolamas added this to the 1.36.1 milestone Dec 12, 2025
pedrolamas and others added 3 commits December 13, 2025 19:23
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>

# Conflicts:
#	src/store/printer/types.ts
@moggieuk
Copy link
Contributor Author

I'm very sorry. I realized a small bug in the "display meter" condition so pushed a fix.

Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
@pedrolamas pedrolamas requested a review from Copilot December 16, 2025 14:30
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 13 out of 14 changed files in this pull request and generated 4 comments.

Comment on lines +356 to +374
get hasSyncFeedback (): boolean {
return this.hasFilamentCompressionSensor || this.hasFilamentTensionSensor || this.hasFilamentProportionalSensor
}

get hasFilamentProportionalSensor (): boolean {
return this.hasSensor('filament_proportional')
}

get hasFilamentCompressionSensor (): boolean {
return this.hasSensor('filament_compression')
}

get hasFilamentTensionSensor (): boolean {
return this.hasSensor('filament_tension')
}

private hasSensor (sensorName: string): boolean {
return sensorName in this.sensors
}
Copy link

Copilot AI Dec 16, 2025

Choose a reason for hiding this comment

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

Duplicate code: The methods hasSyncFeedback, hasFilamentProportionalSensor, hasFilamentCompressionSensor, hasFilamentTensionSensor, and hasSensor are duplicated in both MmuCard.vue and MmuSettings.vue. Consider moving these shared methods to the MmuMixin or creating a separate utility function to avoid code duplication.

Suggested change
get hasSyncFeedback (): boolean {
return this.hasFilamentCompressionSensor || this.hasFilamentTensionSensor || this.hasFilamentProportionalSensor
}
get hasFilamentProportionalSensor (): boolean {
return this.hasSensor('filament_proportional')
}
get hasFilamentCompressionSensor (): boolean {
return this.hasSensor('filament_compression')
}
get hasFilamentTensionSensor (): boolean {
return this.hasSensor('filament_tension')
}
private hasSensor (sensorName: string): boolean {
return sensorName in this.sensors
}

Copilot uses AI. Check for mistakes.
Copy link
Member

Choose a reason for hiding this comment

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

@moggieuk not sure if these are all the same, but kinda makes sense to me as I see some of these appearing in 3 places... what do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There are indeed the same and could be moved to mmu.ts mixin. I actually deliberately duplicated to make each PR clean and merge in any order.

Would you like me to move to the mmu mixin?

Copy link
Member

Choose a reason for hiding this comment

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

Happy to leave as is and you can refactor separately if that makes sense.

pedrolamas and others added 3 commits December 16, 2025 15:04
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
@pedrolamas pedrolamas merged commit 03a6475 into fluidd-core:develop Dec 17, 2025
4 checks passed
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