TOBY‑CNC – Eine kompakte, verständliche CNC‑Firmware für Arduino
TOBY‑CNC ist eine leichtgewichtige, GRBL (https://github.com/grbl/grbl)‑inspirierte CNC‑Firmware, die bewusst übersichtlich gehalten ist und sich ideal für kleine Fräsen, Laser, Plotter und Maker‑Projekte eignet.
Der Fokus liegt auf klarer Struktur, deterministischem Verhalten und einfacher Erweiterbarkeit – ohne den Ballast großer Frameworks.
Was TOBY‑CNC kann:- Unterstützte G‑ und M‑Codes
- G0 / G1 – Lineare Bewegungen
- G90 / G91 – Absolut / Relativ
- G28 – Referenzfahrt
- G2 / G3 – Kreisinterpolation (noch in Arbeit)
- F – Vorschub
- S – Spindeldrehzahl
- M3 / M5 – Spindel EIN/AUS
- M8 / M9 – Kühlung EIN/AUS
- M997 / M998 / M999 – Info, Alarm‑Reset, Statusabfrage
- Bewegungssteuerung
Funktionen:- einstellbare Maximalgeschwindigkeit
- einstellbare Beschleunigung
- automatische Interpolation der Achsgeschwindigkeiten
- Soft‑ und Hard‑Limits
- nicht blockierende Bewegungslogik im Haupt‑Loop
- Die Zielpositionen werden über interne Planner‑Variablen gesetzt und im Loop kontinuierlich abgefahren.
- Referenzfahrt (Homing)
- Sicherheitsfunktionen
- Hard‑Limit: Sofortiger Stopp aller Achsen, Spindel AUS, Alarm
- Soft‑Limit: Bewegung wird vor Ausführung geprüft
- Spindel‑Sperre: während Homing, bei Hard‑Limit und wenn nicht referenziert
- Reset‑Handling: M998 und M999 für Alarm‑Reset und Status
- Spindelsteuerung
- Die Spindel wird über PWM angesteuert:
- S‑Wert setzt die Drehzahl
- M3 schaltet die Spindel EIN
- M5 schaltet sie AUS
- PWM wird sauber skaliert (0–255)
TOBY‑CNC unterstützt mehrere Homing‑Modi:- alle Achsen gemeinsam
- Z zuerst, dann X und Y zusammen
- X → Y → Z
Während der Referenzfahrt:- ist die Spindel vollständig gesperrt
- werden Hard‑Limits ignoriert
- wird ein Timeout überwacht
- wird die Maschine nach Abschluss sauber auf Null gesetzt
TOBY‑CNC gibt GRBL (https://github.com/grbl/grbl)‑ähnliche Statusmeldungen aus, z. B.:[<Idle|MPos:0.000,0.000,0.000|A:XYZ|FS:8000,204>
Enthalten sind:- Maschinenstatus
- Maschinenposition
- aktive Achsen
- Spindelstatus
- Endschalter‑Pins
- aktuelle Geschwindigkeiten
Projektstruktur:- TOBY‑CNC.h – Bewegungslogik, Homing, Limits
- TOBY‑GCodeParser.h – Parser für G‑ und M‑Codes
- TOBY‑Config.h – Maschinenparameter und Pins
- TOBY‑CNC.ino – Setup und Haupt‑Loop
TOBY‑CNC richtet sich an alle, die:- eine verständliche Alternative zu GRBL (https://github.com/grbl/grbl) suchen
- eine Firmware wollen, die man lesen, verstehen und anpassen kann
- kleine CNC‑Maschinen, Laser oder Plotter betreiben
- ein Projekt für Hobby, Schule oder Maker‑Umfeld brauchen
Download: TOBY-CNC Sourcecode (https://toby-hamburg.de/downloads/TOBY-CNC.zip)Die Firmware nutzt die Library AccelStepper (https://www.airspayce.com/mikem/arduino/AccelStepper/), um alle Achsen weich und präzise zu bewegen:Diese Software soll und kann GRBL (https://github.com/grbl/grbl) nicht ersetzen, aber ist als kleine schlanke Basis gedacht.
Hinweis / Nutzung auf eigene GefahrDie Nutzung der TOBY‑CNC Firmware erfolgt vollständig auf eigene Verantwortung.
Es wird keine Haftung für Schäden an Maschinen, Werkstücken, Elektronik oder Personen übernommen, die durch Installation, Betrieb oder Modifikation der Software entstehen können.
Jede CNC‑Maschine verhält sich anders – daher sollte die Firmware vor dem Einsatz immer sorgfältig getestet und an die eigene Hardware angepasst werden.
Wer TOBY‑CNC verwendet, tut dies in eigener Verantwortung und erklärt sich mit diesen Bedingungen einverstanden.