Les commandes et paramètres FluidNC utilisent le format $<texte>. Ils ne peuvent être utilisés qu'en mode veille.
Les commandes sont utilisées pour effectuer des actions (comme l'orientation ou la désactivation des moteurs) ou pour récupérer des informations (comme les décalages des codes g). Vous pouvez obtenir une liste complète de ces commandes avec la commande $CMD. De nombreuses commandes ont un format de nom complet ainsi qu'une version abrégée. Comme $Gcode/Mode et $G. De nombreux raccourcis de commande sont compatibles avec Grbl.
Note: Les détails de chaque commande seront ajoutés au fur et à mesure que le temps le permettra.
Grbl 3 [FluidNC v3.7,2 (wifi) '$' for help]
[MSG:INFO: '$H'|'$X' to unlock]
<Alarm|WPos:0.000,-80.000,-10.540|Bf:15,128|FS:0,0|WCO:0.000,80.000,10.540>
$X
[MSG:INFO: Caution: Unlocked]
ok
<Idle|WPos:0.000,-80.000,-10.540|Bf:15,128|FS:0,0|Ov:100,100,100>
$A=5
Ceci est utilisé pour créer manuellement une alarme. Ceci peut être utilisé pour des tests ou dans un code source conditionnel pour arrêter un travail en cours avec une erreur.
$H
[MSG:Homed:Z]
[MSG:Homed:XY]
ok
<Idle|WPos:-48.000,89.000,44.577,0.000|Bf:15,128|FS:0,0>
$Alarm/Send=5
ok
[MSG:INFO: ALARM: Probe Fail Contact]
ALARM:5
<Alarm|WPos:-48.000,89.000,44.577,0.000|Bf:15,128|FS:0,0>
[VER:3.4 FluidNC v3.4.8:]
[OPT:MPHS]
[MSG: Machine: TMC2209 XY Servo Laser]
[MSG: Mode=AP:SSID=FluidNC:IP=192.168.0.1:MAC=AC-0B-FB-24-EE-C9]
$CI
uart
macros
$cmd
$FakeLaserMode or $32
$FakeMaxSpindleSpeed or $30
GD
I
, et les broches configurées en sortie ont le préfixe O
. L'état de la broche est soit 0
(bas), soit 1
(haut). Dans l'exemple ci-dessous, la broche 2, GPIO2 I0
, signifie que gpio2 est configuré comme une entrée et a été lu comme un 0 logique, ou bas.0 GPIO0 I1
1 U0TXD
2 GPIO2 I0
3 U0RXD
4 GPIO4 I0
5 GPIO5 O1
6 SPICLK
7 GPIO7 O0 I1 SPIQ_out
8 GPIO8 O0 I0 SPID_out
9 GPIO9 O0 I1 SPIHD_out
Input Matrix
1 SPIQ_in 7
9 HSPIQ_in 19
10 HSPID_in 23
$firmware/info
FW version: FluidNC v3.7,2-pre3 (FaultPin-cd7ec064) # FW target:grbl-embedded # FW HW:Direct SD # primary sd:/sd # secondary sd:none # authentication:no # webcommunication: Sync: 81:192.168.0.1 # hostname:fluidnc(AP mode) # axis:3
$G
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
$#
[G54:0.000,80.000,10.540]
[G55:0.000,0.000,0.000]
[G56:0.000,0.000,0.000]
[G57:0.000,0.000,0.000]
[G58:0.000,0.000,0.000]
[G59:0.000,0.000,0.000]
[G28:6.000,77.000,30.000]
[G30:6.000,77.000,50.000]
[G92:0.000,0.000,0.000]
[TLO:0.000]
$10 => $Report/Status
$ESP116 => $WiFi/Mode
$ESP100 => $Sta/SSID
$ESP101 => $Sta/Password
$ESP102 => $Sta/IPMode
$ESP105 => $AP/SSID
$ESP106 => $AP/Password
$ESP107 => $AP/IP
$ESP108 => $AP/Channel
$ESP112 => $Hostname
$ => $HTTP/BlockDuringMotion
$ESP120 => $HTTP/Enable
$ESP121 => $HTTP/Port
$ESP130 => $Telnet/Enable
$ESP131 => $Telnet/Port
Écriture des fichiers du système de fichiers local sur la carte SD.
$LocalFS/Backup
[MSG:INFO: /localfs/config.yaml -> /sd/localfs/config.yaml]
[MSG:INFO: /localfs/favicon.ico -> /sd/localfs/favicon.ico]
[MSG:INFO: /localfs/index.html.gz -> /sd/localfs/index.html.gz]
[MSG:INFO: /localfs/macro1.g -> /sd/localfs/macro1.g]
[MSG:INFO: /localfs/macrocfg.json -> /sd/localfs/macrocfg.json]
Affiche les fichiers de la mémoire flash.
$LocalFS/List
[FILE: config.yaml|SIZE:0]
[FILE: favicon.ico|SIZE:18450]
[FILE: index.html.gz|SIZE:116654]
[FILE: macro1.g|SIZE:3]
[FILE: macrocfg.json|SIZE:919]
[/littlefs/ Free:44.00 KB Used:148.00 KB Total:192.00 KB]
Affiche le contenu d'un fichier (similaire à cat
).
$LocalFS/Show=macrocfg.json
[]
{
"name": "$MD",
"glyph": "remove",
"filename": "/macro1.g",
"target": "ESP",
"class": "btn btn-danger",
"index": 0
},
{
"name": "",
"glyph": "",
"filename": "",
"target": "",
"class": "",
"index": 1
}
]
$LocalFS/Size
LocalFS Total:192.00 KB Used:148.00 KB
Liste les hachages SHA-256 de tous les fichiers locaux
$LocalFS/Hashes
[MSG:INFO: config.yaml: "E899A382F65B179A8FF5898C703A0B78C5C1DA8F5AD5DB343BF751DEFD66E101"]
[MSG:INFO: favicon.ico: "B8B2871A343CA0F9A7A130213226962AD2BE4DFD28D7D8B756C3557569CB876D"]
[MSG:INFO: index.html.gz: "1819A3FE628608006AAFF4D497F96373A88A2B9011D867E0FFB35551CF4EAF13"]
[MSG:INFO: preferences.json: "9E61574525CC8DC3F0766A30A073A230145E8784AEC71B5CA8ED499932D636A3"]
ok
Liste les fichiers présents sur la carte SD.
$SD/List
[DIR:.fseventsd]
[FILE: fseventsd-uuid|SIZE:36]
[FILE: 00000000096737f7|SIZE:56]
[FILE: 00000000096737f8|SIZE:72]
[DIR:localfs]
[FILE: config.yaml|SIZE:225]
[FILE: favicon.ico|SIZE:1150]
[FILE: index.html.gz|SIZE:116654]
[FILE: macro1.g|SIZE:3]
[FILE: macrocfg.json|SIZE:919]
[/sd/ Free:61.90 MB Used:120.50 KB Total:62.01 MB]
Affiche le contenu d'un fichier sur la carte SD (similaire à cat
).
$SD/Show=/sd/localfs/macro1.g
$MD
Renommer un fichier sur la carte SD.
$SD/Rename=foo.gcode>foo.nc
$Files/ListGcode ; Liste tous les fichiers gcode dans le dossier racine de la carte SD
$File/ListGcode=/Folder1 ; Liste tous les fichiers gcode dans le Folder1 de la racine.
$File/ListGcode=/localfs/ ; Liste tous les fichiers gcode dans la racine du fichier local.
$File/ShowHash=index.html.gz
[JSON:{"signature":{"algorithm":"SHA2-256","value":"1819A3FE628608006AAFF4D497F96373A88A2B9011D867E0FFB355]
[JSON:51CF4EAF13"},"path":"index.html.gz"}]
$File/ShowSome=10,frodo.nc ; afficher les 10 premières lignes
$File/ShowSome=10,20,frodo.nc ; affiche les lignes 10 à 20
Ceci rétablit les valeurs par défaut.
[MSG:INFO : NVS Used:191 Free:439 Total:630]
[MSG:INFO: FluidNC v3.7,1]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.4]
[MSG:INFO: Local filesystem type is littlefs]
[MSG:INFO: Configuration file:6P_ss_XYZ.yaml]
[MSG:INFO: Machine 6 Pack StepStick XYZ]
...
ok
$state
State 1 (Alarm)
Affiche des informations sur l'état du microcontrôleur et les paramètres FluidNC.
$System/Stats
Chip ID: 26773
CPU Cores: 2
CPU Frequency: 240Mhz
CPU Temperature: 57.8°C
Free memory: 109.79 KB
SDK: v4.4.4
Flash Size: 4.00 MB
Sleep mode: Modem
Available Size for update: 1.88 MB
Available Size for LocalFS: 192.00 KB
Web port: 80
Data port: 23
Hostname: fluidnc
Current WiFi Mode: AP (08:3A:F2:22:3B:69)
SSID: FluidNC
Visible: Yes
Radio country set: 01
(channels 1-11, max power 20dBm)
Authentication: WPA2-PSK
Max Connections: 4
DHCP Server: Started
IP: 192.168.0.1
Gateway: 192.168.0.1
Mask: 255.255.255.0
Connected channels: 0
Disabled Mode: STA (08:3A:F2:A9:95:68)
Notifications: Disabled
FW version: FluidNC v3.7.11
Il est également possible d'obtenir ces informations sous forme d'objet JSON en envoyant la commande [ESP420]json=yes
qui donnera une réponse comme celle-ci :
[JSON:{"cmd":"420","status":"ok","data":[{"id":"Chip ID","value":"30743"},{"id":"CPU Cores","value":"2"},{]
[JSON:"id":"CPU Frequency","value":"240Mhz"},{"id":"CPU Temperature","value":"51.7°C"},{"id":"Free memory]
[JSON:","value":"135.17 KB"},{"id":"SDK","value":"v4.4.7-dirty"},{"id":"Flash Size","value":"4.00 MB"},{"i]
[JSON:d":"Sleep mode","value":"Modem"},{"id":"Available Size for update","value":"1.88 MB"},{"id":"Availab]
[JSON:le Size for LocalFS","value":"192.00 KB"},{"id":"Web port","value":"80"},{"id":"Data port","value":"]
[JSON:23"},{"id":"Hostname","value":"fluidnc"},{"id":"Current WiFi Mode","value":"STA (48:E7:29:A3:17:78)"]
[JSON:},{"id":"Connected to","value":"WifiName"},{"id":"Signal","value":"78%"},{"id":"Phy Mode: ","va]
[JSON:lue":"11n"},{"id":"Channel: ","value":"1"},{"id":"IP Mode: ","value":"DHCP"},{"id":"IP: ","value":"1]
[JSON:92.168.1.30"},{"id":"Gateway: ","value":"192.168.1.1"},{"id":"Mask: ","value":"255.255.255.0"},{"id"]
[JSON::"DNS: ","value":"192.168.1.1"},{"id":"Disabled Mode","value":"AP (48:E7:29:A3:17:79)"},{"id":"FW ve]
[JSON:rsion","value":"FluidNC v3.9.2-pre2"}]}]
ok
$wifi/listaps
{"AP_LIST":[
{"SSID":"Temp wifi",
"SIGNAL":"86",
"IS_PROTECTED":"1"
},
{"SSID":"Barts-WLAN",
"SIGNAL":"62",
"IS_PROTECTED":"1"
}
]
}
Les paramètres sont utilisés pour définir les valeurs sauvegardées. La plupart des paramètres sont maintenant dans le fichier de configuration, mais il y en a quelques-uns comme $Confg/Filename qui doivent être en dehors du fichier de configuration. Vous pouvez tous les voir avec $S.
Nous ne prenons en charge que quelques paramètres standard de Grbl $. Nous avons essayé de prendre en charge tous les paramètres susceptibles d'être utilisés dans le cadre d'un fonctionnement normal, comme $10. Les paramètres standard de Grbl qui sont utilisés pour configurer une machine ne sont pas pris en charge. En effet, FluidNC dispose de beaucoup plus de paramètres que Grbl.
**Voici une correspondance approximative entre les paramètres de Grbl et ceux de FluidNC.)
Vous définissez la valeur en définissant une valeur comme ceci $Config/Filename=test.yaml
. Vous pouvez voir la valeur actuelle en envoyant simplement le nom du paramètre comme $Config/Filename
. Si vous n'envoyez qu'une partie du nom du paramètre comme $STA
, tous les paramètres avec STA dans le nom seront affichés avec leurs valeurs actuelles.
Les paramètres ont différents types comme integer, float, String et Enum. Enum est une liste de valeurs. Vous pouvez voir le type valide en envoyant quelque chose comme $Wifi/Mode=*
. Il répondra avec les valeurs valides [MSG:INFO : Valid options : Off AP STA STA>AP].
La liste des paramètres varie selon que votre micrologiciel a été compilé pour le WiFi ou le Bluetooth. Vous trouverez ci-dessous une liste de tous les paramètres.
[depuis v3.4.8] Ceci définit le message de départ. Certains expéditeurs de Grbl Gcode attendent une valeur et une révision très spécifiques, ce qui vous permet de définir ce que vous voulez.
Accepte ces séquences de substitution :
\V - se développe en informations sur la version comme : 3.4
\B - se développe en informations de compilation comme : v3.4.6 (Devt-827770e-dirty)
\R - affiche des informations sur la radio comme : wifi
\H - se développe en : '' pour l'aide
La valeur par défaut est : Grbl \V [FluidNC \B (\R) \H] pour Grbl 3.4 [FluidNC v3.4.8 (wifi) '' pour l'aide].
Start/Message=Grbl 1.1g [\H] donnerait *Grbl 1.1g ['' pour l'aide]*
Informations supplémentaires pour le rapport [VER : ... :] émis en réponse à $I. La valeur par défaut est la chaîne vide, donc rien ne sera ajouté après le dernier : dans le rapport [VER : ... :]. Si vous définissez $Firmware/Build à « test », le rapport dira [VER : ... :test]
Contrôle le format des rapports d'état émis en réponse à « ? ». C'est la même chose que le paramètre $10 du GRBL. Les valeurs sont les suivantes
0 - Rapport sur les positions en coordonnées de travail, sans état de la mémoire tampon
1 - Rapport sur les positions en coordonnées machine, sans état de la mémoire tampon
2 - Déclarer les positions en coordonnées de travail, avec état de la mémoire tampon
3 - Déclarer les positions en coordonnées machine, avec état tampon
Ceci définit le nom du fichier à charger pour la configuration.
Ceci définit le niveau d'information qui est rapporté. Le niveau par défaut est Info. Les niveaux valides sont None, Error, Warning, Info, Debug et Verbose. Debug peut être utilisé pour donner des informations supplémentaires lors de la résolution de problèmes. Il est préférable d'utiliser Info pour un fonctionnement normal.
$Message/Level=Debug
$HX
[MSG:DBG: Homing Cycle X]
[MSG:DBG: Homing nextPhase FastApproach]
...
Les types valides sont les suivants
NONE - aucune notification ne sera envoyée
EMAIL - la notification sera envoyée par courrier électronique
LIGNE
PUSHOVER - LA NOTIFICATION SERA ENVOYÉE SOUS FORME D'E-MAIL
Dans le cas d'une notification par courrier électronique, il existe un nom de connexion pour le serveur smtp.
Dans le cas d'une notification par courrier électronique, il existe un mot de passe pour le serveur smtp.
Dans le cas des notifications par courrier électronique, il y a une adresse électronique, une adresse de serveur SMTP et un port au format email_address#smtp_server:port
. L'adresse électronique est utilisée à la fois pour l'expéditeur et le destinataire.
Par exemple, pour envoyer une notification par courriel à fluidnc@fluidnc.com en utilisant brevo.com, veuillez entrer ici :
fluidnc@fluidnc.com#smtp-relay.brevo.com:465
Si l'envoi de notifications ne fonctionne pas, essayez d'entrer l'adresse IP du serveur smtp au lieu de son nom. Pour l'envoi via brevo.com, vous devez entrer :
fluidnc@fluidnc.com#1.179.115.1:465
True pour activer les connexions via TCP sur le port 23
True pour activer les connexions HTTP sur le port donné par $HTTP/Port
Numéro de port pour les connexions HTTP, par défaut 80
[depuis v3.6.8] Empêche de servir des fichiers depuis LocalFS lorsque la machine est en cours d'exécution
La valeur est l'une des suivantes
Off - Radio WiFi désactivée
STA - Mode station (connecté à un point d'accès externe)
AP - ESP32 est le point d'accès (à utiliser uniquement pour la configuration initiale ; non recommandé pour une utilisation en production)
STA>AP - Essayer le mode station mais revenir au mode AP en cas d'échec.
Ceci définit le mode d'économie d'énergie du WiFi. Les options sont None
, Max
et Min
. La valeur par défaut est None
et est recommandée pour la plupart des gens à moins qu'il n'y ait des problèmes de surchauffe. Les détails sur les modes sont ici. Demandez plus de détails sur les forums ESP32. Nous ne sommes pas des experts en la matière.
SSID du point d'accès externe pour le mode STA. Voir ceci concernant l'utilisation de caractères non ascii comme les accents.
Mot de passe du point d'accès externe pour le mode STA. Voir ceci concernant l'utilisation de caractères non-ascii comme les accents.
DHCP ou Statique
Si $Sta/IPMode est Static, l'adresse IP à utiliser pour FluidNC
Si $Sta/IPMode est Static, l'adresse IP pour la passerelle
Si $Sta/IPMode est Static, le masque de sous-réseau (typiquement 255.255.255.0)
L'adresse IP à utiliser pour le mode AP (par défaut « FluidNC »)
Le mot de passe pour le mode AP (par défaut « 12345678 »)
L'adresse IP à utiliser pour le mode AP (par défaut 192.168.0.1)
[depuis v3.6.7] Le domaine de régulation configuré pour l'AP. Affecte les canaux disponibles et la puissance d'émission maximale.
Le nom d'hôte de cette instance FluidNC (par défaut « FluidNC »). Affecte l'accès via un nom MDNS tel que « fluidnc.local ».
Le nom de cette instance FluidNC pour l'analyse Bluetooth (par défaut « FluidNC »).
Les commandes en temps réel peuvent être envoyées à tout moment. Elles sont traitées immédiatement et ne sont pas placées dans le tampon des commandes.
Si vous devez envoyer un caractère de commande en temps réel dans le cadre d'une autre commande (par exemple lors de la définition d'un mot de passe Wifi), vous devez l'encoder à l'aide d'un encodage URL. Pour tester l'encodage, vous pouvez utiliser https://www.urlencoder.org/.
Il existe 4 commandes ASCII qui peuvent être envoyées à partir du clavier.
0x18
(CTRL+X) Réinitialisation douce
?
Interrogation sur l'état!
Maintien de l'alimentation
~
Démarrage / Reprise du cycle
0x84
Porte de sécurité
0x85
Jog Cancel (Annuler le Jog)