diff --git a/README.md b/README.md index 76c22e0..cbaaac2 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,33 @@ -Open driver for GCC Spirit LS +Open drivers for GCC Spirit LS =============================== +The driver for Fabmodules can be found here: +https://github.com/jonnor/fabmodules Status -------- -Proof-of-concept in progress +Can cut/engrave paths with correct proportions, +including upload to printer. +PPI, speed and power settings are respected. + +TODO (prioritized): + +- Fix laser being turned on before the first point (critical) +- Fix output being flipped vertically (workaround: flip input image) +- Verify job offset being applied correctly +- Fix/enable relative job origin +- Fix hardcoded scaling factor with correct logic +- Add more workflows in Fabmodules (especially from .svg) +- Add automated tests: .svg/.path -> .gcc +- Document usage/setup +- Upstream the support to fabmodules project + +Later/maybe: + +- Implement native raster support +- Integrate support in Lasersaur app + Worklog -------- diff --git a/testfiles/small-rectangle-inkscape.svg b/testfiles/small-rectangle-inkscape.svg new file mode 100644 index 0000000..145603b --- /dev/null +++ b/testfiles/small-rectangle-inkscape.svg @@ -0,0 +1,62 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/testfiles/text3782-verticalflip.png b/testfiles/text3782-verticalflip.png new file mode 100644 index 0000000..6625534 Binary files /dev/null and b/testfiles/text3782-verticalflip.png differ diff --git a/testfiles/text3782.png b/testfiles/text3782.png new file mode 100644 index 0000000..d5bfe3b Binary files /dev/null and b/testfiles/text3782.png differ diff --git a/worklog.md b/worklog.md index 9adac11..3e95fbf 100644 --- a/worklog.md +++ b/worklog.md @@ -2,16 +2,14 @@ Monday 1 September 2014 ------------------------- -Done +Set up and print a test pieces using existing driver from Adobe Illustrator +Connect machine to Linux, see what device it shows up as. [/dev/usb/lp0](./data/udevinfo.txt) -* Set up and print a test pieces using existing driver from Adobe Illustrator -* Connect machine to Linux, see what device it shows up as. [/dev/usb/lp0](./data/udevinfo.txt) +Attempted to send .uni file directly to /dev/usb/lp0 using cat. No go, shows empty file on -* Attempted to send .uni file directly to /dev/usb/lp0 using cat. No go, shows empty file on - -* Attempt to set up the laser with CUPS -Shows up as "GCC EXPLORER" -Used Generic driver settings, PCL 5.0. Set name to "laser" (expected by fabmodules) +Attempt to set up the laser with CUPS. +Shows up as "GCC EXPLORER". +Used Generic driver settings, PCL 5.0. Set name to "laser" (expected by fabmodules). Used defaults for settings, except used manual area and set scaling to "crop". Attempting to send an .uni file (produced with fabmodules) resulted in no activity @@ -21,21 +19,15 @@ Attempting to send an .epi file results in a job/file showing up "01" (no name) Job started but showed PCL command error, then HPGL command error. After 10 seconds the head moved but the laser was seemingly not fireing -Sending the file from within fabmodules also works as expected +Sending the file from within fabmodules also works as expected. +Added a skeleton GCC driver, based on the exiting one for Epilog -TODO: +Modified and tweaked the driver to be able to cut paths. -* Add skeleton .gcc driver, based on existing epi -* Modify driver according to spec -* Test test test +Dumped some output files from existing driver to figure out how pen intensity/speed/ppi was encoded. +Using "FILE" as the port of the Windows printer, as found under Preferences on the printer setup, +was a very easy way to do this. +Turned out to be 4-character 0-padded ascii values, for each of the 16 pens. -* Video of a first cutting job -* Add end-to-end automated tests. -Input=dxf file, output=.gcc. -Initially Simple geometric shapes - -Later: - -* Test fabmodules with existing driver+printer. -Not possible, requires Universal or Epilog access? +Recorded a short video of current status.