DuetAPI Enumeration of supported input channel names The indices of this enum are tightly coupled with RepRapFirmware. Make sure to update this enum accordingly whenever changes are made to it! Code channel for HTTP requests Code channel for Telnet requests Code channel for file prints Code channel for USB requests Code channel for serial devices (e.g. PanelDue) Code channel for running triggers or config.g Code channel for the code queue that executes a couple of codes in-sync with moves Code channel for auxiliary LCD devices (e.g. PanelOne) Default code channel for requests over SPI Code channel that executes the daemon process Code channel for the second UART port Code channel that executes macros on power fail, heater faults and filament out Unknown code channel Base class of a command. When an instance of this class is processed in the control server, the connection identifier of the channel it was received from is assigned. Creates a new instance of the BaseCommand Name of the command to execute Invokes the command implementation Result of the command Base class of commands that do not return a result Reserved for the actual command implementation in the control server Asynchronous task Invokes the command implementation null Base class of a command that returns a result Type of the command result Reserved for the actual command implementation in the control server Command result Invokes the command implementation Command result Cancel a code in Ignore the code to intercept and allow it to be processed without any modifications This command is only permitted in mode Resolve the code to intercept and return the given message details for its completion. This command is only permitted in mode Type of the resolving message Content of the resolving message Analyse a G-code file and return an instance of when ready The filename to extract information from Whether thumbnail content shall be returned Resolve a RepRapFirmware-style path to an actual file path Path that is RepRapFirmware-compatible Check if the given password is correct and matches the previously set value from M551. If no password was configured before or if it was set to "reprap", this will always return true Password to check A parsed representation of a generic G/M/T-code Create an empty Code representation Create a new Code instance and attempt to parse the given code string UTF8-encoded G/M/T-Code The connection ID this code was received from. If this is 0, the code originates from an internal DCS task Usually there is no need to populate this property. It is internally overwritten by the control server on receipt Result of this code. This property is only set when the code has finished its excution. It remains null if the code has been cancelled This used to be of type CodeResult but since v3.2 CodeResult can read Message JSON so it should remain compatible Type of the code Code channel to send this code to Line number of this code Number of whitespaces prefixing the command content Type of conditional G-code (if any) Argument of the conditional G-code (if any) Major code number (e.g. 28 in G28) Minor code number (e.g. 3 in G54.3) Flags of this code Comment of the G/M/T-code. May be null if no comment is present The parser combines different comment segments and concatenates them as a single value. So for example a code like 'G28 (Do homing) ; via G28' causes the Comment field to be filled with 'Do homing via G28' File position of this code in bytes (optional) Length of the original code in bytes (optional) List of parsed code parameters (see for further information) Reset this instance Retrieve the parameter whose letter equals c. Note that this look-up is case-insensitive Letter of the parameter to find The parsed parameter instance or null if none could be found Retrieve the parameter whose letter equals c or generate a default parameter Letter of the parameter to find Default parameter value (no expression) The parsed parameter instance or null if none could be found Reconstruct an unprecedented string from the parameter list or retrieve the parameter which does not have a letter assigned Encapsulate strings in double quotes Unprecedented string Convert the parsed code back to a text-based G/M/T-code Reconstructed code string Convert only the command portion to a text-based G/M/T-code (e.g. G28) Command fraction of the code Convert the keyword to a string Parse the next available G/M/T-code from the given stream Input to read from Code to fill Whether anything could be read Thrown if the code contains errors like unterminated strings or unterminated comments In general it is better to use because this implementation - does not update the line number unless it is specified using the 'N' character - does not set the corresponding flag for G53 after the first code on a line - sets the indentation level only for the first code in a line - does not support Fanuc or LaserWeb styles Add a new parameter to a given instance Code to add the parameter to Letter of the parameter to 0 if unprecedented Value of the parameter Whether the parameter is a quoted string Whether the parameter is definitely a single parameter Convert parameters of this code to driver id(s) Driver ID could not be parsed Convert a given parameter to driver id(s) Driver ID could not be parsed Parse the next available G/M/T-code from the given stream asynchronously Input to read from Code to fill Internal buffer for parsing codes Whether anything could be read Thrown if the code contains errors like unterminated strings or unterminated comments Enumeration of conditional G-code keywords No conditional code If condition Else-if condition Else condition While condition Break instruction Abort instruction Var operation Set operation Echo operation Continue instruction Global operation Code bits to classify G/M/T-codes Placeholder to indicate that no flags are set Code execution finishes as soon as it is enqueued in the code queue If codes are started asynchronously, code replies are normally reported via the object model. In order to keep track of code replies, an connection in mode can be used Code has been preprocessed (i.e. it has been processed by the DCS pre-side code interceptors) Code has been postprocessed (i.e. it has been processed by the internal DCS code processor) Code originates from a macro file Code originates from a system macro file (i.e. RRF requested it) Code comes from config.g or config.g.bak Code comes from config-override.g Enforce absolute positioning via prefixed G53 code Override every other code and send it to the firmware as quickly as possible When this type of code is intercepted, the code can be ignored, cancelled, or resolved, but it is not possible to insert asynchronous codes that complete before the given code. In a future DSF version it may be no longer possible to intercept prioritized codes Do NOT process another code on the same channel before this code has been fully executed Indicates if this code was requested from the firmware Indicates if this is the last code on the line Represents a parsed parameter of a G/M/T-code Initial parsing is done whenever a code is processed Letter of the code parameter (e.g. P in M106 P3) If this is an unprecedented parameter without a letter, '@' is used Indicates if this parameter is an expression that can be evaluated Indicates if this parameter is a driver identifier Unparsed string representation of the code parameter or an empty string if none present Internal parsed representation of the string value (one of string, int, uint, float, int[], uint[] or float[]) Creates a new CodeParameter instance and parses value to a native data type if applicable Letter of the code parameter String representation of the value Whether this is a string. This is set to true if the parameter was inside quotation marks Whether this is a driver ID This constructor does not parsed long (aka int64) values because RRF cannot handle them Creates a new CodeParameter instance and with the given value Letter of the code parameter (automatically converted to upper-case) Value of this parameter Data type of the internally parsed value Implicit conversion operator to float Target object Converted value Data type is not convertible Implicit conversion operator to int Target object Converted value Data type is not convertible Implicit conversion operator to uint Target object Converted value Data type is not convertible Implicit conversion operator to a driver ID Target object Converted value Data type is not convertible Implicit conversion operator to long Target object Converted value Data type is not convertible Implicit conversion operator to bool Target object Converted value Data type is not convertible Implicit conversion operator to string Target object Converted value Implicit conversion operator to an IP address Target object Converted value Implicit conversion operator to float array Target object Converted value Data type is not convertible Implicit conversion operator to integer array Target object Converted value Data type is not convertible Implicit conversion operator to unsigned integer array Target object Converted value Data type is not convertible Implicit conversion operator to a driver ID array Target object Converted value Data type is not convertible Implicit conversion operator to long array Target object Converted value Data type is not convertible Equality operator Code parameter Other object True if both objects are equal Inequality operator Code parameter Other object True if both objects are not equal Checks if the other obj equals this instance Other object True if both objects are not equal Returns the hash code of this instance Computed hash code Converts this parameter to a string String representation Converts a instance to JSON Read a CodeParameter object from JSON JSON reader Type to convert Serializer options Read value Write a CodeParameter to JSON JSON writer Value to serialize Write options Internal buffer for reading asynchronously from files Default constructor of this class How many bytes to buffer when reading from a file Indicates if line numbers are valid Indicates if the last Last indentation level Whether the line started with G53 Internal buffer Pointer in the buffer How many bytes are available for reading Invalidate the buffer internally Current line number Last major G-code to repeat Indicates if the last code may be repeated as per Fanuc or LaserWeb style Invalidate the buffer Get the actual byte position when reading from a stream Reader to read from Actual position in bytes Exception class that is thrown when a G/M/T-code could not be parsed Creates a new CodeParserException Creates a new CodeParserException Exception message Creates a new CodeParserException with details where the parser failed to read data Exception message Code being parsed Creates a new CodeParserException Exception message Inner exception Type of a generic G/M/T-code Undetermined Whole line comment Meta G-code keyword (not sent as a code to RRF) Codes of this type are not sent to RRF in binary representation G-code M-code T-code Evaluate an arbitrary expression on the given channel in RepRapFirmware Do not use this call to evaluate file-based and network-related fields because the DSF and RRF models diverge in this regard Code channel where the expression is evaluated Expression to evaluate Wait for all pending (macro) codes on the given channel to finish. This effectively guarantees that all buffered codes are processed by RRF before this command finishes. If the flush request is successful, true is returned Code channel to flush This value is ignored if this request is processed while a code is being intercepted Invalidate all pending codes and files on a given channel (including buffered codes from DSF in RepRapFirmware) Code channel to invalidate Override the current status as reported by the object model when performing a software update Whether an update is now in progress Perform a simple G/M/T-code Internally the code passed is populated as a full instance and on completion its is transformed back into a basic string. This is useful for minimal extensions that do not require granular control of the code details. Except for certain cases, it is NOT recommended for usage in because it renders the internal code buffer useless. Code to parse and execute Destination channel Whether this code may be executed asynchronously. If set, the code reply is output as a generic message Write an arbitrary generic message If neither OutputMessage nor LogMessage is true, the message is written to the console output Type of the message to write Content of the message to write Output the message on the console and via the object model Write the message to the log file (if applicable) Log level of this message Register a new HTTP endpoint via DuetWebServer. This will create a new HTTP endpoint under /machine/{Namespace}/{EndpointPath}. Returns a path to the UNIX socket which DuetWebServer will connect to whenever a matching HTTP request is received. A plugin using this command has to open a new UNIX socket with the given path that DuetWebServer can connect to . Type of the HTTP request Namespace of the plugin wanting to create a new third-party endpoint Path to the endpoint to register Whether this is an upload request Notification sent by the webserver when a new HTTP request is received Identifier of the corresponding user session. This is -1 if it is an anonymous request List of HTTP query pairs List of HTTP header pairs Type of the body content Body content as plain text or the filename where the body payload was saved if is true Remove an existing HTTP endpoint. Returns true if the endpoint could be successfully removed Type of the endpoint Namespace of the endpoint Endpoint path to unregister Enumeration of supported HTTP responses HTTP status code without payload Plain text (UTF-8) JSON-formatted data File content. Response must hold the absolute path to the file to return Send a response to a received HTTP request HTTP or WebSocket status code to return. If this is greater than or equal to 1000, the WebSocket is closed Codes greater than 1000 represent WebSocket status codes (1000 = normal close) Content to return. If this is null or empty and a WebSocket is connected, the connection is closed Type of the content to return. Ignored if a WebSocket is connected Acknowledge a (partial) model update. This command is only permitted in mode Query the current object model Lock the object model for read/write access. This may be used to update the machine model and to change array items Apply a full patch to the object model. May be used only in non-SPI mode Invalid key specified DCS is not running in non-SPI mode Key to update JSON patch to apply Flag a given network protocol as enabled or disabled The object model must not be locked from the same connection via when this is called! Protocol to change Whether the protocol is enabled or not Set an atomic property in the machine model. Make sure to acquire the read/write lock first! Returns true if the field could be updated Path to the property in the machine model String representation of the value to set Wait for the machine model to be fully updated from RepRapFirmware Unlock the machine model after obtaining read/write access. This is mandatory after has been invoked Install or upgrade a system package Absolute file path to the package file Uninstall a system package Identifier of the package Install or upgrade a plugin Plugin is incompatible Absolute file path to the plugin ZIP bundle Reload the manifest of a given plugin. Useful for packaged plugins Identifier of the plugin Update custom plugin data in the object model May be used to update only the own plugin data unless the plugin has the permission. Note that the corresponding key must already exist in the plugin data! Invalid plugin name or data key specified Identifier of the plugin to update (only mandatory if running as root) Key to set This key must already exist in the object! Custom value to set Command to update the process identifier of a given plugin. Reserved for internal purposes, do not use Identifier of the plugin to update New process identifier of the plugin Start a plugin Identifier of the plugin Defines if the list of executing plugins may be saved Start all the previously started plugins again Stop a plugin Identifier of the plugin Defines if the list of executing plugins may be saved Stop all the plugins and save which plugins were started before. This command is intended for shutdown or update requests Uninstall a plugin Identifier of the plugin Base class for every response to a command request. An instance of this is returned when a regular has finished. Indicates if the command could complete without a runtime error Response of a Type of the response Result of the command Default constructor for a response Creates a new Response instance from the given result Response result Response indicating a runtime exception during the internal processing of a command Name of the .NET exception Message of the .NET exception Creates a new response indicating a runtime error. This constructor is only used for deserialization Creates a new response indicating a runtime error Exception to report Register a new user session. Returns the ID of the new user session Access level of this session Type of this session Origin of this session. For remote sessions, this equals the remote IP address Remove an existing user session Identifier of the user session to remove Supported connection types for client connections Unknown connection type. If this is used, the connection is immediately terminated Command mode. This allows clients to send general purpose messages to the control server like G-codes or requests of the full object model Interception mode. This allows clients to intercept G/M/T-codes before or after they are initially processed Subscription mode. In this mode object model updates are transmitted to the client after each update Code stream mode. This mode lets users send and receive code replies asynchronously using a single socket connection Plugin service mode. This mode is used internally and should not be used by third-party plugins! Static class that holds the connection defaults Current API protocol version number Default directory in which DSF-related UNIX sockets reside Default UNIX socket file for DuetControlServer Default fully-qualified path to the UNIX socket for DuetControlServer Default file to contain the last start error of DCS. Once DCS starts successfully, it is deleted Default code channel to use Default number of codes to buffer in mode Maximum number of codes to buffer in mode Default password Exception class that is thrown if the API version of the client is incompatible to the server Creates a new exception instance Creates a new exception instance Error message Creates a new exception instance Error message Inner exception An instance of this class is sent from the client to the server as a response to the . It allows a client to select the connection mode (). Desired mode of the new connection Version number of the client-side API If this version is incompatible to DCS, a is returned when a connection is being established Enter code streaming connection mode In this connection mode G/M/T-codes are processed asynchronously (up to ) Maximum number of codes being executed simultaneously Destination channel for incoming codes Creates a new init message instance Enter command-based connection mode In this connection mode nearly all of the commands in the namespace can be used Creates a new init message instance Enter interception mode Whenever a code is received, the connection must respond with one of - Cancel to cancel the code - Ignore to pass through the code without modifications - Resolve to resolve the current code and to return a message In addition the interceptor may issue custom commands once a code has been received If this connection mode is used to implement new G/M/T-codes, always call the command before further actions are started and make sure it returns true before the code is further processed. This step is mandatory to guarantee that the new code is executed when all other codes have finished and not when a code is being fed for the internal G-code buffer. If the flush command returns false, it is recommended to send to resolve the command. DCS follows the same pattern for internally processed codes, too. If a code from a macro file is intercepted, make sure to set the flag if new codes are inserted, else they will be started when the macro file(s) have finished. This step is obsolete if a is inserted. Creates a new init message instance Defines in what mode commands are supposed to be intercepted List of channel where codes may be intercepted. If the list is empty, all available channels are used List of G/M/T-codes to filter or Q for comments This may only specify the code type and major/minor number (e.g. G1 or M105). Alternatively keyword types may be specified (e.g. if or elif). Asterisks are supported, too (e.g. T*) Defines if either regular or priority codes are supposed to be intercepted Enter connection mode for the plugin service. This init message is used for internal IPC and should not be used by third-party plugins! Creates a new init message instance An instance of this class is sent by the server to the client in JSON format once a connection has been established. Version of the server-side API Unique connection ID assigned by the control server to allow clients to track their commands Enter subscription mode and receive either the full object model or parts of it after every update Creates a new init message instance Type of the subscription Optional code channel to receive messages from or null if only generic messages are supposed to be received Optional filter path for mode Multiple filters can be used on one connection and they have to be delimited by one of these charaters: ['|', ',', ' ', '\r', '\n'] Optional list of filter paths for mode The style of a filter is similar to XPath. For example, if you want to monitor only the current heater temperatures, you can use the filter expression "heat/heaters[*]/current". Wildcards are supported either for full names or indices. To get updates for an entire namespace, the ** wildcard can be used (for example heat/** for everything heat-related), however it can be only used at the end of a filter expression Type of the intercepting connection Intercept codes before they are internally processed by the control server Intercept codes after the initial processing of the control server but before they are forwarded to the RepRapFirmware controller Receive a notification for executed codes. In this state the final result can be still changed Type of the model subscription Receive full object model after every update Generic messages may or may not be included in the full object model. To keep track of messages reliably, it is strongly advised to create a subscription in mode. Receive only updated JSON fragments of the object model Interface for growing model collections Interface that all object model collections must implement Update this collection from a given JSON array Element to update this intance from Whether SBC properties are ignored Index offset Whether this is the last update Interface for model dictionaries Event that is called when the entire directory is cleared Basic interface for object model classes that have properties Assign the properties from another instance. This is required to update model properties which do not have a setter Other instance Create a dictionary or list of all the differences between this instance and another. This method outputs own property values that differ from the other instance Other instance Object differences or null if both instances are equal Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Generic container for object model arrays Item type Removes all items from the collection Raises the change event handler Event arguments Assign the properties from another instance. This is required to update model properties which do not have a setter Other instance Create a clone of this list Cloned list Create a dictionary or list of all the differences between this instance and another. This method outputs own property values that differ from the other instance Other instance Object differences or null if both instances are equal Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Accepts null as the JSON value to clear existing items Update this collection from a given JSON array Element to update this intance from Whether SBC properties are ignored Index offset Whether this is the last update Class for holding string keys and custom values Key names are NOT converted to camel-case (unlike regular class properties) Flags if keys can be removed again by setting their value to null Internal storage for key/value pairs Event that is called when the entire directory is cleared. Only used if is false Event that is called when a key has been changed Event that is called when a key is being changed Constructor of this class Defines if setting items to null effectively removes them Index operator Key Value Basic index operator Key object Value if found Get an enumerator for this instance Enumerator instance List of keys List of values Whether the dictionary is read-only Whether this dictionary has a fixed size Collection of dictionary keys Collection of dictionary values If this is thread-safe Synchronization root Returns the number of items in this collection Add a new item Key to add Value to add Add a new item Key to add Value to add Add a new item Item to add Assign the properties from another instance Other instance Clear this dictionary Create a clone of this instance Check if a key is present Key to check Whether the key is present Check if a key is present Key to check Whether the key is present Copy this instance to another array Destination array Start index Copy this instance to another dictionary Destination array Start iondex Check if a key-value pair exists Item to check If the item exists in the dictionary Create a dictionary or list of all the differences between this instance and another. This method outputs own property values that differ from the other instance Other instance Object differences or null if both instances are equal Get an enumerator Enumerator Get an enumerator Enumerator Remove a key (only supported if is true) Key to remove Whether the key could be found Remove a key (only supported if is true) Key to remove Whether the key could be found Remove a key-value pair if applicable Item to remove If the key-value pair was present Try to get a value Key to look up Retrieved value Whether the key could be found Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Accepts null as the JSON value to clear existing items Converter factory class for types Checks if the given type can be converted from or to JSON Creates a converter for the given type Target type Conversion options Converter instance Method to create a converter for a specific type Dictionary type Value type Checks if the given type can be converted Type to convert Whether the type can be converted Read from JSON JSON reader Type to convert Read options Read value Write a CodeParameter to JSON JSON writer Value to serialize Write options Generic list container to which items can be added or which can be cleared only Item type Removes all items from the collection Raises the change event handler Event arguments Assign the properties from another instance. This is required to update model properties which do not have a setter Other instance Create a clone of this list Cloned list Create a dictionary or list of all the differences between this instance and another. This method outputs own property values that differ from the other instance Other instance Object differences or null if both instances are equal Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Accepts null as the JSON value to clear existing items Update this collection from a given JSON array Element to update this intance from Whether SBC properties are ignored Index offset Whether this is the last update Base class for machine model properties Event that is triggered when a property is being changed Event that is triggered when a property has been changed Method to update a property value internally Reference to the variable that holds the current value New property value Name of the property Cached dictionary of derived types vs JSON property names vs property descriptors Static constructor that caches the JSON properties of each derived type Function to add custom JSON types. This must be invoked from types with generic type arguments Type to register Get the cached JSON properties of this type Properties of this type Assign the properties from another instance Other instance Create a clone of this instance Cloned object Create a dictionary or list of all the differences between this instance and another. This method outputs own property values that differ from the other instance Other instance Object differences or null if both instances are equal Create a UTF8-encoded JSON patch to bring an old instance to this state Old object state JSON patch Create a string-encoded JSON patch to bring an old instance to this state Old object state JSON patch Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Attribute used to mark properties that are overridden by the control server Indicates if the property may be used in standalone mode Constructor of this attribute Defines if the property is available in standalone mode This represents an accelerometer Number of collected data points in the last run or 0 if it failed Number of completed sampling runs Information about a connected board Accelerometer of this board or null if unknown Filename of the bootloader binary or null if unknown CAN address of this board or null if not applicable Closed loop data of this board or null if unknown Details about a connected display or null if none is connected Date of the firmware build Filename of the firmware binary Name of the firmware build Version of the firmware build Filename of the IAP binary that is used for updates from the SBC or null if unsupported This is only available for the mainboard (first board item) Filename of the IAP binary that is used for updates from the SD card or null if unsupported This is only available for the mainboard (first board item) Maximum number of heaters this board can control Maximum number of motors this board can drive Minimum, maximum, and current temperatures of the MCU or null if unknown Full name of the board Short name of this board State of this board Indicates if this board supports external 12864 displays Indicates if this board supports external displays Unique identifier of the board or null if unknown Minimum, maximum, and current voltages on the 12V rail or null if unknown Minimum, maximum, and current voltages on the input rail or null if unknown Enumeration of possible expansion board states Unknown state Flashing new firmware Failed to flash new firmware Board is being reset Board is up and running This represents information about closed-loop tuning Number of collected data points in the last run or 0 if it failed Number of completed sampling runs Class providing information about a connected display Number of pulses per click of the rotary encoder SPI frequency of the display (in Hz) Name of the attached display type Information about a driver Configured settings of the driver Information about driver settings Whether the drive goes forwards Stall detection settings Provides minimum, maximum and current values ValueType of each property Static constructor, required for derived ModelObject types with generic arguments Current value Minimum value Maximum value Information about stall detection Stall detection threshold Whether the input values are filtered Minimum steps Coolstep register value Action to perform when a stall is detected Information about the configured directories Path to the filaments directory Path to the firmware directory Path to the G-Codes directory Path to the macros directory Path to the menu directory Intended for 12864 displays but currently unused in DSF. It is only needed for the Duet Maestro + DWC Path to the scans directory Path to the system directory Path to the web directory Class representing information about an attached fan Value of this fan (0..1 or -1 if unknown) Blip value indicating how long the fan is supposed to run at 100% when turning it on to get it started (in s) Configured frequency of this fan (in Hz) Maximum value of this fan (0..1) Minimum value of this fan (0..1) Name of the fan Requested value for this fan on a scale between 0 to 1 Current RPM of this fan or -1 if unknown/unset Thermostatic control parameters Thermostatic parameters of a fan List of the heaters to monitor (indices) Upper temperature range required to turn on the fan (in C) Lower temperature range required to turn on the fan (in C) Information about the heat subsystem List of configured bed heaters (indices) Items may be -1 if unconfigured List of configured chamber heaters (indices) Items may be -1 if unconfigured Minimum required temperature for extrusion moves (in C) Minimum required temperature for retraction moves (in C) List of configured heaters Information about a heater Active temperature of the heater (in C) Average heater PWM value (0..1) Current temperature of the heater (in C) Maximum temperature allowed for this heater (in C) This is only temporary and should be replaced by a representation of the heater protection as in RRF Minimum temperature allowed for this heater (in C) This is only temporary and should be replaced by a representation of the heater protection as in RRF Information about the heater model Monitors of this heater Sensor number of this heater or -1 if not configured Standby temperature of the heater (in C) State of the heater Information about the way the heater heats up Cooling rate exponent Cooling rate (in K/s) Dead time (in s) Indicates if this heater is enabled Cooling rate with the fan on (in K/s) Heating rate (in K/s) Indicates if the heater PWM signal is inverted Maximum PWM value Details about the PID controller Standard voltage or null if unknown Details about the PID model of a heater Derivative value of the PID regulator Integral value of the PID regulator Indicates if custom PID values are used Proportional value of the PID regulator Indicates if PID control is being used Information about a heater monitor Action to perform when the trigger condition is met Condition to meet to perform an action Limit threshold for this heater monitor Action to take when a heater monitor is triggered Generate a heater fault Permanently switch off the heater Temporarily switch off the heater until the condition is no longer met Shut down the printer Trigger condition for a heater monitor Heater monitor is disabled Limit temperature has been exceeded Limit temperature is too low State of a heater Heater is turned off Heater is in standby mode Heater is active Heater faulted Heater is being tuned Heater is offline Class representing an extra HTTP endpoint Namespace prefix used for RepRapFirmware HTTP requests HTTP type of this endpoint Namespace of the endpoint May be to register root-level rr_ requests (to emulate RRF poll requests) Path to the endpoint Whether this is a upload request If set to true, the whole body payload is written to a temporary file and the file path is passed via the property Path to the UNIX socket Enumeration of supported HTTP request types HTTP GET request HTTP POST request HTTP PUT request HTTP PATCH request HTTP TRACE request HTTP DELETE request HTTP OPTIONS request WebSocket request. This has not been implemented yet but it is reserved for future usage Compatibility level for emulation No emulation (same as RepRapFirmware) Emulating RepRapFirmware Emulating Marlin Emulating Teacup Emulating Sprinter Emulating Repetier Special emulation for NanoDLP Distance unit used for positioning Millimeters Inches Information about a G/M/T-code channel Whether relative positioning is being used Emulation used on this channel Whether inches are being used instead of mm Whether relative extrusion is being used Current feedrate in mm/s Whether a macro file is being processed Indicates if the current macro file can be restarted after a pause Name of this channel Depth of the stack State of this input channel Number of the current line Whether volumetric extrusion is being used State of a channel Awaiting message acknowledgement Channel is idle Channel is executing a G/M/T-code Channel is waiting for more data Channel is reading a G/M/T-code List holding information about the available G/M/T-code channels During runtime some elements may be replaced with null if they are not available Total number of supported input channels Constructor of this class G/M/T-code channel for HTTP requests G/M/T-code channel for Telnet requests G/M/T-code channel for file prints G/M/T-code channel for USB G/M/T-code channel for AUX (UART/PanelDue) G/M/T-code channel for running triggers or config.g G/M/T-code channel for the code queue G/M/T-code channel for AUX (UART/PanelDue) Default G/M/T-code channel for generic codes Code channel that executes the daemon process G/M/T-code chanel for auto pause events Index operator for easy access via an value Channel to retrieve information about Information about the code channel Information about the current build Index of the current object being printed or -1 if unknown This value may now be greater than the length of the job.build.objects array. This is because the size of job.build.objects is limited to conserve memory (to 20 on Duet 2 or 40 on Duet 3), whereas when M486 labelling is used, many more objects can be numbered and the first 64 can be cancelled individually Whether M486 names are being used Whether M486 numbers are being used List of detected build objects Information about a detected build object Indicates if this build object is cancelled Name of the build object (if any) X coordinates of the build object (in mm or null if not found) Y coordinates of the build object (in mm or null if not found) Holds information about a G-code file Filament consumption per extruder drive (in mm) The filename of the G-code file Name of the application that generated this file Build height of the G-code job or 0 if not found (in mm) Value indicating when the file was last modified or null if unknown Height of each other layer or 0 if not found (in mm) Number of total layers or 0 if unknown Estimated print time (in s) Estimated print time from G-code simulation (in s) Size of the file Collection of thumbnails parsed from Gcode Class used to convert G-code file info to and from JSON Read a parsed file info object from a JSON reader JSON reader Target type JSON options Parsed file info object Write a parsed file info object to a JSON writer JSON writer Machine model JSON options Information about the current job Information about the current build or null if not available Total active duration of the current job file (in s or null) Information about the file being processed Current position in the file being processed (in bytes or null) Duration of the first layer (in s or null) Total duration of the last job (in s or null) Name of the last file processed or null if none Indicates if the last file was aborted (unexpected cancellation) Indicates if the last file was cancelled (user cancelled) Indicates if the last file processed was simulated This is not set if the file was aborted or cancelled Number of the current layer or null not available Information about the past layers In previous API versions this was a but it has been changed to to allow past layers to be modified again when needed. Note that previous plugins subscribing to this property will not receive any more updates about this property to avoid memory leaks Time elapsed since the last layer change (in s or null) Total pause time since the job started Total extrusion amount without extrusion factors applied (in mm) Estimated times left Time needed to heat up the heaters (in s or null) Information about a layer from a file being printed Duration of the layer (in s) Actual amount of filament extruded during this layer (in mm) Fraction of the file printed during this layer (0..1) Height of the layer (in mm or 0 if unknown) Last heater temperatures (in C or null if unknown) Information about a thumbnail from a G-code file Base64-encoded thumbnail or null if invalid or not requested This property is not provided by RepRapFirmware fileinfo results and it may be null if no thumbnail content is requested Format of this thumbnail Height of this thumbnail File offset of this thumbnail Size of this thumbnail Width of this thumbnail Image formats for parsed thumbnails Joint Photographic Experts Group Portable Network Graphics Quite OK Image Estimations about the times left Time left based on filament consumption (in s or null) Time left based on file progress (in s or null) Time left based on the layer progress (in s or null) Time left based on the slicer reports (see M73, in s or null) Machine configuration limits Maximum number of axes or null if unknown Maximum number of axes + extruders or null if unknown Maximum number of bed heaters or null if unknown Maximum number of boards or null if unknown Maximum number of chamber heaters or null if unknown Maximum number of drivers or null if unknown Maximum number of drivers per axis or null if unknown Maximum number of extruders or null if unknown Maximum number of extruders per tool or null if unknown Maximum number of fans or null if unknown Maximum number of general-purpose input ports or null if unknown Maximum number of general-purpose output ports or null if unknown Maximum number of heaters or null if unknown Maximum number of heaters per tool or null if unknown Maximum number of monitors per heater or null if unknown Maximum number of restore points or null if unknown Maximum number of sensors or null if unknown Maximum number of spindles or null if unknown Maximum number of tools or null if unknown Maximum number of tracked objects or null if unknown Maximum number of triggers or null if unknown Maximum number of volumes or null if unknown Maximum number of workplaces or null if unknown Maximum number of Z-probe programming bytes or null if unknown Maximum number of Z-probes or null if unknown Generic container for messages Create a new message Create a new message Message type Message content Content of this message May be empty but not null Time at which the message was generated Type of this message Replace the content if empty or append a new line that is not empty Line content Append another message to this one, potentially overwriting the message type Message to append Append another message to this one, potentially overwriting the message type Message type Message content Converts this message to a RepRapFirmware-style message RepRapFirmware-style message Type of a generic message This is a success message This is a warning message This is an error message Information about a configured axis List of supported axis letters Acceleration of this axis (in mm/s^2) Babystep amount (in mm) Motor current (in mA) List of the assigned drivers Whether or not the axis is homed Motor jerk (in mm/min) Letter of this axis Current machine position (in mm) or null if unknown/unset Maximum travel of this axis (in mm) Whether the axis maximum was probed Microstepping configuration Minimum travel of this axis (in mm) Whether the axis minimum was probed Percentage applied to the motor current (0..100) Percentage applied to the motor current during standstill (0..100 or null if not supported) Maximum speed (in mm/min) Number of microsteps per mm Current user position (in mm) or null if unknown Whether or not the axis is visible Offsets of this axis for each workplace (in mm) Information about the current move Acceleration of the current move (in mm/s^2) Deceleration of the current move (in mm/s^2) Laser PWM of the current move (0..1) or null if not applicable Requested speed of the current move (in mm/s) Top speed of the current move (in mm/s) Information about an extruder drive Acceleration of this extruder (in mm/s^2) Motor current (in mA) Assigned driver Name of the currently loaded filament Extrusion factor to use (0..1 or greater) Motor jerk (in mm/s) Microstepping configuration Nonlinear extrusion parameters (see M592) Percentage applied to the motor current (0..100) Percentage applied to the motor current during standstill (0..100 or null if not supported) Extruder position (in mm) Pressure advance Raw extruder position as commanded by the slicer without extrusion factor applied (in mm) Maximum speed (in mm/s) Number of microsteps per mm Nonlinear extrusion parameters (see M592) A coefficient in the extrusion formula B coefficient in the extrusion formula Upper limit of the nonlinear extrusion compensation Parameters describing input shaping Amplitudes of the input shaper Damping factor Input shaper durations (in s) Frequency (in Hz) Minimum acceleration (in mm/s) Configured input shaping type Enumeration of possible input shaping methods None MZV ZVD ZVDD ZVDDD EI2 (2-hump) EI3 (3-hump) Information about core kinematics Constructor of this class Forward matrix Inverse matrix Delta kinematics Delta radius (in mm) Homed height of a delta printer in mm Print radius for Hangprinter and Delta geometries (in mm) Delta tower properties How much Z needs to be raised for each unit of movement in the +X direction How much Z needs to be raised for each unit of movement in the +Y direction Delta tower properties Tower position corrections (in degrees) Diagonal rod length (in mm) Deviation of the ideal endstop position (in mm) X coordinate of this tower (in mm) Y coordinate of this tower (in mm) Information about hangprinter kinematics Anchor configurations for A, B, C, Dz Print radius (in mm) Information about the configured geometry Currently configured geometry type Segmentation parameters or null if not configured Figure out the required type for the given kinematics name Kinematics name Required type Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Enumeration of supported kinematics Cartesian CoreXY CoreXY with extra U axis CoreXY with extra UV axes CoreXZ MarkForged Five-bar SCARA Hangprinter Linear Delta Polar Rotary delta SCARA Unknown Class to convert a to and from JSON Read a from JSON JSON reader Type to convert Serializer options Read value Write a to JSON JSON writer Value to serialize Write options Kinematics class for polar kinematics Kinematics class for SCARA kinematics Tilt correction parameters for Z leadscrew compensation Correction factor Last corrections (in mm) Maximum Z correction (in mm) Pitch of the Z leadscrews (in mm) X positions of the leadscrews (in mm) Y positions of the leadscrews (in mm) Base kinematics class that provides the ability to level the bed using Z leadscrews Parameters describing the tilt correction Microstepping configuration Indicates if the stepper driver uses interpolation Microsteps per full step Idle factor parameters for automatic motor current reduction Motor current reduction factor (0..1) Idle timeout after which the stepper motor currents are reduced (in s) Information about the move subsystem List of the configured axes Information about the automatic calibration Information about the currently configured compensation options Information about the current move List of configured extruders Idle current reduction parameters Configured kinematics options Limit axis positions by their minima and maxima Indicates if standard moves are forbidden if the corresponding axis is not homed Maximum acceleration allowed while printing (in mm/s^2) List of move queue items (DDA rings) Parameters for centre rotation Parameters for input shaping Speed factor applied to every regular move (0.01..1 or greater) Maximum acceleration allowed while travelling (in mm/s^2) Virtual total extruder position Index of the currently selected workplace Index of the currently selected workspace Information about configured calibration options Final calibration results (for Delta calibration) Initial calibration results (for Delta calibration) Number of factors used (for Delta calibration) Information about the configured compensation options Effective height before the bed compensation is turned off (in mm) or null if not configured Full path to the currently used height map file or null if none is in use Grid settings of the loaded heightmap or null if no heightmap is loaded Deviations of the mesh grid or null if not applicable Probe grid settings as defined by M557 Information about the configured orthogonal axis parameters Type of the compensation in use Supported compensation types No compensation Mesh compensation Calibration or mesh grid results RMS deviation (in mm) Mean deviation (in mm) Information about a DDA ring The minimum idle time before we should start a move (in s) Maximum number of moves that can be accomodated in the DDA ring Information about centre rotation as defined by G68 Angle of the centre rotatation (in deg) XY coordinates of the centre rotation Move segmentation parameters Number of segments per second Minimum length of a segment (in mm) Information about the configured probe grid (see M557) Axis letters of this heightmap End coordinates of the heightmap Start coordinates of the heightmap Probing radius for delta kinematics Spacings between the coordinates X start coordinate of the heightmap X end coordinate of the heightmap Spacing between the probe points in X direction Y start coordinate of the heightmap Y end coordinate of the heightmap Spacing between the probe points in Y direction Class holding details about orthogonoal axis compensation parameters Indicates if the TanXY value is used to compensate X when Y moves (else Y when X moves) Tangent of the skew angle for the XY or YX axes Tangent of the skew angle for the XZ axes Tangent of the skew angle for the YZ axes Information about the network subsystem Default name of the machine Fallback hostname if the Name is invalid Default network password of the machine If this is set, the web server will allow cross-origin requests via the Access-Control-Allow-Origin header Hostname of the machine List of available network interfaces Name of the machine Information about a network interface List of active protocols Actual IPv4 address of the network adapter Configured IPv4 address of the network adapter Configured IPv4 DNS server fo the network adapter Version of the network interface or null if unknown. This is primarily intended for the ESP8266-based network interfaces as used on the Duet WiFi IPv4 gateway of the network adapter Physical address of the network adapter Number of reconnect attempts or null if unknown Signal of the WiFi adapter (only WiFi, in dBm, or null if unknown) Speed of the network interface (in MBit, null if unknown, 0 if not connected) Subnet of the network adapter Type of this network interface Supported types of network interfaces Wired network interface Wireless network interface Supported network protocols HTTP protocol HTTPS protocol FTP protocol SFTP protocol Telnet protocol SSH protocol Representation of the full machine model as maintained by DCS List of connected boards The first item represents the main board Information about the individual directories This may not be available in RepRapFirmware if no mass storages are available List of configured fans Dictionary of global variables vs JSON values When DSF attempts to reconnect to RRF, this may be set to null to clear the contents Information about the heat subsystem List of registered third-party HTTP endpoints Information about every available G/M/T-code channel Information about the current job Machine configuration limits Generic messages that do not belong explicitly to codes being executed. This includes status messages, generic errors and outputs generated by M118 Information about the move subsystem Information about connected network adapters Dictionary of SBC plugins where each key is the plugin identifier Values in this dictionary cannot become null. If a change to null is reported, the corresponding key is deleted. Do not rely on the setter of this property; it will be removed from a future version. Information about the 3D scanner subsystem Information about connected sensors including Z-probes and endstops List of configured CNC spindles Information about the machine state List of configured tools List of user sessions List of available mass storages Update a specific key of this instance from a given JSON element as provided by the firmware Property name to update Element to update this intance from Index offset Whether this is the last update Whether the key could be updated Update this instance from a given JSON element Element to update this intance from Whether the key could be updated Update a specific key of this instance from a given JSON element Property name to update Element to update this intance from Whether the key could be updated Update the whole or a specific key of this instance from a given JSON element Property name to update or null if the whole object model is supposed to be updated Element to update this intance from Whether SBC properties are ignored Index offset (collection keys only) Whether this is the last update (collection keys only) Whether the key could be updated Convert this instance to a JSON text JSON object Serialize this instance to a UTF-8 string Class used to convert model objects to and from JSON Read a machine model object from a JSON reader JSON reader Target type JSON options Machine model Write a machine model to a JSON writer JSON writer Machine model JSON options Class representing a loaded plugin List of files for the DSF plugin List of files for the DWC plugin List of files to be installed to the (virtual) SD excluding web files Process ID of the plugin or -1 if not started. It is set to 0 while the plugin is being shut down Information about a third-party plugin Identifier of this plugin. May consist of letters and digits only (max length 32 chars) For plugins with DWC components, this is the Webpack chunk name too Name of the plugin. May consist of letters, digits, dashes, and underscores only (max length 64 chars) Author of the plugin Version of the plugin License of the plugin. Should follow the SPDX format (see https://spdx.org/licenses/) Link to the plugin homepage or source code repository Major/minor compatible DWC version List of DWC plugins this plugin depends on. Circular dependencies are not supported Set to true if a SBC is absolutely required for this plugin Required DSF version for the plugin running on the SBC (ignored if there is no SBC executable) Filename in the dsf directory used to start the plugin A plugin may provide different binaries in subdirectories per architecture. Supported architectures are: arm, arm64, x86, x86_64 Command-line arguments for the executable List of other filenames in the dsf directory that should be executable Defines if messages from stdout/stderr are output as generic messages List of permissions required by the plugin executable running on the SBC List of packages this plugin depends on (apt packages in the case of DuetPi) List of Python packages this plugin depends on List of SBC plugins this plugin depends on. Circular dependencies are not supported Major/minor supported RRF version (optional) Custom plugin data to be populated in the object model (DSF/DWC in SBC mode - or - DWC in standalone mode). Before can be used, corresponding properties must be registered via this property first! Check if the given version satisfies a required version Actual version Required version Whether the actual version fulfills teh requirement Information about the 3D scanner subsystem Progress of the current action (on a scale between 0 to 1) Previous status responses used a scale of 0..100 Status of the 3D scanner Possible states of the attached 3D scanner Scanner is disconnected (none present) Scanner is registered and idle Scanner is scanning an object Scanner is post-processing a file Scanner is calibrating Scanner is uploading Representation of an analog sensor Last sensor reading (in C) or null if invalid Name of this sensor or null if not configured Type of this sensor Enumeration of supported analog sensor types Regular temperature thermistor PT1000 sensor RTD MAX31865 MAX31855 thermocouple MAX31856 thermocouple Linear analog sensor DHT11 sensor DHT21 sensor DHT22 sensor DHT humidity sensor Current loop sensor MCU temperature On-board stepper driver sensors Stepper driver sensors on the DueX expansion board Unknown temperature sensor Class to convert an to and from JSON Read an from JSON JSON reader Type to convert Serializer options Read value Write an to JSON JSON writer Value to serialize Write options Information about an endstop Whether this endstop is at the high end of the axis Whether or not the endstop is hit Type of the endstop Type of a configured endstop Generic input pin Z-probe acts as an endstop Motor stall detection stops all the drives when triggered Motor stall detection stops individual drives when triggered Unknown type Information about a filament monitor Indicates if this filament monitor is enabled Last reported status of this filament monitor Type of this filament monitor Figure out the required type for the given filament monitor type Filament monitor type Required type Update this instance from a given JSON element Element to update this intance from Whether SBC properties are ignored Updated instance Failed to deserialize data Possible filament sensor status No monitor is present Filament working normally No data received from the remote filament senosr No filament present Sensor reads less movement than expected Sensor reads more movment than expected Sensor encountered an error Enumeration of supported filament sensors Simple filament sensor Laser filament sensor Pulsed filament sensor Rotating magnet filament sensor Unknown sensor type Calibrated properties of a laser filament monitor Calibration factor of this sensor Maximum percentage (0..1 or greater) Minimum percentage (0..1) Calibrated sensivity Total extruded distance (in mm) Configured properties of a laser filament monitor Whether all moves and not only printing moves are supposed to be checked Maximum percentage (0..1 or greater) Minimum percentage (0..1) Sample distance (in mm) Information about a laser filament monitor Constructor of this class Calibrated properties of this filament monitor Configured properties of this filament monitor Indicates if a filament is present Calibrated properties of a pulsed filament monitor Extruded distance per pulse (in mm) Maximum percentage (0..1 or greater) Minimum percentage (0..1) Total extruded distance (in mm) Configured properties of a pulsed filament monitor Extruded distance per pulse (in mm) Maximum percentage (0..1 or greater) Minimum percentage (0..1) Sample distance (in mm) Information about a pulsed filament monitor Constructor of this class Calibrated properties of this filament monitor Configured properties of this filament monitor Calibrated properties of a rotating magnet filament monitor Extruded distance per revolution (in mm) Maximum percentage (0..1 or greater) Minimum percentage (0..1) Total extruded distance (in mm) Configured properties of a rotating magnet filament monitor Whether all moves and not only printing moves are supposed to be checked Extruded distance per revolution (in mm) Maximum percentage (0..1 or greater) Minimum percentage (0..1) Sample distance (in mm) Information about a rotating magnet filament monitor Constructor of this class Calibrated properties of this filament monitor Configured properties of this filament monitor Details about a general-purpose input port Value of this port (0..1) Information about a configured probe Calibration temperature (in C) Indicates if the user has deployed the probe Whether probing disables the heater(s) Dive height (in mm) Height of the probe where it stopped last time (in mm) Maximum number of times to probe after a bad reading was determined X+Y offsets (in mm) Recovery time (in s) Probe speed (in mm/s) Fast and slow probing speeds (in mm/s) First temperature coefficient List of temperature coefficients Configured trigger threshold (0..1023) Allowed tolerance deviation between two measures (in mm) Travel speed when probing multiple points (in mm/s) Z height at which the probe is triggered (in mm) Type of the configured probe Current analog values of the probe Supported probe types No probe A simple unmodulated probe (like dc42's infrared probe) A modulated probe (like the original one shipped with the RepRapPro Ormerod) Alternate analog probe (like the ultrasonic probe) Endstop switch (obsolete, should not be used any more) A switch that is triggered when the probe is activated (filtered) Endstop switch on the E1 endstop pin (obsolete, should not be used any more) Endstop switch on Z endstop pin (obsolete, should not be used any more) A switch that is triggered when the probe is activated (unfiltered) A BLTouch probe Z motor stall detection Information about sensors List of analog sensors List of configured endstops List of configured filament monitors List of general-purpose input ports List of configured probes Information about a CNC spindle Active RPM Flags whether the spindle may spin in reverse direction Current RPM, negative if anticlockwise direction Frequency (in Hz) Minimum RPM when turned on Maximum RPM Current state Possible state of a spindle Spinde not configured Spindle is stopped (inactive) Spindle is going forwards Spindle is going in reverse Details about a requested beep Duration of the requested beep (in ms) Frequency of the requested beep (in Hz) Details about a general-purpose output port PWM value of this port (0..1) Class representing the configured log level Log everything including debug messages Log information and warning messages Log warning messages only Logging is disabled Possible operation modes of the machine Fused Filament Fabrication (default) Computer Numerical Control Laser operation mode (e.g. laser cutters) Possible states of the firmware Not connected to the Duet Processing config.g The firmware is being updated The machine is turned off (i.e. the input voltage is too low for operation) The machine has encountered an emergency stop and is ready to reset The machine is about to pause a file job The machine has paused a file job The machine is about to resume a paused file job Job file is being cancelled The machine is processing a file job The machine is simulating a file job to determine its processing time The machine is busy doing something (e.g. moving) The machine is changing the current tool The machine is on but has nothing to do Information about the message box to show Bitmap of the axis movement controls to show (indices) Content of the message box Mode of the message box to display Sequence number of the message box This is increased whenever a new message box is supposed to be displayed Total timeout for this message box (in ms) Title of the message box Supported modes of displaying a message box Display a message box without any buttons Display a message box with only a Close button Display a message box with only an Ok button which is supposed to send M292 when pressed Display a message box with an Ok button that sends M292 P0 or a cancel button that sends M292 P1 when clicked Class holding information about a restore point Axis coordinates of the restore point (in mm) The virtual extruder position at the start of this move PWM value of the tool fan (0..1) Requested feedrate (in mm/s) The output port bits setting for this move or null if not applicable Laser PWM value (0..1) or null if not applicable The spindle RPMs that were set, negative if anticlockwise direction The tool number that was active Information about the machine state State of the ATX power pin (if controlled) Port of the ATX power pin or null if not assigned Information about a requested beep or null if none is requested Number of the currently selected tool or -1 if none is selected When provided it normally has value 0 normally and 1 when a deferred power down is pending It is only available after power switching has been enabled by M80 or M81 Persistent message to display (see M117) Version of the Duet Software Framework package Indicates if DSF allows the installation and usage of third-party plugins Indicates if DSF allows the installation and usage of third-party root plugins (potentially dangerous) List of general-purpose output ports Laser PWM of the next commanded move (0..1) or null if not applicable Log file being written to or null if logging is disabled Current log level Details about a requested message box or null if none is requested Current mode of operation Indicates if the current macro file was restarted after a pause Millisecond fraction of Number of the next tool to be selected Indicates if at least one plugin has been started Script to execute when the power fails Number of the previous tool List of restore points Current state of the machine Index of the current G-code input channel (see ) This is primarily intended for macro files to determine on which G-code channel it is running. The value of this property is always null in object model queries Internal date and time in RepRapFirmware or null if unknown How long the machine has been running (in s) Information about a configured tool Active temperatures of the associated heaters (in C) Associated axes. At present only X and Y can be mapped per tool. 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 Extruder drives of this tool List of associated fans (indices) Feedforward coefficients to apply to the mapped heaters during extrusions Extruder drive index for resolving the tool filament (index or -1) List of associated heaters (indices) True if the filament has been firmware-retracted Mix ratios of the associated extruder drives Name of this tool Number of this tool Axis offsets (in mm) This list is in the same order as Bitmap of the probed axis offsets Firmware retraction parameters Index of the mapped spindle or -1 if not mapped RPM of the mapped spindle Standby temperatures of the associated heaters (in C) Current state of this tool Tool retraction parameters Amount of additional filament to extrude when undoing a retraction (in mm) Retraction length (in mm) Retraction speed (in mm/s) Unretract speed (in mm/s) Amount of Z lift after doing a retraction (in mm) States of a tool Tool is turned off Tool is active Tool is in standby Defines what a user is allowed to do Changes to the system and/or operation are not permitted Changes to the system and/or operation are permitted Types of user sessions Local client Remote client via HTTP Remote client via Telnet Class representing a user session Access level of this session Identifier of this session Origin of this session. For remote sessions, this equals the remote IP address Corresponding identifier of the origin. If it is a remote session, it is the remote port, else it defaults to the PID of the current process Type of this session Information about a storage device Total capacity of the storage device (in bytes or null) How much space is still available on this device (in bytes or null) Whether the storage device is mounted Name of this volume Number of currently open files or null if unknown Total size of this volume (in bytes or null) Logical path of the storage device Speed of the storage device (in bytes/s or null if unknown) Class representing a driver identifier Default constructor of this class Constructor for creating a new instance from an unsigned integer Unsigned integer Constructor for creating a new instance from a board and a port Board number Port number Constructor for creating a new instance from a string String value Driver ID could not be parsed Board of this driver identifier Port of this driver identifier Convert an instance to an unsigned integer as expected by RepRapFirmware Driver ID to convert Convert an instance to a string Driver ID to convert Compute a hash code for this instance Hash code Convert this instance to a string String representation Checks whether this instance is equal to another Other instance Whether this and the other instance are equal Converter for instances Read an instance from JSON JSON reader Target type JSON options Write an instance to JSON JSON writer Value to write JSON options Helper class to generate RRF-style file lists Make a filelist container for M20 Items to include RRF directory First item True if the file list is complete JSON file list object Get an estimate how big the UTF8-encoded file list will be in bytes Items to include RRF directory First item Size of the UTF8-encoded file list in bytes Get a /rr_files or M20 files response RRF path to the directory Physical directory First item to send Prefix directories with an asterisk Maximum size of the file list in bytes or -1 if unset JSON file list Get a /rr_filelist or M20 files response RRF path to the directory Physical directory First file index to return. Set startAt to -1 to omit error handling and the JSON object container Maximum size of the file list in bytes or -1 if unset JSON list Class representing a heightmap X start coordinate of the heightmap X end coordinate of the heightmap Spacing between the probe points in X direction Y start coordinate of the heightmap Y end coordinate of the heightmap Spacing between the probe points in Y direction Probing radius on delta geometries Number of probe points in X direction Number of probe points in Y direction Z coordinate of each probe point Load a new heightmap from the given CSV file Path to the file Asynchronous task Invalid file Save a heightmap to the given CSV file Filename of the heightmap Asynchronous task Class for easier access to JsonStringEnumConverter with camel-case naming Converter factory for creating new camel-case converters Creates a new instance Checks if the given type can be converted Type to convert Whether the type can be converted Creates a new JSON converter Type to convert Conversion options JSON converter Converter factory for converting enum types to char Checks if the given type can be converted Type to convert If the type can be converted Creates a converter for the given type Inner converter for char to enum conversions Checks if the given type can be converted Type to convert Whether the type can be converted Read from JSON JSON reader Type to convert Read options Read value Write a CodeParameter to JSON JSON writer Value to serialize Write options JSON converter to read and write a list of regular expressions This class may become obsolete in a future .NET Core version. For some reason it has no effect to add this converter to the default JSON options. Read a Regex list from JSON JSON reader Type to convert Reader options Read value Write a Regex list to JSON JSON writer Value to serialize Write options Helper class for JSON serialization, deserialization, patch creation and patch application Default JSON (de-)serialization options Receive a serialized JSON object from a socket in UTF-8 format Socket to read from Cancellation token Plain JSON Operation has been cancelled Connection has been closed Convert a to an object Object type Element to deserialize JSON serializer options Deserialized object The original code is from https://stackoverflow.com/questions/58138793/system-text-json-jsonelement-toobject-workaround and it will become obsolete when DSF is migrated to .NET Core 5. Convert a to an object Element to deserialize Object type JSON serializer options Deserialized object The original code is from https://stackoverflow.com/questions/58138793/system-text-json-jsonelement-toobject-workaround and it will become obsolete when DSF is migrated to .NET Core 5. Convert a to an object Object type Document to deserialize JSON serializer options Deserialized object The original code is from https://stackoverflow.com/questions/58138793/system-text-json-jsonelement-toobject-workaround and it will become obsolete when DSF is migrated to .NET Core 5. Class to convert enums to and from lowercase JSON strings Checks if the given type can be converted Type to convert If the type can be converted Creates a converter for the given type Inner converter for char to enum conversions Enum type Checks if the type can be converted Type to convert True if the type can be converted Read an enum value from JSON JSON reader Type to convert Read options Deserialized enum value Write an enum value to lowercase JSON JSON writer Value to write Write options JSON converter for converting inherited class types to JSON Read from JSON JSON reader Type to convert Read options Read value Write a CodeParameter to JSON JSON writer Value to serialize Write options JSON converter for short DateTime values Read a short DateTime from JSON JSON reader Target type Serializer options Deserialized DateTime or null Write a short DateTime to JSON JSON writer Value to write Serializer options Attribute to define the permissions of each command Required permissions for the given command Constructor for this attribute type Check if the given permissions are sufficient Permissions to check True if permission is granted Enumeration of supported plugin permissions No permissions set (default value) Execute generic commands Intercept codes but don't interact with them Intercept codes in a blocking way with options to resolve or cancel them Install, load, unload, and uninstall plugins. Grants FS access to all third-party plugins too Service plugin runtime information (for internal purposes only, do not use) Manage user sessions Read from the object model Read from and write to the object model Create new HTTP endpoints Read files in 0:/filaments Write files in 0:/filaments Read files in 0:/firmware Write files in 0:/firmware Read files in 0:/gcodes Write files in 0:/gcodes Read files in 0:/macros Write files in 0:/macros Read files in 0:/menu Write files in 0:/menu Read files in 0:/sys Write files in 0:/sys Read files in 0:/www Write files in 0:/www Access files including all subdirecotires of the virtual SD directory as DSF user Launch new processes Communicate over the network (stand-alone) Access /dev/video* devices Access /dev/gpio*, /dev/i2c*, and /dev/spidev* devices Launch process as root user (for full device control - potentially dangerous) Class to (de-)serialize SBC permission flags Checks if the given type can be converted Type to convert Whether the type can be converted Read SBC permissions from JSON JSON reader Target type Serializer options Deserialized permissions Write SBC permissions to JSON JSON writer Value Serializer options