To jest lista aktualnie zaimplementowanych G-code w firmware Prusa dla drukarek z serii i3. Opis dotyczy tylko G-code specyficznych dla Prusa Research. Pozostałe można znaleźć na RepRap Wiki. Z wyjątkiem M117, wszystkie są pokazane w kolejności pojawiania się w kodzie. Istnieją powody, dla których niektóre G-Code nie są w kolejności numerycznej.
Są używane przez funkcje wewnętrzne do wykonywania określonych akcji we właściwej kolejności. Niektóre z nich mogą okazać się przydatne użytkownikowi. Są wykonywane wcześnie ze względu na swoją złożoność. Poniższe są dostępne tylko na MK3(S), ponieważ wymagają sterowników TMC2130:
- CRASH DETECTED
- CRASH RECOVER
- CRASH_CANCEL
- TMC_SET_WAVE
- TMC_SET_STEP
- TMC_SET_CHOP
M0, M1 - Zatrzymaj drukarkę M0: Stop or Unconditional stop
Zastosowanie
M0 [P] [string] M1 [P] [S] [string]
Parametry
P
- Czas wygaśnięcia, w milisekundachS
- Czas wygaśnięcia, w sekundachstring
- Wymagane dla komunikatu M1 i opcjonalne dla komunikatu M0 do wyświetlenia na wyświetlaczu LCD
PRUSA - zestaw komend wewnętrznych G98: Activate farm mode - Notes
Zestaw komend wewnętrznych PRUSA
Zastosowanie
PRUSA [ Ping | PRN | FAN | fn | thx | uvlo | MMURES | RESET | fv | M28 | SN | Fir | Rev | Lang | Lz | Beat | FR ]
Parametry
Ping
PRN
- Zwraca wersję drukarkiFAN
- Zwraca szczegóły wentylatorówfn
- Zwraca numer drukarki na farmiethx
uvlo
MMURES
- Reset MMURESET
- (Ostrożnie!)fv
- ?M28
SN
Fir
- Zwraca wersję firmwareRev
- Zwraca średnicę filamentu, wersję elektroniki, rodzaj dyszyLang
- Reset ustawień językaLz
Beat
- Kick farm link timerFR
- Pełny reset ustawień fabrycznychnozzle set
- ustawienie średnicy dyszy (tylko w trybie farmy), np.PRUSA nozzle set 0.4
nozzle D
- sprawdzenie średnicy dyszy (tylko w trybie farmy), działa jak M862.1 P, np.PRUSA nozzle D0.4
nozzle
- zwraca średnicę dyszy (tylko w trybie farmy), działa jak M862.1 P, np.PRUSA nozzle
G0, G1 - ruch osi X Y Z E G0 & G1: Move
W Firmware Prusa G0 i G1 mają takie samo działanie.
Zastosowanie
G0 [ X | Y | Z | E | F | S ] G1 [ X | Y | Z | E | F | S ]
Parametry
X
- Ruch osi X do zadanej pozycjiY
- Ruch osi Y do zadanej pozycjiZ
- Ruch osi Z do zadanej pozycjiE
- Ilość ekstruzji pomiędzy punktem startowym a końcowymF
- Prędkość posuwu w jednostkach na minutę pomiędzy punktem startowym a końcowym (jeśli określone)
G2, G3 - Ruch po łuku G2 & G3: Controlled Arc Move
Te komendy nie działają prawidłowo z włączonym poziomowaniem stołu (MBL). Kompensacja odbywa się tylko na końcu ruchu, więc unikaj długich łuków.
Zastosowanie
G2 [ X | Y | I | E | F ] (zgodnie ze wskazówkami zegara)
G3 [ X | Y | I | E | F ] (przeciwnie do wskazówek zegara)
Parametry
X
- Ruch osi X do zadanej pozycjiY
- Ruch osi Y do zadanej pozycjiI
- Punkt w osi X, do którego odległość w tej osi ma pozostać niezmienionaJ
- Punkt w osi Y, do którego odległość w tej osi ma pozostać niezmienionaE
- Ilość ekstruzji pomiędzy punktem startowym a końcowymF
- Prędkość posuwu w jednostkach na minutę pomiędzy punktem startowym a końcowym (jeśli określone)<
G4 - Wstrzymanie G4: Dwell
Wstrzymanie maszyny na zadany okres czasu.
Zastosowanie
G4 [ P | S ]
Parametry
P
- Czas wstrzymania w milisekundachS
- Czas wstrzymania w sekundach
G10 - Retrakcja G10: Retract
Wycofanie filamentu zgodnie z ustawieniami komendy M207
G11 - Powrót retrakcji G11: Unretract
Powrót filamentu po retrakcji zgodnie z ustawieniami komendy M208
G21 - Ustawienie milimetrów jako jednostek G21: Set Units to Millimeters
Milimetry jako jednostki. Prusa nie obsługuje cali.
G28 - Bazowanie wszystkich osi pojedynczo G28: Move to Origin (Home)
Użycie G28
bez żadnych parametrów spowoduje bazowanie (zerowanie - ustawienie w pozycji zerowej) wszystkich osi ORAZ poziomowanie stołu (MBL), podczas gdy komenda G28 W
spowoduje tylko bazowanie osi (bez poziomowania stołu).
Zastosowanie
G28 [ X | Y | Z | W | C ]
Parametry
X
- Flaga powrotu osi X do pozycji zerowejY
- Flaga powrotu osi Y do pozycji zerowejZ
- Flaga powrotu osi Z do pozycji zerowejW
- Wyłączenie poziomowania stołu przy braku parametrówX
,Y
lubZ
C
- Kalibracja początku osi X i Y (punktów bazowych) - tylko MK3/S
Użycie G28 bez żadnych parametrów spowoduje bazowanie (zerowanie - ustawienie w pozycji zerowej) również MMU (unieważnia flagi bazowania wybieraka i docisku, które wykonają bazowanie asynchronicznie po uznaniu go za bezpieczne, tj. bez filamentu w wybieraku)
- P: unieważnij tylko flagę ważności bazowania wybieraka
- I: unieważnij tylko flagę ważności bazowania docisku
G29 - Szczegółowe próbkowanie Z G29: Detailed Z-Probe
W firmware Prusa i3 ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
Zobacz G81
G30 - Pojedyncze próbkowanie Z G30: Single Z-Probe
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G31 - Dokowanie sanek czujnika G31: Dock Z Probe sled
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G32 - Oddokowanie sanek czujnika G32: Undock Z Probe sled
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G30 - Pojedyncze próbkowanie Z G30: Single Z-Probe
Czujnik musi znajdować się nad stołem. Maksymalny dystans przed wywołaniem błędu wynosi 10mm.
G75 - Interpolacja temperatury druku G75: Print temperature interpolation
Pokaż interpolację temperatury PINDA.
G76 - Kalibracja temperatury czujnika PINDA G76: PINDA probe temperature calibration
Ten G-code jest używany do kalibracji kompensacji temperaturowej odczytów czujnika PINDA (czujnika indukcyjnego).
czujnik PINDAv2 ma wbudowany termistor, który sprawia, że kalibracja jest wymagana tylko raz i ma zastosowanie dla wszystkich materiałów.
Original i3 Prusa MK2/s używa PINDAv1, a ta kalibracja usprawnia kompensację temperatury, ale nie jest tak skuteczna jak przy PINDAv2.
Czujnik SuperPINDA posiada wewnętrzną kompensację temperatury i nie posiada wyjścia termistora. W takim przypadku nie ma sensu przeprowadzać kalibracji temperatury. Jeśli podczas kompilacji zdefiniowano PINDA_THERMISTOR i SUPERPINDA_SUPPORT, kalibracja zostanie pominięta z komunikatem seryjnym "Brak termistora PINDA". Może to być również spowodowane przerwaniem połączenia termistora PINDA lub temperaturą PINDA niższą niż PINDA_MINTEMP.
Przykład
G80 - Próbkowanie Z wg siatki G80: Mesh-based Z probe
Domyślna siatka poziomowania 3x3 może być zmieniona w MK2.5/s i MK3/s na siatkę 7x7.
Zastosowanie
G80 [ N | C | O | M | L | R | F | B | X | Y | W | H ]
Parametry
N
- Liczba punktów siatki w osi X. Domyślnie 3. Dopuszczalne wartości to 3 i 7.C
- Liczba ponowień próbkowania. Domyślnie jest to wartość zapisana w pamięci EEPROM. Prawidłowe wartości to od 1 do 10.O
- Powrót do punktu początkowego. Domyślnie 1. Prawidłowe wartości to 0 (fałsz) i 1 (prawda).M
- Użyj kompensacji magnesów. Będzie używana tylko wtedy, gdy liczba punktów siatki jest ustawiona na 7. Domyślnie jest to wartość zapisana w pamięci EEPROM. Prawidłowe wartości to 0 (fałsz) i 1 (prawda).
Dodatkowe parametry
Użycie poniższych parametrów umożliwia dodatkową "ręczną" korektę poziomowania stołu. Prawidłowe wartości to -100 mikronów do 100 mikronów.
L
- Korekcja poziomowania lewej strony stołu w um.R
- Korekcja poziomowania prawej strony stołu w um.F
- Korekcja poziomowania przedniej strony stołu w um.B
- Korekcja poziomowania tylnej strony stołu w um.
Poniższe parametry służą do definiowania obszaru używanego przez wydruk:
X
- współrzędna X dolnego lewego punktu obszaruY
- współrzędna Y dolnego lewego punktu obszaruW
- szerokość obszaru (w osi X)H
- szerokość obszaru (w osi Y)
G81 - Stan poziomowania stołu (MBL) G81: Mesh bed leveling status
Zwraca stan poziomowania stołu i profil stołu, jeśli jest aktywny.
G82: Pojedyncze próbkowanie Z w obecnej pozycji - nieaktywne G82: Single Z probe at current location
UWAGA! ZACHOWAJ OSTROŻNOŚĆ! Jeśli włączysz poziomowanie w niewłaściwym miejscu, to mogą zadziać się złe rzeczy! W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G83: Babystep w osi Z i zapisywanie w EEPROM - nieaktywne G83: Babystep in Z and store to EEPROM
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G84: COFNIJ Babystep Z (wróć do poprzedniej pozycji osi Z) - nieaktywne G84: UNDO Babystep Z (move Z axis back)
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G85: Wybierz najlepszy babystep - nieaktywne G85: Pick best babystep
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
G86 - Wyłącz babystep po bazowaniu G86: Disable babystep correction after home
Ten G-code zostanie wykonany na początku skryptu kalibracyjnego (unikalny dla Prusa3D)
G87 - Włącz korekcję babystep po bazowaniu G87: Enable babystep correction after home
Ten G-code zostanie wykonany na końcu skryptu kalibracyjnego (unikalny dla Prusa3D)
G88 - Zarezerwowany G88: Reserved
Obecnie nie ma żadnego działania.
G90 - Wyłącz tryb względny G90: Set to Absolute Positioning
Wszystkie współrzędne odtąd są bezwzględne w stosunku do punktu zerowego maszyny. Oś E jest również przełączana w tryb absolutny.
G91 - Włącz tryb względny G91: Set to Relative Positioning
Wszystkie współrzędne odtąd są względne w stosunku do ostatniej pozycji. Oś E jest również przełączana w tryb względny.
G92 - Ustaw pozycję G92: Set Position
Używany do ustawienia pozycji każdej z osi. Parametry są zawsze bezwzględne w stosunku do punktu zerowego. Jeśli parametr jest pominięty, to dana oś również będzie pominięta. Jeśli X
, Y
lub Z
są określone, to późniejszy ruch może następować skokowo ze względu na poziomowanie stołu (MBL). Nie ma wpływu na oś E
, jeśli zadana pozycja to 0 (G92 E0
). G92 bez koordynat zresetuje wszystkie osie do zera w niektórych firmware. Nie dotyczy firmware Prusa!
Zastosowanie
G92 [ X | Y | Z | E ]
Parametry
X
- nowa pozycja osi XY
- nowa pozycja osi YZ
- nowa pozycja osi ZE
- nowa pozycja ekstrudera
G98 - Włącz tryb farmy G98: Activate farm mode
Włączenie funkcji farmy i G-code unikalnych dla Prusy. Zobacz "PRUSA - zestaw komend wewnętrznych".
G99 - Wyłącz tryb farmy G99: Deactivate farm mode
Wyłączenie funkcji farmy i G-code unikalnych dla Prusy.
Koniec kodów (komend) G
M17 - Włącz wszystkie osie M17: Enable/Power all stepper motors
M20 - Lista plików na karcie SD M20: List SD card
Zastosowanie
M20 [ L | T ]
Parametry
T
- Raportuj również znaczniki czasowe. Wartość jest pojedynczym uint32_t zakodowanym jako szesnastkowy. Wymaga parsowania przez oprogramowanie hosta (Cap:EXTENDED_M20).L
- Raportuj długie nazwy plików zamiast tylko krótkich. Wymaga parsowania przez oprogramowanie hosta (Cap:EXTENDED_M20).
M21 - Inicjalizacja karty SD M21: Initialize SD card
M22 - Wysunięcie karty SD M22: Release SD card
M23 - Wybierz plik M23: Select SD file
Zastosowanie
M23 [nazwa_pliku]
M24 - Start druku z SD M24: Start/resume SD print
M26 - Ustaw indeks SD M26: Set SD position
Ustaw pozycję indeksowania pliku na karcie SD w bajtach. Ta komenda jest oczekiwana po M23 i przed M24. W innym przypadku efekt jest niezdefiniowany.
Zastosowanie
M26 [ S ]
Parametry
S
- Indeks w bajtach
M27 - Status SD M27: Report SD print status
Zastosowanie
M27 [ P ]
Parametry
P
- Pokaż pełną ścieżkę SFN zamiast tylko LFN.
M28 - Rozpocznij zapis na SD M28: Begin write to SD card
M29 - Zatrzymaj zapis na SD M29: Stop writing to SD card
Zatrzymuje zapis pliku na SD sygnalizując koniec przesyłanego pliku. Jest wykonywany bardzo wcześnie i nie jest zapisywany na karcie.
M30 - Usuń plik M30: Delete a file on the SD card
Zastosowanie
M30 [nazwa_pliku]
M32 - Wybierz plik i rozpocznij druk z karty SD M32: Select file and start SD print
M928 - Rozpocznij logowanie na SD M928: Start SD logging
Zastosowanie
M928 [nazwa_pliku]
M31 - Zwróć obecny czas druku M31: Output time since last M109 or SD card start to serial
M42 - Ustaw stan pina M42: Switch I/O pin
Zastosowanie
M42 [ P | S ]
Parametry
P
- numer pina.S
- wartość pina. Jeśli pin jest analogowy, to wartości mają zakres od 0 do 255. Jeśli pin jest cyfrowy, to wartości mają wartość 0 lub 1.
M44 - Reset krzywizny stołu i kalibracji odległości M44: Reset the bed skew and offset calibration
M45 - Krzywizna stołu i odstęp z ręcznym podniesieniem osi Z M45: Bed skew and offset with manual Z up
Zastosowanie
M45 [ V ]
Parametry
V
- szczegółowości 1, 10 i 20 (niski, średni, wysoki). Tylko, gdy zdefiniowany jest parametr SUPPORT_VERBOSITY. Opcjonalny.Z
- Jeśli podany, to uruchomiona zostanie tylko kalibracja osi Z. W innym przypadku zostanie wykonana pełna kalibracja.
M46 - Pokaż przypisany adres IP M46: Show the assigned IP address.
M47 - Pokaż stan krańcówek na ekranie M47: Show end stops dialog on the display
M48 - Funkcja powtarzania próbkowania osi Z M48: Measure Z-Probe repeatability
Ta funkcja "zakłada", że stół został wcześniej zbazowany. Konkretnie, że komenda G28 została wykonana przed wywołaniem komendy M48 Funkcja powtarzania próbkowania osi Z. Wszelkie dane wygenerowane wcześniej przez komendę G29 zostaną wymazane i będą musiałby zostać ponownie wygenerowane.
Liczba próbkowania zostanie ustawiona na 10, jeśli nie zostanie wcześniej określona. Możesz wpisywać opcje z małych i dużych liter, OPRÓCZ n. n musi być wpisane z małej litery, ponieważ Marlin używa wielkiej litery N dla protokołu komunikacyjnego i wysłanie wielkiej litery N wprowadziłoby zamieszanie.
Usage
M48 [ n | X | Y | V | L ]
Parametry
n
- Liczba próbek. Dopuszczalne wartości 4-50X
- Pozycja X dla próbkowaniaY
- Pozycja Y dla próbkowaniaV
- Poziom szczegółowości. Dopuszczalne wartości 1-4L
- Podział ruchu przed próbkowaniem. Dopuszczalne wartości 1-15
M72 - Ustaw/odbierz stan drukarki M72: Set/get Printer State
Bez żadnego parametru pobiera stan drukarki.
0 = NotReady (gotowa); używane przez PrusaConnect
1 = IsReady (gotowa); używane przez PrusaConnect
2 = Bezczynny
3 = Drukowanie z SD zakończone
4 = Drukowanie z serwera druku zakończone
5 = Drukowanie z SD
6 = Drukowanie z serwera druku
Zastosowanie
M72 [ S ]
Parametry
Snnn
- ustaw stan drukarki 0 = not_ready, 1 = ready
M73 - Ustaw/pokaż postęp w procentach M73: Set/Get build percentage
Zastosowanie
M73 [ P | R | Q | S | C | D ]
Parametry
P
- Postęp procentowy w trybie normalnymR
- Pozostały czas w trybie normalnymQ
- Postęp procentowy w trybie cichymS
- Pozostały czas w trybie cichymC
- Pozostały czas do zmiany/pauzy/interakcji użytkownika w trybie normalnymD
- Pozostały czas do zmiany/pauzy/interakcji użytkownika w trybie cichym
M75 - Uruchom licznik czasu zadania drukowania M75: Start the print job timer
M76 - Wstrzymaj licznik czasu zadania drukowania M76: Pause the print job timer
M77 - Zatrzymaj licznik czasu zadania drukowania M77: Stop the print job timer
M78 - Wyświetl informacje statystyczne o zadaniach drukowania M78: Show statistical information about the print jobs
M79 - Uruchom licznik czasu serwera druku M79: Start host timer
Uruchomienie timera serwer-drukarka włącza licznik keep-alive (podtrzymania połączenia). Gdy licznik czasu nie upłynął, drukarka włączy funkcje specyficzne dla serwera druku.
Zastosowanie
M79 [ S ]
Parametry
S
- Cytowany ciąg znaków zawierający dwa znaki, np. "PL"
M104 - Ustaw temperaturę hotendu M104: Set Extruder Temperature
Zastosowanie
M104 [ S ]
Parametry
S
- Zadana temperatura
M112 - Zatrzymanie awaryjne M112: Full (Emergency) Stop
Wykonywany dużo wcześniej, aby pominąć kolejkę cmdqueue.
M140 - Ustaw temperaturę stołu M140: Set Bed Temperature (Fast)
Zastosowanie
M140 [ S ]
Parametry
S
- Zadana temperatura
M105 - Raportuj temperatury
Zwraca temperatury:
M105: Get Extruder Temperature
Zwraca temperatury:
T:
- Hotend (aktualna / zadana)B:
- Stół (aktualna / zadana)Tx:
- Narzędzie x (aktualna / zadana)@:
- Moc hotenduB@:
- Moc stołuP:
- Aktualna PINDAv2 (tylko MK2.5/s i MK3/s)A:
- Aktualna otoczenia (tylko MK3/s)
Przykład:
ok T:20.2 /0.0 B:19.1 /0.0 T0:20.2 /0.0 @:0 B@:0 P:19.8 A:26.4
M155 - Automatycznie wysyłaj status M155: Automatically send temperatures
Zastosowanie
M155 [ S ] [ C ]
Parametry
S
- Ustaw interwał automatycznego raportowania w sekundach. 0, aby wyłączyć. Maksymalnie: 255C
- Aktywuj funkcję automatycznego raportowania (maska bitów). Domyślnie jest to temperatura.bit 0 = Automatyczne raportowanie temperatur bit 1 = Automatyczne raportowanie wentylatorów bit 2 = Automatyczne raportowanie pozycji bit 3 = wolny bit 4 = wolny bit 5 = wolny bit 6 = wolny bit 7 = wolny
M109 - Ustaw temperaturę i czekaj na nagrzanie ekstrudera M109: Set Extruder Temperature and Wait
Zastosowanie
M104 [ B | R | S ]
Parametry (niewymagane)
S
- Ustaw temperaturę ekstruderaR
- Ustaw temperaturę ekstruderaB
- Ustaw maksymalną temperaturę ekstrudera, podczas gdyS
to minimalna temperatura. Domyślnie nieaktywny, możliwy przy zdefiniowaniu AUTOTEMP w kodzie źródłowym.
Parametry S i R są traktowane tak samo. Komenda zawsze powoduje oczekiwanie zarówno na nagrzanie, jak i schłodzenie. Jeśli nie zostaną podane parametry, to firmware będzie czekać na osiągnięcie uprzednio ustawionej temperatury.
M190 - Czekaj na nagrzanie stołu M190: Wait for bed temperature to reach target temp
Zastosowanie
M190 [ R | S ]
Parametry (niewymagane)
S
- Ustaw temperaturę stołu i czekaj na nagrzanieR
- Ustaw temperaturę stołu i czekaj na nagrzanie lub schłodzenie
Jeśli nie zostaną podane parametry, to firmware będzie czekać na osiągnięcie uprzednio ustawionej temperatury.
M106 - Ustaw prędkość wentylatora M106: Fan On
Zastosowanie
M106 [ S ]
Parametry
S
- Określa prędkość wentylatora. Dopuszczalne są wartości w zakresie 0-255. Jeśli nie zostanie podana żadna wartość, to zostanie użyta 255.
M107 - Wyłącz wentylator M107: Fan Off
M80 - Włącz zasilacz M80: ATX Power On
Działa tylko jeśli firmware zostało skompilowane ze zdefiniowanym parametrem PS_ON_PIN.
M81 - Wyłącz zasilacz M81: ATX Power Off
Działa tylko jeśli firmware zostało skompilowane ze zdefiniowanym parametrem PS_ON_PIN.
M82 - Ustaw oś E w trybie bezwzględnym M82: Set extruder to absolute mode
Powoduje interpretowanie komend ekstruzji jako wartości bezwzględnych.
M83 - Ustaw oś E w trybie względnym M83: Set extruder to relative mode
Powoduje interpretowanie komend ekstruzji jako wartości względnych.
M84 - Wyłącz silniki krokowe M84: Stop idle hold
Ta komenda może być użyta do ustawienia czasowego wyłącznika silników w przypadku braku aktywności (S
) lub do wyłączenia silników (X
,Y
,Z
,E
). Może być użyta bez żadnych parametrów - w takim przypadku wszystkie silniki zostaną wyłączone.
Sprawdzenie kompletności pliku szuka tego parametru, aby wykryć niekompletny plik. Komenda musi znajdować się na końcu pliku bez żadnych parametrów.
M84 [ S | X | Y | Z | E ]
S
- SekundyX
- Oś XY
- Oś YZ
- Oś ZE
- Ekstruder
M18 - Wyłącz silniki krokowe M18: Disable all stepper motors
Taka sama jak M84 (kompatybilność)
M85 - Ustaw wyłączenie przy braku aktywności M85: Set Inactivity Shutdown Timer
Zastosowanie
M85 [ S ]
Parametry
S
- określa czas w sekundach. Przy wartości 0 wyłącznik czasowy jest nieaktywny.
M86 - Ustaw limit wyłącznika czasowego M86: Set Safety Timer expiration time
Po osiągnięciu zadanego czasu temperatury ekstrudera i stołu zostaną ustawione na zero.
Zastosowanie
M86 [ S ]
Parametry
S
- określa czas w sekundach. Przy wartości 0 wyłącznik czasowy jest nieaktywny.
M92 - Ustaw kroki osi M92: Set axis_steps_per_unit
Umożliwia programowanie liczby kroków na jednostkę (zazwyczaj mm) dla silników krokowych. Wartość ta jest resetowana do domyślnej dla firmware przy włączeniu, chyba, że ustawienie jest zapisane w EEPROM (M500 w Marlinie)
Zastosowanie
M92 [ X | Y | Z | E ]
Parametry
X
- Liczba kroków na jednostkę w osi XY
- Liczba kroków na jednostkę w osi YZ
- Liczba kroków na jednostkę w osi ZE
- Liczba kroków na jednostkę dla ekstrudera
M110 - Ustaw numer linii M110: Set Current Line Number
Ustawia numer linii w G-code
Zastosowanie
M110 [ N ]
Parametry
N
- Numer linii
M113 - Zwróć lub ustaw czas podtrzymania hosta M113: Host Keepalive
Podczas niektórych długich procesów, np. G29, host może widzieć Marlina jako nieaktywnego. Funkcja podtrzymania hosta będzie wysyłać wiadomości do hosta, jeśli Marlin będzie zajęty podczas oczekiwania na interakcję użytkownika, aby nie nastąpiła próba ponownego połączenia (lub rozłączenie).
Zastosowanie
M113 [ S ]
Parametry
S
- Sekundy. Domyślnie 2 sekundy pomiędzy komunikatami "busy" ("zajęty").
M115 - Informacje o firmwareM115: Get Firmware Version and Capabilities
Zwraca informacje o firmware. Bez dodatkowych parametrów zwraca wersję firmware Prusa, rodzaj urządzenia, liczbę ekstruderów i UUID. M115 U
sprawdza dostępną wersję firmware. Jeśli wersja otrzymana przez kod U jest wyższa niż obecnie zainstalowana, to wydruk zostanie zatrzymany na 30 sekund, a użytkownik poproszony o aktualizację.
Przykłady:
M115
wynik:
FIRMWARE_NAME:Prusa-Firmware 3.8.1 based on Marlin FIRMWARE_URL:https://github.com/prusa3d/Prusa-Firmware PROTOCOL_VERSION:1.0 MACHINE_TYPE:Prusa i3 MK3S EXTRUDER_COUNT:1 UUID:00000000-0000-0000-0000-000000000000
M115 V
results:
3.8.1
M115 U3.8.2-RC1
wynik wyświetlany na LCD przez 30 sekund lub do czasu interakcji użytkownika:
Dostępna nowa wersja firmware: 3.8.2-RC1 Proszę zaktualizować.
Zastosowanie
M115 [ V | U ]
Parametry
V
- Zwróć wersję aktualnie zainstalowanego firmwareU
- Wersja firmware dostarczona przez G-goce zostanie porównana z obecną.
M114 - Zwróć obecną pozycję M114: Get Current Position
M117 - Wyświetl komunikat M117: Display Message
Powoduje to wyświetlenie danego komunikatu w wierszu stanu na podłączonym wyświetlaczu LCD. Jest on przetwarzany wcześnie, aby umożliwić przesłanie komunikatów zawierających G, M, N lub T.
M118 - Druk szeregowy M118: Serial print
Zastosowanie
M118 [ A1 | E1 ] [ String ]
Parametry
- A1 - Prepend // dodaj na początku; oznacza komentarz lub polecenie akcji. Hosty takie jak OctoPrint mogą interpretować takie polecenia, aby wykonywać specjalne akcje. Zapoznaj się z dokumentacją hosta.
- E1 - Prepend echo: do komunikatu. Niektóre hosty wyświetlają komunikaty echo inaczej, gdy są poprzedzone echo:.
- String - Message string. Ciąg komunikatu; W przypadku pominięcia zostanie wysłana pusta linia.
M120 - Włączenie krańcówek M120: Enable endstop detection
M121 - Wyłączenie krańcówek M121: Disable endstop detection
M119 - Zwróć stan krańcówek M119: Get Endstop Status
Zwraca obecny stan skonfigurowanych wyłączników krańcowych osi X, Y i Z. Bierze pod uwagę ustawienia "odwrócenia krańcówek", aby potwierdzić ich prawidłowe działanie.
M123 - Tachometer value M123: Tachometer value
This command is used to report fan speeds and fan pwm values.
Zastosowanie
M123
- E0: - Hotend fan speed in RPM
- PRN1: - Part cooling fans speed in RPM
- E0@: - Hotend fan PWM value
- PRN1@: -Part cooling fan PWM value
Example:
E0:3240 RPM PRN1:4560 RPM E0@:255 PRN1@:255
M150 - Ustaw kolor RGB(W) M150: Set LED color
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym przez zdefiniowanie parametru BLINKM i jego zależności.
Zastosowanie
M150 [ R | U | B ]
Parametry
R
- Wartość koloru czerwonegoU
- Wartość koloru zielonego. NIE jest toG
!B
- Wartość koloru niebieskiego
M200 - Ustaw średnicę filamentu M200: Set filament diameter
Zastosowanie
M200 [ D | T ]
Parametry
D
- Średnica w mmT
- Liczba ekstruderów (MMUs)
M201 - Ustaw maksymalne przyspieszenie M201: Set max printing acceleration
Osobno dla każdej osi.
M203 - Ustaw maksymalną prędkość posuwu M203: Set maximum feedrate
Osobno dla każdej osi.
M204 - Ustawienia przyspieszenia M204: Set default acceleration
Poprzedni format:
Zastosowanie
M204 [ S | T ]
Parametry
S
- normalne ruchyT
- tylko ruchy filamentu
Nowy format:
Zastosowanie
M204 [ P | R | T ]
Parametry
P
- ruchy drukująceR
- tylko ruchy filamentuT
- ruchy jałowe (obecnie parametr T jest ignorowany)
M205 - Ustawienia zaawansowane M205: Advanced settings
Niektóre ustawienia zaawansowane związane z ruchami.
Zastosowanie
M205 [ S | T | B | X | Y | Z | E ]
Parametry
S
- Minimalna prędkość posuwu dla ruchów drukujących (jednostki/s)T
- Minimalna prędkość posuwu dla ruchów jałowych (jednostki/s)B
- Minimalny czas segmentu (us)X
- Maksymalny jerk (zryw) X (jednostki/s)Y
- Maksymalny jerk (zryw) Y (jednostki/s)Z
- Maksymalny jerk (zryw) Z (jednostki/s)E
- Maksymalny jerk (zryw) E (jednostki/s)
M206 - Ustaw dodatkowe kompensacje bazowania osi M206: Offset axes
Zastosowanie
M206 [ X | Y | Z ]
Parametry
X
- odstęp w osi XY
- odstęp w osi YZ
- odstęp w osi Z
M207 - Ustaw retrakcję firmware M207: Set retract length
Zastosowanie
M207 [ S | F | Z ]
Parametry
S
- dodatnia wartość retrakcji, w mmF
- prędkość retrakcji, w mm/minZ
- dodatkowy z-lift/hop
M208 - Ustaw długość powrotu retrakcji M208: Set unretract length
Zastosowanie
M208 [ S | F ]
Parametry
S
- dodatnia wartość ponad wartość z M207 Snnn, w mmF
- prędkość, w mm/s
M209 - Włącz/wyłącz automatyczną retrakcję M209: Enable automatic retract
Ta logiczna wartość S 1=prawda lub 0=fałsz włącza wykrywanie automatycznej retrakcji jeśli slicer nie obsługuje G10/G11: każdy normalny ruch tylko ekstrudujący zostanie zaliczony jako retrakcja w zależności od kierunku.
Zastosowanie
M209 [ S ]
Parametry
S
- 1=prawda lub 0=fałsz
M214 - Ustaw wartości konfiguracji łuku (użyj M500 do zapisania w EEPROM) M214: Set Arc configuration value.
Zastosowanie
M214 [P] [S] [N] [R] [F]
Parametry
P
- Liczba zmiennoprzecinkowa reprezentująca maksymalną i domyślną liczbę milimetrów na segment łuku. Musi być większa niż 0.S
- Liczba zmiennoprzecinkowa reprezentująca minimalną dopuszczalną liczbę milimetrów na segment łuku. Ustaw na 0, aby wyłączyćN
- Liczba całkowita reprezentująca liczbę łuków do narysowania przed skorygowaniem przybliżenia małego kąta. Ustaw na 0, aby wyłączyć.R
- Liczba całkowita reprezentująca minimalną liczbę segmentów na łuk o dowolnym promieniu, z wyjątkiem sytuacji, gdy długość segmentu jest większa lub mniejsza od minimalnej i maksymalnej długości segmentu. Ustaw na 0, aby wyłączyć.F
- Liczba całkowita reprezentująca liczbę segmentów na sekundę, chyba że skutkuje to długością segmentu większą lub mniejszą niż minimalna i maksymalna długość segmentu. Ustaw na 0, aby wyłączyć.
M218 - Ustaw odsadzenie hotendu M218: Set Hotend Offset
W firmware Prusa ten G-code jest aktywny tylko jeśli parametr EXTRUDERS
jest wyższy niż 1 w kodzie źródłowym. W Original Prusa i3 MK2/S, MK2.5/S, MK3/S nie jest aktywny.
Zastosowanie
M218 [ X | Y ]
Parametry
X
- odsadzenie w osi XY
- odsadzenie w osi Y
M220 Ustaw prędkość posuwu w procentach M220: Set speed factor override percentage
Zastosowanie
M220 [ B | S | R ]
Parametry
B
- Kopia obecnego ustawienia prędkościS
- Nadpisanie prędkości w procentach (0..100 lub więcej)R
- Przywróć poprzednie ustawienie prędkości
M221 - Ustaw nadpisanie współczynnika ekstruzji w procentach M221: Set extrude factor override percentage
Zastosowanie
M221 [ S | T ]
Parametry
S
- Nadpisanie współczynnika ekstruzji w procentach (0..100 lub więcej), domyślnie 100%T
- Numer ekstrudera (tylko firmware Prusa), domyślnie 0, jeśli nie ustawiono inaczej.
M226 - Czekaj na stan pina M226: Wait for pin state
Czekaj, aż określony pin osiągnie wymagany stan
Zastosowanie
M226 [ P | S ]
Parametry
P
- numer pinaS
- stan pina
M280 - Ustaw/zwróć pozycję serwo M280: Set servo position
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
Zastosowanie
M280 [ P | S ]
Parametry
P
- Indeks serwo (id)S
- Zadana pozycja
M300 - Odtwórz dźwięk M300: Play beep sound
Domyślne wartości dla firmware Prusa to 100Hz
i 1000ms
, więc M300
bez parametrów odtworzy 1-sekundowe piknięcie.
Zastosowanie
M300 [ S | P ]
Parametry
S
- częstotliwość w Hz. Nie wszystkie wersje firmware obsługują ten parametr.P
- długość w milisekundach.
M301 - Ustaw PID hotendu M301: Set PID parameters
Ustawia proporcjonalne (Proportional -P), całkujące (Integral - I) i różniczkujące (Derivative - D) wartości hotendu. Zobacz również PID Tuning.
Zastosowanie
M301 [ P | I | D | C ]
Parametry
P
- proporcjonalne (Kp)I
- całkujące (Ki)D
- różniczkujące (Kd)C
- moc grzania=Kc(e_speed0)
M304 - Ustaw PID stołu M304: Set PID parameters - Bed
Ustawia proporcjonalne (Proportional -P), całkujące (Integral - I) i różniczkujące (Derivative - D) wartości hotendu. Zobacz również PID Tuning.
Zastosowanie
M304 [ P | I | D ]
Parametry
P
- proporcjonalne (Kp)I
- całkujące (Ki)D
- różniczkujące (Kd)
M240 - Włącz kamerę M240: Trigger camera
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym.
Musisz zdefiniować i przypisać CHDK
lub PHOTOGRAPH_PIN
do właściwego pina, aby móc używać tej funkcji.
M302 - Pozwól na zimną ekstruzję lub ustaw minimalną temperaturę ekstruzji M302: Allow cold extrudes
Pozwala to drukarce na ruch ekstrudera dopiero po osiągnięciu określonej temperatury lub, jeśli wyłączone, poniżej zakresu bezpieczeństwa.
Zastosowanie
M302 [ S ]
Parametry
S
- Zimna ekstruzja (poniżej minimalnej temperatury)
M303 - PID autotune M303: Run PID tuning
PID Tuning to algorytm kontrolny używany w niektórych RepRapach to precyzyjnego ustawienia działania grzałek hotendu i stołu. Komenda ta generuje proporcjonalne (Proportional -P), całkujące (Integral - I) i różniczkujące (Derivative - D) wartości dla hotendu i stołu. Wyślij odpowiednią komendę do drukarki i poczekaj na wynik, aby zaktualizować firmware.
Zastosowanie
M303 [ E | S | C ]
Parametry
E
- Ekstruder, domyślnieE0
. UżyjE-1
do kalibracji PID stołu.S
- Zadana temperatura, domyślnie210°C
dla hotendu, 70 dla stołu.C
- Ilość cykli, domyślnie5
M310 - Ustawienia modelu termicznego M310: Thermal model settings
Zastosowanie
M310 ; zwróć wartości
M310 [ A ] [ F ] ; autokalibracja
M310 [ S ] ; ustaw 0=wyłącz 1=włącz
M310 [ I ] [ R ] ; ustaw opór na indeksie
M310 [ P | U | V | C ] ; ustaw moc, współczynnik temperaturowy, punkt przecięcia, pojemność
M310 [ D | L ] ; ustaw filtr symulacji, opóźnienie
M310 [ B | E | W ] ; ustaw dźwięk ostrzegawczy, próg ostrzegania i próg błędu
M310 [ T ] ; ustaw korekcję temperatury otoczenia
Parametry
I
- pozycja indeksu oporu (0-15)R
- wartość oporu na indeksie (K/W; wymaga I)P
- moc (W)U
- liniowy współczynnik temperaturowy (W/K/moc)V
- liniowe przecięcie temperaturowe (W/moc)C
- pojemność cieplna (J/K)D
- czynnik filtra IIR pierwszego rzędu w symulacji (f=100/27)L
- opóźnienie odpowiedzi w symulacji (ms, 0-2160)S
- ustaw 0=wyłącz 1=włączB
- sygnał dźwiękowy i ostrzeżenie po osiągnięciu progu ostrzegawczego 0=wyłącz 1=włącz (domyślnie: 1)E
- próg błędu (K/s; domyślnie w wariancie))W
- próg ostrzegawczy (K/s; domyślnie w wariancie)T
- korekcja temperatury otoczenia (K; domyślnie w wariancieA
- autokalibracja wartości C+RF
- wymuś stan autotestu modelu (0=wyłącz 1=włącz) podczas autokalibracji z użyciem bieżących wartości
M400 - Poczekaj na zakończenie wszystkich ruchów M400: Wait for current moves to finish
Dokańcza wszystkie aktualne ruchy i czyści bufor. Równoznaczny z G4
bez parametrów.
M403 - Ustaw rodzaj filamentu (materiału) dla konkretnego ekstrudera i wyślij powiadomienie do MMU M403 - Set filament type (material) for particular extruder and notify the MMU
Obecnie obsługiwane są trzy rodzaje materiałów (domyślny, flex i PVA).
Ta informacja jest zapisywana dla różnych profili ładowania/rozładowania itp., aby w przyszłych wersjach firmware nie było potrzeby czekania na zwrotkę "ok" z MMU.
Zastosowanie
M403 [ E | F ]
Parametry
E
- Numer ekstrudera. 0-indeksowany.F
- Rodzaj filamentu.
M405 - Włącz czujnik filamentu M405: Filament Sensor on
Włącz kontrolę ekstruzji za pomocą czujnika filamentu.
Zastosowanie
M405
M406 - Wyłącz czujnik filamentu M406: Filament Sensor off
Wyłącz kontrolę ekstruzji za pomocą czujnika filamentu.
Zastosowanie
M406
M420 - Status poziomowania stołu (status Mesh Bed Leveling) M420: Mesh bed leveling status
Zwraca status poziomowania stołu i profil stołu, jeśli został aktywowany.
M500 - Zapisz ustawienia w EEPROM M500: Store parameters in non-volatile storage
Zapisuje obecne parametry w EEPROM.
M501 - Odczytaj ustawienia z EEPROM M501: Read parameters from EEPROM
Ustaw parametry na wartości zapisane w EEPROM. Przydatne w przypadku przywracania ustawień lub eksperymentowania z nimi.
M502 - Przywróć ustawienia fabryczne M502: Restore Default Settings
Ta komenda przywraca wszystkie możliwe do zapisania ustawienia do wartości domyślnych, zgodnych z plikami konfiguracyjnymi firmware. Nie resetuje ustawień zapisanych w EEPROM, więc M500 musi zostać wysłana jako następna, aby zapisać przywrócone ustawienia fabryczne.
M503 - Zwróć wszystkie ustawienia zapisane aktualnie w pamięci M503: Report Current Settings
Ta komenda powoduje zwrócenie przez firmware wszystkich ustawień zapisanych w pamięci. Będą różnić się od tych w EEPROM w przypadku, w którym zostały wcześniej wczytane/zapisane. Zwrotka zawiera komendy G-Code przypisane odpowiednim ustawieniom. Np. ustawienia liczby kroków będą wyświetlane jako komenda M92.
M509 - Wymuś wybór języka M509: Force language selection
Resetuje ustawienie języka do angielskiego. Dostępne tylko w Original Prusa i3 MK2.5/S i MK3/S z kilkoma językami.
M540 - Anuluj druk przy aktywacji wyłącznika krańcowego (włącz/wyłącz) M540 in Marlin: Enable/Disable "Stop SD Print on Endstop Hit"
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym. Musisz zdefiniować ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED
.
Zastosowanie
M540 [ S ]
Parametry
S
- 0=wyłączone, 1=włączone
M851 - Ustaw odstęp czujnika Z M851: Set Z-Probe Offset"
Ustawia odległość do czujnika osi Z. Odległość ta jest używana do określenia właściwej pozycji dyszy w stosunku do czujnika podczas bazowania osi Z komendą G28. Wartość ta może być również używana z G81 (Prusa) / G29 (Marlin), aby zastosować korekcję pozycji Z. Wartość ta odpowiada dystansowi dyszy od powierzchni stołu w punkcie, w którym czujnik jest wyzwalana. Wartość będzie ujemna w przypadku tradycyjnych czujników mechanicznych, indukcyjnych i konfiguracji, w których dysza zamyka obwód w kontakcie z elementem metalowym. Ustawienie będzie dodatnie w maszynach, w których dysza jest używana jako czujnik, naciskając na stół (konfiguracja typowa dla drukarek w kinematyce Delta).
Zastosowanie
M851 [ Z ]
Parametry
Z
- odległość dyszy od czujnika osi Z.
M552 - Ustaw adres IP, włącz/wyłącz interfejs sieciowy M552: Set IP address, enable/disable network interface"
Ustawia adres IP drukarki wyświetlany w menu Wsparcie. Zaprojektowany do użytku z pomocą oprogramowania hosta. Jeśli P nie zostanie określone, nie będzie mieć żadnego efektu. Jeśli struktura adresu IP jest nieprawidłowa, przyjmowane jest 0.0.0.0 i nic nie jest wyświetlane na ekranie w menu Wsparcie.
Zastosowanie
M552 [ P ]
Parametry
P
- Adres IP w formacie xxx.xxx.xxx.xxx format. Np: P192.168.1.14
M600 - Inicjuj procedurę zmiany filamentu M600: Filament change pause
Rozpoczyna zmianę filamentu, używana również w przypadku wykrycia końca materiału. Jeśli komenda M600
jest uruchamiana poniżej 25mm w osi Z, to spowoduje podniesienie dyszy o 25 mm, aby uniknąć bloba.
Zastosowanie
M600 [ X | Y | Z | E | L | AUTO ]
X
- pozycja X, domyślnie 211Y
- pozycja Y, domyślnie 0Z
- względne podniesienie Z, domyślnie 2.E
- początkowa retrakcja, domyślnie -2L
- późniejsza długość retrakcji do wyciągnięcia filamentu, domyślnie -80AUTO
- automatycznie (tylko z MMU)
M601 - Wstrzymaj wydruk M601: Pause print
Bez żadnych parametrów zaparkuje ekstruder w domyślnej lub ostatnio ustawionej pozycji. Domyślna pozycja pauzy zostanie ustawiona podczas włączania zasilania i resetowania, nowe pozycje pauzy nie są trwałe.
Zastosowanie
M601 [ X | Y | Z | S ]
Parametry
X
- Pozycja w osi X do zaparkowania (domyślnie X_PAUSE_POS 50); zapisywana do momentu zmiany lub resetu.Y
- Pozycja w osi Y do zaparkowania (domyślnie Y_PAUSE_POS 190); zapisywana do momentu zmiany lub resetu.Z
- Podnieś Z przed zaparkowaniem (domyślnie Z_PAUSE_LIFT 20); zapisywana do momentu zmiany lub resetu.S
- Ustaw wartości bez pauzy
M125 - Wstrzymaj wydruk M125: Pause print
Bez żadnych parametrów zaparkuje ekstruder w domyślnej lub ostatnio ustawionej pozycji. Domyślna pozycja pauzy zostanie ustawiona podczas włączania zasilania i resetowania, nowe pozycje pauzy nie są trwałe.
Zastosowanie
M125 [ X | Y | Z | S ]
Parametry
X
- Pozycja w osi X do zaparkowania (domyślnie X_PAUSE_POS 50); zapisywana do momentu zmiany lub resetu.Y
- Pozycja w osi Y do zaparkowania (domyślnie Y_PAUSE_POS 190); zapisywana do momentu zmiany lub resetu.Z
- Podnieś Z przed zaparkowaniem (domyślnie Z_PAUSE_LIFT 20); zapisywana do momentu zmiany lub resetu.S
- Ustaw wartości bez pauzy
M25 - Wstrzymaj wydruk z SD M25: Pause SD print
Bez żadnych parametrów zaparkuje ekstruder w domyślnej lub ostatnio ustawionej pozycji. Domyślna pozycja pauzy zostanie ustawiona podczas włączania zasilania i resetowania, nowe pozycje pauzy nie są trwałe.
Zastosowanie
M25 [ X | Y | Z | S ]
Parametry
X
- Pozycja w osi X do zaparkowania (domyślnie X_PAUSE_POS 50); zapisywana do momentu zmiany lub resetu.Y
- Pozycja w osi Y do zaparkowania (domyślnie Y_PAUSE_POS 190); zapisywana do momentu zmiany lub resetu.Z
- Podnieś Z przed zaparkowaniem (domyślnie Z_PAUSE_LIFT 20); zapisywana do momentu zmiany lub resetu.S
- Ustaw wartości bez pauzy
M602 - Wznów wydruk M602: Resume print
M603 - Zatrzymaj wydruk M603: Stop print
M850 - Ustaw parametry arkusza druku
Odczytaj / zapisz parametry arkusza druku.
Zastosowanie:
M850 [ S | Z | L | B | P | A ]
Parametry
S
- id arkusza [0-7]Z
- offsetL
- etykieta arkusza [aA-zZ, 0-9 max 7 znaków]B
- temperatura stołuP
- temperatura czujnika PINDAA
- aktywuj [0|1]
Uwagi
Z i L są opcjonalne; jeśli brakuje jednego lub obu, zamiast tego zgłaszane są bieżące wartości.
Jeśli L i/lub Z są określone, wartości arkusza są aktualizowane.
Zakres Z jest sprawdzany
Indeks arkusza jest sprawdzany
Żądanie informacji (bez L lub Z) na nieskalibrowanym arkuszu jest zgłaszane jako takie.
Pronterface zapisuje wszystko, co jest wysyłane, wielkimi literami. Aby używać małych liter w nazwach arkuszy, musisz użyć innego programu do obsługi terminala.
M860 - Poczekaj na nagrzanie ekstrudera (PINDA) M860 Wait for Probe Temperature
Poczekaj, aż termistor w czujniku PINDA osiągnie zadaną temperaturę
Zastosowanie
M860 [ S ]
Parametry
S
- Zadana temperatura
M861 - Ustaw/zwróć wartości kompensacji PINDA M861 Set Probe Thermal Compensation
Ustaw wartość kompensacji S
dla indeksu tabeli I
.
Zastosowanie
M861 [ ? | ! | Z | S | I ]
Parametry
?
- Zwróć obecne wartości kompensacji w EEPROM!
- Ustaw domyślne wartości fabryczneZ
- Ustaw wszystkie wartości na 0 (wyłączając kompensację temperatury PINDA)S
- MikrokrokiI
- Indeks w tabeli
M862 - Sprawdzenie druku M862: Print checking
Sprawdza parametry drukarki i G-code oraz przeprowadza test kompatybilności.
- M862.1 { P | Q } 0.25/0.40/0.60
- M862.2 { P | Q }
- M862.3 { P"" | Q }
- M862.4 { P | Q }
- M862.5 { P | Q }
- M862.6 Nieużywany, ale zarezerwowany dla 32-bit
Jeśli uruchomiona z argumentem P<>, to weryfikacja jest przeprowadzona w odniesieniu do wprowadzonej wartości. Przy uruchomieniu z argumentem Q wyświetlona zostanie obecna wartość.
M862.3 akceptuje również tekstowe identyfikatory rodzaju drukarki. Syntaks M862.3 to (zwróć uwagę na cudzysłowy wokół rodzaju):
M862.3 P "MK3S"
Dozwolone rodzaje identyfikatorów drukarek i ich numeryczne odpowiedniki:
- MK1 (100)
- MK2 (200)
- MK2MM (201)
- MK2S (202)
- MK2SMM (203)
- MK2.5 (250)
- MK2.5MMU2 (20250)
- MK2.5S (252)
- MK2.5SMMU2S (20252)
- MK3 (300)
- MK3MMU2 (20300)
- MK3MMU3 (30300)
- MK3S (302)
- MK3SMMU2S (20302)
- MK3SMMU3 (30302)
M900 - Ustaw opcje Linear advance M900 Set Linear Advance Scaling Factors
Ustawia zaawansowane współczynniki ekstruzji dla Linear Advance. Jeśli którykolwiek z parametrów R, W, H, lub D jest ustawiony na zero, to współczynnik zostanie obliczony dynamicznie podczas drukowania.
Zastosowanie
M900 [ K | R | W | H | D]
Parametry
K
- Współczynnik Advance KR
- Bezpośrednie ratio (nadpisuje WH/D)W
- SzerokośćH
- WysokośćD
- Średnica ze stosunku WH/D
M907 - Cyfrowy potencjometr prądu silnika w mA używając kodu osi M907: Set digital trimpot motor
Cyfrowy potencjometr prądu silnika w mA używając kodu osi (X, Y, Z, E, B, S). M907 has no effect when the experimental Extruder motor current scaling mode is active (that applies to farm printing as well)
Zastosowanie
M907 [ X | Y | Z | E | B | S ]
Parametry
X
- sterownik silnika osi XY
- sterownik silnika osi YZ
- sterownik silnika osi ZE
- sterownik silnika ekstruderaB
- sterownik silnika drugiego ekstruderaS
- wszystkie silniki
M908 - Bezpośrednia kontrola cyfrowego potencjometru M908: Control digital trimpot directly
W firmware Prusa ten G-code jest domyślnie wyłączony i musi zostać włączony w kodzie źródłowym. Niemożliwe do użycia w drukarkach Prusa.
Zastosowanie
M908 [ P | S ]
Parametry
P
- kanałS
- prąd
M910 - TMC2130 init M910: TMC2130 init
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym.
M911 - Ustaw prąd trzymający TMC2130 M911: Set TMC2130 holding currents
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym.
Zastosowanie
M911 [ X | Y | Z | E ]
Parametry
X
- wartość prądu trzymającego sterownika silnika osi XY
- wartość prądu trzymającego sterownika silnika osi YZ
- wartość prądu trzymającego sterownika silnika osi ZE
- wartość prądu trzymającego sterownika silnika ekstrudera
M912 - Ustaw prąd sterowników TMC2130 M912: Set TMC2130 running currents
Not active in default, only if TMC2130_SERVICE_CODES_M910_M918
is defined in source code.
Zastosowanie
M912 [ X | Y | Z | E ]
Parametry
X
- wartość prądu sterownika silnika osi XY
- wartość prądu sterownika silnika osi YZ
- wartość prądu sterownika silnika osi ZE
- wartość prądu sterownika silnika ekstrudera
M913 - Zwróć prąd sterowników TMC2130 M913: Print TMC2130 currents
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym. Pokazuje prąd sterowników TMC2130.
M914 - Ustaw tryb normalny TMC2130 M914: Set TMC2130 normal mode
Aktualizuje EEPROM tylko wtedy, gdy podano "P", w przeciwnym razie jest to tymczasowe (trwa do zresetowania lub upłynięcia limitu czasu bezczynności silnika).
Zastosowanie
M914 [ P | R | Q ]
Parametry
P
- Trwała zmiana trybu (zapis do pamięci EEPROM)R
- Przywróć wartość z EEPROMQ
- Zwróć efektywny stan cichy/normalny (bez nadpisania)
M915 - Ustaw tryb cichy TMC2130 M915: Set TMC2130 silent mode
Aktualizuje EEPROM tylko wtedy, gdy podano "P", w przeciwnym razie jest to tymczasowe (trwa do zresetowania lub upłynięcia limitu czasu bezczynności silnika).
Zastosowanie
M915 [ P | R | Q]
Parametry
P
- Trwała zmiana trybu (zapis do pamięci EEPROM)R
- Przywróć wartość z EEPROMQ
- Zwróć efektywny stan cichy/normalny (bez nadpisania)
M916 - Ustaw czułość zabezpieczenia przed przeciążeniem TMC2130 M916: Set TMC2130 Stallguard sensitivity threshold
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym.
Zastosowanie
M916 [ X | Y | Z | E ]
Parametry
X
- czułość zabezpieczenia przed przeciążeniem sterownika silnika osi XY
- czułość zabezpieczenia przed przeciążeniem sterownika silnika osi YZ
- czułość zabezpieczenia przed przeciążeniem sterownika silnika osi ZE
- czułość zabezpieczenia przed przeciążeniem sterownika silnika ekstrudera
M917 - Ustaw przesuniecie amplitudy PWM TMC2130 (pwm_ampl) M917: Set TMC2130 PWM amplitude offset (pwm_ampl)
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym.
Zastosowanie
M917 [ X | Y | Z | E ]
Parametry
X
- Ustaw przesunięcie amplitudy PWM sterownika silnika osi XY
- Ustaw przesunięcie amplitudy PWM sterownika silnika osi YZ
- Ustaw przesunięcie amplitudy PWM sterownika silnika osi ZE
- Ustaw przesunięcie amplitudy PWM sterownika silnika ekstrudera
M918 - Ustaw gradient amplitudy PWM TMC2130 (pwm_grad) M918: Set TMC2130 PWM amplitude gradient (pwm_grad)
Domyślnie nieaktywny, możliwy przy zdefiniowaniu TMC2130_SERVICE_CODES_M910_M918
w kodzie źródłowym.
Zastosowanie
M918 [ X | Y | Z | E ]
Parametry
X
- Ustaw gradient amplitudy PWM sterownika silnika osi XY
- Ustaw gradient amplitudy PWM sterownika silnika osi YZ
- Ustaw gradient amplitudy PWM sterownika silnika osi ZE
- Ustaw gradient amplitudy PWM sterownika silnika ekstrudera
M350 - Ustaw tryb mikrokroków M350: Set microstepping mode
Dla drukarek ze sterownikami TMC2130 są dostępne opcje X
, Y
, Z
i E
. Ilość kroków na jednostkę jest zmieniana proporcjonalnie. Nie wszystkie rozdzielczości są dopuszczalne! Drukarki bez sterowników TMC2130 mają dostęp do opcji B
i S
. W takim przypadku liczba kroków na jednostkę jest niezmieniona!
Zastosowanie
M350 [ X | Y | Z | E | B | S ]
Parametry
X
- Nowa rozdzielczość osi XY
- Nowa rozdzielczość osi YZ
- Nowa rozdzielczość osi ZE
- Nowa rozdzielczość osi E
Dopuszczalne tylko dla MK2.5(S) lub drukarek bez sterowników TMC2130
B
- Nowa rozdzielczość drugiego ekstruderaS
- Nowa rozdzielczość wszystkich osi
M351 - Przełącz piny dla mikrokroków M351: Toggle MS1 MS2 pins directly
Bezpośrednie przełączenie pinów MS1 MS2.
Zastosowanie
M351 [B<0|1>] [E<0|1>] S<1|2> [X<0|1>] [Y<0|1>] [Z<0|1>]
Parametry
X
- Aktualizacja dla osi XY
- Aktualizacja dla osi YZ
- Aktualizacja dla osi ZE
- Aktualizacja dla osi ES
- pin MSx do przełączeniaB
- nowa wartość pina
M701 - Ładuj filament do ekstrudera M701: Load filament
Załaduj filament do aktywnego ekstrudera.
Zastosowanie
M701 [ P | T | L | Z ]
Parametry
P
- n indeks slotu MMU (od zera, więc 0-4 reprezentuje T0 do T4)T
- Alias P. Używany dla zgodności z MarlinemL
- Dystans ekstruzji do załadowania (wartość dodatnia) (ręczne przeładowanie)Z
- Przesuń oś Z o tę odległość. Domyślną wartością jest 0, aby zachować wsteczną kompatybilność ze starszymi kodami G-code.
G80 - Rozładuj filament G32: Unload filament
Zastosowanie
M702 [ U | Z ]
Parametry
U
- Odległość retrakcji do rozładowania (ręczne przeładowanie). Wartość domyślna to FILAMENTCHANGE_FINALRETRACT.Z
- Przesuń oś Z o tę odległość. Domyślną wartością jest 0, aby zachować wsteczną kompatybilność ze starszymi kodami G-code.
M704 - Ładuj do MMU M704: Preload to MMU
Zastosowanie
M704 [ P ]
Parametry
P
- n indeks slotu MMU (od zera, więc 0-4 reprezentuje T0 do T4)
M705 - Wysuń filament M705: Eject filament
Zastosowanie
M705 [ P ]
Parametry
P
- n indeks slotu MMU (od zera, więc 0-4 reprezentuje T0 do T4)
M706 - Odetnij filament M706: Cut filament
Zastosowanie
M706 [ P ]
Parametry
P
- n indeks slotu MMU (od zera, więc 0-4 reprezentuje T0 do T4)
M707 - Odczytaj wartość rejestru MMU3, M707: Read from MMU register
Zastosowanie
M707 [ A ]
Parametry
A
- Adres rejestru w systemie szesnastkowym.
Przykład
M707 A0X19 - Odczytaj 8-bitową liczbę całkowitą z rejestru 0X19 (Idler_sg_thrs_R) i wyślij wynik na linię szeregową.
Nie robi nic, jeśli parametr A nie jest obecny lub jeśli MMU nie jest włączone.
M708 - Zapisz wartość w rejestrze MMU3, M708: Write to MMU register
Zastosowanie
M708 [ A | X ]
Parametry
A
- Adres rejestru w systemie szesnastkowym.X
- Dane do zapisu (16-bitowa liczba całkowita). Wartość domyślna 0.
Przykład
M708 A0x19 X07 - Zapisz wartość X07 w rejestrze 0x19 (Idler_sg_thrs_R). Nie robi nic, jeśli parametr A nie jest obecny lub jeśli MMU nie jest włączone.
M709 - Reset MMU M709: MMU reset
MK3S nie potrafi wyłączyć MMU, z tego powodu funkcja ta nie jest obsługiwana.
Zastosowanie
M709 [ S | X ]
Parametry
X
- Reset MMU (0:soft reset | 1:hardware reset)-
S
- Włącz/wyłącz MMU (0:wył| 1:wł)
Przykład
M709 X0 - wydaj polecenie X0 poprzez komunikację z MMU (soft reset)
M709 X1 - przełącz pin resetowania MMU (hardware reset)
M709 X42 - wymaż EEPROM MMU
M709 S1 - włącz MMU
M709 S0 - wyłącz MMU
M709 - komunikat na linii szeregowej, czy jest włączony lub wyłączony
M999 - Restart po zatrzymaniu M999: Restart after being stopped by error
Koniec kodów (komend) M
T - wybierz ekstruder w przypadku drukarki z wieloma ekstruderami lub MMU1. Wybierz pozycję filamentu 1-5 (T0-T4) w przypadku MMU2/S lub MMU3.
Dla MMU1:
T? - Drukarka prosi użytkownika o wybranie pozycji filamentu. Następnie ładuje żądany filament z multipleksera (Y-splitter) do dyszy.
Dla MMU2/S / MMU3:
T< nr ekstrudera > - Wybiera pozycję filamentu. Po tym musi nastąpić G-code do załadowania filamentu do dyszy.
Tx - Drukarka żąda od użytkownika wybrania pozycji filamentu. Następnie ładuje filament z modułu MMU tylko do kół zębatych ekstrudera. Następny w kolejności jest G-code do podgrzania dyszy.
Tc - Ładuje końcówkę filamentu z kół zębatych ekstrudera do dyszy.
Koniec kodów (komend) T
D-1 - nieskończona pętla D-1: Endless Loop
D0 - Reset D0: Reset
Zastosowanie
D0 [ B ]
Parametry
B
- Bootloader
D1 - Czyść EEPROM, potem RESET D1: Clear EEPROM and RESET
D1
D2 - Czytaj/zapisuj RAM D3: Read/Write RAM
Ta komenda może być używana bez żadnych dodatkowych parametrów. Spowoduje odczytanie całego RAMu.
Zastosowanie
D2 [ A | C | X ]
Parametry
A
- Adres (0x0000-0x1fff)C
- Licznik (0x0001-0x2000)X
- Dane
Uwagi
- Adres szesnastkowy musi być pisany małymi literami bez 0 przed x
- Liczba jest dziesiętna
- Dane szesnastkowe muszą być pisane małymi literami
D3 - Czytaj/zapisz EEPROM D3: Read/Write EEPROM
Ta komenda może być używana bez żadnych dodatkowych parametrów. Spowoduje odczytanie całego EEPROMu.
Zastosowanie
D3 [ A | C | X ]
Parametry
A
- Adres (x0000-x0fff)C
- Licznik (1-4096)X
- Dane (hex)
Uwagi
- Adres szesnastkowy musi być pisany małymi literami bez 0 przed x
- Liczba jest dziesiętna
- Dane szesnastkowe muszą być pisane małymi literami
D4 - Czytaj/zapisz PIN D4: Read/Write PIN
Aby odczytać cyfrową wartość pina potrzebujesz tylko zdefiniować jego numer.
Zastosowanie
D4 [ P | F | V ]
Parametry
P
- Pin (0-255)F
- Funkcja we/wy (0/1)V
- Wartość (0/1)
D5 - Czytaj/zapisz FLASH D5: Read/Write Flash
Ta komenda może być używana bez żadnych dodatkowych parametrów. Spowoduje odczytanie 1kb FLASH.
Zastosowanie
D5 [ A | C | X | E ]
Parametry
A
- Adres (x00000-x3ffff)C
- Licznik (1-8192)X
- Dane (hex)E
- Wymaż
Uwagi
- Adres szesnastkowy musi być pisany małymi literami bez 0 przed x
- Liczba jest dziesiętna
- Dane szesnastkowe muszą być pisane małymi literami
D6 - Czytaj/zapisz zewnętrzny FLASH D6: Read/Write external Flash
Zarezerwowany
D7 - Czytaj/zapisz Bootloader D7: Read/Write Bootloader
Reserved
D8 - Czytaj/zapisz PINDA D8: Read/Write PINDA
Zastosowanie
D8 [ ? | ! | P | Z ]
Parametry
?
- Czytaj przesunięcie temperatury PINDA!
- Reset wartości przesunięcia temperatury PINDA do domyślnychP
- Temperatura PINDA [C]Z
- Przesunięcie Z (offset) [mm]
D9 - Czytaj ADC D9: Read ADC
Zastosowanie
D9 [ I | V ]
Parametry
I
- Indeks kanału ADC0
- Temperatura grzałki 01
- Temperatura grzałki 12
- Temperatura stołu3
- Temperatura PINDA4
- Napięcie zasilania (PWR)5
- Temperatura otoczenia6
- Napięcie stołu
V
Wartość do symulacji zapisu
D10 - Ustaw kalibrację XYZ = OK D10: Set XYZ calibration = OK
D12 - Czas D12: Time
Zapisuje obecny czas do pliku log.
D20 - Generuj zrzut pamięci offline D20: Generate an offline crash dump
Wygeneruj zrzut pamięci do późniejszego pobrania.
Zastosowanie
D20 [E]
Parametry
E
- Wykonaj awaryjny zrzut pamięci (resetuje drukarkę).
Uwagi
- Zrzut pamięci można później odzyskać za pomocą D21 lub wyczyścić za pomocą D22.
- Zrzut zawiera dane rejestru, ale spowoduje zresetowanie drukarki po zakończeniu.
D21 - Prześlij zrzut przez port szeregowy D21: Print crash dump to serial
Przekazanie kompletnego zrzutu pamięci (jeśli występuje) do portu szeregowego.
Zastosowanie
D21
Uwagi
Adres początkowy może się różnić w zależności od kompilacji, ale zawsze znajduje się na początku sekcji danych.
D22 - Wyczyść stan zrzutu pamięci D22: Clear crash dump state
Wyczyść istniejący zrzut pamięci.
Zastosowanie
D22
D23 - Zażądaj zrzutu pamięci przez port szeregowyD23: Request emergency dump on serial
Na płytach bez obsługi zrzutów offline, zażądaj zrzutów online do portu szeregowego w przypadku błędów firmware. Gdy zrzuty online są włączone, FW zrzuci pamięć na port szeregowy przed zresetowaniem.
Zastosowanie
D23 [E] [R]
Parametry
E
- Wykonaj awaryjny zrzut pamięci (resetuje drukarkę).R
- Wyłącz zrzuty online.
D70 - Włącz logowanie modelu termicznego na niskim poziomie do symulacji offline
Zastosowanie
D70 [ S ]
Parametry
S
- Włącz 0-1 (domyślnie 0)
D80 - Sprawdzenie stołu D80: Bed check
Ta komenda zloguje dane do pliku "mesh.txt" na karcie SD.
Zastosowanie
D80 [ E | F | G | H | I | J ]
Parametry
E
- Wymiar X (domyślnie 40)F
- Wymiar Y (domyślnie 40)G
- Punkty X (domyślnie 40)H
- Punkty Y (domyślnie 40)I
- Offset X (domyślnie 74)J
- Offset Y (domyślnie 34)
D81 - Analiza stołu D80: Bed analysis
Ta komenda zloguje dane do pliku "wldsd.txt" na karcie SD.
Zastosowanie
D81 [ E | F | G | H | I | J ]
Parametry
E
- Wymiar X (domyślnie 40)F
- Wymiar Y (domyślnie 40)G
- Punkty X (domyślnie 40)H
- Punkty Y (domyślnie 40)I
- Offset X (domyślnie 74)J
- Offset Y (domyślnie 34)
D106 - Zwróć zmierzoną prędkość wentylatora dla różnych wartości PWM D106: Print measured fan speed for different pwm values
D2130 - Kontroler sterowników Trinamic D2130: Trinamic stepper controller
Zastosowanie
D2130 [ Oś | Komenda | Subkomenda | Wartość ]
Parametry
- Oś
X
- Sterownik silnika osi XY
- Sterownik silnika osi YZ
- Sterownik silnika osi ZE
- Sterownik silnika ekstrudera
- Komendy
0
- Wyłączenie prądu1
- Włączenie prądu+
- Pojedynczy krok-
- Pojedynczy krok w przeciwnym kierunkuNNN
- Wartość dla kilku kroków?
- Odczyt rejestru- Subkomendy dla odczytu rejestru
mres
- Rozdzielczość mikrokroków. Więcej informacji w karcie '5.5.2 CHOPCONF – Chopper Configuration'step
- Krokmscnt
- Licznik mikrokroków. Więcej informacji w karcie '5.5 Motor Driver Registers'mscuract
- Obecny prąd mikrokroku dla silnika. Więcej informacji w karcie '5.5 Motor Driver Registers'wave
- Krzywa kompensacji liniowości mikrokroku
!
- Ustaw rejestr- Subkomendy dla ustawienia rejestru
mres
- Rozdzielczość mikrokrokustep
- Krokwave
- Krzywa kompensacji liniowości mikrokroku- Wartości ustawień rejestru
0, 180 --> 250
- Wyłącz0.9 --> 1.25
- Dopuszczalne wartości (zalecane 1.1)
@
- Kalibracja bazowania osi
Przykłady:
D2130E?wave
Zwróć krzywą kompensacji liniowości mikrokroku
D2130E!wave0
Wyłącz kompensacji liniowości mikrokroku, (zostanie używa krzywa sinusoidalna)
D2130E!wave220
(sin(x))^1.1 użycie krzywej kompensacji mikrokroku ekstrudera
Uwaga: Więcej informacji znajdziesz w https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2130_datasheet.pdf
D9125 - PAT9125 Czujnik filamentu D9125: PAT9125 filament sensor
Zastosowanie
D9125 [ ? | ! | R | X | Y | L ]
Parametry
?
- Zwróć wartości!
- Zwróć wartościR
- Rozdzielczość. Nieaktywna w kodzieX
- Wartości XY
- Wartości YL
- Aktywacja logowania czujnika filamentu