Compare commits

...

3 Commits

Author SHA1 Message Date
devdesk
4523cb6aff default offsets for the drawbot with limit switches 2025-12-04 14:41:38 +02:00
devdesk
e345067286 Add plotter_disable_command parameter with default value M5 2025-12-04 14:40:58 +02:00
devdesk
3b5a7e0e8c Update README with X/Y offset parameters documentation 2025-12-03 19:53:20 +02:00
3 changed files with 16 additions and 15 deletions

View File

@@ -1,8 +1,7 @@
# LY Drawbot Tool by Love Open Design
# LY Drawbot Tool
This is the official repository for the XY Plotter Tool Inkscape extension.
This is the ~~official~~ repository for the XY Plotter Tool Inkscape extension.
You can find a french version of this document on our website : [love-open-design.com](https://love-open-design.com/laboratoire/xy-plotter-tool-par-love-open-design/)
## Purpose
@@ -13,15 +12,13 @@ This extension work for the [DIY XY Plotter High Precision Drawbot](https://www.
## Installation
Download the latest release [here](https://github.com/love-open-design/XY-Plotter-Tool-by-LOD/release). Make sure to select the release targeted towards the version of Inkscape you are using. You can find the version of Inkscape you're using under **Help** > **About**.
clone or downalod the zip of this git, Unzip the files directly into the Inkscape user extensions folder. Inkscape lists the location of your extensions folder under **Edit** > **Preferences** > **System**.
Unzip the files directly into the Inkscape user extensions folder. Inkscape lists the location of your extensions folder under **Edit** > **Preferences** > **System**.
Restart Inkscape and you're done.
Restart Inkscape and you're done. if you are just changing the `.py` you dont have to restart inkscape, but any changes to the `.idx` will need an inkscape resatrt.
## Gcode Panel
> Inside `Inkscape > Extension > Generate GCode for XY Plotter > XY Plotter tool from Love Open Design`
> Inside `Inkscape > Extension > drawbot`
![XY Plotter tool panel](img/GcodePanelByLOD.jpeg)
@@ -34,6 +31,8 @@ Restart Inkscape and you're done.
| **Pen Active Power** | command value to lower the pen | `1000` | `M3 S1000` |
| **Pen On Delay** | Delay after moving and before drawing | `0,1` | `G4 P0.1` |
| **Pen Off Delay** | Delay after drawing and before moving | `0,2` | `G4 P0.2` |
| **X Offset** | X-axis offset for plotter start position | `180` | All X coordinates shifted by offset value |
| **Y Offset** | Y-axis offset for plotter start position | `0` | All Y coordinates shifted by offset value |
| **Passes** | Number of Passes | | |
| **Pass Depth** | *relative to cnc milling* | `1,0` | |
| **Directory** | path directory to save your file in absolute | | |
@@ -49,12 +48,10 @@ If no files are detected the default values are :
- Header : G0 Z0 ; Display path inside GRBL Control
- Footer : G1 X0 Y0 ; Move to X0 Y0
## For developers
Pull requests are welcome. Just make sure to test your code on both Python >=2.6 and >=3.5 for the main branch, and Python >= 3.6 for the development branch (In the next major release we'll drop support for older python versions in an effort to improve code readability).
## Credits
20251202 - thanks to [love-open-design.com](https://love-open-design.com/laboratoire/xy-plotter-tool-par-love-open-design/), which we forked and adapted. see [upstream](https://github.com/love-open-design/LY-Drawbot-Tool-by-LOD)
This inkscape extension is adapted from [J-Tech-Photonics-Laser-Tool](https://github.com/JTechPhotonics/J-Tech-Photonics-Laser-Tool) inkscape extension.
Thanks to [StuartB44](https://www.instructables.com/member/StuartB44/) for his work and infos on [Instructables](https://www.instructables.com/Fix-for-Image-Not-Showing-in-GRBLControl/) to display GCode inside GRBL Control

View File

@@ -6,14 +6,15 @@
<dependency type="executable" location="extensions">inkex</dependency>
<param name="plotter-command" type="string" _gui-text="Drawing ON Command:">M03</param>
<param name="plotter-off-command" type="string" _gui-text="Drawing OFF Command:">M05</param>
<param name="plotter-off-command" type="string" _gui-text="Drawing OFF Command:">M03</param>
<param name="plotter-disable-command" type="string" _gui-text="Plotter Disable Command:">M05</param>
<param name="travel-speed" type="int" min="0" max="15000" _gui-text="Pen Up Travel Speed (mm/min or in/min):">3000</param>
<param name="plotter-speed" type="int" min="0" max="15000" _gui-text="Pen Down Travel Speed (mm/min or in/min):">750</param>
<param name="plotter-active" type="int" min="0" max="20000" _gui-text="Pen Active Power S# (0-255 or 0-12000):">1000</param>
<param name="plotter-on-delay" type="float" min="0" max="1000" _gui-text="Pen-On Delay (ms or s):">0,2</param>
<param name="plotter-off-delay" type="float" min="0" max="1000" _gui-text="Pen-Off Delay (ms or s):">0,2</param>
<param name="offset-x" type="float" min="-1000" max="1000" _gui-text="X Offset (mm or in):">180</param>
<param name="offset-y" type="float" min="-1000" max="1000" _gui-text="Y Offset (mm or in):">0</param>
<param name="offset-x" type="float" min="-1000" max="1000" _gui-text="X Offset (mm or in):">-200</param>
<param name="offset-y" type="float" min="-1000" max="1000" _gui-text="Y Offset (mm or in):">-20</param>
<param name="passes" type="int" min="1" max="100" _gui-text="Passes:">1</param>
<param name="pass-depth" type="float" min="0" max="10" _gui-text="Pass Depth (mm or in):">1</param>
<param name="directory" type="string" _gui-text="Directory:"></param>

View File

@@ -622,6 +622,9 @@ class LaserGcode(inkex.Effect):
{"name": "--plotter-off-command", "type": str, "dest": "plotter_off_command",
"default": "M05", "help": "Laser gcode end command"},
{"name": "--plotter-disable-command", "type": str, "dest": "plotter_disable_command",
"default": "M5", "help": "Plotter disable command"},
{"name": "--plotter-speed", "type": int, "dest": "plotter_speed", "default": 750,
"help": "Laser speed (mm/min},"},