• Septillion
  • Registratie: Januari 2009
  • Laatst online: 17:46
@t14wo Kan je ook zien wat kapot is? Want deze schade is duidelijk niet van alleen te warm, daar is echt iets in rook opgegaan.

  • rens-br
  • Registratie: December 2009
  • Laatst online: 18:42

rens-br

Admin IN & Moderator Mobile
Topicstarter
Johndoej schreef op zaterdag 24 januari 2026 @ 20:59:
[...]
.

Heb een warmtepomp met inwendige boiler, zonnepanelen en een shelly pro EM 50

Wil een inschakelwaarde in (bijv. 700 W overschot) opbrengst minus gebruik en een lagere uitschakelwaarde (bijv. 200W).
​ De waarde moet gedurende een vaste tijd (bijv. 5 minuten) stabiel of hoger blijven voordat de warmtepomp actie onderneemt.
Daarnaast wil ik elke 15 sec. een script logs zien.

Ik kan een scene maken, maar heb liever een script.
Scrips geven logs, wat mijn voorkeur is
Maar waar moet je shelly die 'overwaarde' vandaan toveren?

En nogmaals.. Wat heb je zelf al geprobeerd. In de shelly script omgeving staan ook allerlei voorbeelden en templates waar je mee kan beginnen.

  • t14wo
  • Registratie: Maart 2009
  • Nu online
Septillion schreef op zaterdag 24 januari 2026 @ 22:31:
@t14wo Kan je ook zien wat kapot is? Want deze schade is duidelijk niet van alleen te warm, daar is echt iets in rook opgegaan.
Nee, ik heb beperkte elektrotechnische kennis. Dus ik kan niet alle onderdelen goed benoemen.

Er zat wel een gaatje in het vierkante componentje. (De weerstand zelf?)

Zit nu te zoeken en er zijn veel meer gevallen. Bijv. een op reddit die exact hetzelfde is qua schade: https://www.reddit.com/r/.../shelly_bypass_went_bang/

  • Johndoej
  • Registratie: Augustus 2023
  • Laatst online: 18:32
Johndoej schreef op zaterdag 24 januari 2026 @ 20:59:
[...]
.

Heb een warmtepomp met inwendige boiler, zonnepanelen en een shelly pro EM 50

Wil een inschakelwaarde in (bijv. 700 W overschot) opbrengst minus gebruik en een lagere uitschakelwaarde (bijv. 200W).
​ De waarde moet gedurende een vaste tijd (bijv. 5 minuten) stabiel of hoger blijven voordat de warmtepomp actie onderneemt.
Daarnaast wil ik elke 15 sec. een script logs zien.

Ik kan een scene maken, maar heb liever een script.
Scrips geven logs, wat mijn voorkeur is

[mbr]Eigen inzet wordt verwacht. Dus wat heb jij al geprobeerd?[/]
Het is gelukt, bedankt voor het meedenken.

  • rens-br
  • Registratie: December 2009
  • Laatst online: 18:42

rens-br

Admin IN & Moderator Mobile
Topicstarter
Johndoej schreef op zondag 25 januari 2026 @ 10:57:
[...]


Het is gelukt, bedankt voor het meedenken.
Fijn! Zou je het voor het afronden fijn vinden om je script te delen, zodat andere er ook van kunnen leren.

  • Johndoej
  • Registratie: Augustus 2023
  • Laatst online: 18:32
rens-br schreef op zondag 25 januari 2026 @ 11:31:
[...]

Fijn! Zou je het voor het afronden fijn vinden om je script te delen, zodat andere er ook van kunnen leren.
Heb de basis gedownload van de shelley app. Vervolgens heeft ai mijn verlangens erin gezet.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
// === CONFIGURATIE ===
let CONFIG = {
  grid_channel: 1,               // Zet op 1 (kanaal met negatieve W = overschot)
  excess_on_threshold: 700,      // W overschot om boiler AAN te gaan
  excess_off_threshold: 300,     // W overschot om boiler UIT te gaan
  on_delay_seconds: 300,         // 5 minuten wachten
  off_delay_seconds: 120,        // 2 minuten wachten
  relay_id: 0                    // Relay ID
};

