Jak vyřešit chyby připojení WebSocket Moonraker v Printer Tools

Jak vyřešit chyby připojení WebSocket Moonraker v Printer Tools

od FixoLab


Řešení problémů s WebSocketem Moonraker

Stručná odpověď

Printer Tools udržuje aktivní WebSocket připojení k Moonrakeru na adrese ws(s)://<host>/websocket a při výpadku se automaticky znovu připojuje každých 5 sekund. Většina chyb připojení pochází z nedostupného hostitele, změněné IP adresy nebo z toho, že Klippy ještě není připravené, nikoli ze samotné aplikace. Kontrola těchto tří věcí jako první vyřeší většinu případů.

Co budete potřebovat

  • Přesnou lokální IP adresu nebo název hostitele, který aktuálně používá tiskárna se spuštěným Moonrakerem
  • Potvrzení, že Klippy hlásí Ready, nikoli Error nebo Shutdown
  • Stejnou síť dostupnou jak z telefonu nebo počítače, tak z hostitele tiskárny
  • Kompletní adresu včetně schématu a portu, pokud vaše nastavení používá HTTPS nebo reverzní proxy
  • Případný API klíč Moonrakeru, bearer token nebo přihlašovací údaje Basic Auth, které vaše instalace vyžaduje

Diagnostika chyby WebSocketu Moonraker

  1. 1

    Ověřte, že Klippy je skutečně připravené

    Otevřete stejného hostitele v prohlížeči nebo v Mainsailu či Fluiddu, pokud je máte nainstalované. Pokud i tam Klippy zobrazuje Error nebo Shutdown, problém je v Klipperu nebo ve vašem printer.cfg, nikoli v Printer Tools, a opětovné připojení aplikace nepomůže, dokud se Klippy samo neobnoví.

  2. 2

    Znovu zkontrolujte adresu hostitele

    Routery po restartu běžně přidělují novou lokální IP adresu. Ověřte aktuální adresu zařízení, na kterém běží Moonraker, a pokud se změnila, aktualizujte ji v Printer Tools. Rezervace statické adresy pro toto zařízení v routeru tomu zabrání do budoucna.

  3. 3

    U vlastních nastavení zadejte úplnou adresu

    Pokud je Moonraker za HTTPS, nestandardním portem nebo reverzní proxy, zadejte úplnou adresu přesně tak, jak byste ji napsali do prohlížeče. Printer Tools sestavuje adresu URL WebSocketu z toho, co zadáte, takže neúplná nebo nesprávná adresa selže dřív, než se Moonraker vůbec dosáhne.

  4. 4

    Sesouhlaste ověřování požadované vaší instalací

    Pokud Moonraker vyžaduje API klíč, Bearer token nebo Basic Auth, stejné přihlašovací údaje musí být zadány i v Printer Tools. Nesoulad uzavře WebSocket ihned po otevření, místo aby zablokoval samotný počáteční pokus o připojení.

  5. 5

    Vynuťte čisté opětovné připojení

    Odeberte tiskárnu a znovu ji přidejte, nebo připojení vypněte a zase zapněte, čímž se socket resetuje od základu místo čekání na automatický opakovaný pokus. Tím se také vyčistí veškeré čekající požadavky zbylé z předchozího pokusu o připojení.

  6. 6

    Vylučte problém v síťové cestě

    Hostovaná Wi-Fi, izolace klientů, pravidla firewallu VLAN nebo aktivní profil VPN mohou telefonu bránit v dosažení hostitele tiskárny, i když obě zařízení ukazují přístup k internetu. Otestujte to ze stejného síťového segmentu, než usoudíte, že problém je v samotném Moonrakeru.

Stav Moonrakeru v Printer Tools

Stav připojení Klipperu a stav opětovného připojení v Printer ToolsStav připojení Klipperu a stav opětovného připojení v Printer Tools

Řídicí panel Klipperu odráží aktuální stav WebSocketu v reálném čase a automaticky se aktualizuje, jakmile je Moonraker znovu dostupný.

Co WebSocket připojení umožňuje

  • Živý stav tisku, průběh, teploty a standardní objekty Klipperu odesílané v reálném čase
  • Automatické opětovné připojení každých 5 sekund bez nutnosti znovu otevírat aplikaci
  • Heartbeat, který udržuje připojení aktivní i při běžném používání na pozadí
  • Kontrola stavu Klippy provedená okamžitě po každém úspěšném připojení
  • Podpora API klíče, Bearer tokenu nebo Basic Auth, pokud to vaše nastavení Moonrakeru vyžaduje

