Machine Making¶
Here is the group assignment for this week:
-
Design a machine that includes mechanism + actuation+ automation + function + user interface
-
Build the mechanical parts and operate it manually
-
Document the group project and your individual contribution
For this week’s group assignment, we agreed on creating a CNC pen plotter (after a lot of braintstorming ๐). A CNC pen plotter is like an automated drawing machine that can accurately write or draw things on a plain surface.

We made some modifications to the initial design because it had a few gaps and wasnโt very practical. ๐ค
| | |
|--------|--------|
|
|
|
After we had the design planned out, we divided the work between the three of us:
| | |
|--------|--------|
|
|
|
Note: More detailed steps for each aspect can be found in our individual documentation ๐.
1. Designing and Fabrication
These were all the parts that we designed and printed out:
- The frames
![]() |
![]() |
![]() |
![]() |
- The top and bottom intersection parts
![]() |
![]() |
- The penholder parts
![]() |
![]() |
![]() |
![]() |
- Holder for stepper motor shaft
![]() |
![]() |
- Holder for stepper motor
![]() |
![]() |
Electronics
Here is a list of all the components that we used:
| Component | Spec | Quantity |
|---|---|---|
| Arduino Nano | ATmega328P | 1 |
| Stepper Motor | NEMA 17 โ Jameco 42BYG44B, 1A, 4V rated | 2 |
| Motor Driver | A4988 module (clone, Rs = 0.1ฮฉ) | 2 |
| Servo | MG90S | 1 |
| Capacitor | 100ยตF electrolytic | 1 |
| Power Supply (motors) | 12V 5A | 1 |
| Power Supply (logic) | 5V 2.5A | 1 |
Making custom PCB

Once the design for the custom PCB was complete, required RML files were generated and a Roland SRM-20 milling machine was used to fabricate the PCB. After milling, all the components were soldered and connections were carefully checked to ensure that there were no short circuits.
The motor drivers were configured by calculating and setting the correctVref value to safely control the current supplied to the stepper motors. Initial testing was performed on a breadboard to verify motor functionality and determine suitable speed settings. Once confirmed, the setup was transferred to the custom PCB, where both motors were tested individually and together to ensure proper operation.


The servo motor (responsible for lifting and lowering the pen) was then tested and calibrated to determine accurate angles for pen-up and pen-down positions.
After testing the hardware, GRBL firmware was installed on the Arduino Nano. A bootloader issue was fixed by using a compatible CH340 driver and the correct processor setting. Important settings like steps per millimeter, speed, and acceleration were then configured.
Control software was then used to run the system. Universal G-code Sender (UGS) allowed manual motor control, while GRBL-Plotter was used to send drawing commands. The system successfully followed G-code, with both motors and the servo working together properly.
The x and the y axis rods move! ๐ฅณ
We also designed the casing for the electronics and the base for the plotter.
![]() |
![]() |

Final Video¶
Slide¶

That is all for this week.















