awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
grbl avatar

grbl/grbl

0
View on GitHub↗
6,226 stars·3,212 forks·C·23 viewsgithub.com/gnea/grbl/wiki↗

Grbl

Grbl is a CNC motion control firmware and G-code parser designed for milling machines. It serves as a hardware control layer running on ATmega328 microcontrollers to translate G-code instructions into precise motor movements.

The system manages stepper motor acceleration and coordinated multi-axis motion to drive milling hardware. It includes a tool probing system for automating workpiece alignment and calculating tool length offsets, as well as homing cycles that use limit switches to establish a precise coordinate origin.

The firmware covers broader machine management including spindle and coolant speed modulation, software limit enforcement to prevent physical crashes, and input pin mapping for hardware functions. It also provides real-time status reporting and position updates to external controlling software.

Features

  • Embedded G-Code Firmware - Implements embedded real-time control firmware that parses G-code commands to drive CNC milling hardware.
  • CNC Machine Controllers - Provides a high-performance software platform for managing mechanical movement in subtractive manufacturing.
  • Homing Cycles - Implements automated sequences to align machine axes by referencing limit switches to establish a coordinate origin.
  • Stepper Motor Controllers - Controls velocity and acceleration for each axis to ensure smooth motion and reduce mechanical vibration.
  • Motion Coordination Controllers - Translates movement instructions into precisely timed electrical pulses for multi-axis milling hardware.
  • Hardware Register Timing - Provides low-level manipulation of microcontroller hardware registers for precise signal timing and pin control.
  • Motion Planning Interrupts - Uses high-frequency timer interrupts to generate precise pulse trains for stepper motor control.
  • G-Code Interpreters - Implements a state machine to parse and execute G-code manufacturing instructions for hardware control.
  • Coordinate System Mappings - Implements a virtual offset layer to translate G-code coordinates into physical motor step counts.
  • Soft Limit Enforcers - Enforces software-defined boundary limits to prevent the machine from moving beyond safe zones.
  • Tool Length Offset Compensations - Grbl calculates and applies dynamic offsets to compensate for different tool lengths during machine operation.
  • Tool Probing Calibrations - Uses electronic probes to determine the exact position of a tool relative to the workpiece for automated alignment.
  • Lookup Table Acceleration - Calculates velocity changes using pre-computed arrays to reduce floating point math overhead.
  • Motion Planning Buffers - Stores a sequence of upcoming moves in a circular buffer to prevent pauses between motion blocks.
  • Machine Status Reporters - Streams real-time internal machine state and positional data to external controlling software.
  • System Status Feedback - Provides real-time status updates and command execution feedback to the controlling software.
  • G-code Software - High-performance G-code interpreting firmware for microcontrollers.
  • Printer Firmware - Optimized CNC milling controller for Arduino hardware.

Star history

Star history chart for grbl/grblStar history chart for grbl/grbl

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does grbl/grbl do?

Grbl is a CNC motion control firmware and G-code parser designed for milling machines. It serves as a hardware control layer running on ATmega328 microcontrollers to translate G-code instructions into precise motor movements.

What are the main features of grbl/grbl?

The main features of grbl/grbl are: Embedded G-Code Firmware, CNC Machine Controllers, Homing Cycles, Stepper Motor Controllers, Motion Coordination Controllers, Hardware Register Timing, Motion Planning Interrupts, G-Code Interpreters.

What are some open-source alternatives to grbl/grbl?

Open-source alternatives to grbl/grbl include: gnea/grbl — grbl is a CNC machine control system that translates G-code into precise hardware pulses to drive motors and tools for… marlinfirmware/marlin — Marlin is a firmware platform designed for 3D printers and CNC machines that translates manufacturing instructions… vorondesign/voron-2 — This project is an open source hardware project providing the design specifications, blueprints, and parts lists… pcrnjak/parol6-desktop-robot-arm — This project provides a complete set of design files and hardware specifications for a 3D-printable industrial-style… arendst/tasmota — Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and… fastled/fastled — FastLED is a C++ library for driving pixel-addressable LED chipsets and strips across various microcontroller…

Open-source alternatives to Grbl

Similar open-source projects, ranked by how many features they share with Grbl.
  • gnea/grblgnea avatar

    gnea/grbl

    4,415View on GitHub↗

    grbl is a CNC machine control system that translates G-code into precise hardware pulses to drive motors and tools for automated fabrication. It functions as a motion controller that manages the translation of standard commands into physical movement through asynchronous operation. The system includes a motion planning optimizer that calculates acceleration and deceleration curves using a look-ahead buffer to ensure fluid cornering and jerk-free movement. It features a dedicated laser engraving workflow that dynamically scales laser power based on movement speed to maintain consistent energy

    C
    View on GitHub↗4,415
  • marlinfirmware/marlinMarlinFirmware avatar

    MarlinFirmware/Marlin

    17,433View on GitHub↗

    Marlin is a firmware platform designed for 3D printers and CNC machines that translates manufacturing instructions into precise hardware operations. It functions as a G-code interpreter, parsing text-based commands to manage multi-axis motion, thermal regulation, and material delivery systems. By operating independently of a host computer, the system enables a standalone manufacturing workflow through the direct processing of files from local storage. The firmware distinguishes itself through a modular hardware abstraction layer that supports a wide range of microcontroller configurations. It

    C++3d-printingarduinoatmel
    View on GitHub↗17,433
  • vorondesign/voron-2VoronDesign avatar

    VoronDesign/Voron-2

    4,424View on GitHub↗

    This project is an open source hardware project providing the design specifications, blueprints, and parts lists required to build a high-performance CoreXY 3D printer. It serves as an engineering framework for a fused deposition modeling printer and a DIY CNC motion system. The project focuses on the construction of a mechanical framework for precise three-axis movement. It provides the necessary technical documentation for hardware component sourcing and the assembly of a custom motion system. The design covers the integration of a direct-drive extruder, a heated bed assembly, and thermal

    View on GitHub↗4,424
  • pcrnjak/parol6-desktop-robot-armPCrnjak avatar

    PCrnjak/PAROL6-Desktop-robot-arm

    2,577View on GitHub↗

    This project provides a complete set of design files and hardware specifications for a 3D-printable industrial-style robot arm. The system includes a CAN bus robot controller for managing stepper motors and sensors, a kinematics engine for calculating joint angles and poses, and a UDP-based Python API for sending motion commands and monitoring telemetry. The system features a force-controlled robotic gripper that utilizes field-oriented control on stepper motors to enable compliant grasping and precise force sensing. It also includes a 3D position visualization tool for real-time telemetry tr

    HTMLailerobotparol6
    View on GitHub↗2,577
  • See all 30 alternatives to Grbl→