Shelly Plug S som router-vakthund — automatisk omstart vid avbrott
Lästid ~6 min · Uppdaterad 12 maj 2026
Använd Shelly Plug S som router-vakthund: skriptet pingar internet och startar om routern automatiskt vid avbrott. Funkar med Home Assistant och Homey.

Nätet hänger sig när du är på semestern, eller mitt under ett möte. En router-vakthund löser det automatiskt — när internet försvinner kapas strömmen till routern i några sekunder, och uppkopplingen är tillbaka utan att någon behöver dra ur sladden.

Här går vi igenom hur du sätter upp Shelly Plug S som router-vakthund, både med det officiella skriptet, med en enkel nattlig schemaläggning och som del av en Home Assistant- eller Homey-installation.

Vad är en router-vakthund och varför behöver du en?

En router-vakthund är en automatiserad övervakning som upptäcker när internet slutar svara och startar om routern utan att du behöver göra något. Hemma märks det när Netflix slutar, jobbet märks det när VPN dör — och i båda fallen är lösningen oftast samma: dra ur strömmen, vänta tio sekunder, sätt i igen.

Problemet är förstås att du inte alltid är hemma, och routern står gärna otillgängligt i en garderob eller på vinden. Det är där en router-vakthund kommer in: en smart plug som pingar en pålitlig adress på internet med jämna mellanrum, och om svaret uteblir tillräckligt många gånger i rad — då strömcyklas routern automatiskt.

Så fungerar Shelly Plug S som router-vakthund

Shelly Plug S (i den senaste generationen, Plus G3 Plug S) har stöd för Mongoose JavaScript (mJS) inbyggt. Det betyder att den smarta pluggen kan köra ett eget litet program direkt på enheten — utan att vara beroende av moln, hemserver eller internet för själva watchdog-logiken.

Officiella Router Watchdog-skriptet (rekommenderad metod)

Shelly har publicerat ett officiellt skript som heter Router Watchdog. Det körs lokalt på Shelly-pluggen och har tre huvudparametrar:

  • Antal misslyckade pings innan vakthunden slår till (standard: 3 i rad)
  • Ping-intervall (standard: var 3:e minut)
  • Off-tid innan strömmen slås på igen (standard: 30 sekunder)

Skriptet pingar två pålitliga adresser omväxlande och så fort tröskeln nås kapas strömmen till routern. Eftersom skriptet körs på själva pluggen fortsätter det fungera även om molnet är nere — det är just därför man bygger en router-vakthund.

Steg-för-steg-installation av skriptet

  • 1. Anslut pluggen mellan vägguttaget och routerns strömadapter
  • 2. Lägg till pluggen i Shelly-appen och ge den ett namn (t.ex. "Router")
  • 3. Öppna pluggens lokala webbgränssnitt via IP-adressen i en webbläsare
  • 4. Gå till fliken Scripts och klicka Library
  • 5. Välj Router Watchdog, justera trösklar om du vill, tryck __Run__
  • 6. Aktivera "Run on startup" så skriptet startar automatiskt efter strömavbrott

Vill du anpassa skriptet ytterligare kan du klistra in koden direkt:

let CONFIG = {
  endpoints: [
    "https://global.gcping.com/ping",
    "https://www.switch.ch",
  ],
  numberOfFails: 3,
  httpTimeout: 10,
  toggleTime: 30,
  pingTime: 180,
  maxBackoffTime: 21600,
  initialBackoffTime: 300,
  backoffMultiplier: 2,
};

let endpointIdx = 0;
let failCounter = 0;
let pingTimer = null;
let resetCounter = 0;
let currentBackoffTime = 0;

function resetRouter() {
  print("Too many fails, resetting...");
  failCounter = 0;
  resetCounter++;
  Timer.clear(pingTimer);
  if (resetCounter > 1) {
    currentBackoffTime = currentBackoffTime === 0
      ? CONFIG.initialBackoffTime
      : Math.min(currentBackoffTime * CONFIG.backoffMultiplier, CONFIG.maxBackoffTime);
    print("Backoff: " + currentBackoffTime + "s");
  }
  Shelly.call("Switch.Set", { id: 0, on: false, toggle_after: CONFIG.toggleTime }, function() {});
}

function startPingTimer() {
  pingTimer = Timer.set(CONFIG.pingTime * 1000, true, pingEndpoints);
}

