Duet 3D Reverse-Feed Plugin
Budget: $10 – $30 USD
I’m upgrading a Duet 3D tool-changer running RepRapFirmware 3.6.0 + DWC and I need a custom “Run Reverse” plugin that mimics LinuxCNC’s M52 behaviour. The heart of the job is rock-solid, accurate reverse-feed: when a monitored sensor value crosses a set threshold the machine must instantly rewind the just-executed toolpath, then continue forward exactly from the last G-code coordinate once conditions normalise.
Key operating model
• Sensor data will be polled every 50–100 ms; this cadence is non-negotiable because of existing hardware constraints.
• While reversing, feed must remain adaptive from +200 % down to –100 %, with smooth transitions to avoid step-loss or motor stall.
• Stabilisation is dynamic: the cycle length and number of oscillations should adjust on-the-fly using the same sensor feedback, not a fixed timer.
• After a successful cycle the printer resumes seamlessly without leaving artefacts or losing position.
I will hand over a full statement of work (PDF), current config.g, and a test G-code suite the moment we agree. All code must compile cleanly inside the RepRapFirmware 3.6.0 build environment and integrate with DWC through its plugin API; no firmware forks, just a drop-in binary plus source under the existing licence.
Deliverables
1. Well-documented source code and compiled plugin (.zip) ready for the Duet Object Model.
2. A brief build guide showing compiler flags and any third-party libraries used.
3. Validation video or live screen-share proving: correct threshold detection, reverse motion, adaptive feed shifts, dynamic stabilisation, and perfect resume.
4. Post-delivery support for clarification or minor bug fixes during initial rollout.
If you already speak RepRapFirmware internals, motion planning, and real-time control loops, this should be straightforward. Let’s talk.
Key operating model
• Sensor data will be polled every 50–100 ms; this cadence is non-negotiable because of existing hardware constraints.
• While reversing, feed must remain adaptive from +200 % down to –100 %, with smooth transitions to avoid step-loss or motor stall.
• Stabilisation is dynamic: the cycle length and number of oscillations should adjust on-the-fly using the same sensor feedback, not a fixed timer.
• After a successful cycle the printer resumes seamlessly without leaving artefacts or losing position.
I will hand over a full statement of work (PDF), current config.g, and a test G-code suite the moment we agree. All code must compile cleanly inside the RepRapFirmware 3.6.0 build environment and integrate with DWC through its plugin API; no firmware forks, just a drop-in binary plus source under the existing licence.
Deliverables
1. Well-documented source code and compiled plugin (.zip) ready for the Duet Object Model.
2. A brief build guide showing compiler flags and any third-party libraries used.
3. Validation video or live screen-share proving: correct threshold detection, reverse motion, adaptive feed shifts, dynamic stabilisation, and perfect resume.
4. Post-delivery support for clarification or minor bug fixes during initial rollout.
If you already speak RepRapFirmware internals, motion planning, and real-time control loops, this should be straightforward. Let’s talk.