-
Notifications
You must be signed in to change notification settings - Fork 146
Description
Hi,
Thank you for your awesome EBB.
We would love to use our AxiDraw for 3-D drawing where the vertical (pen) axis is as accurate as possible given the capabilities of the servo mechanism.
We have many applications for this in mind, but one of them is simply to control a soft brush pen with varying vertical positions to give expressive brush thickness effects that vary during strokes---a particularly good application because vertical resolution is not critical.
Currently it appears that the firmware only has the concept of 0/1 up/down with a programmable servo position given to the SC command, and indeed we can program using SC to achieve a variety of positions...BUT...the SC command is documented as having immediate effect. So unless I'm missing something, I don't see a way to synchronize pen servo changes with a/b or x/y changes.
Is there a way to do it now?
If not, I'd like to propose an L3 command that extends LM.
I am proposing to extend LM rather than XM/SM because it will be more powerful for users (albeit more complex) and I suspect it will be LESS work for EmbeddedMan :)
The details no doubt will depend on how the servo control works but here is a rough idea:
L3 – 3-D (axes + pen servo) Low-level Move
- Command: RateTerm1,AxisSteps1,DeltaR1,RateTerm2,AxisSteps2,DeltaR2,RateTerm3,AxisSteps3,DeltaR3
- Response: OK
- Firmware versions: XXX and newer
- Execution: Added to FIFO motion queue
- Arguments: (expand to explain how the servo can be controlled: units, step size, etc.)
- Description: (expand to explain how the servo can be controlled: units, step size, etc.)