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-09-14 22:41:21 +0300
committerDavid Crocker <dcrocker@eschertech.com>2019-09-14 22:41:21 +0300
commit2b0ee17e0b5f32a936b2c6f3dafc37685673adbc (patch)
tree2159fd7209bb53683559ec062b417e3465efed69 /src/Endstops/RemoteZProbe.h
parent7340676a46146d3581855aa1294c5dff18d8e48b (diff)
More work on remote Z probe support
Diffstat (limited to 'src/Endstops/RemoteZProbe.h')
-rw-r--r--src/Endstops/RemoteZProbe.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/Endstops/RemoteZProbe.h b/src/Endstops/RemoteZProbe.h
new file mode 100644
index 00000000..cc6812bc
--- /dev/null
+++ b/src/Endstops/RemoteZProbe.h
@@ -0,0 +1,38 @@
+/*
+ * RemoteZProbe.h
+ *
+ * Created on: 14 Sep 2019
+ * Author: David
+ */
+
+#ifndef SRC_ENDSTOPS_REMOTEZPROBE_H_
+#define SRC_ENDSTOPS_REMOTEZPROBE_H_
+
+#include "ZProbe.h"
+
+#if SUPPORT_CAN_EXPANSION
+
+class RemoteZProbe final : public ZProbe
+{
+public:
+ void* operator new(size_t sz) { return Allocate<RemoteZProbe>(); }
+ void operator delete(void* p) { Release<RemoteZProbe>(p); }
+
+ RemoteZProbe(unsigned int num, CanAddress bn) : ZProbe(num, ZProbeType::none), boardAddress(bn) { }
+ ~RemoteZProbe() override;
+ void SetIREmitter(bool on) const override { }
+ uint16_t GetRawReading() const override { return 0; }
+ void SetProbing(bool isProbing) const override;
+ GCodeResult AppendPinNames(const StringRef& str) const override;
+ GCodeResult Configure(GCodeBuffer& gb, const StringRef& reply, bool& seen) override;
+ GCodeResult SendProgram(const uint32_t zProbeProgram[], size_t len, const StringRef& reply) override;
+
+ GCodeResult Create(const StringRef& pinNames, const StringRef& reply);
+
+private:
+ CanAddress boardAddress;
+};
+
+#endif
+
+#endif /* SRC_ENDSTOPS_REMOTEZPROBE_H_ */