garethky / PrusaSlicerPressureAdvanceCalibration

An web tool that modified PrusaSlicer GCode to add a Pressure Advance test pattern
https://garethky.github.io/PrusaSlicerPressureAdvanceCalibration/
GNU General Public License v3.0
3 stars 1 forks source link

Pressure Advance UX is too complicated #2

Closed garethky closed 7 months ago

garethky commented 7 months ago

This UX was carried over from the original tool and difficult to use correctly.

  1. Entering start, stop and step requires the user to do math and make sure that the step value evenly divides the start/stop range. Basically the choice of inputs allows illegal values.
  2. Even when it does divide the range its not clear how many lines of pattern will be printed. Is it 5 or 60? This can lead to unintuitive and surprising results when the pattern is printed. Previewing GCode was not a lot of help here.
  3. The defaults for Direct-drive and Bowden extruders are not enough to capture the interplay of a complex set of variables:
    • Which PA implementation M900, PRESSURE_ADVANCE or M572?
    • Which version of Marlins M900 is it, because they took different values :(
    • What nozzle size is being used?
    • Direct Drive or Bowden?

For 1 and 2 I think the best plan is to take away the step box and pick a step value for the user. We can just shoot to print between 10 and 30 lines. The start/stop values are a natural way to think about what you want to accomplish. Especially after running the tool once, if you want to target a particular sub-range its natural to look at the print and go "from about 0.03 to 0.055".

For #3 we could give up the idea of presets. Or we could double down and have a large number of presets, maybe by printer model. These could be culled before they are presented so only relevant presets are displayed. e.g. if we know the machine is SX5IS, its got a 0.6 nozzle, and the filament is a type of PETG, then we know its M572 and we could have a setting for that combo that is a good starting point.

Here is a prototype: https://svelte.dev/repl/24b7699689e94bac9decf473064a0a4b?version=4.2.3

garethky commented 7 months ago

This was implemented for the initial release