Brushograph

From SGMK-SSAM-WIKI
Jump to navigation Jump to search

Introduction

Doms' Brušografia

Brushology – Ways of painting with a mechatronic brush

https://mechatronicart.ch/brushology-ways-of-painting-with-a-mechatronic-brush/

Dominik Mahnič

Dominik Mahnič (Ljubljana, Slovenia), an emblematic figure nestled between the realms of academic painting, video mastery, technology, and street art insurgency, raises questions about the perpetual dialectics between classical artistry and the onslaught of contemporary technological modalities. Within this discourse emerges the Brushograph – a complex symbol not merely of art but also of the intersections between past, present, and anticipated futures.

Links:

Upcoming Workshops

DIWO Week, Dresden, 15. May 2025

https://www.metaknoten.net/de/veranstaltungen/diwo-week-2025/penzlograf

Dominik Mahnič ist ein Maler mit akademischem Hintergrund, ein Meister der Videoästhetik, ein Technologe und eine aktive Figur der slowenischen Street-Art-Bewegung. Seine aktuellen Arbeiten werden mit eigens dafür konstruierten "Penzlografen" angefertigt. Speziell für die DIWO-WEEK 2025 hat er eine tragbare Version entwickelt, welcher mit Pinsel und Farbe funktionieren. Zur Umsetzung werden Grafiken in Maschinencode umgewandelt und dann von dem "Zeichenroboter" gemalt. Die Software läuft auf den gängigen Plattformen und es besteht die einmalige Möglichkeit einen eigenen Penzlografen zu bauen. Es wird montiert, verkabelt, programmiert und am Ende entsteht hoffentlich jede Menge Kunst.

MechArtLab / Bitwäscherei, Zürich, 6 & 7. December 2025

Who is interested?

Fill out this registration form: https://sgmkcloud.ocloud.de/index.php/apps/forms/Q7Qk6zxfoxMZyJWA

How to set it up

either: FluidNC (for ESP32 with webUI)

https://installer.fluidnc.com/

FluidNC is a CNC firmware optimized for the ESP32 controller. It is the next generation of firmware from the creators of Grbl_ESP32. It includes a web based UI and the flexibility to operate to a wide variety of machine types. This includes the ability to control machines with multiple tool types such as laser+spindle or a tool changer.

We have developed a modified version of FluidNC, that supports the uni-polar motors (again), see link below.

...or: Arduino (GRBL)

https://github.com/TGit-Tech/GRBL-28byj-48

Link above is a dirty hack of the "classic" GRBL to support those uni-polar servos. This is a modified fork from ruizivo/GRBL-28byj-48-Servo. This modification implements all 3-axises XYZ to a 28BYJ-48 stepper motor. The motors (28byj-48) are connected to a controller card (Arduino UNO) that uses the chip ULN2003. This board is connected to pins A0, A1, A2, A3 for the Y-Axis(IN4->IN1), 2, 3,4,5 Digital pins to the X-Axis(IN4->IN1), and 8,9,12,13 to the Z-Axis(IN4->IN1).

Grbl is a free, open source, high performance software for controlling the motion of machines that move, that make things, or that make things move, and will run on a straight Arduino. If the maker movement was an industry, Grbl would be the industry standard. Grbl is a no-compromise, high performance, low cost alternative to parallel-port-based motion control for CNC milling. It will run on a vanilla Arduino (Duemillanove/Uno) as long as it sports an Atmega 328.

Universal Gcode Sender

https://winder.github.io/ugs_website/

A free and full featured gcode platform used for interfacing with advanced CNC controllers like GRBL , FluidNC, TinyG, g2core and Smoothieware. Universal Gcode Sender is a self-contained Java application which includes all external dependencies and can be used on most computers running Windows, MacOSX or Linux.

Creating G-code

NEW: Webui of Brushograph

https://brushograph.pro/

config file with comments of how to use it

NEW: Converting gcode 2 pick-up color

https://brushograph-lb2gcode.onrender.com/

Lightburn

Lightburn is a very easy way to start putting your ideas onto canvas. You can draw directly in the software or import .svg. As it's mainly for laser-cutters a few modifications have to be made to install your custom gcode device.

I hope the settings can be easily imported from this github repo: https://github.com/dusjagr/brushograph-lb2gcode

A custom python script can then be used to modify the Lightburn generated gcode to add the colour pick ups at a defined path length, choose from 3 different colours, by naming the layers in Lightburn accordingly. Just Save GCode from LB, run the script, and then Run GCode and your artwork will be painted....

To setup the Brushograph in Lightburn, "Create Manually" a new Device as "custom gcode (experimental)", set the working area (130 x 120mm shoudl be ok), then click click, GRBL (standard), and it should be ready to be controlled. Select your device, and choose the USB port to connect. As we are using FluidNC, you can also connect to it via wifi.

Then you can spend hours and hours, modifying the macros yourself, for picking up colours smoothly... and join the discussion on the Lightburn forum.

Inkscape

DrawingBot

https://github.com/SonarSonic/DrawingBotV3

Links to related repositories

For ESP32 - FluidNC version

Forked and reworked version of FluidNC to support uni-polar steppers

PCB for DIY etching to host the FluidNC on ESP32 and the ULN2003 drivers

Generating the gcode

Brushograph WebUI .svg to gcode

Image to gcode software

Making the machine / 3D models for printing

Doms repository with .stl 3d models for mini_Brushograph

Marc thingiverse Z axis,

Original "Arduino mini CNC plotter" and some interesting forks / remixes

Possible Applications

Glass

The Brushograph could be used to paint open source paints containing coloured metal ions onto sheets of clear glass which could then be heated to above the softening point of the glass on ceramic paper in a furnace to allow the coloured metal ions to melt into the glass then cooled back down (cooling slowly through the annealing point) to give a unique but completely open source piece of glass art.

Because the Brushograph controls the speed and direction of each brushstroke it could be used to paint ceramic furnace shelf coating (also known as "kiln wash") onto a kiln shelf, with each brushstroke reflected in the texture of the shelf coating. After drying, a piece of glass could be placed on top and heated above the softening point of the glass so that the texture of the brushstrokes used to paint on the shelf coating transferred to the finished piece of glass.

Ceramics

The Brushograph could paint coloured commercial or open source ceramic glazes onto plain blank white tiles which could then be heated to leave a permanent glaze on the surface and turn the plain white tiles into pieces of open source art for tiling walls, etc..

Etching

Painting with a substance which resists chemical etching or sand blasting would allow the item to be etched or sandblasted afterwards then the etch resist removed to leave a permanent piece of art.

Painting With Light

An ultraviolet LED could be used instead of a paintbrush, with the ESP32 controlling the intensity of the LED as well as the position - this would allow painting onto surfaces coated in UV sensitive etch resist which could then be developed then etched or sand blasted.

Where a sheet of metal is used beneath the etch resist electrolytic deposition could be used to plate another metal onto the etched areas.

Where a sheet of glass is used beneath the etch resist a mirrored surface could be deposited on the etched areas.

Optional Add-Ons

Brush Washer and Dryer

Instead of a pot of paint at one of the stations, a funnel and drain tube could be placed at one of the stations with a small peristaltic or diaphragm pump switched on by the ESP32 to pump a stream of water over the brush and wash the brush before it goes to a new colour of paint. Optionally, the ESP32 could switch on a small but strong fan after washing the brush to blow air over the brush to dry it before it goes to the next colour.