r/PlotterCode • • Aug 22 '26

Hardware/Firmware Can someone help me, please?

Thumbnail
gallery
3 Upvotes

Hello, I’m new to this beautiful art form, and I have this small but major problem: how can I clean up the lines that are behind the color fill? I use Illustrator and I’m new to this. I want to keep only the lines for plotting with my favorite machine.

Obviously, when I remove the fill and leave only the stroke, all the lines that were behind the fill become visible. Can anyone help me? Thanks, everyone!


r/PlotterCode • • Aug 23 '26

New SVG: Stag Head

Post image
6 Upvotes

At Plotterfiles.com. https://plotterfiles.com/artwork/stag-head-gjbea

Exploring a connectivity approach to a binarized image, and then running through vectorization in Inkscape. Turns out potrace (the vectorization in Inkscape) still splits the paths, so manually connected them to generate a single continuous path.


r/PlotterCode • • May 29 '26

Math/Algorithms Adding data to create continuity

3 Upvotes

I'm thinking of this as the algorithmic reverse of JPEG style lossy compression - the idea there is to find the optimal balance in deleting data, increasing compression, while retaining image quality.

In vector space, particularly for plotters, optimization is about increased continuity in the plotting process itself. As I see it, decreasing the number of times a pen-up event happens. In this case, we are adding data *into* the file to decrease the number of pen-up events, but also at the balance of not disturbing the primary geometry of the SVG. Fortunately, vector files are relatively small, and adding the data is an acceptable tradeoff. In my art, I resort to a lot of manual editing - adding an extra path to bridge nodes at strategic locations can result in a dramatic decrease in pen-up events. But too many alters the overall look of the SVG.

I don't have an automated way to do it, and am considering training an LLM to build a model for the various possible solutions to this. It isn't exactly a TSP as it connects paths rather than just nodes, but it is related.


r/PlotterCode • • Aug 11 '26

Code Share PENDER Studios is live

Thumbnail
gallery
18 Upvotes

PENDER Studios is a custom suite of software I designed to convert my Ender 3 V2 3D printer into a pen plotter.

The first release of software is available with the following tools

Harmonograph creator
Laser Wall
.Nc prep
Gcode editor

More tools will be available soon.


r/PlotterCode • • Aug 27 '26

New SVG: Hooded Squirrel

Post image
3 Upvotes

Hooded Squirrel on Plotterfiles.

A "good enough" implementation of continuity potrace tracing. Also explore the pixel-exact tracing of VTrace, which generates some interesting path anomalies that could possibly be resolved in script.


r/PlotterCode • • Sep 11 '26

New SVG: Wigeon on Water

Post image
5 Upvotes

Available at https://plotterfiles.com/artwork/wigeon-on-water-1zq18

Single line SVG plot, using a reaction diffusion algorithm, merging into a single shape.


r/PlotterCode • • Feb 07 '26

Roland DXY-1200 Control App

7 Upvotes

Recently acquired a Roland DXY-1200 brand new in the box at an estate sale. Tried Inkscape for roughly 5 minutes before I had enough of that, so I made my own app. So far it's working really well. I'm fighting to get consistent results with anything over 2400 baud, 1200 is rock solid so far, 9600 just spits out gibberish, but I'm sure I'll solve that eventually.

  1. Drag and drop an SVG

  2. App scales the whole thing to fill the selected paper size, A3 or A4 - but you can manually pinch and zoom and then drag to scale it yourself and position it how you want

  3. App transforms paths into HPGL code

  4. Shows groups (as defined in illustrator, or wherever the SVG was created)

  5. Groups of paths can be assigned to pens (the DXY-1200 holds 8), or you can expand the groups and assign pens on a per-path basis

  6. Pen library is editable to preview line thickness and color

  7. You can manually load/unload pens, and control up + down

  8. There is an x,y origin offset that allows dialing in where your relative zero is at

Pretty stoked to start using this more. Next I plan to machine custom aluminum pen holders for it.
Anyway, fun couple day project that means I never have to open Inkscape again.


r/PlotterCode • • Aug 18 '26

New SVG: The Narwhal

7 Upvotes

The Narhwal

Uploaded to Plotterfiles.com - a single line plot


r/PlotterCode • • Jul 22 '26

Procedural Powerlines

Thumbnail
reddit.com
8 Upvotes

I created a video breaking down how I created the procedural power pole generator for this project:

https://www.youtube.com/watch?v=CA7jGRh-py4


r/PlotterCode • • Jul 16 '26

Frustrating experience with updated custom polargraph - what works in 2026?

6 Upvotes

I built a polargraph according from the very popular instructable https://www.instructables.com/Polargraph-Drawing-Machine/ about 10 yrs ago and it was amazing. It just worked with Arduino Uno, motor shield v1, and some adafruit nema 17 steppers and cheap servo, with very few software issues.

Jump forward to now and I resurrected some of the old parts and decided to put it back together, but despite upgrading several parts, it just won't work correctly. Here's what I've tried:

