CLI Guide Teaser

Der ultimative Betaflight CLI Command Guide für FPV-Profis

Publiziert von Nils Waldmann

am

CLI steht für Command Line Interface und ist keine Erfindung, die es erst seit dem Betaflight Projekt gibt. In diesem Guide erfährst du alles über die richtige Verwendung des CLI in Betaflight und warum es oft sinnvoll ist, die Kommandozeile der grafischen Benutzeroberfläche vorzuziehen.

Wie auch in anderen IT-Bereichen, kann die Kommandozeile (englische Command Line Interface, kurz CLI) einen großen Vorteil darstellen, wenn viele Dinge auf einmal erledigt werden müssen.

Anstelle einzelne Einstellungen oder Funktionen mit der Maus anzuwählen und Werte über einzelne Felder zu verändern, kann eine Kommandozeile viele Operationen mit nur einem Befehl ausführen.

Das ist in Betaflight nicht anders. Und darum lohnt sich ein gemeinsamer Blick hinter die Kulissen des CLI-Tabs unserer Lieblings-Flight Controller Software.

Warum überhaupt das CLI benutzen?

Einen wichtiges Argument für die Verwendung des CLI in Betaflight haben wir bereits genannt: Du kannst damit viele Einstellungen auf einmal verändern, zurücksetzen oder aus einem Backup wieder einspielen.

Darüberhinaus ist das CLI die einzige Möglichkeit alle Funktionen von Betaflight zu nutzen. Ja! Du hast richtig gelesen: Nur die am häufigsten verwendeten Funktionen sind in das GUI (Grafical User Interface) des Betaflight Configurators integriert. Der Rest der Einstellungen schlummert ungenutzt (oder unverändert auf Standardwerten) im Hintergrund.

Der einzige Weg diese Einstellungen zu verändern ist die Verwendung des CLI-Tabs im Betaflight Configurator. Du kannst natürlich auch Werte ändern oder Einstellungen deaktivieren, die auch über das GUI verfügbar wären.

Das Command Line Interface ist dabei nicht neu. Die Konsole ist schon seit Baseflight-Zeiten verfügbare und existiert auch in Cleanflight, Butterflight, iNav und anderen Baseflight-Forks – so wie Betaflight. Die genaue Geschichte der verschiedenen FC-Projekte, haben wir hier für dich zusammengefasst.

Wie benutzt man das Betaflight CLI richtig?

Um auf das CLI zuzugreifen, musst du deinen Flight Controller mit dem Betaflight Configurator verbinden. Sobald die FC erkannt ist, kannst du den CLI-Tab aufrufen.

Betaflight Configurator GUI - CLI Tabs links unten
Das CLI lässt sich ganz einfach über das GUI aufrufen.

Du siehst dann ein Kommandozeile und eine entsprechende Textausgabe vor dir. Nun kannst du beginnen einzelne Befehle einzugeben.

Die Befehle sind dabei in der Regel immer gleich aufgebaut:

[command] [setting] = [value]

Um also deinen Expo-Wert auf der Roll-Achse auf Null zu setzen, würdest du zum Beispiel folgendes eingeben:

set roll_expo = 0

Du kannst viele Befehle hintereinander eingeben. Damit die Änderungen wirksam werden, musst du den „Speichern / Save“-Knopf drücken. Die FC startet dann automatisch neu und die neuen Werte / Einstellungen werden übernommen.

Willst du die Änderungen verwerfen, gibt es mehrere Möglichkeiten:

  • Verwende den Befehl exit
  • Wechsle in einen anderen Tab des Configurators
  • Klicke „Disconnect“ in der oberen rechten Ecke

Weil es so wichtig ist und oft vergessen wird: Speicher nicht vergessen! Es ist immer ziemlich ärgerlich, wenn du dir deine CLI-Befehle mühsam zusammengesucht hast und alles verloren geht, weil du den CLI-Tab ohne zu speichern verlässt. Wir wissen wovon wir sprechen und wollen dir das Fluchen ersparen. ;)

Die CLI-Syntax – Grundregeln für die Konsole

