--- tag: g006 title: Direct Stepper Move brief: Perform a direct, uninterpolated, and non-kinematic synchronized move author: shitcreek contrib: colinrgodsey group: motion experimental: true requires: DIRECT_STEPPING codes: [ G6 ] notes: - Requires `DIRECT_STEPPING`. - Position sync in step-daemon is not entirely finished and movements made with the control panel may be lost. At this moment, homing is required to sync step daemon and the device. Always home before issuing movement commands. - Use with extra caution. parameters: - tag: I optional: true description: Set page index values: - tag: index type: int - tag: R optional: true description: Step rate per second. Last value is cached for future invocations. values: - tag: rate type: float - tag: S optional: true description: Number of steps to take. Defaults to max steps. values: - tag: rate type: float - tag: X optional: true description: 1 for positive, 0 for negative. Last value is cached for future invocations. Not used for directional formats. values: - tag: direction type: int - tag: Y optional: true description: 1 for positive, 0 for negative. Last value is cached for future invocations. Not used for directional formats. values: - tag: direction type: int - tag: Z optional: true description: 1 for positive, 0 for negative. Last value is cached for future invocations. Not used for directional formats. values: - tag: direction type: int - tag: E optional: true description: 1 for positive, 0 for negative. Last value is cached for future invocations. Not used for directional formats. values: - tag: direction type: int --- Direct Stepping allows a host device to issue direct stepper movements in binary format, pre-written by the host device to a page in the device RAM. A "page manager" mechanism is provided to load the binary data onto the device. The page manager provided here uses a parallel protocol over the USB serial connection to write pages to the device RAM, and is decoupled from the normal serial G-code pipeline. This allows the host device to preload pages as fast as possible without waiting on the G-code pipeline. Once a page is written by the device, it can be triggered using the `G6` G-code which references the page index that should be used for that move. Depending on the page format, direction arguments may need to be provided in the `G6` code. - Requires [Step Daemon](//github.com/colinrgodsey/step-daemon) by [@ColinRGodsey](//github.com/colinrgodsey). - Visit [RepRap Wiki](//reprap.org/wiki/Direct_Stepping) for more details.