Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/Tools
diff options
context:
space:
mode:
authorDavid Crocker <dcrocker@eschertech.com>2017-10-02 22:29:20 +0300
committerDavid Crocker <dcrocker@eschertech.com>2017-10-02 22:29:39 +0300
commitf437e684e7dd4c991b29ffb2b93db7595c5da05e (patch)
tree83147e0042716b8d3e94249aefb517b5e7457549 /src/Tools
parenta81c95e559cf98e37da3105debccb75f63693ee6 (diff)
Version 1.20beta1
Added support for M3, M4, M5 and M450-M453 Added support for DHT11, DHT21 and DHT22 temperature/humidity sensors (thanks chrishamm) Some additional events are now logged The grid defined by M557 is now stored separately from the grid loaded by G29 S1 so that they don't overwrite each other The resurrect.g file is no longer created or deleted during a simulated print SCARA prints are simulated without segmentation so that the simulation runs much faster. In tests, the difference in the simulation time with/without segmentation was negligible. The change to fast PID parameters is now made when the temperature is within 3C of the target instead of when within 1C M408 S1/2/3 responses now include dummy values for the bed heater if there is no bed heater The commands to resume printing that are written to resurrect.g now move the head to 2mm above the printing height, then sideways, then down Bug fixes: If a Duet3D filament sensor was connected and congfigured but flashing an error code instead of sending filament data, the error recovery code running on the Duet caused short pauses in the print On a delta printer if you created additonal axes, when you tried to home them it ran homedelta.g instead of e.g. homeu.g On a delta printer with additional axes, you can now do XYZ moves as soon as the towers have been homed Fixed a possible race condition if the time and date were set at midnight The 4-leadscrew auto/4-screw manual bed levelling code didn't work properly The P parameter was missing from G10 commands written to resurrect.g Arm angle limits are now applied when converting Cartesian to SCARA coordinates The correction limit is no longer applied when computing manual bed levelling screw corrections SCARA arm mode changes are now only permitted in uncoordinated (G0) moves
Diffstat (limited to 'src/Tools')
-rw-r--r--src/Tools/Tool.cpp8
-rw-r--r--src/Tools/Tool.h14
2 files changed, 14 insertions, 8 deletions
diff --git a/src/Tools/Tool.cpp b/src/Tools/Tool.cpp
index ed3c318e..4453e2c7 100644
--- a/src/Tools/Tool.cpp
+++ b/src/Tools/Tool.cpp
@@ -461,4 +461,12 @@ bool Tool::WriteSettings(FileStore *f) const
return ok;
}
+void Tool::SetOffsets(const float offs[MaxAxes])
+{
+ for(size_t i = 0; i < MaxAxes; ++i)
+ {
+ offset[i] = offs[i];
+ }
+}
+
// End
diff --git a/src/Tools/Tool.h b/src/Tools/Tool.h
index 6144e5b4..9af30d4a 100644
--- a/src/Tools/Tool.h
+++ b/src/Tools/Tool.h
@@ -47,8 +47,9 @@ public:
static Tool *Create(int toolNumber, const char *name, long d[], size_t dCount, long h[], size_t hCount, AxesBitmap xMap, AxesBitmap yMap, FansBitmap fanMap, StringRef& reply);
static void Delete(Tool *t);
- const float *GetOffset() const;
- void SetOffset(const float offs[MaxAxes]);
+ const float *GetOffsets() const;
+ void SetOffsets(const float offs[MaxAxes]);
+ void SetOffset(size_t axis, float offs) pre(axis < MaxAxes);
size_t DriveCount() const;
int Drive(size_t driveNumber) const;
bool ToolCanDrive(bool extrude);
@@ -143,17 +144,14 @@ inline size_t Tool::DriveCount() const
return driveCount;
}
-inline const float *Tool::GetOffset() const
+inline const float *Tool::GetOffsets() const
{
return offset;
}
-inline void Tool::SetOffset(const float offs[MaxAxes])
+inline void Tool::SetOffset(size_t axis, float offs)
{
- for(size_t i = 0; i < MaxAxes; ++i)
- {
- offset[i] = offs[i];
- }
+ offset[axis] = offs;
}
#endif /* TOOL_H_ */