Skip to content

Commit 716c25b

Browse files
committed
Fix #31: Default to max machine extrusion acceleration when no other value is present
* default the extruding acceleration to the machines x extrusion acceleration in case no default_acceleration is defined. * improve error messages to include property names
1 parent 58b5c7d commit 716c25b

2 files changed

Lines changed: 8 additions & 4 deletions

File tree

src/lib/StartEndGcodePrep.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ function klipperStartGocde(startLines: Array<string>, endLines: Array<string>, s
8787
// im not going to override acceleration, you should set your printer up to hit the limits in the slicer.
8888
// changing hardware limits could be harmful to the printer
8989
startLines.push(`\nSET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1\n`);
90-
// srap the print in start/end object calls
90+
// wrap the print in start/end object calls
9191
if (hasExcludeObject) {
9292
startLines.push(`EXCLUDE_OBJECT_START NAME=${objectName}`)
9393
endLines.unshift(`EXCLUDE_OBJECT_END NAME=${objectName}`);

src/lib/TestPatternConfiguration.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ export function selectPressureAdvanceGCodePrefix(flavour: string, printerModel:
133133
}
134134
}
135135

136-
throw `Sorry, your firmware type is not supported yet`;
136+
throw `Sorry, your firmware type "${flavour}" is not supported yet`;
137137
}
138138

139139
// Precision rounding to the nth decimal place
@@ -192,7 +192,7 @@ function maxExplainedValue(name: string, values: Array<SettingValue<number>>, de
192192
if (default_value && default_value.toValue() > 0){
193193
return simpleExplainedValue(name, default_value);
194194
}
195-
throw "No max value found, all values are null or 0!";
195+
throw `${name}: No max value found, all values are null or 0!`;
196196
}
197197

198198
function explainClampedSpeed(name: string, slicerSettings: RequiredSlicerSettings, speedSetting: SettingValue<number>, maxLinearSpeed: number): ExplainedValue<number> {
@@ -238,6 +238,7 @@ export class TestPatternConfiguration {
238238
fan_speed: ExplainedValue<number>;
239239
advance_gcode_prefix: ExplainedValue<PressureAdvanceGCode>;
240240
travelAcceleration: ExplainedValue<number>;
241+
default_extruding_acceleration: ExplainedValue<number>;
241242
testAcceleration: ExplainedValue<number>;
242243
printAcceleration: ExplainedValue<number>;
243244
zHopHeight: ExplainedValue<number>;
@@ -283,8 +284,11 @@ export class TestPatternConfiguration {
283284
// speeds
284285
const travelAcceleration = settings.travel_acceleration;
285286
const defaultAcceleration = settings.default_acceleration;
287+
const machine_acceleration = settings.machine_max_acceleration_extruding;
286288
this.travelAcceleration = simpleExplainedValue('Travel Acceleration', travelAcceleration.toValue() > 0 ? travelAcceleration : defaultAcceleration);
287-
this.testAcceleration = maxExplainedValue('Test Acceleration', [settings.perimeter_acceleration, settings.infill_acceleration, settings.solid_infill_acceleration, settings.top_solid_infill_acceleration, settings.external_perimeter_acceleration], defaultAcceleration);
289+
const default_extruding_acceleration = defaultAcceleration.toValue() > 0 ? defaultAcceleration : machine_acceleration;
290+
this.default_extruding_acceleration = simpleExplainedValue('Default Extruding Acceleration', default_extruding_acceleration);
291+
this.testAcceleration = maxExplainedValue('Test Acceleration', [settings.perimeter_acceleration, settings.infill_acceleration, settings.solid_infill_acceleration, settings.top_solid_infill_acceleration, settings.external_perimeter_acceleration], default_extruding_acceleration);
288292
const firstLayerAcceleration = settings.first_layer_acceleration;
289293
this.printAcceleration = simpleExplainedValue('Print Acceleration', firstLayerAcceleration.toValue() > 0 ? firstLayerAcceleration : defaultAcceleration);
290294

0 commit comments

Comments
 (0)