function pingEndpoints() {
  Shelly.call("http.get", { url: CONFIG.endpoints[endpointIdx], timeout: CONFIG.httpTimeout },
    function(response, error_code) {
      if (error_code === -114 || error_code === -104) {
        failCounter++;
        endpointIdx = (endpointIdx + 1) % CONFIG.endpoints.length;
        print("Fail #" + failCounter);
      } else {
        failCounter = 0; resetCounter = 0; currentBackoffTime = 0;
        print("Online :)");
      }
      if (failCounter >= CONFIG.numberOfFails) { resetRouter(); }
    }
  );
}

print("Starting watchdog timer...");
startPingTimer();

Shelly.addStatusHandler(function(status) {
  if (status.name !== "switch" || status.id !== 0 ||
      typeof status.delta.source === "undefined" ||
      status.delta.source !== "timer" || status.delta.output !== true) return;
  if (currentBackoffTime > 0) {
    Timer.set(currentBackoffTime * 1000, false, function() { startPingTimer(); });
  } else {
    startPingTimer();
  }
});

Schemalagd nattlig omstart — enklare alternativ

Vill du ha en enklare lösning kan du istället schemalägga en nattlig strömcykling. Många routrar mår bra av en omstart då och då, och en kort avstängning nattetid förebygger många hängningar innan de hinner uppstå.

Schemat lägger du upp direkt i Shelly-appen under Schedules: stäng av kl 03:00, slå på kl 03:01. Schemat sparas lokalt på pluggen så det fungerar även om internet är nere.

Detta är ingen riktig router-vakthund — den reagerar inte på utfall — men i kombination med watchdog-skriptet får du både proaktiv förebyggning och reaktiv återställning.

Avancerat: vakthund via Home Assistant eller Homey

Använder du redan Home Assistant eller Homey kan du bygga watchdog-logiken där istället, och låta Shelly Plug S bara vara strömställaren. Fördelen är mer flexibilitet (notiser, loggning, eskalering) och möjligheten att kombinera flera signaler.

Shelly har officiell integration mot både Home Assistant (alla fyra generationer stöds) och Homey, samt Matter-stöd på G3-modellerna för smidig parkoppling. En typisk Home Assistant-automation pingar en utvald adress varje minut, räknar misslyckanden, och om tröskeln nås triggas pluggen att slå av i 15 sekunder och sedan på igen.

Den stora fördelen jämfört med skriptet på pluggen: om Home Assistant är nere får du veta det och kan agera. Den stora nackdelen: om Home Assistant kraschar samtidigt som internet faller, är vakthunden borta. För kritiska installationer kombinerar man ofta båda metoderna.

Vilken Shelly Plug S passar dig?

För router-vakthund-användning rekommenderas den senaste generationen:

Alla G3-modeller har WiFi, Bluetooth, Matter, effektmätning och stöd för mJS-skript — allt du behöver för Router Watchdog. Skillnaden ligger i färg och antal.

Vanliga frågor

Fungerar router-vakthunden utan internet?

Ja. Skriptet körs lokalt på Shelly-pluggen och behöver inte molnet för att fungera. Det är hela poängen — vakthunden ska klara sig själv när internet är borta. Du behöver dock internet för att initialt installera skriptet via Shelly-appen.

Kan jag ha vakthund på både fiberkonverter och router?

Ja. Använd en plugg per enhet — det är ofta fiberkonvertern som tappar synkronisering och behöver strömcyklas före routern. Med ett 3-pack täcker du fiberkonverter, router och accesspunkt.

Hur ofta pingar skriptet?

Det är konfigurerbart. Standard är var 3:e minut och 3 misslyckanden i rad innan vakthunden slår till — en riktig hängning åtgärdas inom ca 10 minuter.

Vad händer om strömmen kommer tillbaka efter ett avbrott?

Med "Run on startup" aktiverat startar skriptet automatiskt igen när pluggen får ström. Du behöver inte göra något manuellt.

Stödjer alla Shelly Plug S-modeller skriptet?

Router Watchdog-skriptet kräver mJS-stöd, vilket gäller alla G3-versioner (Plus G3 Plug S). Är du osäker — kontakta oss innan köp så hjälper vi dig välja rätt.

Klar att börja?

För de flesta är Shelly Plus G3 Plug S rätt val — en plugg, ett uttag, en router-vakthund som tyst gör sitt jobb. Behöver du täcka flera enheter rekommenderar vi 3-paketet. Frågor om installation eller integration? Hör av dig så hjälper vi dig komma igång.