let state = {
  current_excess: 0,
  above_on_threshold_since: null,
  below_off_threshold_since: null,
  relay_is_on: false,
  last_log_time: 0
};

// === HELPER: pad nummer met nul ===
function pad(num, size) {
  let s = num + "";
  while (s.length < size) s = "0" + s;
  return s;
}

// === FUNCTIES ===
function getGridPower(callback) {
  Shelly.call("EM1.GetStatus", { id: CONFIG.grid_channel }, function(res) {
    if (res && res.act_power !== undefined) {
      state.current_excess = res.act_power < 0 ? -res.act_power : 0;  // Overschot positief maken
      if (typeof callback === "function") callback();
    } else {
      print("Fout: Geen act_power");
    }
  });
}

function turnRelay(on) {
  Shelly.call("Switch.Set", { id: CONFIG.relay_id, on: on }, function(res) {
    if (res) {
      state.relay_is_on = on;
      print("Boiler " + (on ? "AAN" : "UIT") + " | Overschot: " + state.current_excess.toFixed(0) + " W");
    }
  });
}

function checkExcess() {
  let excess = state.current_excess;
  let now = Math.floor(Date.now() / 1000);

  if (excess >= CONFIG.excess_on_threshold) {
    if (state.above_on_threshold_since === null) {
      state.above_on_threshold_since = now;
      print("START AAN-TIMER");
    }

    if (state.above_on_threshold_since !== null &&
        now - state.above_on_threshold_since >= CONFIG.on_delay_seconds &&
        !state.relay_is_on) {
      turnRelay(true);
      state.above_on_threshold_since = null;
    }
  } else {
    state.above_on_threshold_since = null;
  }

  if (excess < CONFIG.excess_off_threshold) {
    if (state.below_off_threshold_since === null) {
      state.below_off_threshold_since = now;
      print("START UIT-TIMER");
    }

    if (state.below_off_threshold_since !== null &&
        now - state.below_off_threshold_since >= CONFIG.off_delay_seconds &&
        state.relay_is_on) {
      turnRelay(false);
      state.below_off_threshold_since = null;
    }
  } else {
    state.below_off_threshold_since = null;
  }
}

function logStatus() {
  let now = Math.floor(Date.now() / 1000);

  if (now - state.last_log_time < 15) return;
  state.last_log_time = now;

  let uptime = Shelly.getComponentStatus("sys").uptime;
  let hours = Math.floor(uptime / 3600);
  let mins = Math.floor((uptime % 3600) / 60);
  let secs = uptime % 60;

  let timeStr = pad(hours, 2) + ":" + pad(mins, 2) + ":" + pad(secs, 2) + " uptime";

  let status = "=== STATUS @ " + timeStr + " ===\n";
  status += "  Overschot: " + state.current_excess.toFixed(0) + " W\n";
  status += "  Boiler: " + (state.relay_is_on ? "AAN" : "UIT") + "\n";

  if (state.above_on_threshold_since !== null) {
    let left = Math.max(0, CONFIG.on_delay_seconds - (now - state.above_on_threshold_since));
    status += "  AAN-timer: nog " + left + " sec\n";
  }

  if (state.below_off_threshold_since !== null) {
    let left = Math.max(0, CONFIG.off_delay_seconds - (now - state.below_off_threshold_since));
    status += "  UIT-timer: nog " + left + " sec\n";
  }

  print(status);
}

// Jouw oorspronkelijke handler voor switch power consumption
Shelly.addStatusHandler(function (status) {
  //check if the event source is a switch
  //and if the id of the input is 0
  if (status.name === "switch" && status.id === 0) {
    if (typeof status.delta.apower === "undefined") {
      return;
    }
    if (status.delta.apower > 4) {
      print("Using more than 4W power");
    }
  }
});

// === START ===
print("Boiler Script met jouw wensen");
Timer.set(5000, true, function() {
  getGridPower(function() {
    checkExcess();
    logStatus();
  });
});
getGridPower(function() {
  checkExcess();
  logStatus();
});