Co tímto nelze vyřešit

  • Chybu nebo stav vypnutí Klippy je nutné vyřešit přímo v Klipperu, ne v Printer Tools
  • Printer Tools nemůže dosáhnout hostitele, který změnil adresu, dokud v tiskárně neaktualizujete uloženou IP
  • Síťová izolace mezi telefonem a hostitelem tiskárny blokuje WebSocket bez ohledu na nastavení aplikace
  • Již probíhající tisk pokračuje na tiskárně, i když aplikace zobrazuje odpojeno

Časté chyby WebSocketu

Printer Tools zůstává natrvalo ve stavu připojování

Ověřte, že adresa hostitele je aktuální a dostupná a že samotný Moonraker běží. Pokud stejná adresa selže i v prohlížeči, problém je na hostiteli tiskárny, ne v aplikaci.

Připojení se otevře a pak se opakovaně přerušuje

Zkontrolujte, zda síť neodpojuje neaktivní klienty, například některé funkce úspory energie Wi-Fi na routerech, nebo zda nedochází ke smyčce restartů Moonrakeru způsobené chybou konfigurace. Projděte log Moonrakeru na hostiteli tiskárny a hledejte opakované záznamy o odpojení.

Mainsail nebo Fluidd se připojí, ale Printer Tools ne

Použijte přesně stejnou adresu včetně schématu a portu, která funguje v prohlížeči. Reverzní proxy nebo certifikát HTTPS, který prohlížeč potichu akceptuje, může v Printer Tools stále vyžadovat ruční zadání úplné adresy.

Klippy zobrazí chybu ihned po připojení

To znamená, že samotný WebSocket byl úspěšný a problém je v konfiguraci Klipperu. Opravte hlášenou chybu v printer.cfg a restartujte Klipper z Moonrakeru, než budete od Printer Tools očekávat běžný řídicí panel.

Připojení funguje doma, ale mimo lokální síť selhává

Přímý WebSocket Moonrakeru funguje jen ve stejné lokální síti. Použijte VPN zpět do domácí sítě nebo místo přímého vystavení Moonrakeru přidejte tiskárnu přes možnosti vzdáleného přístupu OctoEverywhere nebo Obico v Printer Tools.

Opětovné připojení mimo vaši síť

Přímý WebSocket funguje jen tehdy, když telefon a hostitel tiskárny sdílejí vzájemně dostupnou síť. Pro vzdálený přístup použijte VPN zpět do této sítě nebo připojte stejnou tiskárnu Klipper přes OctoEverywhere nebo Obico v Printer Tools. Nepřesměrovávejte port Moonrakeru přímo na routeru.

Často kladené otázky

Používá Printer Tools WebSocket Moonrakeru, nebo jeho REST API?

Printer Tools se připojuje přes WebSocket JSON-RPC API Moonrakeru na /websocket kvůli živé telemetrii a ovládání, a proto na stabilní síťové cestě k tomuto koncovému bodu záleží víc než na úspěchu jediného REST požadavku.

Jak často se aplikace pokouší znovu připojit po neúspěchu?

Automaticky každých 5 sekund, dokud WebSocket připojení znovu nepřijme. Neexistuje žádný ruční limit počtu pokusů.

Zastaví ztráta připojení můj tisk?

Ne. Klipper pokračuje v tisku přímo na tiskárně. Ztráta WebSocketu v Printer Tools znamená jen to, že aplikace přestane přijímat živé aktualizace, dokud se znovu nepřipojí.

Potřebuji k tomu spuštěný Mainsail nebo Fluidd?

Ne. Printer Tools komunikuje s Moonrakerem přímo. Mainsail a Fluidd se hodí pro porovnání chování při řešení problémů, ale žádný z nich není povinný.

Proč připojení funguje na Wi-Fi, ale ne přes moje VPN?

VPN, která nesměruje provoz do rozsahu lokálních IP adres vaší domácí sítě, nemůže Moonraker dosáhnout přímo. Použijte VPN nakonfigurovanou pro přístup do této sítě, nebo místo toho použijte OctoEverywhere či Obico.

Zobrazit úplnou kompatibilitu s Klipperem a Moonrakerem

Projděte si podporované funkce Moonrakeru, volitelné požadavky na kameru a Spoolman, možnosti vzdáleného přístupu a aktuální omezení.

Zobrazit kompatibilitu s Klipperem
Printer Tools
Printer Tools

Všechny vaše 3D tiskárny na jednom panelu

Sledujte tiskárny Bambu Lab, Klipper, OctoPrint, Creality, Snapmaker, Anycubic, Flashforge, Elegoo a Prusa z jedné aplikace

K dispozici pro Android, iPhone, iPad a Mac, s doprovodnými aplikacemi pro Apple Watch a Wear OS a volitelným vzdáleným přístupem přes VPN, OctoEverywhere nebo Obico

Printer Tools