Project Overview
After mastering CNC milling, I wanted to push the machine into a completely different domain: art. By converting my MPCNC into a painting robot, I created a system capable of producing multi-color artwork with precision and repeatability far beyond what I could achieve manually.
The project combined mechanical design (tool-changing system), software engineering (G-code generation), and creative problem-solving (how to translate digital art into machine instructions). The resulting artwork exceeded my manual drawing capabilities and decorated my walls before I moved for my master's program.
Technical Design
Tool-Changing Mechanism
The heart of the system was a simple but effective tool-changing design:
- Self-aligning holders: Drop-in tool holders that positioned each pen/brush consistently
 - Manual switching: I would swap tools between color layers (automated switching proved too complex)
 - Gravity-fed dispensing: Tools held vertically, paint/ink flowed by gravity and surface tension
 - Calibrated Z-height: Each tool programmed with precise contact pressure for consistent line weight
 
Color System
I worked with a palette of 48 base colors:
- Pencils: Standard colored pencils that produced very consistent results
 - Acrylic paint: Brushes with fluid paint, more challenging but achieved painterly effects
 - Color mapping: Digital artwork color-separated into available palette colors
 - Layering strategy: Planned drawing order to minimize smudging and maximize clarity
 
Material Challenges
Different media presented distinct engineering problems:
- Pencils: Easy to control, predictable, excellent for detail work
 - Acrylic paint: Inconsistent flow during large rapid movements; paper degradation over time from repeated passes
 - Paper saturation: Too much paint caused warping and bleeding
 - Drying time: Had to sequence colors to avoid wet-on-wet smearing
 
Technologies Used
The Software Challenge: Generating G-code
The Problem
Converting artwork into CNC machine instructions proved harder than the mechanical build:
- CNC software limitations: Standard CAM programs were painfully slow for artistic paths
 - Multi-color complexity: No existing tool designed for pen-plotter multi-color workflows
 - Tool changes: Needed coordinated pause points for manual tool swapping
 
The Solution: Hacking Prusa Slicer
I discovered an unconventional solution: repurpose 3D printing software for 2D art:
- Artwork preparation: Color-separate artwork into individual SVG files per color
 - Import as 3D objects: Load each SVG into Prusa Slicer as if it were a 3D model
 - Single-layer slice: Configure for one-layer-high "print" (essentially a 2D path)
 - Multi-object slicing: Assign different "colors" to each SVG layer
 - Automatic tool changes: Slicer generates pause commands between colors for tool swapping
 
Profile Modifications
I customized Prusa Slicer settings for drawing instead of 3D printing:
- Disabled all Z-axis movements except initial positioning
 - Adjusted "extrusion" parameters to control line weight
 - Tuned travel speeds to prevent paint splatter
 - Added custom G-code for tool-change pause points
 
Advanced Technique: Shading Experiments
Multi-Layer Color Mixing
I experimented with creating additional colors through layering:
- Concept: Stack multiple pencil colors to create blended shades
 - Implementation: Slice artwork at multiple "heights" with different colors per layer
 - Results: Successfully created depth and shading effects beyond the 48 base colors
 - Limitation: Abandoned further work after achieving proof of concept
 
Why It Matters
The layering technique demonstrated that the system wasn't limited to flat coloring—it could produce genuinely artistic effects with proper G-code programming. This opened possibilities for:
- Gradient effects through controlled overlap
 - Texture through varied line density
 - Depth perception through color layering
 
Results & Artwork
Output Quality
The finished pieces consistently exceeded my manual drawing ability:
- Precision: Sub-millimeter positioning accuracy impossible to achieve by hand
 - Repeatability: Could reproduce identical artwork on demand
 - Detail level: Maintained fine details across large compositions
 - Time investment: Hours of machine time, but zero manual skill required during execution
 
Personal Impact
Several pieces decorated my apartment walls before relocating for my master's program:
- Created artwork that I genuinely valued as decoration
 - Demonstrated that technical skill can enable creative expression
 - Proved that unconventional tool use (hacking slicer software) solves real problems
 
Key Learnings
Creative Automation
- Tool repurposing: Machines designed for one purpose can excel at completely different tasks
 - Software creativity: The hardest part wasn't mechanics—it was translating art into machine instructions
 - Unconventional solutions: 3D printing software worked better than purpose-built CAM tools
 
Technical Skills
- G-code mastery: Deep understanding of how to orchestrate complex multi-step processes
 - Software adaptation: Learned to bend existing tools to solve new problems
 - Workflow design: Created efficient pipelines from digital art to physical output
 
Material Science
- Media properties: Different drawing materials have vastly different machine requirements
 - Substrate interaction: Paper quality and saturation limits matter for multi-pass work
 - Process tuning: Each material required custom speed, pressure, and sequencing parameters
 
Challenges & Limitations
What Worked Well
- Pencil artwork: Highly reliable, excellent results
 - Manual tool changing: Simpler than automated systems, perfectly adequate
 - Prusa Slicer workflow: Faster than traditional CAM software by orders of magnitude
 
What Struggled
- Paint consistency: Acrylic flow varied with large rapid movements
 - Paper degradation: Too many passes damaged the paper surface
 - Drying coordination: Had to carefully sequence layers to avoid smearing
 
Why I Stopped
The project achieved its core goal—demonstrating that creative automation was possible and producing artwork I valued. I moved on to other projects rather than refining the system further, but the techniques remain documented for future use.
Impact & Applications
This project influenced my approach to several subsequent builds:
- Tool versatility: Machines should be designed for adaptation and repurposing
 - Software creativity: Often the best solution is repurposing existing software for new domains
 - Creative engineering: Technical skills can enable artistic expression without traditional training
 - Workflow automation: The principles apply to any multi-step creative or manufacturing process
 
Related Projects
This build connects to several other mechanical and creative works:
- DIY CNC Mill Build – The base machine that enabled this conversion
 - CNC Box Production – Applied similar process optimization principles
 - 3D Printing Mastery – Understanding how slicers work informed the G-code hacking
 - Creative Writing Projects – Another outlet for creative expression through technical means