[ Voor 0% gewijzigd door rens-br op 25-01-2026 12:01 . Reden: Code tags toegevoegd ]


  • Kozzmozz
  • Registratie: Oktober 2002
  • Nu online
Afbeeldingslocatie: https://tweakers.net/i/i1AOSLXWJeBlYyOmpe_gPU8Y8FM=/x800/filters:strip_icc():strip_exif()/f/image/b6i09idbmt6r7Qcc1J6qYg7v.jpg?f=fotoalbum_large
Hoe sluit ik een Shelly 1 Mini Gen4 aan op deze lichtschakelaar?
Deze lichtschakelaar bedient de verlichting in de garage. Er zijn ook nog twee aparte lichtschakelaars, die dezelfde verlichting bedienen.

|| AMD Ryzen 7 7800X3D | ASUS ROG Strix B650E-F | INNO3D RTX 4090 iCHILL X3 | Fractal Design Meshify 2 | 2x LG Ergo 32UN880 | Thermalright Peerless Assasin 120 SE | G.Skill Trident Z5 Neo 32GB DDR5 | BE QUIET! Pure Power 12 M 850W | WD Black SN850X 2TB ||


  • Septillion
  • Registratie: Januari 2009
  • Laatst online: 17:46
@Kozzmozz Daar kan je hem in ieder geval niet aansluiten. Want de uitgang van deze schakelaar gaat met twee draden door naar de andere schakelaars.

Module aansluiten kan bij een wisselschakeling alleen aan het einde. Dus of bij de laatste schakelaar of bij de lamp. Ik zou dus eens kijken of je hem bij de lamp kan plaatsen.

  • Kozzmozz
  • Registratie: Oktober 2002
  • Nu online
@Septillion
Ik kan helaas niet aan de lampen zelf de Shelly 1 Mini Gen4 plaatsen.
Er is wel een andere schakelaar waar volgende aansluiting is.
Hoe sluit ik de Shelly hierop aan?
Afbeeldingslocatie: https://tweakers.net/i/T2JRlNrf-D7UQTjan5FCmmVyYVw=/x800/filters:strip_exif()/f/image/wNgiICoi9FwWJFyPC4guNhDg.png?f=fotoalbum_large

|| AMD Ryzen 7 7800X3D | ASUS ROG Strix B650E-F | INNO3D RTX 4090 iCHILL X3 | Fractal Design Meshify 2 | 2x LG Ergo 32UN880 | Thermalright Peerless Assasin 120 SE | G.Skill Trident Z5 Neo 32GB DDR5 | BE QUIET! Pure Power 12 M 850W | WD Black SN850X 2TB ||


  • Septillion
  • Registratie: Januari 2009
  • Laatst online: 17:46
@Kozzmozz Niet, want dat is ook niet de laatste schakelaar maar één in het midden.

Waarom kan hij niet bij de lamp?

En anders is dus je enige mogelijke optie bij de schakelaar die je nog niet getoond hebt :)

  • Kozzmozz
  • Registratie: Oktober 2002
  • Nu online
@Septillion Ik heb nog een laatste schakelaar waarop volgende aansluitingen zijn;
2 = ZWART
L2 = ROOD
2' = GRIJS
Nu heb ik twee (2) stroomkabels daar gevonden met volgende opschriften;
- LMP > wellicht is dit de kabel die de verschillende lampen in de garage verbinden
- VOEDING 3-3 > dit is de voeding van de kring 3-3 waarop de verlichting garage aangesloten is.

|| AMD Ryzen 7 7800X3D | ASUS ROG Strix B650E-F | INNO3D RTX 4090 iCHILL X3 | Fractal Design Meshify 2 | 2x LG Ergo 32UN880 | Thermalright Peerless Assasin 120 SE | G.Skill Trident Z5 Neo 32GB DDR5 | BE QUIET! Pure Power 12 M 850W | WD Black SN850X 2TB ||

Pagina: 1 ... 91 92 Laatste