I didn't study computer science. I didn't attend university. I taught myself, with what I had — and for a long time what I had were audio cassettes bought in a shop that sold computer programs recorded on tape.
It was 1984. I had bought a CIP-03, a computer with 32KB of memory — of which almost 22KB were occupied just by the screen and system variables. In the shop near my house, among hundreds of cassettes with games, there were maybe twenty cassettes with useful programs. I bought them all.
From those cassettes I had my first contact with Assembly — eax, ebx, the stack. It wasn't a course. There were no explanations. It was code, and I tried to understand it.
"I didn't want to use things. I wanted to understand how they worked."
— CostelAt school I had a passion for computer science, but I didn't know how to orient myself. I tried the high school I liked: ten candidates for one spot, I didn't make it. I ended up at the civil construction high school, the one where everyone who didn't want to study anything went. I was out of place. I was underestimated by those who knew life but not books.
I worked in construction. Then as a carpenter. But my passion for technology never went away.
The years passed. I learned HTML, CSS, JavaScript, Python, C — almost all on my own, out of curiosity. Not to find a job. Not for a certificate. To understand.
From this curiosity CostyCNC[1] was born: a foam-cutting machine initially built with Arduino, then evolved with the MKS-DLC32 board.
CIP-03, 32KB. First audio cassettes with ASM programs. First contact with registers, stack, machine language.
ASM on Windows PC. HTML, CSS, JavaScript, C — all on my own, all out of curiosity.
When YouTube was two years old, I was already publishing tutorials on Assembly and hardware. Stepper motor — parallel port — 59K views[2]. Homemade CNC router without stepper motors — 59K views[3]. MASM32 assembler for beginners — 17K views[4]. There were no online courses on these topics. I created them.
First program written in MASM32 (x86 assembly): it took a bitmap image, made its outline, and converted it into an instruction file for the hot wire. The file was copied to an SD card and read by an Arduino.[5] The first CostyCNC was already there.
GRBL was born for bipolar motors. I rewrote it to make it work with 28BYJ-48 unipolar motors and ULN2003 drivers, mapping the pins directly onto the Arduino Nano. I was the first to do it — the code was picked up in dozens of GitHub projects.
The move to bigger motors required the CNC Shield V4.0, which suffers from
hardware design bugs. I fixed it in series on every machine:
pins M1-M2-M3 soldered to VCC to force 1/16 microstepping, and the STEP/DIR
signal inversion corrected in software in the cpu_map.h file.
The present: a 32-bit board based on ESP32, with integrated Wi-Fi and dedicated WebUI. I decompressed the original firmware, rewrote the CSS to fix the overlapping buttons bug on mobile, and recompressed everything within the ESP32's memory limits. Now the phone is a wireless remote control on the machine.
MKS-DLC32, proprietary algorithm, AVR Assembly in the browser — no installation, no IDE.
In 2014 I started selling my first hot wire machines. Many of them are still running today, and customers still contact me for simple usage advice. Those first models were based on a mechanics entirely designed by me, not copied, which used ingenious sliding systems based on tubes and skids.
The electronics of that era were extremely essential but incredibly robust: an Arduino Nano connected directly to arrays of ULN2003 transistors, used as pin drivers to move the 28BYJ-48 unipolar stepper motors.
To make the 5V motors work at a higher voltage of 12V — increasing the machine's responsiveness — I inserted in series a ceramic resistor of a few tens of ohms to dissipate excess heat and limit the current, avoiding burning the motor's stator.
"GRBL was born for bipolar motors. I rewrote it for unipolar motors. I was the first to do it."
— Costel, 2014I mapped the control pins directly onto the Arduino Nano outputs using this precise channel configuration:
X axis (Digital Pins): D2, D3, D4, D5
Y axis (Analog Pins used in digital mode): A0, A1, A2, A3
This software hack was very successful in the maker world and was picked up in dozens of subsequent projects on GitHub, which credit CostyCNC in the official code credits.
As sales grew — hundreds of machines — I moved to bigger motors and the CNC Shield V4.0 paired with Arduino Nano. This cheap commercial board, however, suffers from serious design defects. Here's how I fixed the problem in series on every single machine before shipping it.
The microstepping bug. In the PCB design of the Shield V4.0, the jumper seat is erroneously connected to GND. According to the official datasheet of the Allegro A4988, pins MS1 and MS3 have an internal pull-down resistor of 100 kΩ, while pin MS2 has an internal pull-down of 50 kΩ. Leaving the pins disconnected, the driver reads the LOW logic state and stays stuck in Full Step, causing jerky movements unsuitable for the fluid, millimeter-precise cutting of polystyrene.
My solution. I removed the physical jumpers and soldered the three pins M1, M2 and M3 directly together on the driver side, connecting them with a single stable bridge to the nearby 5V (VCC) line. This intervention injects the HIGH logic signal simultaneously on all three inputs, bypassing the internal pull-down and forcing maximum microstepping (1/16) for fluid movements and clean cutting lines, without the need to cut the PCB traces.
The DIR and STEP pin inversion. The shield has the mapping of
the Direction and Step signals inverted on some axes compared to common firmware
standards. I re-engineered the original 8-bit GRBL firmware: by modifying the
pin mapping inside the cpu_map.h source file, I compiled my own
custom version that corrected the inversion in software for each machine before
it was sold.
Today, to eliminate long manual soldering times and offer modern features, I have moved to the MKS-DLC32 motherboard, based on the ESP32 32-bit microcontroller. The leap is clear:
Old CNC Shield V4.0
Screw terminal, no protection, 8-bit MCU, USB only.
New MKS-DLC32
Plug & play DC jack, 10A blade fuse, 32-bit MCU, integrated Wi-Fi
with dedicated WebUI for smartphones.
The MKS-DLC32 software also required my intervention. The stock firmware released by the manufacturer has serious gaps in the web interface, especially when opened from a smartphone, showing misaligned menus and overlapping buttons. To guarantee absolute stability while controlling the machine, I personally performed these steps:
I extracted and decompressed the original interface package contained in the flash memory (the index.html.gz file).
I rewrote the stylesheets to fix the dropdown menu layout, making the interface fully responsive for mobile devices.
I inserted my direct links for CostyCNC support and documentation.
I recompressed the whole structure in .gz format, making sure the modified code and my files did not exceed the strict space limits of the ESP32's flash memory.
Thanks to this optimization, those who use my machines can use their smartphone as a wireless remote control on the machine: it is possible to move the axes and set zero by standing directly in front of the polystyrene block, with the certainty of lightweight, stable and crash-free software.
In short: when you buy one of my hot wire machines, you are not simply buying a set of assembled commercial electronic components. Behind every model there is a path of research and development lasting years, born from my passion for automation and the desire to offer products that last over time.
Many people live by watching others — comparing themselves to those who seem to have more, those who seem to have less, those who succeed, those who fail — without ever turning to observe themselves. Thus the world becomes an arena of judgments, a theater of appearances, where everyone talks but few truly listen.
Even the hunger for viral posts, the easy criticism of governments, actors or facts, and the search for likes not always to solve problems, feed unconsciousness. Without realizing it, we become part of the cage we criticize: we spread judgments, feed divisions and reinforce harmful mindsets.
"Every conscious gesture is a revolutionary act: it breaks invisible patterns of fear, competition and conformity."
When we observe the world, the accumulation of results, goods or recognition can seem wonderful. But behind every achievement there is often a more complex reality: continuous challenges, pressing responsibilities and the constant balance between what we want to achieve and what we can sustain. This awareness invites us to look at every success with balance and respect.
The true measure is not found in numbers, titles or the quantity of what is accumulated. The true measure is in the awareness of every action, in the ability to transform thoughts into authentic choices, in the strength to create without being slaves to expectations or opinions.
CostyCNC is not just a tool: it is an invitation to reflect, experiment and build without limits, a call to set aside the illusions of superiority or inferiority. Here, what matters is the ability to transform imagination into reality, to shape ideas with hands, mind and heart open, without fearing judgments or preconceptions.
Those who understand this discover something radical: that the greatest wealth is not found in goods or prestige, but in the inner freedom of those who dare to create with awareness and authenticity. Creating is not a privilege: it is a right and an act of responsibility towards oneself and towards the world.
Every CostyCNC machine is tested, modified and personally signed by me.