Damit deine Befehle von der CLI richtig erkannt werden, gibt es einige Grundregeln die du beachten musst. Man spricht hier auch von der Syntax – also der korrekten Art und Weise, wie du deine Befehle in der Kommandozeile formatieren musst.

Zum Glück ist die CLI hier relativ anspruchslos und verzeiht viele Formatierungsfehler in den Befehlseingaben. Das macht es leichter für Anfänger. Wir haben euch im Folgenden einige Beispiele zusammengestellt, die zeigen, welche Fehler die Konsole ohne Probleme verzeiht und wo ihr aufpassen müsst.

Leerzeichen

Bei deinen Eingaben ist es egal, ob du ein oder mehrere Leerzeichen zwischen den einzelnen Komponenten deiner Befehle verwendest. Folgende Beispiele sind also alles gültige Eingaben:

set  dyn_notch_min_hz=150
set    dyn_notch_min_hz =           150
set dyn_notch_min_hz=  150
set dyn_notch_min_hz=     150

Beachte jedoch, dass die Einstellung [setting] an sich keine Leerzeichen enthält, sondern mit tiefgestellten Bindesrichen (_) verbunden ist. Mindestens ein Leerzeichen [command] [setting] und Operatoren sowie dem [value] ist jedoch Pflicht.

Groß- und Kleinschreibung

Dasselbe gilt für die Groß- und Kleinschreibung. Auch hier ist es egal, wie du deine Befehle eingibst, solange der Befehl an sich richtig geschrieben ist. Das heißt alle der folgenden Beispiele funktionieren identisch:

set Rc_smoothing_debug_axis = ROLL
SeT rc_smoothing_DEBug_axis = Roll
sET rC_sMoothing_dEbug_aXis = rOll

Merke also: Leerzeichen gibt es in der Regel nur zwischen Operatoren. Zusätzliche Leerzeichen sind kein Problem Groß- und Kleinschreibung spielt ebenfalls keine Rolle.

Aktuelle Einstellungen anzeigen lassen – Dump oder Diff?

Nun, da wir uns über die Grundlagen klar sind, kann es los gehen. Bleibt noch eine klitzekleine Frage zu beantworten: Welche Befehle gibt es eigentlich? Guter Punkt!

Es gibt zwei wichtige Befehle, mit denen sich alle verfügbaren Einstellungen anzeigen lassen:

DUMP – Der DUMP-Befehl gibt alle verfügbaren Einstellungen aus. Das sind eine ganze Menge (fast 1000 Zeilen). Damit hast du ordentlich was zu lesen. Wenn man etwas sucht, ist der DUMP-Befehl aber ein guter Startpunkt, um eine Übersicht zu bekommen, was es alles so gibt.

Um genau zu verstehen, was dir Betaflight mit DUMP alles ausspuckt, hilft oft ein Blick in das offiziell Wiki / die Betaflight Dokumentation auf Github.

CLI in Betaflight - Ergebnis des DUMP-Befehls
Der DUMP-Befehl gibt ALLE Einstellungen aus. Eine lange Liste.

DIFF – Der DIFF-Befehl ist im Alltag wesentlich praktikabler in der Verwendung. Er listet dir alle Einstellungen und Werte auf, die in deiner Konfiguration vom Standard abweichen. Bei einer FC mit 100% Standardeinstellungen ist die Liste des DIFF-Befehls also leer.

Wir nutzen in der Regel immer den DIFF-Befehl anstelle des DUMP-Befehls. Diesen Befehl verwendest du auch, um Backups deiner Konfiguration zu machen. Das macht auch Sinn, denn du willst bei einem Backup ja in der Regel nur die Änderungen sichern, die vom Standard abweichen – dazu unten mehr.

GET – Der GET-Befehl ist ein weiterer nützlicher kleiner Helfer. Er listet dir alle Befehle auf, die mit einer bestimmten Eingabe beginnen. Das ist immer dann hilfreich, wenn man den genauen Befehl / das genaue Setting nicht mehr im Kopf hat und nur den Anfang erinnert.

Du schreibst zum Beispiel:

GET rc_smoothing

Und erhälst dann automatisch alle Befehle die mit „rc_smoothing“ beginnen. Außerdem wird der jeweils aktuelle Wert des [setting] ebenfalls mit ausgegeben. Das haben wir in unserem Beispiel nicht mit dargestellt. Das Ergebnis könnte folgendermaßen aussehen:

