Stoom & Gas verbruik uitlezen Rooted Toon

Hallo,

Ik zoek een manier om via HomeyScript de data van mijn Toon om te zetten naar een Tag.
via dit topic ben ik al wat verder.
Maar het lukt me niet om ook het stroom en gas verbruik om te zetten.
Helaas heb ik niet genoeg kennis om een script te schrijven. Lezen en aanpassen gaat wel maar veel verder kom ik niet.

Dus mijn vraag heeft iemand hier al een script voor draaien of tips om een script te maken (met w3schools.com kom ik er niet uit :blush:)?

Met deze link krijg ik de data uit de Toon.

http://Toon-IP/happ_pwrusage?action=GetCurrentUsage

{“result”:“ok”,
“powerUsage”: {“value”:350, “avgValue”:535.73},
“powerProduction”: {“value”:0, “avgValue”:0.00},
“gasUsage”: {“value”:0, “avgValue”:18.01}
}

Dit wil ik aan een Virtual-Device koppelen zodat in de Homey app kan zien.

Alvast bedankt voor het meedenken.

Groeten Nick

Laat maar…

Geen idee of het helemaal goed is qua opbouw maar het werkt.

// Get Toon info
var url = "http://192.168.1.11/happ_pwrusage?action=GetCurrentUsage";
(async () => {
     const rawResponse = await fetch(url, {
    method: 'GET',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
  });
  const content = await rawResponse.json();
 //console.log(content);

  if (content.powerUsage !== null && content.powerUsage != '') {
    var stroom = content.powerUsage.value;
    var avgstroom = content.powerUsage.avgValue;
    var gas = content.gasUsage.value;
    var avggas = content.gasUsage.avgValue;
    await setTagValue("toon_stroom", {type: "number", title: "Stoom van Toon®"}, stroom);
    await setTagValue("toon_avgstroom", {type: "number", title: "Stoom Gemiddeld van Toon®"}, avgstroom);
    await setTagValue("toon_gas", {type: "number", title: "Gas van Toon®"}, gas);
    await setTagValue("toon_avggas", {type: "number", title: "Gas Gemiddeld van Toon®"}, avggas);
  }
})();
return true;

Bedankt, voor het delen van je script.:+1:
Ik ga ook een poging wagen dit te gebruiken. Ik zou zo ook mijn zonnepanelen willen monitoren. En evt temp instellen en boiler settings uitlezen. Dit kon ik icm domotica vrij eenvoudig. Mbv een stuk lua code.
Nu nog een handige Harry die er een mooie app voor schrijft.

var power = content.gasUsage.avgValue;
var avgpower = content.gasUsage.avgValue;

await setTagValue("toon_power", {type: "number", title: "Zonnepanelen van Toon®"}, power);
await setTagValue("toon_avgpower", {type: "number", title: "Zonnepanelen Gemiddeld Gemiddeld van Toon®"}, avgpower);

Als je deze regels toevoegt dan zouden ook de metingen van je zonnepanelen erbij moeten komen.

voor de boilerstatus gebruik ik dit…

//Get Toon info
var url = "http://192.168.1.11/boilerstatus/boilervalues.txt";
(async () => {
     const rawResponse = await fetch(url, {
    method: 'GET',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
  });
  const content = await rawResponse.json();
 //console.log(content);

  if (content.boilerSetpoint !== null && content.boilerSetpoint != '') {
    var boilerPressure = content.boilerPressure*1000;
    var boilerInlet = content.boilerInTemp;
    var boilerOutTemp = content.boilerOutTemp;
    await setTagValue("boiler_druk", {type: "number", title: "Cv Druk"}, boilerPressure);
    await setTagValue("boiler_inlet", {type: "number", title: "Cv Inlaat Temperatuur"}, boilerInlet);
    await setTagValue("boiler_outlet", {type: "number", title: "Cv Uitlaat Temperatuur"}, boilerOutTemp);
  }
})();
return true;

En het aansturen kan door de volgende linkjes te versturen met HTTP request flow cards
Toon temperatuur setpoint

http://192.168.1.228/happ_thermstat?action=setSetpoint&Setpoint=2000
Hier heb ik achter de = een tag gemaakt voor het ingestelde setpoint * 100 dus als ik dan ik homekit de temperatuur verander dan stelt hij hem goed in op je Toon.

