Table of Contents

Class Tool

Namespace
DuetAPI.ObjectModel
Assembly
DuetAPI.dll

Information about a configured tool

public class Tool : ModelObject, INotifyPropertyChanging, IStaticModelObject, IModelObject, ICloneable, INotifyPropertyChanged
Inheritance
Tool
Implements
Inherited Members

Constructors

Tool()

public Tool()

Properties

Active

Active temperatures of the associated heaters (in C)

[Live]
public ObservableCollection<float> Active { get; }

Property Value

ObservableCollection<float>

Axes

Associated axes. At present only X and Y can be mapped per tool.

public ObservableCollection<int[]> Axes { get; }

Property Value

ObservableCollection<int[]>

Remarks

The order is the same as the visual axes, so by default the layout is [ [0], // X [1] // Y ] Make sure to set each item individually so the change events are called. Each item is a bitmap represented as an array

Extruders

Extruder drives of this tool

public ObservableCollection<int> Extruders { get; }

Property Value

ObservableCollection<int>

Fans

List of associated fans (indices)

public ObservableCollection<int> Fans { get; }

Property Value

ObservableCollection<int>

Remarks

This is a bitmap represented as an array

FeedForward

Feedforward coefficients to apply to the mapped heaters during extrusions

[Obsolete("Use FeedForwardPwm instead")]
public ObservableCollection<float> FeedForward { get; }

Property Value

ObservableCollection<float>

FeedForwardAdvance

Time advance for applying feedforward in milliseconds

public float FeedForwardAdvance { get; set; }

Property Value

float

FeedForwardPwm

Feedforward coefficients to apply to the mapped heaters during extrusions

public ObservableCollection<float> FeedForwardPwm { get; }

Property Value

ObservableCollection<float>

FeedForwardTemp

Temperature increase per mm/dec extrusion speed

public ObservableCollection<float> FeedForwardTemp { get; }

Property Value

ObservableCollection<float>

FilamentExtruder

Extruder drive index for resolving the tool filament (index or -1)

public int FilamentExtruder { get; set; }

Property Value

int

Heaters

List of associated heaters (indices)

public ObservableCollection<int> Heaters { get; }

Property Value

ObservableCollection<int>

IsRetracted

True if the filament has been firmware-retracted

[Live]
public bool IsRetracted { get; set; }

Property Value

bool

Mix

Mix ratios of the associated extruder drives

public ObservableCollection<float> Mix { get; }

Property Value

ObservableCollection<float>

Name

Name of this tool

public string Name { get; set; }

Property Value

string

Number

Number of this tool

public int Number { get; set; }

Property Value

int

Offsets

Axis offsets (in mm) This list is in the same order as Axes

public ObservableCollection<float> Offsets { get; }

Property Value

ObservableCollection<float>
See Also

OffsetsProbed

Bitmap of the probed axis offsets

public int OffsetsProbed { get; set; }

Property Value

int

Retraction

Firmware retraction parameters

public ToolRetraction Retraction { get; }

Property Value

ToolRetraction

Spindle

Index of the mapped spindle or -1 if not mapped

public int Spindle { get; set; }

Property Value

int

SpindleRpm

RPM of the mapped spindle

public int SpindleRpm { get; set; }

Property Value

int

Standby

Standby temperatures of the associated heaters (in C)

[Live]
public ObservableCollection<float> Standby { get; }

Property Value

ObservableCollection<float>

State

Current state of this tool

[Live]
public ToolState State { get; set; }

Property Value

ToolState

Methods

Assign(IStaticModelObject)

Assign the properties from another instance. This is required to update model properties which do not have a setter

public void Assign(IStaticModelObject from)

Parameters

from IStaticModelObject

Other instance

Clone()

Clone this instance

public object Clone()

Returns

object

Cloned instance

Remarks

This method is auto-generated

UpdateFromJson(JsonElement, bool)

Update this instance from a given JSON element

public void UpdateFromJson(JsonElement jsonElement, bool ignoreSbcProperties)

Parameters

jsonElement JsonElement

Element to update this intance from

ignoreSbcProperties bool

Whether SBC properties are ignored

Remarks

This method is auto-generated

Exceptions

JsonException

Failed to deserialize data

UpdateFromJsonReader(ref Utf8JsonReader, bool)

Update this instance from a given JSON element

public void UpdateFromJsonReader(ref Utf8JsonReader reader, bool ignoreSbcProperties)

Parameters

reader Utf8JsonReader

Reader to update this intance from

ignoreSbcProperties bool

Whether SBC properties are ignored

Remarks

This method is auto-generated

Exceptions

JsonException

Failed to deserialize data