I've decided to build this engraver because it has always fascinated me to have machine like that at home. Everything is made from scrap except stepper drivers and the laser. It's working, however it cannot be used for very precise engraving because of an inaccuracy of CD steppers and the whole build quality.
Step 1: Making the Stand
Everything was made using hand-tools on the garden without precision electric saws, cutters or grinders. Thus the build quality is not how it was supposed to be.
Step 2: Assembling Together
I used 3 stepper motors from old CD drives, however I cannot use the Z-axis because the motor is weak and cannot handle the weight of the mount. Otherwise it would be possible to replace the laser with a milling tip and use it for other purpose.
Arduino Nano loaded with Grbl connected to Keyes_CNC is used to control the steppers and the laser.
I didn't have a powerful laser module so I've used a handheld 3W blue laser pointer. I took out the battery and connected two terminals which are connected to the relay switched by Arduino.
Step 3: Setting It Up
Normally you can just download Grbl and upload it to your Arduino.
However my Keyes_CNC stepper controller had swapped STEP and DIR pins so Grbl source code needed to be modified. If you have the same stepper controller, you can just download the modified version from my GitHub.
Grab the whole grbl_keyes_cnc folder and move it into Documents\Arduino\libraries
Reopen Arduino IDE, go to File → Examples → grbl_keyes_cnc → grblUpload
It opens a new project which will have #include <grbl.h> line inside.
All you need to do is to upload this project into your Arduino.
All the other setting will be done over serial communication directly with Grbl.
These are the settings for my setup. You might have different steppers or work-space dimensions, so set it according to your project. When you are connected to Grbl, type $$ to see your current settings. You can change individual values by writing a command in this format $x=val.
My steppers have 6.5 steps per mm. Dimension of the work-space is 30 x 30 mm.
For sending G-Codes and controlling your engraver, you need to download a program that is capable of sending g-code commands over the serial port. Here are the links for few of them I was using.