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
diff options
context:
space:
mode:
authorDavid Crocker <dcrocker@eschertech.com>2019-07-21 21:52:20 +0300
committerDavid Crocker <dcrocker@eschertech.com>2019-07-21 21:52:20 +0300
commit62d5270b85d83836b705597690e4a110a66ba9f0 (patch)
tree36ada13d836019797742405c3bab7db040ae8a20 /src/Endstops/ZProbe.cpp
parent625bdb8073f1c6a230fe1b73e896025d1191767f (diff)
Sensors are configurted separately from heaters
Sensors are now configured separately from heaters. The M305 command is withdrawn and replaced by M308. M950 is extended to sspecify the sensor number when defining a heater.
Diffstat (limited to 'src/Endstops/ZProbe.cpp')
-rw-r--r--src/Endstops/ZProbe.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/Endstops/ZProbe.cpp b/src/Endstops/ZProbe.cpp
index dad89075..e85979c1 100644
--- a/src/Endstops/ZProbe.cpp
+++ b/src/Endstops/ZProbe.cpp
@@ -39,7 +39,7 @@ void ZProbe::SetDefaults()
maxTaps = DefaultZProbeTaps;
invertReading = turnHeatersOff = saveToConfigOverride = false;
type = ZProbeType::none;
- heater = -1;
+ sensor = -1;
inputPort.Release();
modulationPort.Release();
}
@@ -60,10 +60,11 @@ bool ZProbe::AssignPorts(const char* pinNames, const StringRef& reply)
float ZProbe::GetActualTriggerHeight() const
{
- if (heater >= 0)
+ if (sensor >= 0)
{
- const float temperature = reprap.GetHeat().GetTemperature(heater);
- if (temperature >= -100.0)
+ TemperatureError err;
+ const float temperature = reprap.GetHeat().GetSensorTemperature(sensor, err);
+ if (err == TemperatureError::success)
{
return ((temperature - calibTemperature) * temperatureCoefficient) + triggerHeight;
}
@@ -232,14 +233,15 @@ GCodeResult ZProbe::HandleG31(GCodeBuffer& gb, const StringRef& reply)
if (gb.Seen('H'))
{
seen = true;
- heater = gb.GetIValue();
+ sensor = gb.GetIValue();
}
if (gb.Seen('C'))
{
seen = true;
- float currentTemperature = reprap.GetHeat().GetTemperature(heater);
- if (currentTemperature < -100.0)
+ TemperatureError terr;
+ float currentTemperature = reprap.GetHeat().GetSensorTemperature(sensor, terr);
+ if (terr != TemperatureError::success)
{
reply.copy("Cannot set a temperature coefficient without a valid heater number");
err = GCodeResult::error;