rc_smoothing_type
rc_smoothing_derivative_hz 
rc_smoothing_debug_axis
rc_smoothing_input_type
rc_smoothing_derivative_type
rc_smoothing_auto_smoothness

Das bedeutet: Ihr könnte euch mit GET auch den aktuellen Wert einer Einstellung oder einer gesamten Einstellungsgruppe ausgeben lassen. Praktisch.

Daten sichern (Backup) und wiederherstellen via CLI

Eine der beliebtesten Anwendungen des CLI in Betaflight ist das erstellen von Backups deiner aktuellen Konfiguration. Betaflight kann die gesamte Konfiguration (also auch die Einstellungen, die du im GUI getroffen hast) in eine Datei sichern. Diese lässt sich dann später ganz einfach wieder einspielen und alles ist auf dem alten Stand.

Das ist super um zu experimentieren, ohne etwas kaputt zu machen. Oder aber um seine Konfiguration auf einen anderen Flight Controller zu übertragen.

Backup erstellen

Um ein Backup mit dem CLI zu erstellen genügt ein einfacher Befehl:

DIFF

Wie wir oben gelernt haben, werden dann alle veränderten Werte gegenüber dem Betaflight-Standard ausgegeben. Klicke nun auf den „Save to File“-Knopf und wähle einen Speicherort für die txt-Datei.

Hier sind nun lediglich alle Veränderungen im direkten Vergleich zur Standardkonfiguration enthalten.

CLI Backup in Betaflight erstellen
Ein Backup der aktuellen Konfiguration lässt sich ganz leicht speichern.

Konfiguration wieder einspielen

Öffne die txt-Datei mit den Einstellungen. Markiere den gesamten Inhalt (Strg + A) und kopiere diesen (Strg + C). Danach fügst du den Inhalt aus der Zwischenablage in der CLI Kommandozeile in Betaflight ein (Strg + V).

Bestätige mit Enter. Und vergiss nicht zu speichern. Nach dem automatische Neustarte sind alle Werte wieder eingespielt.

CLI-Befehle in der Übersicht

Einige wichtige Befehle haben wir dir bereits oben genannt. In der folgenden Tabelle haben wir dir weitere gerne verwendete Befehle und Einstellungen zusammengestellt.

BefehlKurzbeschreibung
1wire 1Wire-Befehl an bestimmten ESC durchreichen
adjrangeAdjustment Range Einstellung anzeigen / setzen
auxAUX Einstellungen anzeigen / setzen
colorFarbe konfigurieren
defaultsFC auf Standardwerte zurücksetzen und neustarten
dumpAlle konfigurierbaren Werte ausgeben
diffAlle gegenüber dem Standard veränderte Werte ausgeben (nur aktuelle PID-Profil)
diff allAlle gegenüber dem Standard veränderte Werte ausgeben (alle PID-Profile)
exitCLI verlassen (ohne Speicher)
featureFeature direkt konfigurieren
getWert einer bestimmten Variable anzeigen
gpspassthroughGPS zu Serial Passthrough aktivieren
helpAlle Befehle ausgeben
ledLEDs konfigurieren
mapZuweisung der RC-Kanal-Reihenfolge ändern
mixerName des Mixers ändern/anzeigen
mode_colorColor Modes konfigurieren
motorMotor Output-Wert setzen/anzeigen
play_soundIndex-Nummer oder "none" für nächsten Sound
profileindex (0 bis 2) - Profil wählen
rateprofileindex (0 bis 2) - Profil wählen
rxrangeRX-Kanal Endpunkte (Range) konfigurieren
rxfailFailsafe-Setting zeigen/ändern
saveSpeichern und neustarten
serialpassthroughSerial Passthrough Mode aktivieren; Neustarten, um Modus zu verlassen
setStandardbefehl, um Variablenwerte zu verändern
statusSystemstatus anzeigen
versionAktuelle Version anzeigen
serialSerial Port konfigurieren
servoServos konfigurieren
sd_infoInformation zur SD-Karte abrufen
tasksAktuelle Task-Statistiken ausgeben
mmixEigenen Motormixer konfigurieren
smixEigenen Servomixer konfigurieren

