Skip to content

Commit

Permalink
feat: adds basic support for smart_effector and probe_eddy_current (#…
Browse files Browse the repository at this point in the history
…1605)

Signed-off-by: Pedro Lamas <[email protected]>
  • Loading branch information
pedrolamas authored Feb 16, 2025
1 parent 804995e commit 9cb9da4
Show file tree
Hide file tree
Showing 2 changed files with 70 additions and 2 deletions.
5 changes: 4 additions & 1 deletion src/components/widgets/toolhead/ToolheadCard.vue
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,10 @@ export default class ToolheadCard extends Mixins(StateMixin, ToolheadMixin) {
get printerSupportsProbeCalibrate (): boolean {
return (
'probe' in this.printerSettings ||
'bltouch' in this.printerSettings
'bltouch' in this.printerSettings ||
'smart_effector' in this.printerSettings ||
Object.keys(this.printerSettings)
.some(x => x.startsWith('probe_eddy_current '))
)
}
Expand Down
67 changes: 66 additions & 1 deletion src/store/printer/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,10 @@ export interface KlipperPrinterState extends KlipperPrinterStateBaseType {

bltouch?: KlipperPrinterProbeState;

smart_effector?: KlipperPrinterProbeState;

[key: `probe_eddy_current ${string}`]: KlipperPrinterProbeState;

[key: `pwm_cycle_time ${string}`]: KlipperPrinterPwmCycleTimeState;

quad_gantry_level?: KlipperPrinterQuadGantryLevelState;
Expand Down Expand Up @@ -631,7 +635,11 @@ export interface KlipperPrinterSettings extends KlipperPrinterSettingsBaseType {

probe?: KlipperPrinterProbeSettings;

bltouch?: KlipperPrinterProbeSettings;
bltouch?: KlipperPrinterBltouchSettings;

smart_effector?: KlipperPrinterSmartEffectorSettings;

[key: `probe_eddy_current ${Lowercase<string>}`]: KlipperPrinterProbeEddyCurrentSettings;

input_shaper?: KlipperPrinterInputShaperSettings;

Expand Down Expand Up @@ -900,13 +908,70 @@ export interface KlipperPrinterVerifyHeaterSettings {
}

export interface KlipperPrinterProbeSettings {
deactivate_on_each_sample: boolean;
activate_gcode: string;
deactivate_gcode: string;
pin: string;
x_offset: number;
y_offset: number;
z_offset: number;
speed: number;
lift_speed: number;
samples: number;
sample_retract_dist: number;
samples_result: string;
samples_tolerance: number;
samples_tolerance_retries: number;
}

export interface KlipperPrinterBltouchSettings {
stow_on_each_sample: boolean;
probe_with_touch_mode: boolean;
control_pin: string;
sensor_pin: string;
pin_up_reports_not_triggered: boolean;
pin_up_touch_mode_reports_triggered: boolean;
pin_move_time: number;
x_offset: number;
y_offset: number;
z_offset: number;
speed: number;
lift_speed: number;
samples: number;
sample_retract_dist: number;
samples_result: string;
samples_tolerance: number;
samples_tolerance_retries: number;
}

export interface KlipperPrinterSmartEffectorSettings {
probe_accel: number;
recovery_time: number;
deactivate_on_each_sample: boolean;
activate_gcode: string;
deactivate_gcode: string;
pin: string;
x_offset: number;
y_offset: number;
z_offset: number;
speed: number;
lift_speed: number;
samples: number;
sample_retract_dist: number;
samples_result: string;
samples_tolerance: number;
samples_tolerance_retries: number;
}

export interface KlipperPrinterProbeEddyCurrentSettings {
sensor_type: string;
reg_drive_current: number;
i2c_mcu: string;
i2c_speed: number;
i2c_address: number;
x_offset: number;
y_offset: number;
z_offset: number;
speed: number;
lift_speed: number;
samples: number;
Expand Down

0 comments on commit 9cb9da4

Please sign in to comment.