Fab Academy 16

The CNC by the Sea

Controlling a CNC
remotley from home
to draw in the sand:

For the Wildcard week, since we are on a pandemic mood, we are controlling a cartecian CNC from home through a platform that the FabLab guys created, to draw in the sand and has a webcam so you can also see It working from home called “The CNC By The Sea”.


Setting the interface Workspace:

The first part of the process was to download a JSON file from their gitlab repo, that contains some basic settings of the platform, so that you don´t have the full (some unnecessary) settings at home.

Then you just need to go to the page of the interface, and in SETTINGS > ESPACIO DE TRABAJO import the JSON file and save the settings. 

ESP8266 12-E Chip Pinout

Generating G-Code

This machine works with a G-CODE, same as a normal CNC and a 3D printer, that controls X, Y, and Z axis movements. I generated the G-Code in Inkscape from an SVG, since the newest version of Inkscape has a convert to G-code option included. The steps I did where the following:

Set the Size to be the same as the Bed size:
(set it to 700mmx700mm)

Import your SVG file
(yo can also create it directly in Inskscape)

Turn objects into paths if they are not

Then you need to convert the path to Gcode

Adjust the Z safe height in the preferences tab, to a certain heigh that doesn´t crashes with the machine and where you want to save it.

ESP8266 12-E Chip Pinout

Cleaning Gcode

Then you should open the Gcode file in a text editor, and check that everything is right. I asjusted all the movement speed (F) to at least 2500, because Inksacape generates them with 400, which would be to slow and take to much time. And also some Z positions that where generated with a negative position, what would make the machine to crash. So I changed them to 5 and started testing it, but then to Z10... it deppends of how deep you want to go into the sand without forcing the tool.


Control Interface:

After you have done that, you should go back to the webpage of the CNC by the Sea, select the port, set the baud rate to 250000 and Open.

Once connected you upload the G-Code and check how it fits into the canvas.

Then you should take the CNC to the X, Y and Z starting point (HOME) throug G-Code, check that the cleaning tool is not down so it doesn´t breaks, and then you can start. Next I´ll show some basic G-Code commands:

G0      Move Fast

G1       To Draw

G28    Go to Home

M        Servo Command

P        Number of Servo

S        Movement Degrees

F        Speed


How (not) to Break the Cleanner:

he guys from FabLab created a clanning script that only by uploading it should automatically clean the sand, but when I tried it, the Z possition was to high, so it only cleanned in some parts of the sand. So I openned the code in a text editor and modified the file, but this time I lowered the Z way to much, so it was cleanning really deep in the sand, which forced the tool and broke it.

So the recommendation for not doing this, it to start little by little testing the Z axis, to check that it is not too low, so that it cleans properly, without breaking. Also is important to learn the G-Code commands, so in case you need to stop it you can lower or raise the servo that controlls the cleanning tool.


Here are some links to my files, the camera views, the gitlab repo and the main site:

Camera 1:

Camera 2:

GitLab Repository:

CNC by the Sea:



Created with Mobirise