Hallo, gibt es mittlerweile bei der neuesten Firmware eine Möglichkeit das Vorzeichen der strommessung per Software zu drehen?
Beiträge von Alexander Seufert
-
-
I've already placed a feature request to add sunrise / sunset infos to Shelly.GetStatus REST-API call which was accepted, so this will probably be implemented with a future firmware version.
Hello do you know if this feature request is realissed untill now? I yes have you got a code snipped? Thank you
-
Hello, is there a way to make a variable remanent in shelly scripting?
So that it keeps its previous status/value after a restart or after a program change?
This means that Shelly would have to store the variable in the eeprom or flash.
-
Here's a quick example
Code
Alles anzeigenShelly.call( "switch.getStatus", { id: 0 }, function (response) { let status = response.output ? "on" : "off"; let temp = JSON.stringify(Math.round(response.temperature.tC)); print("Output is " + status); print("Device temperature is " + temp + " degree celsius"); }, null );
just for clarification: it is mandatory to have some basic javscript skills in order to work with Shelly mJS, all functions are documented here:https://shelly-api-docs.shelly.cloud/gen2/Scripts/S…anguageFeatures
hello I'm using this scipt and it worked fine, thank you for this hint.
but if i want to read all 5 temperature sensors, I get a error mesage "to many shelly -calls".
My question: is it also possible to use Shelly.getComponentStatus(???) to get the temperature of the Shelly AddOn?
-
schau mal hier:
BeitragRE: Shelly Scripting - kurze Einführung
Hallo,
habe hier mal für einen Shelly 2PM ein Scipt geschrienen, so das man ihn als Master Slave Schaltung z.B. für in einen Werkstattstaubsauger verwenden kann. Der shella muss dazu in das Gehäuse des Staubsauger oder ein separates Gehäuse gebaut werden.
An Ausgang1 kommt der Master, (z.B. über Steckdose am Staubsauger angeschlossene Kreissäge)
an Ausgang 2 der Slave. (z.B. die Kabel die zum Motor des Staubsaugers führen)
Vorteil gegenüber eines gekauften Master Slave Schalter ist, das hier nur…Alexander Seufert3. Oktober 2022 um 21:25 -
-
Hello,
I want to swich a shelly with internal scipting, dependet on SOC-Status of my home battery.
SOC-value of home battery is available via MQTT.
To do this I'm looking for a example scipt how to use MQTT.subscribe() within shelly scripting.
Thank you
-
Hallo,
habe hier mal für einen Shelly 2PM ein Scipt geschrienen, so das man ihn als Master Slave Schaltung z.B. für in einen Werkstattstaubsauger verwenden kann. Der shella muss dazu in das Gehäuse des Staubsauger oder ein separates Gehäuse gebaut werden.
An Ausgang1 kommt der Master, (z.B. über Steckdose am Staubsauger angeschlossene Kreissäge)
an Ausgang 2 der Slave. (z.B. die Kabel die zum Motor des Staubsaugers führen)
Vorteil gegenüber eines gekauften Master Slave Schalter ist, das hier nur die Wirkleistung gemessen wird und bei Geräten die nur eine kleine Wirkstromaufnahme im Betrieb haben aber im ausgeschalteten (Standby) Zustand eine hohe Blindstromaufnahme z.B. Festool Exzenterschleifer ETS EC 150/5 EQ mit EC-Motor.
nun sauber unterschieden werden kann ob der Master aus und an ist.
Code
Alles anzeigen/*This scipt measure power on output_1 (id:0). As long as outpu1 power is >20W: output 2 ist switched on with a switch off delay of 3,5s (+0...2s).. delay caused by chek intervall if check intervall is reduced from every 2s to 1s; the enable switich of this script will switchted off after booting.. error? This scipt help if ready of the shelf Master slave swichtes does not work, becauss Master Power consumption has got a bad Power-factor, (e.G.<0,9) cause by a inductive or capacitance load*/ // Timer.set(period, repeat, callback, userdata) -> timer_handle // https://shelly-api-docs.shelly.cloud/gen2/Scripts/ShellyScriptLanguageFeatures#timer Timer.set(2 * 1000, //check intervall =2s true, function () { // switch on output1, so Power could be measured here Shelly.call("switch.set",{ id: 0, on: true}, function (result, code, msg, ud) {},null); Shelly.call( //https://shelly-api-docs.shelly.cloud/gen2/Scripts/ShellyScriptLanguageFeatures#shellycall //Shelly.call(method, params, callback, userdata) -> boolean "switch.getStatus", //=method { id: 0 }, //=params function (res, error_code, error_msg, ud) { print("Power",res.apower "Watt, Powerfactor", res.pf*100 "%, Voltage", res.voltage, "Vrms"); //print("Shelly Temperature", res.temperature.tc, "°C"); does not work.. reason? if (res.apower>20) { Shelly.call("switch.set",{ id: 1, on: true, toggle_after: 3.5},function (result, code, msg, ud) {},null); } }, null); //=userddata(ud) from fct shelly-call switch.getStatus } null); //=userddata(ud) from timer.set