Note
Refer to p4p.jamesnzl.xyz/learn
for full details.
This gantry firmware was originally forked from Makeblock-official/XY-Plotter-2.0
, but has since been significantly re-written.
This repository contains the low-level machine control for our x-y stepper motors and limit switches for our pick-and-place machine.
Firstly, clone this repository.
This repository is structured as a PlatformIO project.
# git submodule update --init
code .
- Use
w
,a
,s
,d
,h
,j
,k
, orl
to step the gantry a fixed increment in the specified direction. - Use G-Code to provide a target location (
LF
-terminated!).
G28 # go home
G0 X10000 Y10000 Z0 # go to 10000um, 10000um, 0um
G1 X10000 Y10000 Z0 # ''
Warning
This list does not claim to be complete---it contains only the issues I can immediately recall.
- If a target position is provided that exceeds the working range, the limit switches are hit, and the current position written to that invalid position. All future operations then have some offset error. Said differently, there is no bounds checking.
- Feed rate
G1 F...
is not supported. - Commands may be ignored if provided too quickly; ie if the present command is yet to complete. Said differently, there is no handshaking.