Programma aan(1)/uit(0)
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=0

Met Programa
Comfort
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=2&temperatureState=0
Thuis
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=2&temperatureState=1
Slapen
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=2&temperatureState=2
Weg
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=2&temperatureState=3

Continue
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=0&temperatureState=0
Thuis
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=0&temperatureState=1
Slapen
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=0&temperatureState=2
Weg
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=0&temperatureState=3

Hervat Programa
http://192.168.1.228/happ_thermstat?action=changeSchemeState&state=1&temperatureState=

Stroom en Gas Verbruik
http://192.168.1.228/happ_pwrusage?action=GetCurrentUsage

Toon Status
http://192.168.1.228/happ_thermstat?action=getThermostatInfo

Boiler status
http://192.168.1.11/boilerstatus/boilervalues.txt

Op github heeft Vinceste IT hier een Honey app voor. Moet je wel sideloaden en een flow toevoegen die de waarden bv per 5 min ververst.

Zal einde van het jaar kijken of ik de bovengenoemde data kan toevoegen aan de App :wink: Helaas op dit moment geen Toon aan de muur omdat ik in het buitenland zit.

2 Likes

Beste Stefan,

Ik ben beniewd of je hier al aan toe gekomen bent?

1 Like

Hoe werkt dat sideloaden? Ik begrijp niet hoe ik dit werkend krijg maar zou wel graag aan de slag willen met die code van Vinceste omdat hier de mogelijkheid is om feedback te krijgen van de gemeten temperatuur…

Wil je de Rooted Toon app installeren? Zie de community store.
https://store.homey.community/

Je kunt daar tegenwoordig gewoon de apps installeren op de Homey.
Inclusief een app die de app’s update.

Deze Rooted Toon app is niet compleet, dwz deze app haalt niet alle data binnen die de Rooted Toon beschikbaar heeft.
Dit kan dan aangevuld worden met HomeyScript, ik heb zelf drie scripts, die mbv een flow periodiek draaien:
ik heb de App maker al eerder gevraagd om meer data binnen te halen.

ThermostatInfo (met name voor Burner info (CV aan, warm water, uit), Brander Modulatie, volgende programma
BoilerText voor Systeem Druk en Setpoint van de CV (helaas werkt TempIn en TempUit niet meer op (rooted) Toon)
Sensors haalt de humidity, CO2, VOC en (licht) intentiteit op.

Bij sensors zit ook de kamer temperatuur, maar die komt al met de Rooted Toon app binnen op de thermostaat.

Als je wilt kan ik de scripts met je delen.

Wat ik nog niet gedaan heb, maar wel wil doen is deze data weer in virtuele devices zetten.

1 Like

Systeemdruk is de waterdruk?
Dat is wel handig om in een flow te kunnen verwerken om een melding te krijgen als erbijgevuld moet worden.

Hi Bart, ik kan die Rooted toon app niet vinden in de community store?

Sorry, sorry, sorry, ik denk dat het of terug getrokken of verwijderd is. Mea Culpa :- :upside_down_face:
@MaxvandeLaar, @Stefan_Postma kunnen jullie een toelichting geven?

@jeroenz de code is beschikbaar op Github.
Dan de procedure volgens van post 9 (How to CLI Install method) gepost door @JPe4619

Ja, die flow heb ik al. ik heb verder de pomp van de vloerverwarming geschakeld op de CV mode (pomp draait als CV brandt).
Ik denk er aan om de lampen in de badkamer aan/uit /aan te schakelen als het warm water te lang aan staat.
Ventileren aan schakelen als de CO2 / luchtvochtigheid/VOC te hoog wordt.

Ah ja dacht al … hij werkt bij mij ook niet meer in Homey 6.x namelijk.

Ga nog wel even wat prutsen of ik hem weer werkend kan krijgen.

@BartOverdevest ik kan mij niet herinneren dat deze app in de HCS stond en al helemaal niet dat ik heb verwijderd heb. Als, dan is dat toch wel een tijdje terug.

Mocht de dev hem (weer) in de HCS willen hebben dan is dat uiteraard geen probleem :wink:

1 Like