Din varukorg är tom
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 en Shelly Plug M 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.
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.
Shelly Plug M Gen3 (liksom föregångaren Plug S Gen3) har stöd för skript 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.
Shelly har publicerat ett officiellt skript som heter Router Watchdog. Det körs lokalt på Shelly-pluggen och har tre huvudparametrar:
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.
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();
}
});
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.
Använder du redan Home Assistant eller Homey kan du bygga watchdog-logiken där istället, och låta pluggen 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.
För router-vakthund rekommenderar vi Shelly Plug M Gen3. Den säljs i 2-pack, vilket passar bra: en plugg till routern och en till fiberkonvertern eller accesspunkten.
Plug M Gen3 har WiFi, Bluetooth, Matter, effektmätning (13 A) och stöd för skript — allt du behöver för Router Watchdog. Skillnaden mellan modellerna ligger i färg och antal. Har du redan en Shelly Plug S Gen3 fungerar den precis lika bra. Observera att skript bara kan köras när Matter är avstängt i pluggen.
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.
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.
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.
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.
Router Watchdog-skriptet kräver skriptstöd, vilket gäller Plug M Gen3 och Plug S Gen3. Den äldre Shelly Plug S (Gen1) saknar skriptstöd. Är du osäker — kontakta oss innan köp så hjälper vi dig välja rätt.
För de flesta är Shelly Plug M Gen3 i 2-pack rätt val — en plugg till routern, en till fiberkonvertern, och en router-vakthund som tyst gör sitt jobb. Behöver du täcka fler enheter rekommenderar vi 4-paketet. Frågor om installation eller integration? Hör av dig så hjälper vi dig komma igång.
Klicka på + för att lägga till varan i varukorgen.
Klicka på − för att ta bort en av varan.