gitmyhub

GRBL_for_STM32

C ★ 195 updated 5y ago

A code transportation from origin grbl_v1.1f to STM32F103VET6, mainly prepare for my MegaCNC project.

This project adapts GRBL—a popular open-source controller for CNC machines—to run on a specific microcontroller chip called the STM32F103VET6. A CNC machine is a tool that automatically cuts, carves, or shapes materials like wood or metal by moving a cutting head in precise 3D patterns. GRBL is the brain that tells the machine exactly where to move and how fast.

The original GRBL was written for different hardware, so someone rewrote it from scratch to work on the STM32 chip. This is a nontrivial job—it's like translating a recipe written for one oven into instructions for a completely different oven with different controls and capabilities. The developer chose the STM32F103VET6 specifically because it has more input/output pins than smaller chips in the same family, which is needed to support future features.

The main use case here is for the creator's own CNC machine project (called MegaCNC). The original controller that came with it was basic and limited, so building a custom one from scratch using GRBL as the foundation makes sense—it's proven, reliable, and free. Anyone building a DIY CNC machine and wanting more control than commercial controllers offer could use this same approach. The README mentions plans to add a manual wheel controller (a physical knob you can turn to jog the machine manually), which is a common feature on more advanced CNC systems.

At the time of writing, the core functionality is working, meaning the machine can be controlled and move as intended. The project is still active with room to grow—adding that manual wheel feature and potentially other improvements. Since this was built for a specific hardware setup and a personal project, it's most useful for someone with similar needs and comfort with embedded systems firmware rather than general-purpose CNC users.