Search Results : Klik Aan Klik Uit

  • Klik aan Klik uit PA3-1000r

    Klik Aan - Klik Uit (KAKU)
    Klik Aan – Klik Uit (KAKU)

    Ook deze oudjes kun je nog steeds gebruiken met Domoticz in combinatie met de RFXtrx433E van RFXcom. Een groot nadeel van deze units is dat er maar weinig kanalen op zitten, je kan kiezen uit de groepen A, B, C en D en dan nog de onderverdeling 1, 2 en 3, dus bij 12 apparaten ben je klaar, en mochten de buren ook een setje gebruiken is het helemaal bedroefd. Maar voor minder kritische toepassingen zijn ze nog steeds goed bruikbaar, een buitenlampje of kerstverlichting bijvoorbeeld. Je wil hier niet je home cinema op aansluiten er achter komen dat de buurman regelmatig je set uitschakelt.

    Toevoegen in Domoticz is kinderlijk eenvoudig (als je het weet), heb best wel even zitten puzzelen, dus vandaar dit geheugensteuntje. Lees verder  Bericht ID 1389


  • Pakketje uit China? Vastgehouden door PostNL voor de douane!

    • Hoe zit dat nou met pakketjes uit China?
    • Zijn die winkels betrouwbaar en hoe lang duurt het?
    • En wat kost het?
    • Is het ethisch wel correct?

    Maar er zijn meer vragen.

    • Hoe snel gaan onze Nederlandse winkels failliet?
    • Moeten we al Chinees gaan leren?
    • Zijn er in Nederland straks nog banen?

    Eerst maar wat antwoorden: Ja, die Chinese webwinkels zijn betrouwbaar. Als er iets misgaat lossen ze het wel op. Je kan gewoon mailen. Het komt vrijwel altijd aan, en het duurt meestal 10 dagen, of 14 tot 30 dagen. Je kan zelfs je geld terugvragen, maar dan moet je wel het een en ander bewijzen. Het is geen Zalando natuurlijk! Dat soort winkels gaat failliet aan die onbeperkte retouren van Westerse consumenten, die alles na gebruik gewoon terugsturen. Dat is nog eens ethisch onverantwoord… en schadelijk voor de economie.

    Tot €23,- worden er geen invoerrechten en BTW gerekend, vanaf €23,- tot €150,- is het vrij van invoerrechten, maar moet je wel de BTW bijbetalen. In dat geval komen er ook nog douanekosten bij. En dan duurt het langer, want dan ligt het tijden bij de Nederlandse douane.

    Als uw pakket bij de douane is tegengehouden moet u bewijzen gaan aanleveren wat de waarde van het product is, dit gaat het snelst op deze pagina van PostNL KLIK

    PostNL brengt voor de afhandeling €13 in rekening en bij een EMS (snelle verzending) €17,50, let dus op een koopje van 25 euro komt dan dus op 38 euro’s…. Je kunt dan het pakket weigeren en laten retourneren naar de afzender, deze hoeft deze kosten niet te betalen. Vraag bij een bedrag boven de €23 of de verkoper er geschenk / gift op wil zetten, dan kun je tot €45 zonder inklaringskosten en afhandelingskosten van PostNL. Lees verder  Bericht ID 1389


  • MQ-5 Methaan, LPG, waterstof sensor

    Deze module bevat een methaan / LPG sensor om de concentraties van deze gassen in de lucht te kunnen meten. De MQ-5 kan gas concentraties van 300 tot 5000ppm registreren. Deze module bevat zowel een analoge output als een digitale output, welke triggert op een instelbare concentratie.

    De volledige eigenschappen staan in de datasheet

    Eigenschappen: Lees verder  Bericht ID 1389


  • MQ-4 Methaan, aardgas sensor

    Deze module bevat een methaan / aardgas sensor om de concentraties van deze gassen in de lucht te kunnen meten. De MQ-4 kan gas concentraties van 300 tot 5000ppm registreren. Deze module beval zowel een analoge output als een digitale output, welke triggert op een instelbare concentratie.

    De volledige eigenschappen staan in de datasheet

    Eigenschappen: Lees verder  Bericht ID 1389


  • Smart Home

    Geplaatst op door colani

    De smart home-markt is geen eenvoudige markt door het immens grote aanbod van protocollen, standaarden en beperkingen. Je kunt het jezelf makkelijk maken door alles van één fabrikant te kopen en zodoende middels één app te bedienen, of te zoeken naar producten van verschillende fabrikanten die compatibel zijn met elkaar en dus samen kunnen werken.
    Zo werken Philips Hue en Nest bijvoorbeeld samen. Maar, dat is pas het begin en voor de beginnende consument ook een prima begin, mits je weet wat op een simpele manier met elkaar werkt. Wil je meer mogelijkheden,
    waaronder het echt programmeren via bijvoorbeeld Domoticz en het toevoegen van eigen toepassingen, modules of apparaten van tal van fabrikanten, dan kun met Domoticz en/op een Raspberry PI zeker uit de voeten.

    Wat is er te koop:


  • RF 433 module testen

    De RF 433 MX05V & FS1000A modules
    De RF 433 MX05V & FS1000A modules

    Set van een 433MHz RF onvanger- en zendermodule te gebruiken voor o.a. Arduino voor bijvoorbeeld het aansturen van een kaku set (Klik aan Klik uit), deurbellen, garagedeur, domotica of robot projecten.

     

     

     

     

     

     

     

     

     

     

     

     


    De eerste test is gewoon eens kijken of de modules werken: Lees verder  Bericht ID 1389


  • RFlink ondersteunde apparaten

    FREE - Easy to use - More protocols than any other solution - Multiple frequencies - Multiple home automation platforms
    FREE – Easy to use – More protocols than any other solution – Multiple frequencies – Multiple home automation platforms

    RFLink : Supported devices list

    UPDATE: 28 May 2017

    All devices listed below have been tested by one or more users and were found working with one of the RFLink firmware versions.
    Since we do not actually own all of these devices ourselves it is impossible to test each new RFlink firmware version with each and every device.
    In some cases not all the features of a device might be supported yet. If you feel something is missing for a device you own,
    check the development page to see how you can help with a debug log to improve the implementation.

    If your device is not listed below, it does not automatically mean that it will not work! It actually still might work.
    Many devices are clones of each other or are using an existing protocol.
    If you have a device that is not listed below but is working then let us know via frankzirrone@gmail.com so we can update the list.
    If your device is not listed and also not detected, then check the development page to see how you can help with a debug log to have support for your device added to the firmware.

    433 and/or 315 Mhz devices:

    Lees verder  Bericht ID 1389


  • Wat is het verschil tussen X10 – Marmitek X10 – S10 – Eaton – Xanura – X10RF – X10.com?

    Er bestaat veel onduidelijkheid over de verschillen tussen deze (merk)namen en op diverse internetfora staan over dit onderwerp de meest gekke beweringen. Daarom leggen wij alles over X10 en aanverwante producten hieronder even uit :

    X10 was (!) een fabrikant van home automation producten die werkten volgens het X10 protocol dat oorspronkelijk dateert uit 1975. X10 producten werden veelal verkocht onder de merknaam van lokale distributeurs zoals Marmitek in West-Europa, Radio Shack (vroeger Tandy of TRS) in de USA, maar ook vaak onder de naam X10 zelf, zoals op www.x10.com

    Marmitek, Radio Shack, Powerhouse,… zijn dus geen fabrikanten, maar firma’s die deze producten onder eigen naam verdelen of verdeelden.

    Marmitek heeft zijn afdeling X10 producten verkocht in 2013 en is dus gestopt met de distributie van deze producten. In de toekomst zullen er  dus ook geen producten meer met hun merknaam terug te vinden zijn. Producten die nu nog aangeboden worden onder de merknaam Marmitek zijn nog stock producten. Deze lopen echter uit. Nadien worden deze onder een neutrale verpakking met het X10 logo er op aangeboden. Lees verder  Bericht ID 1389


  • Geroote Toon bedienen met Domoticz

    Nadat je jouw Toon succesvol hebt geroot ga je natuurlijk als eerste je Toon-abonnement bij Eneco opzeggen; het abonnement kost je 4,50 € per maand daar heb je nu niets meer aan. Maar hoe krijg je de data van Toon dan in Domoticz? En hoe kan je via Domoticz de Toon bedienen?

    Na het uitvoeren van onderstaande stappen is het mogelijk om informatie uit de Toon te in Domoticz te laten weergeven en de Toon vanuit Domoticz aan te sturen.

    Toon > Domoticz

    • Huidige temperatuur (omgeving)
    • Ingestelde temperatuur (thermostaat)
    • Ingesteld programma
    • Ingestelde scene
    • Brander informatie (wordt de ketel gebruikt voor CV of Warm Water?)
    • Boiler temperatuur (ingaand en uitgaand)
    • Boiler temperatuur-setpoint
    • Keteldruk
    • Modulatie-level

    Domoticz > Toon

    • Instellen temperatuur (thermostaat)
    • Instellen programma
    • Instellen scene

    (Stap 1)

    User variables

    Allereerst gaan we 13 user variables aanmaken (Setup > More Options > User variables). In onderstaande tabel zie je eerst de “Variable name”, vervolgens het type (allemaal String) en tot slot de “Variable value”. Zorg ervoor dat je de namen en waarden exact overneemt (later kun je de namen eventueel wijzigen, maar dat scheelt voor nu wat debugging als er ergens iets niet goed gaat).

    1: UV_ToonboilerModulationLevel        String Boiler_Modulation_level
    2: UV_ToonboilerPressure               String Boilerdruk
    3: UV_ToonboilerOutTempName            String Temperatuur Boiler Uit
    4: UV_ToonboilerInTempName             String Temperatuur Boiler In
    5: UV_ToonProgramInformationSensorName String ToonProgramInformation
    6: UV_ToonAutoProgramSensorName        String ToonAutoProgram
    7: UV_ToonScenesSensorName             String Toon Scenes
    8: UV_ToonTemperatureSensorName        String Temperatuur Binnen
    9: UV_ToonIP                           String 10.0.0.180
    10: UV_ToonThermostatSensorName         String ToonThermostat
    11: UV_DomoticzIP                       String 10.0.0.1:8080
    12: UV_ToonBurnerName                   String ToonBranderInfo
    13: UV_ToonBoilerTempSetpointSensorName String ToonBoilerTempSetpoint

    Bij UV_ToonIP geeft je als waarde het vaste IP van je Toon in en bij UV_DomoticzIP geef je het IP van Domoticz in inclusief het poort-nummer.

    Virtuele devices

    De volgende stap is om virtuele devices aan te maken, deze hebben we nodig om acties te kunnen uitvoeren of data te kunnen aflezen. Ga naar Setup -> Hardware en kies bij Type voor Dummy. Je mag zeg een herkenbare naam kiezen:

    colandino.nl

     

    Zodra de Dummy Hardware toegevoegd is kunnen de virtuele sensoren gaan aanmaken. Klik hiervoor op Create Virtual Sensors (in het donkerblauw).

    Maak nu de virtuele sensor aan van het type “Temperature” en geef “Temperatuur Binnen” als naam van de sensor in:

    Maak op dezelfde wijze onderstaande virtuele sensoren aan:

    (Stap 2)


    1: ToonThermostat - Thermostat Setpoint sensor
    2: ToonAutoProgram - Selector Switch sensor
    3: ToonProgramInformation - Text sensor
    4: Toon Scenes - Selector Switch sensor
    5: ToonIP - Text Sensor
    6: ToonBranderInfo - Selector Switch sensor
    7: ToonBoilerTempSetpoint - Temperatuur sensor
    8: Temperatuur Boiler In - Temperatuur sensor
    9: Temperatuur Boiler Uit - Temperatuur sensor
    10: Boilerdruk - Pressure sensor
    11: Boiler_Modulation_level - Percentage sensor

    Voordat de scripts ingesteld kunnen worden zal de “ToonIP” Text-sensor ingevuld moeten worden met het IP-adres van de Toon.

    Het eerste IP-adres in onderstaande regel is het IP van Domoticz, het tweede IP-adres is het IP van Toon. Ook moet je bij idx= het IDX-nummer van de ToonIP-textsensor invullen.(Zie nr. 9 van stap 1)
    10.0.0.1:8080/json.htm?type=command&param=udevice&idx=22058&nvalue=0&svalue=10.0.0.180

    Bovenstaande regel wordt niet altijd juist getoond, onderstaande regel zou hetzelfde resultaat moeten geven:
    http://10.0.0.1:8080/json.htm?param=udevice&type=command&idx=22058&nvalue=0&svalue=10.0.0.180

    Geef deze URL in een willekeurig browser in, het resultaat zal dan zijn:
    { “status” : “OK”,
    “title” : “Update Device”
    }

    (Stap 3)

    Sensoren instellen

    Er moeten nog een aantal sensoren ingesteld worden, zodat de Toon hiermee
    bediend kan worden. Ga binnen Domoticz naar het tabblad Switches.

    ToonAutoProgram

    Klik bij “ToonAutoProgram” op “Edit”

    • stel “Hide Off Level” in op “OFF”
    • Pas de “Level Names” aan:
      • 0 Off
      • 10 Nee
      • 20 Ja
      • 30 Tijdelijk
    • Pas de “Level Action” aan, gebruik het IP-adres van de Toon.
      • 0
      • 10 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=0
      • 20 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=1
      • 30
    • Druk op “Save” om de wijzigingen op te slaan

    Toon Scenes

    Klik bij “Toon Scenes” op “Edit”

    • stel “Hide Off Level” in op “OFF”
    • Pas de “Level Names” aan:
      • 0 Off
      • 10 Weg
      • 20 Slapen
      • 30 Thuis
      • 40 Comfort
      • 50 Handmatig
    • Pas de “Level Action” aan, gebruik het IP-adres van de Toon.
      • 0
      • 10 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=2&temperatureState=3
      • 20 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=2&temperatureState=2
      • 30 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=2&temperatureState=1
      • 40 http://10.0.0.180/happ_thermstat?action=changeSchemeState&state=2&temperatureState=0
      • 50 http://10.0.0.180/happ_thermstat?action=setSetpoint&Setpoint=60
    • Druk op “Save” om de wijzigingen op te slaan

    BranderInfo

    Klik bij “ToonBranderInfo” op “Edit”

    • Pas de “Level Names” aan:
      • 0 Off
      • 10 CV
      • 20 WW
    • Druk op “Save” om de wijzigingen op te slaan

     

    Scripts

    Om alles goed te laten werken gaan we gebruik maken van twee dzVents scripts. Ga naar Setup > More Options > Events en maak een nieuw dzVents-script aan, getriggerd door ‘device’. Haal de code die erin staat weg en plak ondestaande code erin. Geef het script een herkenbare naam (bv. Toon Setpoint), zet het script op actief en sla het op.

    Lua
    return {
    on = {
    devices = {
    'ToonThermostat'
    }
    },

    execute = function(domoticz, device)
    domoticz.openURL(string.format(‘http://%s/happ_thermstat?action=setSetpoint&Setpoint=%s’, domoticz.variables(‘UV_ToonIP’).value, device.setPoint*100))
    domoticz.log(‘Setting Toon setpoint to ‘.. device.setPoint)
    end
    }

    Maak vervolgens nog een dzVents-script aan, dit keer getriggerd door Timer. Haal de code weg en plak onderstaande code erin. Ook nu geef je het script een herkenbare naam (bv. Toon), zet je het op actief en sla je het op.

    return {
    on = {
    timer = {
    'every minute'
    }
    },

    execute = function(domoticz)
    local ToonThermostat = domoticz.variables(‘UV_ToonThermostatSensorName’).value — Sensor showing current setpoint
    local ToonTemperature = domoticz.variables(‘UV_ToonTemperatureSensorName’).value — Sensor showing current room temperature
    local ToonBoilerTempIn = domoticz.variables(‘UV_ToonboilerInTempName’).value — Sensor showing water temp return
    local ToonBoilerTempOut = domoticz.variables(‘UV_ToonboilerOutTempName’).value — Sensor showing current water temp out
    local ToonBoilerPressure = domoticz.variables(‘UV_ToonboilerPressure’).value — Sensor showing current room temperature
    local ToonBoilerModulation = domoticz.variables(‘UV_ToonboilerModulationLevel’).value — Sensor showing current Boiler Modulation
    local ToonScenes = domoticz.variables(‘UV_ToonScenesSensorName’).value — Sensor showing current program
    local ToonAutoProgram = domoticz.variables(‘UV_ToonAutoProgramSensorName’).value — Sensor showing current auto program status
    local ToonProgramInformation = domoticz.variables(‘UV_ToonProgramInformationSensorName’).value — Sensor showing displaying program information status
    local ToonIP = domoticz.variables(‘UV_ToonIP’).value
    local DomoticzIP = domoticz.variables(‘UV_DomoticzIP’).value
    local ToonBurnerName = domoticz.variables(‘UV_ToonBurnerName’).value
    — local P1SmartMeterPower = domoticz.variables(‘UV_P1SmartMeterElectra’).value
    — local P1SmartMeterGas1 = domoticz.variables(‘UV_P1SmartMeterGasMeterStand’).value
    local ToonBoilerSetpoint = domoticz.variables(‘UV_ToonBoilerTempSetpointSensorName’).value — Sensor showing current boiler set point water temp out

    — Handle json
    local json = assert(loadfile “/home/pi/domoticz/scripts/lua/JSON.lua”)() — For Linux
    local handle = assert(io.popen(string.format(‘curl http://%s/happ_thermstat?action=getThermostatInfo’, ToonIP)))
    local ThermostatInfo = handle:read(‘*all’) handle:close()
    local jsonThermostatInfo = json:decode(ThermostatInfo)

    if jsonThermostatInfo == nil then
    return
    end

    local handle2 = assert(io.popen(string.format(‘curl http://%s/boilerstatus/boilervalues.txt’, ToonIP)))
    local BoilerInfo = handle2:read(‘*all’)
    handle2:close()

    — JSON data from Toon contains a extra “,” which should not be there.
    BoilerInfo = string.gsub(BoilerInfo, “,}”, “}”)
    jsonBoilerInfo = json:decode(BoilerInfo)

    — http://IP_TOON/hdrv_zwave?action=getDevices.json
    — local handle4 = assert(io.popen(string.format(‘curl http://%s/hdrv_zwave?action=getDevices.json’, ToonIP)))
    — local GasPowerInfo = handle4:read(‘*all’)
    — handle4:close()

    — JSON data from Toon contains a extra “.” which should not be there.
    — GasPowerInfo = string.gsub(GasPowerInfo, “dev_4.”, “dev_4”)
    — GasPowerInfo = string.gsub(GasPowerInfo, “dev_4:”, “dev_4\”:”)

    — local jsonGasPower = json:decode(GasPowerInfo)

    — domoticz.log(jsonGasPower)
    — local CurrentElectricityFlowHoog = tonumber(jsonGasPower.dev_44.CurrentElectricityFlow )
    — local CurrentElectricityQuantityHoog = tonumber(jsonGasPower.dev_44.CurrentElectricityQuantity)
    — local CurrentElectricityFlowLaag = tonumber(jsonGasPower.dev_46.CurrentElectricityFlow )
    — local CurrentElectricityQuantityLaag = tonumber(jsonGasPower.dev_46.CurrentElectricityQuantity)
    — local CurrentGasFlow = tonumber(jsonGasPower.dev_41.CurrentGasFlow)
    — local CurrentGasQuantity = tonumber(jsonGasPower.dev_41.CurrentGasQuantity)
    — local CurrentElectricityQuantity = CurrentElectricityFlowHoog + CurrentElectricityFlowLaag
    — local CurrentElectricityDeliveredLaag = 0 — local CurrentElectricityDeliveredHoog = 0
    — local totalDeliveredPower = 0

    — domoticz.devices(P1SmartMeterPower).updateP1(CurrentElectricityQuantityLaag, CurrentElectricityQuantityHoog, CurrentElectricityDeliveredLaag, CurrentElectricityDeliveredHoog, CurrentElectricityQuantity, totalDeliveredPower).silent()
    — domoticz.devices(P1SmartMeterGas1).updateGas(CurrentGasQuantity).silent()

    — Update the Boiler Water In to current value
    local currentboilerInTemp = tonumber(jsonBoilerInfo.boilerInTemp)
    if domoticz.utils.round(domoticz.devices(ToonBoilerTempIn).temperature,0) ~= domoticz.utils.round(currentboilerInTemp,0) then
    — domoticz.log(‘Updating Boiler Water In to current value: ‘ ..currentboilerInTemp)
    domoticz.devices(ToonBoilerTempIn).updateTemperature(currentboilerInTemp).silent()
    end

    — Update the Boiler water Out to current value
    local currentboilerOutTemp = tonumber(jsonBoilerInfo.boilerOutTemp)
    if domoticz.utils.round(domoticz.devices(ToonBoilerTempOut).temperature,0) ~= domoticz.utils.round(currentboilerOutTemp,0) then
    — domoticz.log(‘Updating Boiler Water Out to current value: ‘ ..currentboilerOutTemp)
    domoticz.devices(ToonBoilerTempOut).updateTemperature(currentboilerOutTemp).silent()
    end

    — Update the Boiler water Pressure to current value
    local currentBoilerPressure = tonumber(jsonBoilerInfo.boilerPressure)
    if domoticz.utils.round(domoticz.devices(ToonBoilerPressure)._nValue,0) ~= domoticz.utils.round(currentBoilerPressure,0) then
    — domoticz.log(‘Updating Boiler Pressure to current value: ‘ ..currentBoilerPressure)
    domoticz.devices(ToonBoilerPressure).updatePressure(currentBoilerPressure).silent()
    end

    local currentSetpoint = tonumber(jsonThermostatInfo.currentSetpoint) / 100
    local currentTemperature = domoticz.utils.round(tonumber(jsonThermostatInfo.currentTemp) / 100,1)
    local currentProgramState = tonumber(jsonThermostatInfo.programState)
    if currentProgramState == 0 then currentProgramState = 10 — No
    elseif currentProgramState == 1 then currentProgramState = 20 — Yes
    elseif currentProgramState == 2 then currentProgramState = 30 — Temporary
    end
    local currentActiveState = tonumber(jsonThermostatInfo.activeState)
    if currentActiveState == -1 then
    currentActiveState = 50 — Manual
    elseif currentActiveState == 0 then currentActiveState = 40 — Comfort
    elseif currentActiveState == 1 then currentActiveState = 30 — Home
    elseif currentActiveState == 2 then currentActiveState = 20 — Sleep
    elseif currentActiveState == 3 then currentActiveState = 10 — Away
    elseif currentActiveState == 4 then currentActiveState = 60 — Holiday
    end

    — Update the toon burner selector to current program state
    local currentBurnerInfo = tonumber(jsonThermostatInfo.burnerInfo)
    local CurrentToonBurnerValue = domoticz.devices(ToonBurnerName).level
    if currentBurnerInfo == 0 then currentBurnerInfo = 0 — uit
    elseif currentBurnerInfo == 1 then currentBurnerInfo = 10 — cv aan
    elseif currentBurnerInfo == 2 then currentBurnerInfo = 20 — warmwater aan
    elseif currentBurnerInfo == 3 then currentBurnerInfo = 10 — voorverwarmen volgend setpoint
    end

    if CurrentToonBurnerValue ~= currentBurnerInfo then — Update toon burner selector if it has changed
    — domoticz.log(‘Updating Toon burner info:’)
    domoticz.devices(ToonBurnerName).switchSelector(currentBurnerInfo)
    end

    — Update the modulation level of the burner
    local currentModulationLevel = tonumber(jsonThermostatInfo.currentModulationLevel)
    if domoticz.devices(ToonBoilerModulation).percentage + 1 ~= currentModulationLevel + 1 then
    — domoticz.log(‘Updating the Modulation sensor to new value: ‘ ..currentModulationLevel)
    domoticz.devices(ToonBoilerModulation).updatePercentage(currentModulationLevel)
    end

    — Update the temperature Boiler setpoint to current boiler set point
    local currentInternalBoilerSetpoint = jsonThermostatInfo.currentInternalBoilerSetpoint+1
    if domoticz.utils.round(domoticz.devices(ToonBoilerSetpoint).temperature, 1) ~= domoticz.utils.round(currentInternalBoilerSetpoint, 1) then
    — domoticz.log(‘Updating the Boiler internal temperature setpoint to new value: ‘ ..currentInternalBoilerSetpoint)
    domoticz.devices(ToonBoilerSetpoint).updateTemperature(currentInternalBoilerSetpoint)
    end

    — Update the thermostat sensor to current setpoint
    if domoticz.devices(ToonThermostat).setPoint*100 ~= currentSetpoint*100 then
    — domoticz.log(‘Updating thermostat sensor to new set point: ‘ ..currentSetpoint)
    domoticz.devices(ToonThermostat).updateSetPoint(currentSetpoint).silent()
    end

    — Update the temperature sensor to current room temperature
    if domoticz.utils.round(domoticz.devices(ToonTemperature).temperature, 1) ~= domoticz.utils.round(currentTemperature, 1) then
    — domoticz.log(‘Updating the temperature sensor to new value: ‘ ..currentTemperature)
    domoticz.devices(ToonTemperature).updateTemperature(currentTemperature)
    end

    — Update the toon scene selector sensor to current program state
    if domoticz.devices(ToonScenes).level ~= currentActiveState then — Update toon selector if it has changed
    — domoticz.log(‘Updating Toon Scenes selector to: ‘..currentActiveState)
    domoticz.devices(ToonScenes).switchSelector(currentActiveState).silent()
    end

    — Updates the toon auto program switch
    if domoticz.devices(ToonAutoProgram).level ~= currentProgramState then — Update toon auto program selector if it has changed
    — domoticz.log(‘Updating Toon Auto Program selector to: ‘..currentProgramState)
    domoticz.devices(ToonAutoProgram).switchSelector(currentProgramState).silent()
    end

    — Updates the toon program information text box
    local currentNextTime = jsonThermostatInfo.nextTime
    local currentNextSetPoint = tonumber(jsonThermostatInfo.nextSetpoint) / 100

    if currentNextTime == 0 or currentNextSetPoint == 0 then
    ToonProgramInformationSensorValue = ‘Op ‘ ..currentSetpoint.. ‘°’
    else
    ToonProgramInformationSensorValue = ‘Om ‘ ..os.date(‘%H:%M’, currentNextTime).. ‘ op ‘ ..currentNextSetPoint.. ‘°’
    end

    if domoticz.devices(ToonProgramInformation).text ~= ToonProgramInformationSensorValue then
    — domoticz.log(‘Updating Toon Program Information to: ‘..ToonProgramInformationSensorValue)
    domoticz.devices(ToonProgramInformation).updateText(ToonProgramInformationSensorValue)
    end
    end
    }

    P1 Energie-meting (slimme meter)

    Energie-meting, verbruik van elektra en gas, kun je via een P1-kabel naar je Toon laten versturen. Zelf heb ik ervoor gekozen om met een P1 USB-kabel deze gegevens direct naar Domoticz te sturen. Mocht je deze gegevens via Toon willen laten lopen, dan moet je regel 46, 47, 48, 50, 51, 52, 54, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 68 en 70 un-commenten.

    Tevens moet je op regel 51, 52, 57, 58, 59, 60, 61 en 62 het juiste dev_ nummer invullen. Het juiste nummer kun je vinden door onderstaande URL in te geven in een browser (uiteraard wel het IP van jouw Toon gebruiken):

    http://10.0.0.180/hdrv_zwave?action=getDevices.json

    Het is wat lastig om de juiste dev_nummers te vinden, maar met wat puzzelen moet het wel lukken (de nummers zijn helaas niet voor iedere Toon gelijk).

    Ook moet je nog even regel 20 en 21 un-commenten, en user variables aanmaken met dezelfde naam als in regel 20 en 21 staat.

    UV_P1SmartMeterElectra String Stroom
    UV_P1SmartMeterGasMeterStand String Gas

    Tot slot moet je nog een virtuele gas-sensor (naam: Gas) én een virtuele stroom-sensor (naam: Stroom) aanmaken.

    Testen

    Zodra alle dummy sensors, user variables en scripts goed zijn ingeladen kan er binnen de verschillende tabbladen in Domoticz informatie uitgelezen worden of instellingen ingesteld worden.

    Via het tabblad “Temperature” kan bij “ToonTemperature” de omgevingstemperatuur van de Toon worden uitgelezen. De sensor “ToonBoilerTempSetpoint” laat de temperatuur van de Boiler in de CVketel zien.

    Via het tabblad “Utility” kan bij “ToonThermostat” de temperatuur ingesteld worden welke daarna binnen enkele seconden doorgevoerd zou moeten worden in de Toon. De sensor “ToonProgramInformation” laat de ingestelde temperatuur zien. De sensor “ToonIP” laat het IP-adres van de Toon zien zoals eerder is ingesteld. De sensor Stroom en Gas laten het actuele verbruik zien en de meterstand.

    Via het tabblad “Switches” kan bij “ToonScenes” een scene ingesteld worden, bijvoorbeeld “Away” of “Sleep”.
    Ook kan er bij “ToonAutoProgram” ingesteld worden of het in de Toon ingestelde programma aan- of uitgezet moet worden. De sensor “ToonBranderInfo” laat zien of de CV-ketel gebruikt wordt voor CVverwarming(CV) of voor warm water (WW).

    De sensoren “ToonBoilerTempSetpoint” en “ToonBranderInfo” werken alleen als de Toon modulair is aangesloten op de CV-ketel.


  • Toon rooten via USB

    Bron: https://github.com/ToonSoftwareCollective/Root-A-Toon-USB-Stick Root een Toon 1 of Toon 2 met een USB-stick, niet met een Raspberry Pi (gebaseerd op de oplossing van Igor Ybema)



    Root-A-Toon-USB-stick

    Software voor het rooten van een (Nederlands/Belgische) Toon/Boxx met behulp van software die alleen vanaf een USB-stick draait.

    Na het rooten heb je geen abonnement meer nodig en heb je toegang tot een ToonStore met een groeiend aantal apps. Voor meer technische mensen is er een mogelijkheid om de Toon te ssh-en als ze dat willen met gebruikersnaam root en wachtwoord toon.

    Gebaseerd op Root-A-Toon van https://github.com/ToonSoftwareCollective/Root-A-Toon. En de mirror hier voor de zekerheid: https://colandino.nl/wp-content/uploads/2024/01/Root-A-Toon-USB-Stick-main.zip

    Ik heb de 2 scripts root-toon.sh en activatie-toon.sh aangepast zodat ze vanuit Kali draaien en vanaf een USB-stick kunnen worden opgestart.

    Net als bij de originele initiërende scripts, wordt het daadwerkelijk rooten gedaan door de zogenaamde ‘payload’-scripts die nog steeds worden onderhouden op https://github.com/ToonSoftwareCollective/Root-A-Toon.

    Ik heb het script setup_wifi.sh gemaakt om het delen van de bekabelde internetverbinding van je computer via Wi-Fi met je Toon te vereenvoudigen.

    Wat heb je nodig?
    Een geheugenstick van 4 GB en een Windows/Linux/macOS/OS X-computer (oude laptop) met een Ethernet-kaart en wifi.
    Details voor het maken van een USB-stick zijn beschikbaar op https://www.kali.org/docs/usb.

    Samenvatting voor het voorbereiden van een stick vanuit Windows (slechts 1 keer):

    Download een live iso van Kali Linux, dat is op dit moment waarschijnlijk http://old.kali.org/kali-images/kali-2021.4/kali-linux-2021.4-live-amd64.iso
    download rufus van https://rufus-portable.en.uptodown.com/windows of voor linux etcher https://etcher.balena.io/ welke ik zelf gebruik.
    USB-stick plaatsen
    begin Rufus
    zorg ervoor dat de juiste USB-stick is geselecteerd
    klik op SELECTEREN om naar de Kali ISO te bladeren die u hebt gedownload
    klik op Start en accepteer alle standaardantwoorden
    (in tegenstelling tot de Kali-site die voorstelt om dd te gebruiken en een extra partitie te maken)
    wacht tot iso is geschreven om te blijven hangen

    Toon rooten
    Om een Toon te rooten heb je de stick met Kali nodig die je eerder hebt gemaakt. Dus voor elke volgende keer dat je een Toon wilt rooten:

    • Start de pc of laptop die je wil gaan gebruiken om je toon te rooten op vanaf de kali usb stick
    • boot (opstarten) vanaf de Kali USB-stick (mogelijk moet u USB-opstarten in het BIOS inschakelen)
    • druk op enter in het blauwe Kali-opstartmenu
    • wacht op Kali met de menubalk bovenaan het scherm
    • in de linkerbovenhoek van Kali staat een zwart vakje met daarin een $-teken
    • klik daarop en in het venster voer je de volgende opdrachtregel in:

    git clone https://github.com/ToonSoftwareCollective/Root-A-Toon-USB-Stick.git
    cd Root-A-Toon-USB-Stick
    ./setup-wifi.sh

    • Lees en volg de instructies op het scherm
    • verbind uw Toon met de Wi-Fi genaamd ToonRouter
    • geen ToonRouter SSID?
    • Houd er rekening mee dat het enige tijd kan duren voordat de SSID verschijnt je kunt het ook op je telefoon testen natuurlijk. Ik moet de WiFi op mijn telefoon stoppen, 10-20 seconden wachten, zet het aan en wacht tot het verschijnt soms doe ik het in- en uitschakelen 3 keer voordat ik het zie ‘geduld is een schone zaak’ wanneer je erachter komt dat je Toon geactiveerd moet worden voordat je kunt rooten:

    Activeren

    Wanneer je erachter komt dat je Toon geactiveerd moet worden voordat je kunt rooten:

    Voer dan uit deze opdracht uit:
    ./activate-toon.sh lees en volg de instructies op het scherm, nu ben je klaar om je Toon te rooten:

    Rooten start je met: ./root-toon.sh lees en volg de instructies op het scherm.

    Proefdraaien met rooten

    Om een roottest te starten die de Toon nog niet wijzigt, kunt u de sudo bash root-toon.sh-test uitvoeren
    Dit genereert 2 berichten op uw Toon en start de GUI opnieuw op als de toegang succesvol is.

    Rooting uitvoeren
    Om de Toon toch te rooten, kun je sudo bash root-toon.sh root gebruiken
    Hiermee wordt de ‘payload’ gedownload zoals onderhouden op https://github.com/ToonSoftwareCollective/Root-A-Toon en wordt je Toon geroot met de nieuwste versie van deze scripts.

    Eigen payload verzenden
    Om je eigen script als ‘payload’ naar de Toon te sturen, kun je sudo bash root-toon.sh yourpayloadfile uitgeven
    Voor demodoeleinden heb ik een payload-bestand met de naam ‘check’ toegevoegd dat je kunt uitvoeren met sudo bash root-toon.sh check
    Dit genereert 4 berichten op het scherm van je Toon als de toegang succesvol is.

    Veel suc6
    Vragen of hulp nodig laat het weten


    Aansluiting TOON thermostaat op de Ferroli BlueCity 300 (stadsverwarming)

    (Ik ga deze zelf gebruiken op de stadsverwarming met unit/ketel [Ferroli BlueCity 300] welke voorheen werkte met de Essent E-Thermostaat – ICY) Hier de handleiding voor de Ferroli BlueCity 300

    Aansluiten TOON thermostaat op de Ferroli BlueCity 300 (stadsverwarming)

    De volgende stap is je Toon bedienen via Domoticz