Bitte beachte, dass die verfügbaren Befehle von der verwendeten Firmware (Betaflight, Baseflight, iNav) und der jeweiligen Version abhängig sind. Ältere Versionen unterstützen mitunter nicht alle hier gelisteten Befehle. Verwende die aktuellste Version von Betaflight für maximale CLI-Kompatibilität.

Besonders nützliche Befehle

Zu guter Letzt noch ein paar Befehle, die wir häufig verwenden und die sich schnell über das CLI setzen oder verändern lassen. Tipp: Ausdrucken und an die Werkbank hängen.

BefehlKurzbeschreibung
bl / dfuErlaubt das starten der FC im Bootloader-Modus, ohne eine Button zu drücken
set small_angle=180Erlaubt das "Armen" des Racers unabhängig von der Lage der Drohne.
set ledstrip_visual_beeper=ONSynchronisiert den LED-Strip mit den Buzzer-Sounds (falls der Quad außer Hörreichweite ist oder mehrere Quads in der Luft sind).
motor_pwm_protocol= Erlaubt das einfache Setzen des PWM-Protokolls zur ESC-Ansteuerung. Möglich sind OFF, ONESHOT125, ONESHOT42, MULTISHOT, BRUSHED, DSHOT150, DSHOT300, DSHOT600, DSHOT1200, PROSHOT1000
bind_rx_spiBind-Modus für integrierte SPI-Empfänger aktivieren (ab BF 4.x)
frsky_bindBind-Modus für integrierte Frsky-Empfänger aktivieren (ab BF 4.x)

Weiterführende Informationen

Sollten dir noch Informationen zu weiteren Befehlen fehlen oder du benötigst noch mehr Input zu bestimmten Wertebereichen, die ein gewisses [setting] verarbeiten kann, dann schau unbedingt im Betaflight Wiki vorbei. Besondere Befehle sind hier noch einmal ausführlich diskutiert.

Schlusswort

Wir hoffen, dir hat unsere Betaflight CLI Übersicht weitergeholfen und du weist nun, was das CLI ist, wie du es verwendest und welche Möglichkeiten es dir zusätzlich zum GUI bietet.

Sollte dies der Fall sein, freuen wir uns darüber, wenn du den Artikel teilst. Bei Fragen oder Anregungen hinterlasse gerne jederzeit einen Kommentar. Auch freuen wir uns darüber, wenn du für den Kauf einer neuen Drohne einen unserer Partnerlinks verwendest (mit * gekennzeichnet), so erhalten wir eine kleine Provision.

Du bist von dem Inhalt begeistert und möchtest Drone-Zone.de unterstützen? Dann freuen wir uns natürlich riesig über eine kleine Zuwendung. Bei der nächsten Recherche und beim Erstellen des nächsten Artikels gibt es dann einen Becher Kaffee mehr für uns! :)

via Paypal

Werde auch gleich ein Abonnent auf Facebook und verpasse zukünftig keine News und Artikel mehr!

Bleibt in Kontakt!

Wenn ihr über die neuesten Drohnen-News, Drohnen-Leaks, Drohnen-Gerüchte, Drohnen-Guides und Drohnen-Testberichte auf dem Laufenden bleiben möchtet, dann folgt uns gerne auf unseren Social-Media-Kanälen!

Außerdem freuen wir uns natürlich über eure Nachrichten oder Fragen in den Kommentaren!


Hinweis: Mit Sternchen (*) markierte Links sind Affiliate-Links / Partnerlinks. Mit einem Kauf über diesen Link erhalten wir als Seitenbetreiber eine Verkaufsprovision. So kannst du Drone-Zone.de ganz einfach unterstützen. Bitte beachtet, dass es sich bei Drone-Zone um eine reine Website zur Information und keinen Online-Shop handelt. Ihr könnt über unsere Seite keine Kaufverträge über die dargestellten Artikel abschließen und auch keine persönliche Beratung hierzu in Anspruch nehmen. Mehr Informationen dazu findest du hier.

Avatar-Foto

Nils Waldmann

