New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Live Feedrate/Flowrate Control: feature request #362

Closed
AJdoodler opened this Issue Jan 27, 2014 · 10 comments

Comments

9 participants
@AJdoodler

AJdoodler commented Jan 27, 2014

It would be nice to add a control feature that would allow the user to throttle up/down the feedrate and flowrate during a print.

@savorywatt

This comment has been minimized.

Show comment
Hide comment
@savorywatt

savorywatt Jan 29, 2014

Contributor

Do you have a suggestion on what that would look like? Right now you can just send the gcode directly.

G1 F1500

Just curious what the ideal UX for you would be.

Contributor

savorywatt commented Jan 29, 2014

Do you have a suggestion on what that would look like? Right now you can just send the gcode directly.

G1 F1500

Just curious what the ideal UX for you would be.

@AJdoodler

This comment has been minimized.

Show comment
Hide comment
@AJdoodler

AJdoodler Jan 29, 2014

Sorry for not expanding on my recommendation. I was thinking something similar to reptier's UX for feedrate and flow rate control where you select a percentage of the rate read in the GCODE. For example, if the rate was set at 100mm/s and the slider was at 90%, it would extrude at 90mm/s. Here is a screenshot of Repetier's UX. I would imagine this would go under the control tab.
feedrate ui

AJdoodler commented Jan 29, 2014

Sorry for not expanding on my recommendation. I was thinking something similar to reptier's UX for feedrate and flow rate control where you select a percentage of the rate read in the GCODE. For example, if the rate was set at 100mm/s and the slider was at 90%, it would extrude at 90mm/s. Here is a screenshot of Repetier's UX. I would imagine this would go under the control tab.
feedrate ui

@ccrome

This comment has been minimized.

Show comment
Hide comment
@ccrome

ccrome Jan 29, 2014

Heh, I just implemented that with a custom command. Not perfect, but
workable. The biggest problem is that it doesn't auto-reset before a new
print and I don't know what the current value is unless I manually reset it
to 100%.

controls:

  • children:
    • command: M220 S%(speed)s
      input:
      • default: 100
        name: Set Overall Speed % (50 to 150 is reasonable)
        parameter: speed
        name: Speed
        type: parametric_command
    • command: M221 S%(extrusion)s
      input:
      • default: 100
        name: Nudge extrusion in percent (90 to 110 is reasonable)
        parameter: extrusion
        name: Extrusion

On Tue, Jan 28, 2014 at 10:42 PM, AJdoodler notifications@github.comwrote:

Sorry for not expanding on my recommendation. I was thinking something
similar to reptier's UX for feedrate and flow rate control where you select
a percentage of the rate read in the GCODE. For example, if the rate was
set at 100mm/s and the slider was at 90%, it would extrude at 90mm/s. Here
is a screenshot of Repetier's UX. I would imagine this would go under the
control tab.
[image: feedrate ui]https://f.cloud.github.com/assets/5635002/2027344/5c01c5e6-88b0-11e3-9cad-4cf5673d7cc5.JPG

Reply to this email directly or view it on GitHubhttps://github.com/foosel/OctoPrint/issues/362#issuecomment-33560404
.

ccrome commented Jan 29, 2014

Heh, I just implemented that with a custom command. Not perfect, but
workable. The biggest problem is that it doesn't auto-reset before a new
print and I don't know what the current value is unless I manually reset it
to 100%.

controls:

  • children:
    • command: M220 S%(speed)s
      input:
      • default: 100
        name: Set Overall Speed % (50 to 150 is reasonable)
        parameter: speed
        name: Speed
        type: parametric_command
    • command: M221 S%(extrusion)s
      input:
      • default: 100
        name: Nudge extrusion in percent (90 to 110 is reasonable)
        parameter: extrusion
        name: Extrusion

On Tue, Jan 28, 2014 at 10:42 PM, AJdoodler notifications@github.comwrote:

Sorry for not expanding on my recommendation. I was thinking something
similar to reptier's UX for feedrate and flow rate control where you select
a percentage of the rate read in the GCODE. For example, if the rate was
set at 100mm/s and the slider was at 90%, it would extrude at 90mm/s. Here
is a screenshot of Repetier's UX. I would imagine this would go under the
control tab.
[image: feedrate ui]https://f.cloud.github.com/assets/5635002/2027344/5c01c5e6-88b0-11e3-9cad-4cf5673d7cc5.JPG

Reply to this email directly or view it on GitHubhttps://github.com/foosel/OctoPrint/issues/362#issuecomment-33560404
.

@foosel

This comment has been minimized.

Show comment
Hide comment
@foosel

foosel Feb 22, 2015

Owner

Implemented in devel

Owner

foosel commented Feb 22, 2015

Implemented in devel

@foosel foosel closed this Feb 22, 2015

@maukcc

This comment has been minimized.

Show comment
Hide comment
@maukcc

maukcc Jun 5, 2015

I love the sliders, and so I want more :)
Slider for fans, lights, temps,...
Can we make it so that we(users) can do this in the config.yaml file, for whatever we need.
Also it took me a while to understand that I had to click the button to implement the change. That is 1 click too many.
Also if you log out and back in, the sliders are back to 100%, is there any way of getting the actual info back from the machine. AAh now I understand the reason for the button click.

maukcc commented Jun 5, 2015

I love the sliders, and so I want more :)
Slider for fans, lights, temps,...
Can we make it so that we(users) can do this in the config.yaml file, for whatever we need.
Also it took me a while to understand that I had to click the button to implement the change. That is 1 click too many.
Also if you log out and back in, the sliders are back to 100%, is there any way of getting the actual info back from the machine. AAh now I understand the reason for the button click.

@foosel

This comment has been minimized.

Show comment
Hide comment
@foosel