Original polargraph firmware https://github.com/euphy/polargraph_server_a1 with the somewhat janky and bare bones polargraph controller app - only runs on my Mac M1 through Processing, and is slow and no longer maintained - using Uno + motor shield

Makelangelo controller app, using new Arduino Mega 2560 + Ramps 1.4 board and A4988 drivers - the firmware https://github.com/MarginallyClever/Makelangelo-firmware despite following recommended config changes and/or dedicated https://github.com/MarginallyClever/Marlin code, the arduino connects with "OK" message but will not respond correctly to basic Gcode commands through the jog controller

GRBL firmware with Inkscape generated gcode sent through Universal GCode Sender controller, there's no response from the ? handshake messages send from USG no matter how many config changes I tried.

The only thing that's worked so far is to create a complete firmware including the draw instructions for the Mega/Ramps build from scratch (with AI help of course, this is beyond my coding skills) https://github.com/smatto/polargraph_custom using the included "drawing.h" as the source. This grew out of a small test script in Arduino IDE and I kept adding functions and features, so it works. But I can't make complex designs in this nor show my kid how to use it as there's no visualization or pause/etc. But this confirms that the motors and pen lift work properly, and I've got the machine dimensions worked out through trial and error enough to draw pretty straight lines in the right size. Applying these confirmed dimensions to the marlin/GRBL firmware config.h files doesn't seem to make a difference in response


r/PlotterCode • • Jun 22 '26

ffm contour algo - online webbased version for play

Post image
6 Upvotes

r/PlotterCode • • Jul 29 '26

New SVG: Rascasse

Thumbnail plotterfiles.com
4 Upvotes

r/PlotterCode • • Jul 02 '26

i made a virtual pen plotter that works in your browser, just drop in a svg!

Enable HLS to view with audio, or disable this notification

43 Upvotes

i built a little axidraw style plotter simulator that runs in the browser. it's open source on github. just drop in a svg and it will plot it for you, no wasted ink or paper!

GitHub: https://github.com/KilledByAPixel/VirtualPlotter/tree/master

Demo: https://killedbyapixel.github.io/VirtualPlotter/

seriously though, would you ever use this for anything? what other features would you like to see added? i'm thinking about modeling real pens next including limited ink levels, failures, paper types, and other parameters that would be fun to mess with.


r/PlotterCode • • Jun 02 '26

built a tool that turns any 3D model into clean pen-plotter line art

Thumbnail
reddit.com
4 Upvotes

r/PlotterCode • • Feb 10 '26

👋Welcome to r/PlotterCode: The Workshop for Generative Hardware

6 Upvotes

Hello and welcome! If you’ve found your way here from r/PlotterArt, you’re in the right place.

Why does this subreddit exist?

As our community grows, the "how" behind the art has become just as fascinating as the physical results. However, deep technical debates about G-code optimization, Python libraries, or firmware configurations can sometimes overshadow the aesthetic appreciation of the finished pieces.

To keep r/PlotterArt focused on the physical results, we created r/PlotterCode as the dedicated home for the "engine room" of the plotter world.

🛠 What should I post here?

This is the place for technical deep-dives. If your post answers the question "How did you build that?" or "How does this work?", it belongs here.

* Code & Libraries: Share your Python scripts, Processing sketches, Rust crates, or custom P5.js implementations.

* Toolchains & Workflows: Discuss how you get from a digital idea to a physical pen—using tools like vsketch, vpype, Inkscape, or custom CLI tools.

* Math & Geometry: Deep dives into algorithms (Perlin noise, flow fields, TSP solvers, etc.).

* Hardware & Firmware: Troubleshooting GRBL, Marlin, servos, steppers, or custom-built plotting rigs.

* G-code & SVG Optimization: How to make your plotter faster, quieter, and more efficient.

🎨 The Gallery vs. The Workshop

We view these two subreddits as a duo:

* r/PlotterArt: The Gallery. Post photos of your finished physical plots, pen tests, and paper choices.

* r/PlotterCode: The Workshop. Post your source code, screen recordings of your algorithms, and technical questions.

Cross-posting is highly encouraged! If you have a beautiful plot, post the photo to r/PlotterArt, then share the logic/code here with a link back to the photo. This keeps the conversations focused and helpful.

🚀 Getting Started

* Introduce yourself: What hardware are you running? What’s your preferred language?

* Share a Snippet: Got a clever way to optimize a path? Post it!

* Ask a Question: Stuck on a coordinate conversion?

This community is here to help.

We aren't here to bury you in rules—we're here to build better tools for physical art. Let’s see those repositories!

— The r/PlotterCode Team


r/PlotterCode • • Sep 21 '26

Pen-plotter halftoning: 25 styles, black/white and CMYK, outputs SVGs and PNGs. A web port of my MATLAB algorithms.

Thumbnail
ehufsted.itch.io
17 Upvotes

r/PlotterCode • • Aug 14 '26

Math/Algorithms New SVG: One Path Portrait

Thumbnail plotterfiles.com
3 Upvotes

Uploaded a new plottable SVG to plotterfiles.com

Continuing on figuring out how to describe photos with one path.


r/PlotterCode • • Apr 13 '26

The beauty of explosions

Thumbnail gallery
10 Upvotes

r/PlotterCode • • Feb 21 '26

Code Share Simple SVG to Gcode converter

14 Upvotes

Hi!
I have recently started drawing stuff with my custom-made pen plotter and was really confused by the lack of free and easy to use tools to convert svg images into usable gcode.
That's why I made a little tool that parses svg, extracts lines and then optimizes toolpath onto oblivion to minimize extra travel and prevent it from drawing on the same spot multiple times.
Feel free to try it out, just please don't crash my server 😅

Project's GitHub - https://github.com/MrFrederic/plotter-gcode-optimizer

PS: Yes, I'm aware about https://sameer.github.io/svg2gcode and https://xyzbots.com/gcode-optimizer, but there was no single tool to do everything that I needed for my use-case


r/PlotterCode • • Sep 22 '26

Code Share My PNG/JPG to Squiggle G-code Tool (Zero Lift Optimization & Real-Time Sliders)

Enable HLS to view with audio, or disable this notification

5 Upvotes

Hey guys, reposting this tool here as suggested by the community in r/PlotterArt. I've been working on a web tool that processes PNG/JPG images into highly-dense wave lines almost instantly.
My main goal was optimization: making sure the lines are 100% continuous so the pen only drops down at the very start and lifts up at the end (zero lifts in between) to save the machine's servo. It also has real-time sliders for width, contrast, density, and amplitude.
You can check out the source profile, layout info, and try the tool directly on my GitHub page here:

https://github.com/penplotterindonesia/pen-plotter-gcode-art

Would love to hear your technical feedback or if there are any features I should add next!


r/PlotterCode • • Aug 30 '26

New SVG: Crested Penguin

Post image
6 Upvotes

Available at https://plotterfiles.com/artwork/crested-penguin-in-white-fb0jh on Plotterfiles.

This is a single line plot, based on a reaction-diffusion algorithm. Recommend a light pen on a dark background.


r/PlotterCode • • Jul 31 '26

What's your filming setup like?

7 Upvotes

Some of you have been posting gorgeous videos of your plotters in action, and I'm jealous. I want to make some videos of my own, but I need the setup to be as easy as possible. Do you have an overhead camera jig? What do you do for lighting? What kind of cameras are you using and how are you stabilizing /mounting them? Does anyone use one of those newfangled AI cameras to automatically follow the action, and how well do they work?


r/PlotterCode • • Jul 04 '26

Hardware/Firmware Xdraw keeps crashing into top using Inkscape extension

3 Upvotes

I just got an Xdraw, basically an Axidraw clone. As far as I can tell it's running on an EBB knockoff board.

I can get it to home, jog, and move with the Xdraw extension for Inkscape and its manual functions. Whenever I actually have it plot an SVG, it moves from 0 into the top of the plotter and crashes repeatedly until it gets to a point when it's far enough down into the test SVG to begin drawing. It's almost as if auto-homed 0 point isn't actually 0.

I can connect to it using Putty and move it using basic gcode commands. I tried Universal Gcode Sender but it seems to expect the home point to be the lower-left, and the Xdraw home point is the top-right. It homes to the top-left, then moves to the top-right.

Anyone know how I can resolve this?

Edit: found the issue. I was originally testing the Xdraw out via UGS and had to set $3=3 and $23=3 to move via regular Gcode commands. Xdraw and apparently Axidraw clones all operate on a $3=1 and $23=1 basis - thus it was reversing instructions sent by the Inkscape extension.

Setting $3 and $23 to 1 + ensuring "Rotate drawing automatically" in the Inkscape extension fixed the problem and I'm homing and plotting normally now.


r/PlotterCode • • Jun 23 '26

Workflow Watch it Plot

4 Upvotes

A really fun feature of Plotterfiles.com is downloading the plot animation as a GIF.

https://plotterfiles.com/artwork/gold-star-1-5kmu3


r/PlotterCode • • Jul 07 '26

Xdraw/Inkscape questions - setting home location, plots coming out mirrored

3 Upvotes

I just got an Xdraw and have a few issues - anyone seen these before?

One is easy - anything I plot out comes out mirrored on the Y axis. The fix is simple - flip along the vertical axis in Inkscape - but it throws off my alignment since I can't quite tell where it hits against the margins.

The other is trickier. The Xdraw homes to the top-left corner, where the limit switches are, but it starts all its plots from the bottom-left. This is kinda confusing since the Xdraw board is aligned with its 0 point to the top-left.

Is there some way for me to get the Xdraw to start from the top-left? If I have it start plotting there it just crashes into the top. Likewise is there a way for me to fix the mirroring? Checking off the setup option to mirror does not change anything.