Hi, ich bin Nils! Ich bin leidenschaftlicher Modellbauer, Hobby-Fotograf, Akku-Liebhaber und RC-Pilot. Ich berichte hier über die neusten Entwicklungen in der Drohnen-Branche und kümmere mich um detaillierte Anleitungen, Guides und Testberichte.

Schon gesehen?

Phoenix RC5 DJI Phantom V1 Quadrocopter

DJI Phantom V1 jetzt für Phoenix RC 5

Auch wenn die Multicopter-Gemeinde in den letzten zwei Jahren unglaublich gewachsen ist (mit all den positiven und negativen Effekten), so sind vernünftige Multicopter-Modell für Flugsimulatoren eher rar. Einer der wohl ... jetzt lesen!

EX Bus Telemetrie CC3D - Verbindung mit FC

Anleitung: Jeti EX Telemetrie mit BetaFlight / CleanFlight

Wer eine Jeti Fernsteuerung sein Eigen nennt, hat sich schnell an den Komfort des genialen EX Telemetriesystems gewöhnt. Im Normalfall benötigt man spezielle Sensoren, um die Daten im Modell aufzuzeichnen und ... jetzt lesen!

Liftoff Drone Racing Multiplayer Screenshot

FPV Simulator: Liftoff Drone Racing kommt am 10. November

Der bereits Anfang des Jahres angekündigte FPV-Simulator Liftoff Drone Racing hat nun ein offizielles Release-Date bekommen. Ab dem 10. November 2020 soll das FPV Racing Game für die beiden Konsolen ... jetzt lesen!

Alkoholverbot für Drohnenpiloten

Japan führt Nullpromillegrenze für Drohnenpiloten ein

In Japan ist ein neues Gesetz verabschiedet worden, dass das Fliegen einer Drohne unter Alkoholeinfluss ab sofort verbietet. Zuvor gab es dazu keine gesetzliche Regelung. Das Gesetz ist eine Reaktion ... jetzt lesen!

4 Gedanken zu „Der ultimative Betaflight CLI Command Guide für FPV-Profis“

  1. Avatar-Foto

    Hallo,
    ich habe mir Ihren Beitrag sehr genau durchgelesen.
    Jetzt habe ich aber noch eine Frage zum Betaflight. Ich habe mir eine T-Motor FT5 MKII HD 6s gekauft, und eine TBS Mambo Ethix FB.
    Ich möchte sehr gerne die Einstellungen die vom Verkäufer gemacht worden sind sichern. Ich weiß aber nicht mit welcher Version von BF das gemacht wurde.
    Ist das egal welche Version ich nehme. Sollte ich in der CLI dump schreiben und mir alles speichern oder mit diff bzw. diff all?
    Mit der Bitte um eine Nachricht.
    Vielen Dank im Voraus.
    Marian Walkhoff

    Antworten
    • Avatar-Foto

      Hallo Marian,

      ganz habe ich dein Problem glaube ich noch nicht verstanden. Die Version der aktuellen BetaFlight Firmware wird doch eigentlich unten in der Status-Zeile des Configurators angezeigt. Oder nach welcher Versions suchst du?

      Bzgl. DUMP /DIFF: Ich würde in jedem Fall beide Versionen speichern, bevor du die aktuelle Konfiguration irgendwie platt machst oder überspielst. Ich hatte noch nie ein besonderes Problem, das volle Backup via dump später wieder einzuspielen. Das kann man ja aber einfach ausprobieren.

      Viele Grüße,
      Nils

      Antworten
  2. Avatar-Foto

    Kann ich aus der dump Datei auch nur die PIDs wiederherstellen? Wenn ich sie komplett drauf lade, setzt sich dann betaflight auch wieder auf die alte Version zurück?

    Antworten
    • Avatar-Foto

      Hallo Zinsen,

      die Dump-Datei enthält ja nur die Einstellungen deiner Betaflight-Konfig. Die Version bleibt dabei unberührt. Man sollte bloß aufpassen, dass die Versionen, zwischen denen man exportiert und importiert, einigermaßen nahe beieinander liegen.

      Viele Grüße,
      Nils

      Antworten

Schreibe einen Kommentar