foosel Jun 5, 2015

Owner

Can we make it so that we(users) can do this in the config.yaml file, for whatever we need.

... => http://docs.octoprint.org/en/devel/features/custom_controls.html

Also it took me a while to understand that I had to click the button to implement the change. That is 1 click too many.

For some it's one click too many, others want the added safety cushion. From a technical point of view, each modification necessitates sending a command to the printer. During printing that means adding control overhead to the line. If you have to click the button, I only have to send one command instead of one per change. That's better for performance.

Also if you log out and back in, the sliders are back to 100%, is there any way of getting the actual info back from the machine.

No, there isn't.

Owner

foosel commented Jun 5, 2015

Can we make it so that we(users) can do this in the config.yaml file, for whatever we need.

... => http://docs.octoprint.org/en/devel/features/custom_controls.html

Also it took me a while to understand that I had to click the button to implement the change. That is 1 click too many.

For some it's one click too many, others want the added safety cushion. From a technical point of view, each modification necessitates sending a command to the printer. During printing that means adding control overhead to the line. If you have to click the button, I only have to send one command instead of one per change. That's better for performance.

Also if you log out and back in, the sliders are back to 100%, is there any way of getting the actual info back from the machine.

No, there isn't.

@gitsly

This comment has been minimized.

Show comment
Hide comment
@gitsly

gitsly Dec 10, 2015

Hi, I would like to be able to adjust the maximum percentage of speedup (in config.yaml etc.)
Is this possible atm? I cannot find anything 150ish looking in my config file.

My reason: I have a kossel optimized for fast printing which prints nicely at 90mm/s.
However I'm trying to minimize wear on the printer so I always slice with 30mm/s feedrate and only adjust the slider (repetier used before) when I'm really in a hurry... I would like my slider to go from 20%->300%

gitsly commented Dec 10, 2015

Hi, I would like to be able to adjust the maximum percentage of speedup (in config.yaml etc.)
Is this possible atm? I cannot find anything 150ish looking in my config file.

My reason: I have a kossel optimized for fast printing which prints nicely at 90mm/s.
However I'm trying to minimize wear on the printer so I always slice with 30mm/s feedrate and only adjust the slider (repetier used before) when I'm really in a hurry... I would like my slider to go from 20%->300%

@MarcusWolschon

This comment has been minimized.

Show comment
Hide comment
@MarcusWolschon

MarcusWolschon Jun 28, 2016

There's no way to get the current flow rate (so as to not display % but mm/s) is there?

I'm also interested because I'm doing a filament sensor and if the filament should not move at the moment (e.g. machine heating or cooling or waiting for a minimum-layer-time) then it should not cause an alarm that the sensor doesn't detect any filament movement.

http://marcuswolschon.blogspot.de/2016/06/ultimaker-ii-filament-sensor-and-remote.html

MarcusWolschon commented Jun 28, 2016

There's no way to get the current flow rate (so as to not display % but mm/s) is there?

I'm also interested because I'm doing a filament sensor and if the filament should not move at the moment (e.g. machine heating or cooling or waiting for a minimum-layer-time) then it should not cause an alarm that the sensor doesn't detect any filament movement.

http://marcuswolschon.blogspot.de/2016/06/ultimaker-ii-filament-sensor-and-remote.html

@markwal

This comment has been minimized.

Show comment
Hide comment
@markwal

markwal Jun 28, 2016

Collaborator

@MarcusWolschon no. Even watching the commands go by on send won't be very accurate for this due to two factors: First, firmware's have a command buffer, so the speed of the currently executing command is a command buffer full of commands earlier than the current command being sent. Also, the current actual speed differs from the commanded speed due to firmware calculations like maximum speed, acceleration and jerk.

There are sensors like this out there, but they guess on reasonable feed over time (mostly upper limit on stationary filament) like the Tunell monitor: https://www.toybuilderlabs.com/products/tunell-3d-printer-filament-monitor Some firmware/motherboard combos have a mechanism for a pin pulled low (or high) causing a pause (sailfish calls it p-stop) that this integrates with. You could also do that in an OctoPrint plugin and gpio on a Pi.

However, to be precise on measuring the difference between expected filament consumption and actual feed, you'd need a more cooperative firmware that can output in some way the current expect consumption. If you did do this, it'd be pretty cool because you could also adjust for material friction and diameter differences and other feed differences automatically.

Collaborator

markwal commented Jun 28, 2016

@MarcusWolschon no. Even watching the commands go by on send won't be very accurate for this due to two factors: First, firmware's have a command buffer, so the speed of the currently executing command is a command buffer full of commands earlier than the current command being sent. Also, the current actual speed differs from the commanded speed due to firmware calculations like maximum speed, acceleration and jerk.

There are sensors like this out there, but they guess on reasonable feed over time (mostly upper limit on stationary filament) like the Tunell monitor: https://www.toybuilderlabs.com/products/tunell-3d-printer-filament-monitor Some firmware/motherboard combos have a mechanism for a pin pulled low (or high) causing a pause (sailfish calls it p-stop) that this integrates with. You could also do that in an OctoPrint plugin and gpio on a Pi.

However, to be precise on measuring the difference between expected filament consumption and actual feed, you'd need a more cooperative firmware that can output in some way the current expect consumption. If you did do this, it'd be pretty cool because you could also adjust for material friction and diameter differences and other feed differences automatically.

@beemeeup

This comment has been minimized.

Show comment
Hide comment
@beemeeup

beemeeup Nov 11, 2016

Is it possible to have help Texts while floatining over the Button Element???

I am always confused about the difference between Flo and Feerate....

beemeeup commented Nov 11, 2016

Is it possible to have help Texts while floatining over the Button Element???

I am always confused about the difference between Flo and Feerate....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment