Coder Social home page Coder Social logo

awesome-plotters's Introduction

Awesome Plotters Awesome Build Status

A curated list of code and resources for pen plotters and other robots that draw.

Contributing

Contributions are very welcome. Please see CONTRIBUTING and CODE-OF-CONDUCT for details.

Contents

Hardware

Plotters

Motor Controllers

  • grblShield – all the stepper motor control hardware needed to turn an Arduino into a G-code-based motion controller using the grbl firmware (adafruit)
  • TinyG – more featureful and robust 6-axis G-code-based motion control hardware (adafruit)
  • Arduino CNC Shield – grbl-compatible stepper motor control shield for Arduino, similar to the grblShield
  • Raspberry Pi CNC Hat – Raspberry Pi add-on board w/ stepper controllers and a microcontroller running grbl. Interfaces with the Pi's serial pins

Accessories

  • WiFi232 – wifi to RS-232 serial via a DB25 plug. Control your serial plotter wirelessly
  • Plotter Cable Pinout (PDF) – schematic for a plotter cable that will work for most HP and Roland plotters. Search eBay or Amazon for DB9 to DB25 Serial Null Modem Cable or similar to find them for sale

Pens

Software

HPGL

HPGL is a serial/text-based protocol used by most old pen plotters, and even many new vinyl cutters.

G-code

G-code is a text-based standard for controlling CNC machines. Though it was designed for industrial machines, its use in many hobbyist 3d printer firmwares has made it ubiquitous in small-scale DIY projects as well.

  • grbl – a high-performance G-code interpreting firmware for the Atmega 328 microcontroller and Arduino
  • cncjs – a web-based interface controlling CNC machines running grbl, TinyG, or other G-code-based firmware
  • node-gcode – Node.js-based G-code interpreter and similator
  • svg2gcode – Node.js-based command line utility for converting SVG to G-code
  • svg2gcode – Python-based utility for fast SVG to G-code conversion
  • Universal-G-Code-Sender – Java-based grbl-compatible cross-platform G-code sender
  • ChiliPeppr Hardware Fiddle – modular web-based workspaces to visualize G-code and control hardware

Plotter-Specific

Software that is specific to a particular plotter or controller.

Vector Creation

Tools to create vector artwork from scratch or by conversion from other formats.

  • Inkscape – popular cross-platform open source vector graphics editor
  • p5.js – "javascript library that makes coding accessible for artists, designers, educators, and beginners"
  • Paper.js – "The Swiss Army Knife of Vector Graphics Scripting"
  • ln – vector-based 3D renderer written in Go
  • autotrace – converts bitmap images to vector graphics
  • stipplegen – creates intereting stippled drawings from bitmap images (blog post)
  • SquiggleDraw – "SquiggleDraw will create a SVG file from an image, using the brightness to change the amplitude of sine waves"
  • svgurt – web-based PNG to SVG creative noodler
  • maptrace - produce watertight polygonal vector maps by tracing raster images
  • venation - modeling and visualisation of leaf venation patterns
  • Drawbot_image_to_gcode_v2 - creates G-code for use on drawbots
  • blackstripes - turns a PNG image into a SVG line drawing
  • Ribbon - ribbon diagrams of proteins in #golang
  • penplot – a development environment for plotter art in JavaScript
  • penkit – a Python library for creating line-based SVG graphics

Vector Utilities

Tools to manipulate and optimize vector-based file formats.

  • svgsort – path planning for plotting SVG files, reduces time spent moving with the pen up
  • svgo – Node.js-based tool for optimizing SVG files
  • Polargraph Optimizer - optimize drawing plan for a polargraph
  • penkit-optimize – an SVG optimizer that uses a vehicle routing solver to minimize plot time.

Fonts

Single-line vector fonts or "engraving fonts".

  • Hershey Vector Font.fnt format of vector fonts from the 60s. Includes a good overview of the original data format of the fonts
  • hershey-fonts – C library and original font data for the Hershey fonts
  • OneLineFonts.com – commercial site with some single-line fonts available for purchase

Inspiration and Instruction

Blog posts, articles, tutorials, galleries, videos, et cetera.

Community

Where to find other plotter and drawbot friends.

Other Awesomes

awesome-plotters's People

Contributors

beardicus avatar mafm avatar paulgb avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.