¯\_(ツ)_/¯
Mocht je echt een tussenstekker willen hebben, hier een aantal zigbee tussenstekkers voor buiten, in de database van Z2M:
https://www.zigbee2mqtt.io/devices/4058075729322.html
https://www.zigbee2mqtt.io/devices/HG06619.html
https://www.zigbee2mqtt.io/devices/4099854293276.html
https://www.zigbee2mqtt.io/devices/AC26940_AC31266.html
https://www.zigbee2mqtt.io/devices/A4Z.html
https://www.zigbee2mqtt.io/devices/ZBPO130FWT.html
Je moet even zelf kijken of ze 16A aankunnen. De eerste heb ik voor je opgezocht en die is 16A: Ledvance compact outdoor plug EU.
Canon EOS 5Dm3 + 5D + 7D + 300D + 1000FN + EF 17-40 4L + EF 35 1.4L + EF 50 1.8 + EF 80-200 2.8L + 550EX
Die heb ik ook, werkt prima, maar die meet dan weer geen spanning/stroom.Gizz schreef op maandag 23 juni 2025 @ 09:49:
Je moet even zelf kijken of ze 16A aankunnen. De eerste heb ik voor je opgezocht en die is 16A: Ledvance compact outdoor plug EU.
Canon EOS 5Dm3 + 5D + 7D + 300D + 1000FN + EF 17-40 4L + EF 35 1.4L + EF 50 1.8 + EF 80-200 2.8L + 550EX
Edit: besteld :-)
Edit 2: binnen. Toegevoegd via de HUE bridge en in Domoticz een timer ingesteld. Ik heb de versie met stroommeting genomen, alleen zie ik dat nog niet terug.
[ Voor 40% gewijzigd door M.v.Veelen op 24-06-2025 14:07 ]
¯\_(ツ)_/¯
Dank, deze manier krijg je wel een melding. En die was dat ik geen OpenSSL 3 geïnstallleerd had. Ik nu de upgrade naar Debian 12 gedaan en nu werkt de update wel.M.v.Veelen schreef op zaterdag 7 juni 2025 @ 20:42:
Ik heb dit ook een keer gehad en sindsdien doe ik het via de CLI
cd domoticz
./updatebeta
Ik heb een script om elke maand mijn meterstanden uit te lezen en het script van mindergas.
Nu draaide deze nog op python2 en heb ze inmiddels omgezet naar python 3.
Echter als ik http://localhost:8080 gebruik krijg ik een error 401 unauthorized.
Ik heb mijn ip-adres van mijn netwerk toegevoegd aan trusten networks, maar blijft deze melding 401 houden.
script welke ik gebruik is het volgende:
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
| #import sys import json import urllib.request, urllib.parse, urllib.error #import re #import time #import datetime class Domoticz(): def __init__(self, url): self.baseurl = url def __execute__(self, url): req = urllib.request.Request(url) return urllib.request.urlopen(req, timeout=5) def get_device(self, xid): """ Get the Domoticz device information. """ url = "%s/json.htm?type=devices&rid=%s" % (self.baseurl, xid) data = json.load(self.__execute__(url)) return data def get_el_values(url, device_id): """ Get electricity meter readings. """ device_data = Domoticz(url).get_device(device_id) data = device_data['result'][0]['Data'] ex = re.compile('^([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+)$') groups = ex.match(data).group meter_high = float(groups(1)) / 1000 meter_low = float(groups(2)) / 1000 out_high = float(groups(3)) / 1000 out_low = float(groups(4)) / 1000 actual_in = float(groups(5)) / 1000 actual_out = float(groups(6)) / 1000 return meter_high, meter_low, out_high, out_low, actual_in, actual_out def get_gas_values(url, device_id): """ Get gasmeter reading. """ device_data = Domoticz(url).get_device(device_id) data = device_data['result'][0]['Data'] ex = re.compile('^([0-9\.]+)$') groups = ex.match(data).group gasstand = float(groups(1)) #/ 1000 return gasstand # example usage domoticzurl = "http://localhost:8080" domoticzdeviceid_el = 1 domoticzdeviceid_gas = 2 ElectricityRateUsedPeak, ElectricityRateUsedOffPeak, ElectricityRateGeneratedPeak, ElectricityRateGeneratedOffPeak, ElectricityTotalUsed, ElectricityCurrentRateOut = get_el_values(domoticzurl, domoticzdeviceid_el) #ElectricityRateUsedOffPeak, ElectricityRateUsedPeak, ElectricityRateGeneratedPeak = get_el_values(domoticzurl, domoticzdeviceid_el) GasMeterReading = get_gas_values(domoticzurl, domoticzdeviceid_gas) |
[ Voor 66% gewijzigd door MdO82 op 30-06-2025 18:52 ]
2250 WP Zuid PVoutput
[ Voor 73% gewijzigd door WillemD61 op 30-06-2025 21:25 ]
Getest en krijg dan weer een 404 foutmeldingWillemD61 schreef op maandag 30 juni 2025 @ 21:24:
En als je echt het ip adres van de domoticz server gebruikt?
2250 WP Zuid PVoutput
Als ik het zo lees is dit een Python vraagstuk en niet een Dz vraagstuk.MdO82 schreef op maandag 30 juni 2025 @ 18:50:
Ik had mijn post geplaatst in Raspberry Pi: Ervaringen en Discussie - deel 2 omdat ik in eerste instantie vermoedde dat het probleem op een andere plek zat.
Ik heb een script om elke maand mijn meterstanden uit te lezen en het script van mindergas.
Nu draaide deze nog op python2 en heb ze inmiddels omgezet naar python 3.
Echter als ik http://localhost:8080 gebruik krijg ik een error 401 unauthorized.
Ik heb mijn ip-adres van mijn netwerk toegevoegd aan trusten networks, maar blijft deze melding 401 houden.
script welke ik gebruik is het volgende:
Python:
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 #import sys import json import urllib.request, urllib.parse, urllib.error #import re #import time #import datetime class Domoticz(): def __init__(self, url): self.baseurl = url def __execute__(self, url): req = urllib.request.Request(url) return urllib.request.urlopen(req, timeout=5) def get_device(self, xid): """ Get the Domoticz device information. """ url = "%s/json.htm?type=devices&rid=%s" % (self.baseurl, xid) data = json.load(self.__execute__(url)) return data def get_el_values(url, device_id): """ Get electricity meter readings. """ device_data = Domoticz(url).get_device(device_id) data = device_data['result'][0]['Data'] ex = re.compile('^([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+);([0-9\.]+)$') groups = ex.match(data).group meter_high = float(groups(1)) / 1000 meter_low = float(groups(2)) / 1000 out_high = float(groups(3)) / 1000 out_low = float(groups(4)) / 1000 actual_in = float(groups(5)) / 1000 actual_out = float(groups(6)) / 1000 return meter_high, meter_low, out_high, out_low, actual_in, actual_out def get_gas_values(url, device_id): """ Get gasmeter reading. """ device_data = Domoticz(url).get_device(device_id) data = device_data['result'][0]['Data'] ex = re.compile('^([0-9\.]+)$') groups = ex.match(data).group gasstand = float(groups(1)) #/ 1000 return gasstand # example usage domoticzurl = "http://localhost:8080" domoticzdeviceid_el = 1 domoticzdeviceid_gas = 2 ElectricityRateUsedPeak, ElectricityRateUsedOffPeak, ElectricityRateGeneratedPeak, ElectricityRateGeneratedOffPeak, ElectricityTotalUsed, ElectricityCurrentRateOut = get_el_values(domoticzurl, domoticzdeviceid_el) #ElectricityRateUsedOffPeak, ElectricityRateUsedPeak, ElectricityRateGeneratedPeak = get_el_values(domoticzurl, domoticzdeviceid_el) GasMeterReading = get_gas_values(domoticzurl, domoticzdeviceid_gas)
Klopt mijn verondersteling?
Je kan wellicht gelijk hebben.Lawrentz schreef op dinsdag 1 juli 2025 @ 08:02:
[...]
Als ik het zo lees is dit een Python vraagstuk en niet een Dz vraagstuk.
Klopt mijn verondersteling?
Maar omdat ik schijnbaar geen toegang krijg zocht ik het binnen Dz.
Euvel is ontstaan sinds 1 juni, maar kan er geen duidelijkheid in krijgen waarom dit nu ineens speelt.
Ik veronderstel dat er een instelling/autorisaties niet klopt binnen Dz, maar kan er natuurlijk totaal naast zitten
2250 WP Zuid PVoutput
1
2
3
4
5
6
7
| def get_device(self, xid):
"""
Get the Domoticz device information.
"""
url = "%s/json.htm?type=devices&rid=%s" % (self.baseurl, xid)
data = json.load(self.__execute__(url))
return data |
type=devices?
Weet natuurlijk niet welke versie je draait.Warning Stable 2023.2 (and newer)
For users using API calls from outside Domoticz there has been some changes in API calls. They now always should be of the form /json.htm?type=command¶m=**command**
For example
/json.htm?type=graph will be /json.htm?type=command¶m=graph
/json.htm?type=devices will be /json.htm?type=command¶m=getdevices
More info in Forum topic https://forum.domoticz.com/viewtopic.php?p=303581#p303581
The following old RType commands will keep working but will give a deprecation warning eg
[WebServer] Deprecated RType (devices) for API request. Handled via fallback (getdevices), please use correct API Command! (IP nnn.nnn.nnn.nnn)
http://localhost:8080/json.htm?type=command¶m=getdevices&rid=%s
en niet
http://localhost:8080/json.htm?type=devices&rid=%s
en je moet ook "import re" weer actief maken.
Ik denk dat je naast een Python upgrade ook een Domoticz upgrade hebt gedaan. Daarom moet je nu die nieuwe url gebruiken.
[ Voor 37% gewijzigd door WillemD61 op 01-07-2025 11:01 ]
Probeer het Python script eens buiten Dz om.MdO82 schreef op dinsdag 1 juli 2025 @ 09:41:
[...]
Je kan wellicht gelijk hebben.
Maar omdat ik schijnbaar geen toegang krijg zocht ik het binnen Dz.
Euvel is ontstaan sinds 1 juni, maar kan er geen duidelijkheid in krijgen waarom dit nu ineens speelt.
Ik veronderstel dat er een instelling/autorisaties niet klopt binnen Dz, maar kan er natuurlijk totaal naast zitten
Wellicht dat je nadere inzichten krijgt.
Inderdaad, als je gewoon de url naar je browser kopieert kom je tot de conclusie dat je de url moet aanpassen zoals hierboven aangegeven. (met %s vervangen door de device id van je device, b.v. 1)Lawrentz schreef op dinsdag 1 juli 2025 @ 11:42:
[...]
Probeer het Python script eens buiten Dz om.
Wellicht dat je nadere inzichten krijgt.
[ Voor 7% gewijzigd door WillemD61 op 01-07-2025 12:40 ]
[ Voor 85% gewijzigd door lnrdnl op 01-07-2025 13:05 . Reden: foutje ]
Ik had inderdaad een upgrade gedaan, maar het blijkt maar weer dat ik niet alles goed gelezen heb blijkbaarWillemD61 schreef op dinsdag 1 juli 2025 @ 10:48:
De url moet zijn
http://localhost:8080/json.htm?type=command¶m=getdevices&rid=%s
en niet
http://localhost:8080/json.htm?type=devices&rid=%s
en je moet ook "import re" weer actief maken.
Ik denk dat je naast een Python upgrade ook een Domoticz upgrade hebt gedaan. Daarom moet je nu die nieuwe url gebruiken.
En dan ga je zoveel kloten dat je er niet meer uitkomt.
Maar het aanpassen van de url is inderdaad de oplossing en krijg nu weer netjes de standen binnen.
Bedankt
2250 WP Zuid PVoutput
Iemand ervaringen met een water computer?
Als je zigbee2mqtt gebruikt zou ik ook daar de compabiliteit checken.
Wat zegt de site van Sonoff?
Ik gebruik Deconz (met een Combee 2 stick)janne_nl schreef op maandag 14 juli 2025 @ 16:06:
Als ik het zo lees, kun je afhankelijk van de bridge ook de capaciteit instellen.
Als je zigbee2mqtt gebruikt zou ik ook daar de compabiliteit checken.
Daar kom ik persoonlijk niet zo heel veel wijs uit.Wat zegt de site van Sonoff?
Ik heb op m’n dakterras (minder waterdruk) een 4-tal groepen aangelegd die ik apart kan schakelen. Aansturing gebeurt met zwave relais en de kleppen zijn van het wat professionelere raintech. Er is in de loop van de jaren van alles niet goed gegaan met de irrigatie, maar de relais en kleppen hebben me nooit in de steek gelaten.rens-br schreef op maandag 14 juli 2025 @ 15:35:
Momenteel zijn we bezig met het aanleggen van onze voor en achtertuin en voor zowel achter als voor ben ik op zoek naar een regencomputer die werkt met Domoticz / Home Assistant, met lichte voorkeur voor Zigbee aansturing. Ik kwam de Sonoff Zigbee Smart Water Valve al tegen, voor ongeveer 30 euro. Ben eigenlijk wel benieuwd hoe deze werkt, via Zigbee kan je immers wenig instellen denk ik zo.
Iemand ervaringen met een water computer?
Ook kun je met verschillende groepen verschillende soorten irrigatie dingen aansturen. Potten hebben doorgaans een andere behoefte dan grotere bakken / borders of bijv een grasveld. Ga je voor onesize fits all, dan krijgt de een te weinig of de ander teveel.
Edit: toevoeging verschillende soorten irrigatie
[ Voor 14% gewijzigd door Vollervo op 14-07-2025 19:00 ]
Domoticz Software is op dit moment de 2025.1.
Draait op een RPI4 met externe SSD.
Het SEMS portal heb ik nu weer gedeactiveerd en Domoticz heeft inmiddels weer een uptime van 14 dagen.
Ik heb ook een GoodWe omvormer en hier werkt het gewoon en welke integratie gebruik jij? Ik gebruik de standaard ingebouwde GoodWe solar inverter via sems portal api.Racer89 schreef op zondag 27 juli 2025 @ 10:15:
Toevallig nog iemand die het SEMS portal gekoppeld heeft aan Domoticz? Ik heb dit laatst nog eens geactiveerd echter loopt Domoticz binnen nog geen 24 uur weer vast en gaat deze offline. Alleen na een service restart via SSH komt deze weer terug.
Domoticz Software is op dit moment de 2025.1.
Draait op een RPI4 met externe SSD.
Het SEMS portal heb ik nu weer gedeactiveerd en Domoticz heeft inmiddels weer een uptime van 14 dagen.
Ja, die gebruik ik dus ook en werkt hier perfect. Vreemd dat hij bij jou zorgt voor crashes. Ik draai overigens nog wel versie 2024.7, had jij met die versie ook problemen?Racer89 schreef op zondag 27 juli 2025 @ 14:18:
@rens-br Idd gewoon de standaard plugin wat in Domoticz zit. Onder het Hardware tab.
Ja, ik had gehoopt dat het wellicht was opgelost met deze nieuwe update. Het crasht ook gewoon uit het niks. Als ik deze nu actief zet in de Hardware tab komen de gegevens ook direct binnen. Het is mij ook onduidelijk waarom deze vastloopt. Gemiddeld is het meestal binnen 24 uur dat hij vast loopt.rens-br schreef op zondag 27 juli 2025 @ 15:13:
[...]
Ja, die gebruik ik dus ook en werkt hier perfect. Vreemd dat hij bij jou zorgt voor crashes. Ik draai overigens nog wel versie 2024.7, had jij met die versie ook problemen?
Ik weet niet of het ermee te maken heeft dat ik 4 omvormers in het portal heb gekoppeld onder één account.
Ik heb maar één omvormer., dus het zou mogelijk daaraan kunnen liggen. Ik draai verder Domoticz in docker en niet native.Racer89 schreef op zondag 27 juli 2025 @ 20:25:
[...]
Ja, ik had gehoopt dat het wellicht was opgelost met deze nieuwe update. Het crasht ook gewoon uit het niks. Als ik deze nu actief zet in de Hardware tab komen de gegevens ook direct binnen. Het is mij ook onduidelijk waarom deze vastloopt. Gemiddeld is het meestal binnen 24 uur dat hij vast loopt.
Ik weet niet of het ermee te maken heeft dat ik 4 omvormers in het portal heb gekoppeld onder één account.
Heb je am gekeken in her domoticz forum of er meer mensen zijn met dit probleem?
Ik heb:rens-br schreef op maandag 14 juli 2025 @ 15:35:
Momenteel zijn we bezig met het aanleggen van onze voor en achtertuin en voor zowel achter als voor ben ik op zoek naar een regencomputer die werkt met Domoticz / Home Assistant, met lichte voorkeur voor Zigbee aansturing. Ik kwam de Sonoff Zigbee Smart Water Valve al tegen, voor ongeveer 30 euro. Ben eigenlijk wel benieuwd hoe deze werkt, via Zigbee kan je immers wenig instellen denk ik zo.
Iemand ervaringen met een water computer?
https://www.zigbee2mqtt.i...231392.html#tuya-zn231392
en
https://www.zigbee2mqtt.io/devices/R7060.html#woox-r7060
De laatste krijgt niet altijd een signaal, dus de automatisering stuurt 2x een signaal. ;-)
https://www.fam-oldenburger.nl/category/domotica/
Ben sowieso aan het kijken hoe ik verder wil met Domoticz. Heb nu e.e.a. via MQTT en Shelly gekoppeld. Aan de RPI hangen 2x 8 kanaal relais bordje. Alleen merk ik nu dat sommige relais defect beginnen te raken. Eentje werkt al helemaal niet meer en twee hoor ik wel klikken maar maken 9 van de 10 keer geen contact.
Ik heb nooit grote vermogens met de relais geschakeld omdat ik er nog 230 volt relais achter heb hangen die het daadwerkelijke vermogen schakelen.
Wellicht ook eens een compleet frisse installatie van Domoticz starten. Wellicht dat het SEMS portal probleem dan ook is verholpen.
Dankje! Ik heb inmiddels de Sonoff valves binnen en die werken prima. Ik krijg een schakelaar om hem aan / uit te zetten. En heb een alarm type die aangeeft of er daadwerkelijk water stroomt.BazemanKM schreef op dinsdag 29 juli 2025 @ 12:50:
[...]
Ik heb:
https://www.zigbee2mqtt.i...231392.html#tuya-zn231392
en
https://www.zigbee2mqtt.io/devices/R7060.html#woox-r7060
De laatste krijgt niet altijd een signaal, dus de automatisering stuurt 2x een signaal. ;-)
Helaas kan ik geen debiet instellen of uitlezen, volgens mij zou dat met de officiële sonoff bridge wel moeten kunnen.
[ Voor 5% gewijzigd door rens-br op 29-07-2025 14:41 ]
Hier ook issues met de laatste versie van Domoticz en de GOODWE Sems portal api plug-in:rens-br schreef op zondag 27 juli 2025 @ 21:47:
[...]
Ik heb maar één omvormer., dus het zou mogelijk daaraan kunnen liggen. Ik draai verder Domoticz in docker en niet native.
Heb je am gekeken in her domoticz forum of er meer mensen zijn met dit probleem?
1
| GoodWeSEMS) failed to load 'plugin.py', Python Path used was '/opt/domoticz/userdata/plugins/domoticz-GoodWeSEMS/:/usr/lib/python311.zip:/usr/lib/python3.11:/usr/lib/python3.11/lib-dynload:/usr/local/lib/python3.11/dist-packages:/usr/lib/python3/dist-packages:/usr/lib/python3.11/dist-packages'. |
Ik draai het in Docker op een Synology. Ik heb zelfs nog tegen beter weten in de python 3.11 package van de syno community geïnstalleerd maar dat helpt natuurlijk niet voor in een docker container.
Op deze pagina https://www.gearbest.ma/p...ht-illumination-detector/Vollervo schreef op zaterdag 2 augustus 2025 @ 18:01:
Iemand betere ervaringen met de lichtsensor hieronder? Het enige teken van leven geeft ie als ik op het reset knopje druk. Ik probeer te koppelen met zigbee2mqtt, maar die geeft ook geen melding van een nieuw of onbekend device. Dat heb ik tot nu toe nog nooit gehad. Of is normaal voor onbekende devices dat die niet worden opgenomen in het netwerk?
[Afbeelding]
zie ik specifiek staan dat z2mqtt en homeassistant niet worden ondersteund.
Ook onder de qrcode op je foto staat dat de tuya gateway nodig is.
Op die site staat het er inderdaad luid en duidelijk bij. Op de site waar ik hem gekocht heb stond het nietLizard schreef op zaterdag 2 augustus 2025 @ 22:30:
[...]
Op deze pagina https://www.gearbest.ma/p...ht-illumination-detector/
zie ik specifiek staan dat z2mqtt en homeassistant niet worden ondersteund.
Ook onder de qrcode op je foto staat dat de tuya gateway nodig is.
Iemand nog een tip voor een vergelijkbaar iets dat alleen licht meet en wel compatible is? Ik neem aan dat al die multi sensoren meer batterij verbruiken dan een single sensor, of valt dat wel mee?
Het doel is vaststellen of de zon schijnt op een bepaalde gevel van het huis.
[ Voor 4% gewijzigd door Vollervo op 03-08-2025 19:40 . Reden: doel toegevoegd ]
Met dank aan het uitzoek werk van @bommel (https://github.com/rweijnen).
Hierbij een Domoticz plug-in voor de Marstek CT003:
https://github.com/Haaibaai/Domoticz-Marstek.
Omdat het om een gevel gaat:Vollervo schreef op zondag 3 augustus 2025 @ 19:18:
[...]
Op die site staat het er inderdaad luid en duidelijk bij. Op de site waar ik hem gekocht heb stond het niet
Iemand nog een tip voor een vergelijkbaar iets dat alleen licht meet en wel compatible is? Ik neem aan dat al die multi sensoren meer batterij verbruiken dan een single sensor, of valt dat wel mee?
Het doel is vaststellen of de zon schijnt op een bepaalde gevel van het huis.
Heb je ook gedacht aan de Sun Power van Buienradar?
Buienradar gebruik ik om mijn zonwering en verlichting te schakelen.
Je kan ook denken aan een DIY lichtsensor met Arduino.
Voor kant en klare lichtsensoren zijn meerdere opties te vinden.
Hiervoor is google je grootste vriend.
Gewenste functionaliteit:
Apart script dat periodiek de rolluikstand bijwerkt in Domoticz, zonder bedieningsfunctionaliteit.
Hardware/software:
Domoticz 2024.7 (dzVents 3.1.8)
Shelly 2PM
Als ik status ophaal via URL (http://xx.xx.xx.xx/rpc/Cover.GetStatus?id=0
krijg ik de volgende uitkomst:
1
| {"id":0, "source":"limit_switch", "state":"open","apower":0.0,"voltage":230.8,"current":0.000,"pf":0.00,"freq":50.0,"aenergy":{"total":53.187,"by_minute":[0.000,0.000,0.000],"minute_ts":1754290440},"temperature":{"tC":36.9, "tF":98.4},"pos_control":true,"last_direction":"open","current_pos":75} |
Echter ik krijg op geen mogelijkheid de huidige (acutele) status zichtbaar in Domoticz. Ik kan de Shelly 2PM wel gewoon bedienen via Domoticz. Huidige script (alleen bediening rolluik)
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
| -- Shelly 2PM Rolluikbediening
return {
on = {
devices = {335}, -- Rolluik device IDX
timer = {'every 15 seconds'}, -- Optimaler interval
httpResponses = {'shelly_response'},
customEvents = {'force_status_update'}
},
execute = function(domoticz, item)
-- ============== INSTELLINGEN ==============
local SHELLY_IP = "xx.xx.xx.xx"
local ROLLUIK_IDX = 335
-- ==========================================
local rolluik = domoticz.devices(ROLLUIK_IDX)
if not rolluik then
domoticz.log("FOUT: Rolluik device niet gevonden!", domoticz.LOG_ERROR)
return
end
-- Verbeterde HTTP Request Handler
local function sendToShelly(cmd)
local url = 'http://'..SHELLY_IP..'/rpc/'..cmd
domoticz.log("Verzonden naar Shelly: "..url, domoticz.LOG_DEBUG)
domoticz.openURL({
url = url,
method = 'GET',
callback = 'shelly_response',
-- Toegevoegde timeout voor betrouwbaarheid
timeout = 5000
})
end
-- 1. DIRECTE STATUSUPDATE BIJ HANDMATIGE BEDIENING
if item.isCustomEvent then
domoticz.log("Handmatige bediening gedetecteerd - directe statusupdate", domoticz.LOG_INFO)
sendToShelly("Cover.GetStatus?id=0")
return
end
-- 2. DOMOTICZ BEDIENING
if item.isDevice then
local target_pos = rolluik.level
domoticz.log("Domoticz bediening: "..target_pos.."%", domoticz.LOG_INFO)
if target_pos == 0 then
sendToShelly("Cover.Close?id=0")
elseif target_pos == 100 then
sendToShelly("Cover.Open?id=0")
else
sendToShelly("Cover.GoToPosition?id=0&pos="..target_pos)
end
-- Voeg een extra statuscheck toe na 2 seconden
domoticz.emitEvent('force_status_update').afterSec(2)
return
end
-- 3. STATUS VERWERKING
if item.isHTTPResponse then
if item.ok then
local success, data = pcall(domoticz.utils.fromJSON, item.data)
if success and data and data['cover:0'] then
local new_pos = data['cover:0'].current_pos
if new_pos ~= rolluik.level then
rolluik.updatePercentage(new_pos)
domoticz.log("STATUS BIJGEWERKT: "..new_pos.."%", domoticz.LOG_INFO)
end
else
domoticz.log("Ongeldige Shelly response: "..(item.data or "geen data"), domoticz.LOG_ERROR)
end
else
domoticz.log("HTTP Fout: "..item.statusCode, domoticz.LOG_ERROR)
end
end
-- 4. PERIODIEKE SYNCHRONISATIE (backup)
if item.isTimer then
sendToShelly("Cover.GetStatus?id=0")
end
end
} |
Nu heb ik geprobeerd een 2e script te maken die de status/current pos ophaalt maar dit werkt niet. Wie kan mij verder op weg helpen?
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
| -- Shelly 2PM Status Updater (dzVents)
return {
active = true,
on = {
timer = { 'every 30 seconds' }, -- Aanpassen naar wens
httpResponses = { 'shelly_status_update' } -- Unieke callback
},
execute = function(domoticz, item)
-- ============== CONFIGURATIE ==============
local ROLLUIKEN = {
{ idx = 335, ip = 'xx.xx.xx.xx', name = "Badkamer" },
{ idx = 330, ip = 'xx.xx.xx.xx', name = "Slaapkamer" },
}
-- ==========================================
-- 1. Timer: Start statusupdate
if item.isTimer then
for _, roller in ipairs(ROLLUIKEN) do
domoticz.openURL({
url = 'http://'..roller.ip..'/rpc/Cover.GetStatus?id=0',
method = 'GET',
callback = 'shelly_status_update', -- Unieke callback
_data = { idx = roller.idx, name = roller.name }
})
domoticz.log("Status opvragen: "..roller.name, domoticz.LOG_DEBUG)
end
return
end
-- 2. Verwerk HTTP response
if item.isHTTPResponse then
local idx = item._data.idx
local name = item._data.name or "Rolluik "..idx
local device = domoticz.devices(idx)
if not device then
domoticz.log("Device niet gevonden: "..name, domoticz.LOG_ERROR)
return
end
-- Debug: Log ruwe response
domoticz.log("Response "..name..": "..(item.data or "geen data"), domoticz.LOG_DEBUG)
if item.ok and item.data then
-- Methode 1: Directe string matching (meest betrouwbaar)
local current_pos = item.data:match('"current_pos":(%d+)')
-- Methode 2: JSON parsing fallback
if not current_pos then
local success, data = pcall(domoticz.utils.fromJSON, item.data)
if success then current_pos = data.current_pos end
end
if current_pos then
local newPos = tonumber(current_pos)
if device.level ~= newPos then
device.updatePercentage(newPos)
domoticz.log(name..": "..newPos.."%", domoticz.LOG_INFO)
end
else
domoticz.log("Geen geldige positie in response van "..name, domoticz.LOG_ERROR)
end
else
local errorMsg = item.statusText or item.statusCode or "Geen verbinding"
domoticz.log("Fout bij "..name..": "..errorMsg, domoticz.LOG_ERROR)
end
end
end
} |
Ik krijg in logboek ook geen foutmelding of iets... maar status wordt ook niet upgeupdate.
Ik heb bewust even een 2e script aangemaakt om te kijken of ik het probleem kan achterhalen. MAar als obv 1e (werkende) script natuurlijk e.e.a samengevoegd kan worden tot 1 script heeft dat natuurlijk voorkeur.
Probleem bij script 1 is dat als ik via Domoticz de rolluik bedien, dat alles gewoon werkt en actuele status wordt getoond maar als ik handmatig (via knop) dan wordt de status niet geupdate in Domoticz. Hierdoor kan het dus lijken dat rolluik dicht is in Domoticz, terwijl deze met de hand geopend is (en andersom).
[ Voor 3% gewijzigd door freestyler2 op 04-08-2025 12:24 ]
Tenzij je naam Google is hou op met te doen alsof je alles weet.
Shelly rpc is een lastige heb ik ervaren.freestyler2 schreef op maandag 4 augustus 2025 @ 12:19:
Mijn dzVents script voor statusupdates (alleen current_pos uitlezen) werkt niet. Handmatige API calls naar http://[IP]/rpc/Cover.GetStatus?id=0 geven wel correcte JSON (voorbeeld hieronder), maar het script lijkt niet te triggeren.
Gewenste functionaliteit:
Apart script dat periodiek de rolluikstand bijwerkt in Domoticz, zonder bedieningsfunctionaliteit.
Hardware/software:
Domoticz 2024.7 (dzVents 3.1.8)
Shelly 2PM
Als ik status ophaal via URL (http://xx.xx.xx.xx/rpc/Cover.GetStatus?id=0
krijg ik de volgende uitkomst:
code:
1{"id":0, "source":"limit_switch", "state":"open","apower":0.0,"voltage":230.8,"current":0.000,"pf":0.00,"freq":50.0,"aenergy":{"total":53.187,"by_minute":[0.000,0.000,0.000],"minute_ts":1754290440},"temperature":{"tC":36.9, "tF":98.4},"pos_control":true,"last_direction":"open","current_pos":75}
Echter ik krijg op geen mogelijkheid de huidige (acutele) status zichtbaar in Domoticz. Ik kan de Shelly 2PM wel gewoon bedienen via Domoticz. Huidige script (alleen bediening rolluik)
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-- Shelly 2PM Rolluikbediening return { on = { devices = {335}, -- Rolluik device IDX timer = {'every 15 seconds'}, -- Optimaler interval httpResponses = {'shelly_response'}, customEvents = {'force_status_update'} }, execute = function(domoticz, item) -- ============== INSTELLINGEN ============== local SHELLY_IP = "xx.xx.xx.xx" local ROLLUIK_IDX = 335 -- ========================================== local rolluik = domoticz.devices(ROLLUIK_IDX) if not rolluik then domoticz.log("FOUT: Rolluik device niet gevonden!", domoticz.LOG_ERROR) return end -- Verbeterde HTTP Request Handler local function sendToShelly(cmd) local url = 'http://'..SHELLY_IP..'/rpc/'..cmd domoticz.log("Verzonden naar Shelly: "..url, domoticz.LOG_DEBUG) domoticz.openURL({ url = url, method = 'GET', callback = 'shelly_response', -- Toegevoegde timeout voor betrouwbaarheid timeout = 5000 }) end -- 1. DIRECTE STATUSUPDATE BIJ HANDMATIGE BEDIENING if item.isCustomEvent then domoticz.log("Handmatige bediening gedetecteerd - directe statusupdate", domoticz.LOG_INFO) sendToShelly("Cover.GetStatus?id=0") return end -- 2. DOMOTICZ BEDIENING if item.isDevice then local target_pos = rolluik.level domoticz.log("Domoticz bediening: "..target_pos.."%", domoticz.LOG_INFO) if target_pos == 0 then sendToShelly("Cover.Close?id=0") elseif target_pos == 100 then sendToShelly("Cover.Open?id=0") else sendToShelly("Cover.GoToPosition?id=0&pos="..target_pos) end -- Voeg een extra statuscheck toe na 2 seconden domoticz.emitEvent('force_status_update').afterSec(2) return end -- 3. STATUS VERWERKING if item.isHTTPResponse then if item.ok then local success, data = pcall(domoticz.utils.fromJSON, item.data) if success and data and data['cover:0'] then local new_pos = data['cover:0'].current_pos if new_pos ~= rolluik.level then rolluik.updatePercentage(new_pos) domoticz.log("STATUS BIJGEWERKT: "..new_pos.."%", domoticz.LOG_INFO) end else domoticz.log("Ongeldige Shelly response: "..(item.data or "geen data"), domoticz.LOG_ERROR) end else domoticz.log("HTTP Fout: "..item.statusCode, domoticz.LOG_ERROR) end end -- 4. PERIODIEKE SYNCHRONISATIE (backup) if item.isTimer then sendToShelly("Cover.GetStatus?id=0") end end }
Nu heb ik geprobeerd een 2e script te maken die de status/current pos ophaalt maar dit werkt niet. Wie kan mij verder op weg helpen?
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-- Shelly 2PM Status Updater (dzVents) return { active = true, on = { timer = { 'every 30 seconds' }, -- Aanpassen naar wens httpResponses = { 'shelly_status_update' } -- Unieke callback }, execute = function(domoticz, item) -- ============== CONFIGURATIE ============== local ROLLUIKEN = { { idx = 335, ip = 'xx.xx.xx.xx', name = "Badkamer" }, { idx = 330, ip = 'xx.xx.xx.xx', name = "Slaapkamer" }, } -- ========================================== -- 1. Timer: Start statusupdate if item.isTimer then for _, roller in ipairs(ROLLUIKEN) do domoticz.openURL({ url = 'http://'..roller.ip..'/rpc/Cover.GetStatus?id=0', method = 'GET', callback = 'shelly_status_update', -- Unieke callback _data = { idx = roller.idx, name = roller.name } }) domoticz.log("Status opvragen: "..roller.name, domoticz.LOG_DEBUG) end return end -- 2. Verwerk HTTP response if item.isHTTPResponse then local idx = item._data.idx local name = item._data.name or "Rolluik "..idx local device = domoticz.devices(idx) if not device then domoticz.log("Device niet gevonden: "..name, domoticz.LOG_ERROR) return end -- Debug: Log ruwe response domoticz.log("Response "..name..": "..(item.data or "geen data"), domoticz.LOG_DEBUG) if item.ok and item.data then -- Methode 1: Directe string matching (meest betrouwbaar) local current_pos = item.data:match('"current_pos":(%d+)') -- Methode 2: JSON parsing fallback if not current_pos then local success, data = pcall(domoticz.utils.fromJSON, item.data) if success then current_pos = data.current_pos end end if current_pos then local newPos = tonumber(current_pos) if device.level ~= newPos then device.updatePercentage(newPos) domoticz.log(name..": "..newPos.."%", domoticz.LOG_INFO) end else domoticz.log("Geen geldige positie in response van "..name, domoticz.LOG_ERROR) end else local errorMsg = item.statusText or item.statusCode or "Geen verbinding" domoticz.log("Fout bij "..name..": "..errorMsg, domoticz.LOG_ERROR) end end end }
Ik krijg in logboek ook geen foutmelding of iets... maar status wordt ook niet upgeupdate.
Ik heb bewust even een 2e script aangemaakt om te kijken of ik het probleem kan achterhalen. MAar als obv 1e (werkende) script natuurlijk e.e.a samengevoegd kan worden tot 1 script heeft dat natuurlijk voorkeur.
Probleem bij script 1 is dat als ik via Domoticz de rolluik bedien, dat alles gewoon werkt en actuele status wordt getoond maar als ik handmatig (via knop) dan wordt de status niet geupdate in Domoticz. Hierdoor kan het dus lijken dat rolluik dicht is in Domoticz, terwijl deze met de hand geopend is (en andersom).
Er zijn, wat ik me kan herinneren, verschillende voorwaarden wanneer een specifiek rpc-endpoint al dan niet actief is.
Het eerst uitproberen vanaf de CLI heeft altijd de voorkeur.
Wat ik in altijd in dzvents doe.
- Het bovenaan plaatsen van alle locale variabelen. Dit houdt de code compact en leesbaar.
- Het splitsen van de triggers en responses in aparte LUA-scripts. Ook hier, dit houdt de code compact en leesbaar. Het voordeel is dat je in je logging ziet welk script actief is geweest, bijvoorbeeld eerst je trigger en daarna de response. Als je trigger werkt maar je response niet dan heb je een idee waar je het moet zoeken.
- Om te kijken of the if-then-elsjes werken kan je na elke then een tijdelijke logregel plaatsen. En de logregels bij voorkeur met nuttige info zoals de inhoud van variabelen. Zo kan je zien of je in een specifieke tak van je code belandt of niet en met welke variabele. Omdat je ook for-do gebruikt kan je de logregels hier ook toepassen.
Ik hoop dat ik je wat meer op gang help met deze ideeën.
Er vallen me een paar dingen op aan je scripts.freestyler2 schreef op maandag 4 augustus 2025 @ 12:19:
Mijn dzVents script voor statusupdates (alleen current_pos uitlezen) werkt niet. Handmatige API calls naar http://[IP]/rpc/Cover.GetStatus?id=0 geven wel correcte JSON (voorbeeld hieronder), maar het script lijkt niet te triggeren.
Gewenste functionaliteit:
Apart script dat periodiek de rolluikstand bijwerkt in Domoticz, zonder bedieningsfunctionaliteit.
Hardware/software:
Domoticz 2024.7 (dzVents 3.1.8)
Shelly 2PM
Als ik status ophaal via URL (http://xx.xx.xx.xx/rpc/Cover.GetStatus?id=0
krijg ik de volgende uitkomst:
code:
1{"id":0, "source":"limit_switch", "state":"open","apower":0.0,"voltage":230.8,"current":0.000,"pf":0.00,"freq":50.0,"aenergy":{"total":53.187,"by_minute":[0.000,0.000,0.000],"minute_ts":1754290440},"temperature":{"tC":36.9, "tF":98.4},"pos_control":true,"last_direction":"open","current_pos":75}
Echter ik krijg op geen mogelijkheid de huidige (acutele) status zichtbaar in Domoticz. Ik kan de Shelly 2PM wel gewoon bedienen via Domoticz. Huidige script (alleen bediening rolluik)
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-- Shelly 2PM Rolluikbediening return { on = { devices = {335}, -- Rolluik device IDX timer = {'every 15 seconds'}, -- Optimaler interval httpResponses = {'shelly_response'}, customEvents = {'force_status_update'} }, execute = function(domoticz, item) -- ============== INSTELLINGEN ============== local SHELLY_IP = "xx.xx.xx.xx" local ROLLUIK_IDX = 335 -- ========================================== local rolluik = domoticz.devices(ROLLUIK_IDX) if not rolluik then domoticz.log("FOUT: Rolluik device niet gevonden!", domoticz.LOG_ERROR) return end -- Verbeterde HTTP Request Handler local function sendToShelly(cmd) local url = 'http://'..SHELLY_IP..'/rpc/'..cmd domoticz.log("Verzonden naar Shelly: "..url, domoticz.LOG_DEBUG) domoticz.openURL({ url = url, method = 'GET', callback = 'shelly_response', -- Toegevoegde timeout voor betrouwbaarheid timeout = 5000 }) end -- 1. DIRECTE STATUSUPDATE BIJ HANDMATIGE BEDIENING if item.isCustomEvent then domoticz.log("Handmatige bediening gedetecteerd - directe statusupdate", domoticz.LOG_INFO) sendToShelly("Cover.GetStatus?id=0") return end -- 2. DOMOTICZ BEDIENING if item.isDevice then local target_pos = rolluik.level domoticz.log("Domoticz bediening: "..target_pos.."%", domoticz.LOG_INFO) if target_pos == 0 then sendToShelly("Cover.Close?id=0") elseif target_pos == 100 then sendToShelly("Cover.Open?id=0") else sendToShelly("Cover.GoToPosition?id=0&pos="..target_pos) end -- Voeg een extra statuscheck toe na 2 seconden domoticz.emitEvent('force_status_update').afterSec(2) return end -- 3. STATUS VERWERKING if item.isHTTPResponse then if item.ok then local success, data = pcall(domoticz.utils.fromJSON, item.data) if success and data and data['cover:0'] then local new_pos = data['cover:0'].current_pos if new_pos ~= rolluik.level then rolluik.updatePercentage(new_pos) domoticz.log("STATUS BIJGEWERKT: "..new_pos.."%", domoticz.LOG_INFO) end else domoticz.log("Ongeldige Shelly response: "..(item.data or "geen data"), domoticz.LOG_ERROR) end else domoticz.log("HTTP Fout: "..item.statusCode, domoticz.LOG_ERROR) end end -- 4. PERIODIEKE SYNCHRONISATIE (backup) if item.isTimer then sendToShelly("Cover.GetStatus?id=0") end end }
Nu heb ik geprobeerd een 2e script te maken die de status/current pos ophaalt maar dit werkt niet. Wie kan mij verder op weg helpen?
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-- Shelly 2PM Status Updater (dzVents) return { active = true, on = { timer = { 'every 30 seconds' }, -- Aanpassen naar wens httpResponses = { 'shelly_status_update' } -- Unieke callback }, execute = function(domoticz, item) -- ============== CONFIGURATIE ============== local ROLLUIKEN = { { idx = 335, ip = 'xx.xx.xx.xx', name = "Badkamer" }, { idx = 330, ip = 'xx.xx.xx.xx', name = "Slaapkamer" }, } -- ========================================== -- 1. Timer: Start statusupdate if item.isTimer then for _, roller in ipairs(ROLLUIKEN) do domoticz.openURL({ url = 'http://'..roller.ip..'/rpc/Cover.GetStatus?id=0', method = 'GET', callback = 'shelly_status_update', -- Unieke callback _data = { idx = roller.idx, name = roller.name } }) domoticz.log("Status opvragen: "..roller.name, domoticz.LOG_DEBUG) end return end -- 2. Verwerk HTTP response if item.isHTTPResponse then local idx = item._data.idx local name = item._data.name or "Rolluik "..idx local device = domoticz.devices(idx) if not device then domoticz.log("Device niet gevonden: "..name, domoticz.LOG_ERROR) return end -- Debug: Log ruwe response domoticz.log("Response "..name..": "..(item.data or "geen data"), domoticz.LOG_DEBUG) if item.ok and item.data then -- Methode 1: Directe string matching (meest betrouwbaar) local current_pos = item.data:match('"current_pos":(%d+)') -- Methode 2: JSON parsing fallback if not current_pos then local success, data = pcall(domoticz.utils.fromJSON, item.data) if success then current_pos = data.current_pos end end if current_pos then local newPos = tonumber(current_pos) if device.level ~= newPos then device.updatePercentage(newPos) domoticz.log(name..": "..newPos.."%", domoticz.LOG_INFO) end else domoticz.log("Geen geldige positie in response van "..name, domoticz.LOG_ERROR) end else local errorMsg = item.statusText or item.statusCode or "Geen verbinding" domoticz.log("Fout bij "..name..": "..errorMsg, domoticz.LOG_ERROR) end end end }
Ik krijg in logboek ook geen foutmelding of iets... maar status wordt ook niet upgeupdate.
Ik heb bewust even een 2e script aangemaakt om te kijken of ik het probleem kan achterhalen. MAar als obv 1e (werkende) script natuurlijk e.e.a samengevoegd kan worden tot 1 script heeft dat natuurlijk voorkeur.
Probleem bij script 1 is dat als ik via Domoticz de rolluik bedien, dat alles gewoon werkt en actuele status wordt getoond maar als ik handmatig (via knop) dan wordt de status niet geupdate in Domoticz. Hierdoor kan het dus lijken dat rolluik dicht is in Domoticz, terwijl deze met de hand geopend is (en andersom).
1. Tussen on = ... en execute = ... mis ik een regel met een uieke identificatie van de scriptnaam zoals logging = {marker = 'Script 001'},
Als dit een bewuste keuze is dan is dat uiteraard prima.
Als voorbeeld.
1
2
3
4
5
6
7
| return {
on = {
httpResponses = {'shelly_response'},
},
logging = {marker = 'Script 001'}, -- <== Deze extra regel bedoel ik
execute = function (domoticz, item) |
De level = laat ik achterwege want dat geeft meer problelem dan gemak.
2. In het tweede script zie ik een regel active = true,
De regel is niet goed of fout, maar ik zie de toegevoegde waarde niet.
Het script kan ook met de GUI worden aan of uitgezet, tenzij je van de CLI werkt natuurlijk.
Bron: https://wiki.domoticz.com...e_=_true/false_(optional)
3. In het tweede script maak je in de isHTTPResponse tak gebruik van _data die je definieert in de isTimer tak.
Ik verwacht dat de waarden in _data niet meer bruikbaar zijn in de isHTTPResponse tak.
4. In het tweede script wordt in de isTimer tak door de for do loop twee keer de openURL aangeroepen.
Je krijgt dan ook twee keer een HTTPResponse.
Dat is ook de bedoeling maar daar moet je ook op anticiperen door je te richten op de waarden in de item en item .data die je uit het responsebericht krijgt.
1
2
| domoticz .log (item)
domoticz .log (item .data) |
5. Als je in het tweede script om welke reden dan ook geen onderscheid kan maken tussen de twee HTTPResponses dan kan je kiezen om in de openURL aparte callbacks te gebruiken.
6. Door de scripts op te delen in aparte scripts voor triggers en responses zie je in de logging wellicht beter de verschillen (maar nu val ik in herhaling.)
Bron: https://wiki.domoticz.com...synchronous_HTTP_requests
De volgende zaken werken sinds de update niet meer
:strip_exif()/f/image/Yppa7XxKxUwwspbKfTapZ62F.jpg?f=fotoalbum_large)
Heb al van alles geprobeerd, zoals updaten en upgraden van het besturingssysteem op mijn Pi (bullseye).
Ik krijg deze foutmelding in het log
1
2
3
4
5
| 2025-08-24 15:13:00.815 Error: Error opening url: http://127.0.0.1:8080/json.htm?type=graph&sensor=counter&range=month&idx=305 2025-08-24 15:13:00.948 Error: dzVents: HTTP/1.1 response: 404 ==>> Not Found 2025-08-24 15:13:00.959 Error: dzVents: Could not get (good) data from domoticz. Error (404) 2025-08-24 15:13:00.959 Error: dzVents: An error occurred when calling event handler YoulessMaand 2025-08-24 15:13:00.959 Error: dzVents: /home/pi/domoticz/scripts/dzVents/scripts/YoulessMaand.lua:53: attempt to index a nil value (global 'domoticz') |
Alles draait nu op:
Version: 2025.1
Build Hash: 89d5c900d
Compile Date: 2025-05-05 09:02:49
dzVents Version: 3.1.8
Python Version: 3.9.2 (default, Mar 20 2025, 02:07:39) [GCC 10.2.1 20210110]
Voor wat betreft de dag- en maand COP zeg de eerste log regel eigenlijk alles. De rest is een doorwerkfout. Als een basisgegeven niet kan worden opgehaald kan dzVents daar natuurlijk ook niet mee rekenen. idx 305 (stroomverbruik van de warmtepomp afkomstig van een Youless) wordt wel gewoon geüpdatet.
Zodra ik een systeembackup van enkele minuten voor de update terug zet werkt het wel weer gewoon. Maar ik wil gewoon steeds updaten als er een nieuwe stabiele versie uitkomt.
Hieronder nog het script voor het maandtotaal dat ik overigens niet zelf heb geschreven.
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
| local httpResponses = "monthTotal"
return {
on = {
timer = { "every 1 minutes" },
httpResponses = { httpResponses .. "*" }
},
logging = {
level = domoticz.LOG_DEBUG, -- set to LOG_ERROR when script works as expected
marker = httpResponse
},
execute = function(dz, item)
-- ****************************** Your settings below this line ***************************************************
usageDevice = dz.devices(305) -- Replace xxxx with ID of energyDevice you want to track
monthTotal = dz.devices(834) -- Create as virtual managed counter (energy) and change yyyy to the ID of the new device idx was 320
-- ****************************** No changes required below this line *********************************************
local function logWrite(str,level)
dz.log(tostring(str),level or dz.LOG_DEBUG)
end
local function triggerJSON(id, period, delay)
local delay = delay or 0
local URLString = dz.settings['Domoticz url'] .. "/json.htm?type=graph&sensor=counter&range=" ..
period .. "&idx=" .. id
dz.openURL({ url = URLString,
method = "GET",
callback = httpResponses .. "_" .. period}).afterSec(delay)
end
local function calculateMonthTotal(rt)
local monthTotal = 0
local currentMonth = dz.time.rawDate:sub(1,7)
for id, result in ipairs(rt) do
if rt[id].d:sub(1,7) == currentMonth then
logWrite(rt[id].d .. " ==>> " .. rt[id].v)
monthTotal = monthTotal + rt[id].v
end
end
return monthTotal --* 1000 oorspronkelijk script
end
if not item.isHTTPResponse then
triggerJSON(usageDevice.id, "month")
elseif item.ok then -- statusCode == 2xx
monthTotal.update(0,calculateMonthTotal(item.json.result))
else
logWrite("Could not get (good) data from domoticz. Error (" .. (item.statusCode or 999) .. ")" ,dz.LOG_ERROR)
logWrite(item.data)
domoticz.log('montTotal: '..monthTotal)
domoticz.log('currentMonth: '..currentMonth)
end
end
} |
Iemand ideeën hoe ik de irritante probleem kan oplossen zonder een verse installatie van de hele zooi?
[ Voor 41% gewijzigd door Copitano op 24-08-2025 17:53 ]
Elga | Valliant eco TEC plus VHR 30-34/5-5L | Kamstrup 602 |Nodo OTGW | Raspberry Pi 3B+/4B+|RFXcom rfxtrx433xl | UniFi netwerk | PVoutput 8.625 kWp
Ik ben al een geruime tijd voorstander om de triggers en de reponses te scheiden.Copitano schreef op zondag 24 augustus 2025 @ 17:38:
Na enig treuzelen vorige week toch maar eens geüpdatet naar de laatste stabiele versie van Domoticz. Nu spijt van.
De volgende zaken werken sinds de update niet meer
[Afbeelding]
Heb al van alles geprobeerd, zoals updaten en upgraden van het besturingssysteem op mijn Pi (bullseye).
Ik krijg deze foutmelding in het log
code:
1 2 3 4 5 2025-08-24 15:13:00.815 Error: Error opening url: http://127.0.0.1:8080/json.htm?type=graph&sensor=counter&range=month&idx=305 2025-08-24 15:13:00.948 Error: dzVents: HTTP/1.1 response: 404 ==>> Not Found 2025-08-24 15:13:00.959 Error: dzVents: Could not get (good) data from domoticz. Error (404) 2025-08-24 15:13:00.959 Error: dzVents: An error occurred when calling event handler YoulessMaand 2025-08-24 15:13:00.959 Error: dzVents: /home/pi/domoticz/scripts/dzVents/scripts/YoulessMaand.lua:53: attempt to index a nil value (global 'domoticz')
Alles draait nu op:
Version: 2025.1
Build Hash: 89d5c900d
Compile Date: 2025-05-05 09:02:49
dzVents Version: 3.1.8
Python Version: 3.9.2 (default, Mar 20 2025, 02:07:39) [GCC 10.2.1 20210110]
Voor wat betreft de dag- en maand COP zeg de eerste log regel eigenlijk alles. De rest is een doorwerkfout. Als een basisgegeven niet kan worden opgehaald kan dzVents daar natuurlijk ook niet mee rekenen. idx 305 (stroomverbruik van de warmtepomp afkomstig van een Youless) wordt wel gewoon geüpdatet.
Zodra ik een systeembackup van enkele minuten voor de update terug zet werkt het wel weer gewoon. Maar ik wil gewoon steeds updaten als er een nieuwe stabiele versie uitkomt.
Hieronder nog het script voor het maandtotaal dat ik overigens niet zelf heb geschreven.
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 60local httpResponses = "monthTotal" return { on = { timer = { "every 1 minutes" }, httpResponses = { httpResponses .. "*" } }, logging = { level = domoticz.LOG_DEBUG, -- set to LOG_ERROR when script works as expected marker = httpResponse }, execute = function(dz, item) -- ****************************** Your settings below this line *************************************************** usageDevice = dz.devices(305) -- Replace xxxx with ID of energyDevice you want to track monthTotal = dz.devices(834) -- Create as virtual managed counter (energy) and change yyyy to the ID of the new device idx was 320 -- ****************************** No changes required below this line ********************************************* local function logWrite(str,level) dz.log(tostring(str),level or dz.LOG_DEBUG) end local function triggerJSON(id, period, delay) local delay = delay or 0 local URLString = dz.settings['Domoticz url'] .. "/json.htm?type=graph&sensor=counter&range=" .. period .. "&idx=" .. id dz.openURL({ url = URLString, method = "GET", callback = httpResponses .. "_" .. period}).afterSec(delay) end local function calculateMonthTotal(rt) local monthTotal = 0 local currentMonth = dz.time.rawDate:sub(1,7) for id, result in ipairs(rt) do if rt[id].d:sub(1,7) == currentMonth then logWrite(rt[id].d .. " ==>> " .. rt[id].v) monthTotal = monthTotal + rt[id].v end end return monthTotal --* 1000 oorspronkelijk script end if not item.isHTTPResponse then triggerJSON(usageDevice.id, "month") elseif item.ok then -- statusCode == 2xx monthTotal.update(0,calculateMonthTotal(item.json.result)) else logWrite("Could not get (good) data from domoticz. Error (" .. (item.statusCode or 999) .. ")" ,dz.LOG_ERROR) logWrite(item.data) domoticz.log('montTotal: '..monthTotal) domoticz.log('currentMonth: '..currentMonth) end end }
Iemand ideeën hoe ik de irritante probleem kan oplossen zonder een verse installatie van de hele zooi?
Dit maakt de code compacter en beter te analyseren.
Aan het eind van het script met de trigger log ik de scriptnaam dat hierna de response gaat verwerken.
Andersom, in het script dat de response verwerkt geef ik aan door welke scriptnaam de response is afgetrapt.
De markers geef ik dezelfde naam als de scriptnaam, (ondanks dat dit default is).
Dit vanwege de herkenning in de logging.
https://wiki.domoticz.com..._{_%E2%80%A6_}_(optional)
Wat ik nu als marker zie lijkt mij een niet gedeclareerde variabele httpResponse en geen string.
Dit interpreteer ik zo omdat de quotes rondom ontbreken.
De error op r53 lijkt te komen doordat in het script dz wordt gebruikt ipv domoticz.
Op r26 wordt de URLString obv een paar variabelen samengesteld. Zelf zou ik de uitkomst van de samenstelling altijd loggen en igv een url eerst handmatig uitproberen.
Mijn vraag: Werkt de URLString buiten dz om ook zoals in de browser en bij voorkeur dmv een http request vanaf de cli op de RPi?
Eigenlijk geldt het loggen ook voor de berekening op r39.
Het nut van de functie logWrite ontgaat me eerlijk gezegd.
Een functie met één regel code en de aanroep ervan lijkt me onnodig complex en de code meer vervuilen dan goed doen.
Bij de verwerking van item.json.result op r48 zou ik deze waarde ook eerst loggen.
De declaratie van de variabelen doe ik altijd als eerste, dus boven het begin met de return op r3.
Dit houdt de code compacter, overzichtelijker en makkelijker te analyseren.
Wat me in functie calculateMonthTotal opvalt is dat op r34 de monthTotal op 0 wordt gezet terwijl op r17 de monthTotal op dz.devices(834) wordt gezet. Gaat dit wel werken?
Om dit te controleren zou ik achter beide regels een logregel toevoegen met monthTotal.
Detail: van montTotal op r53 zou ik aanpassen in monthTotal.
Succes verder met je script(s) en upgrade van Dz.
Is dat niet hetzelfde?B@rt_d@_M@n schreef op zondag 24 augustus 2025 @ 19:48:
Volgens mij moet je http://127.0.0.1/ vervangen door het ip adres van je Raspberry Pi.
1
2
| $ cat /etc/hosts 127.0.0.1 localhost |
Btw, Als openURL in dzVents wordt gebruikt om gegevens uit de eigen dz te halen lijkt me dit een omslachtige manier en onnodig gebruik van resources.
Wellicht dat de API protection nog dicht staat.
https://wiki.domoticz.com/Security#Advanced_Security_setup
Edit: dit was easy. Juiste protocol aanzetten in de RFXcom (eerst updaten) en het werkt meteen. Eindelijk ook meteen geluid in de hal zodat ze buiten niet denken dat er niets gebeurt en op het raam gaan bonken, meerdere gongs gaan nu af (hal, werkkamer, zolder) en er wordt een snapshot gestuurd.
Nu hopen dat deze beldrukker ook echt IP55 waarmaakt en niet binnen no time defect is door vocht in het binnenwerk. Laat de herfst (en zachte winter) maar komen.
[ Voor 62% gewijzigd door M.v.Veelen op 05-09-2025 19:57 ]
¯\_(ツ)_/¯
Ik ben sinds gistermiddag over op 2025.1 en heb geen last van crashes icm de Sems portalplugin. Overigens gebruik ik hem als backup want ik lees de Goodwe gewoon lokaal uit. Dat is sneller en zo goed als realtime..Racer89 schreef op zondag 27 juli 2025 @ 20:25:
[...]
Ja, ik had gehoopt dat het wellicht was opgelost met deze nieuwe update. Het crasht ook gewoon uit het niks. Als ik deze nu actief zet in de Hardware tab komen de gegevens ook direct binnen. Het is mij ook onduidelijk waarom deze vastloopt. Gemiddeld is het meestal binnen 24 uur dat hij vast loopt.
Ik weet niet of het ermee te maken heeft dat ik 4 omvormers in het portal heb gekoppeld onder één account.
Hoe doe je dat? Ik wil eigenlijk van de cloud af namelijk.FreakNL schreef op donderdag 11 september 2025 @ 21:58:
[...]
Ik ben sinds gistermiddag over op 2025.1 en heb geen last van crashes icm de Sems portalplugin. Overigens gebruik ik hem als backup want ik lees de Goodwe gewoon lokaal uit. Dat is sneller en zo goed als realtime..
https://github.com/marcel...dwe/blob/master/README.md
Ik heb gewoon een sensor aangemaakt in Domoticz en die voedt ik door middel van een script (wat extern draait), gebaseerd op bovenstaande.
Als je wil kan ik hem delen.
[ Voor 3% gewijzigd door FreakNL op 11-09-2025 22:18 ]
Ja graag!FreakNL schreef op donderdag 11 september 2025 @ 22:17:
Met een beetje hulp van deze:
https://github.com/marcel...dwe/blob/master/README.md
Ik heb gewoon een sensor aangemaakt in Domoticz en die voedt ik door middel van een script (wat extern draait), gebaseerd op bovenstaande.
Als je wil kan ik hem delen.
Start-Goodwe.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| echo off cls set ip=192.168.0.55 ping -n 1 %ip% | find "TTL" if not errorlevel 1 goto update-idx-python if errorlevel 1 goto update-idx-zero :update-idx-python echo ping successfull echo will update idx through python echo ping-success-update-through-python > status.txt python E:\Domoticz\scripts\PV\get-goodwe.py GOTO :EOF :update-idx-zero echo ping not succesfull echo inverter down echo will set watt value to 0 and total value to value of text file echo ping-NOT-success-update-through-curl-idx > status.txt for /f "delims=" %%x in (total.txt) do set total1=%%x echo %total1% curl "http://192.168.0.100:8080/json.htm?type=command¶m=udevice&idx=1616&nvalue=0&svalue=0;%total1%" |
get-goodwe.py:
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
| import asyncio
import goodwe
import os
import shutil
import requests
async def get_runtime_data():
ip_address = '192.168.0.50'
inverter = await goodwe.connect(ip_address)
runtime_data = await inverter.read_runtime_data()
var1 = None
var2 = None
# Fetch ppv (current PV power in W)
if 'ppv' in runtime_data:
var1 = runtime_data['ppv']
print(f"ppv:\t\t DC Power = {var1} W")
# Fetch e_total (total energy in kWh)
if 'e_total' in runtime_data:
var2 = runtime_data['e_total']
print(f"e_total:\t Total Energy = {var2} kWh")
if var1 is not None and var2 is not None:
print("printing var1 and var2 (Watt-now and Total kWh):")
print(var1)
print(var2)
# Convert kWh → Wh
var3 = var2 * 1000
print(f"Converted e_total: {var3} Wh")
# If total.txt exists, back it up as total2.txt
if os.path.exists("total.txt"):
shutil.copyfile("total.txt", "total2.txt")
print("Backed up total.txt → total2.txt")
# Write new value to total.txt
with open("total.txt", "w") as file:
file.write(str(var3))
print("Wrote new value to total.txt")
# Send values to Domoticz
url = (
f"http://192.168.0.100:8080/json.htm?"
f"type=command¶m=udevice&idx=1616&nvalue=0&svalue={var1};{var3}"
)
try:
r = requests.get(url, timeout=5)
if r.status_code == 200:
print("Domoticz updated successfully")
else:
print(f"Domoticz update failed, status: {r.status_code}")
except Exception as e:
print(f"Error updating Domoticz: {e}")
asyncio.run(get_runtime_data()) |
In Domoticz maak je een IDX aan:
:strip_exif()/f/image/Pc9Geji87ntSkKEbFqiCtzPi.png?f=user_large)
(Electric: Instant+Counter)
Kan vast in 1 script in plaats van 2 (dat is een stuk netter) maar het is zo gegroeid.. Eerst had ik alleen de Python maar kwam erachter dat je ook iets moet doen als de inverter uit is (omdat er anders heel de nacht de laaste opwek (bijv 4 watt) in Domoticz blijft staan)
En het werkt al 2 jaar prima
[ Voor 12% gewijzigd door FreakNL op 12-09-2025 08:00 ]
¯\_(ツ)_/¯
Er zijn 11 verschillende versies van de DSMR, geïnstalleerd op 95 verschikkende slimme meters.M.v.Veelen schreef op zondag 14 september 2025 @ 12:27:
De P1 meter geeft zeer regelmatig gegevens door, maar ik heb soms dat deze ineens niets meer doorgeeft. Nu heb ik een notificatie ingesteld dat na 30 minuten geen update, ik een berichtje krijg maar ik zag dat je bij Hardware ook kunt instellen dat als er na X minuten geen update is ontvangen, dat de hardware opnieuw wordt gestart. Is dat iets dat goed werkt? Ik herstartte namelijk nu steeds Domoticz helemaal en als dit automatisch kan, dan is dat een stuk prettiger.
Er zijn vziw 15-20 verschillende P1-meters.
Niet elke versie van de DSMR en niet elke slimme meter ondersteunen alle P1-meters even goed.
De verbinding van de P1-meter naar Domoticz loopt via de modem/router.
Daardoor is het goed om bij verlies connectie de verbinding van beide apparaten te testen voordat de apparaten worden gereset. Een reset voor het herstel van de verbinding zie ik als symptoomonderdrukking ipv het oplossen van de oorzaak.
Denk bij het testen van de verbinding oa aan de signaalsterkte.
Zo heeft de Homewizard P1-meter ook een API die kan worden uitgelezen.
Wellicht dat hiervoor eerst een setting in de app moet worden aangezet.
https://github.com/energi...e#dsmr-versions-standards
https://github.com/energi...ob/main/dsmr-e-meters.csv
Wellicht helpt dit je bij je speurtocht naar een geschikte oplossing.
¯\_(ツ)_/¯
Ik kreeg om 15 uur (als de prijzen voor morgen worden opgevraagd) de melding:
"Invalid (no) data received (electricity prices tomorrow, data object not found). Check Token!"
Restarten van het device levert dezelfde melding op, en de token klopt gewoon met wat ik ooit per mail van Enever kreeg.
Edit: Laat maar. Om 16 uur ging de plugin nogmaals de gegevens halen en toen waren ze er wel. Blijkbaar waren de prijzen om 15 uur nog niet beschikbaar. Enige is dus dat de foutmelding niet zo lekker is.
[ Voor 24% gewijzigd door Andrehj op 04-10-2025 16:12 ]
WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.
Ik zou dus eigenlijk het liefste hebben dat er iets van logica komt die kijkt of het gaat regenen of niet de komende dag en daarop wel of niet sproeit in de ochtend en/of middag/avond.
Ik heb dit met een Zigbee vochtsensor i.c.m. de reeds gevallen regen gedaan.rens-br schreef op zaterdag 4 oktober 2025 @ 15:40:
Zijn er users die ervaring hebben met weersvoorspelling in combinatie met tuin sproeiers? Ik heb nu in mijn voor en achtertuin sproeiers ingebouwd die via een zigbee water schakelaar aan/uit gezet kunnen worden.
Ik zou dus eigenlijk het liefste hebben dat er iets van logica komt die kijkt of het gaat regenen of niet de komende dag en daarop wel of niet sproeit in de ochtend en/of middag/avond.
https://www.fam-oldenburger.nl/category/domotica/
Leuk vraagstuk.rens-br schreef op zaterdag 4 oktober 2025 @ 15:40:
Zijn er users die ervaring hebben met weersvoorspelling in combinatie met tuin sproeiers? Ik heb nu in mijn voor en achtertuin sproeiers ingebouwd die via een zigbee water schakelaar aan/uit gezet kunnen worden.
Ik zou dus eigenlijk het liefste hebben dat er iets van logica komt die kijkt of het gaat regenen of niet de komende dag en daarop wel of niet sproeit in de ochtend en/of middag/avond.
Mag ik aannemen dat het handmatig schakelen van de sproeiers via Zigbee al werkt?
Dan is nog het van belang om de aansturing te realiseren opv een weersverwachting.
Hiervoor kan je een API gebruiken zoals https://weerlive.nl/delen.php.
Voorbeeld: https://weerlive.nl/api/w...ey=demo&locatie=Amsterdam
Je moet wel zelf een token opvragen om de API te kunnen gebruiken.
Is het een idee om een dummy switch aan te maken om te kijken of je die dag al hebt gesproeid?
Die dummy switch moet je dan tijdens of na de sproeibeurt op Aan zetten en één keer per dag uitzetten.
Zelf gebruik ik de API van Buienradar voor mijn zonwering.
https://gpsgadget.buienra...ntext/?lat=52.00&lon=5.00
Wat in de praktijk gebeurt is dat volgens de API op één locatie geen regen wordt verwacht maar dat toch gebeurt.
Dit heb ik ondervangen met een matrix van 9 locaties rondom mijn woning met een verschil van +0.01 en -0.01 op de longitude en latitude waarbij ik de matrix van 9 locaties elke minuten ophaal.
Dat zal voor jouw situatie wsch niet nodig zijn.
Ik heb dit een kleine 7 jaar al geprobeerd. Belangrijkste was om de referentieverdamping ergens op te halen want als het in september een week niet regent is her andere koek dan als het in juli een week niet regent.rens-br schreef op zaterdag 4 oktober 2025 @ 15:40:
Zijn er users die ervaring hebben met weersvoorspelling in combinatie met tuin sproeiers? Ik heb nu in mijn voor en achtertuin sproeiers ingebouwd die via een zigbee water schakelaar aan/uit gezet kunnen worden.
Ik zou dus eigenlijk het liefste hebben dat er iets van logica komt die kijkt of het gaat regenen of niet de komende dag en daarop wel of niet sproeit in de ochtend en/of middag/avond.
De neerslagcijfers zijn wel te achterhalen.
Nog een specifieke sensor / script die je kan aanraden?BazemanKM schreef op zaterdag 4 oktober 2025 @ 17:12:
[...]
Ik heb dit met een Zigbee vochtsensor i.c.m. de reeds gevallen regen gedaan.
Geprobeerd, maar niet gelukt?niki_lauda schreef op zaterdag 4 oktober 2025 @ 20:56:
Ik heb dit een kleine 7 jaar al geprobeerd.
Goede aanname, werkt inderdaad prima. Ik heb nu tijdelijk een script draaien die elke 4 uur even sproeit. Het gras ligt er net in. Dus veel sproeien gaf de hovenier aan.Lawrentz schreef op zaterdag 4 oktober 2025 @ 17:15:
Mag ik aannemen dat het handmatig schakelen van de sproeiers via Zigbee al werkt?
Dan is nog het van belang om de aansturing te realiseren opv een weersverwachting.
Hiervoor kan je een API gebruiken zoals https://weerlive.nl/delen.php.
Voorbeeld: https://weerlive.nl/api/w...ey=demo&locatie=Amsterdam
Je moet wel zelf een token opvragen om de API te kunnen gebruiken.
Waar heb je die dummy switch voor nodig? Ik wil het liefste niet tot nauwelijks zelf sproeien. Ik heb immers niet voor niets automatische sproeiers.Is het een idee om een dummy switch aan te maken om te kijken of je die dag al hebt gesproeid?
Die dummy switch moet je dan tijdens of na de sproeibeurt op Aan zetten en één keer per dag uitzetten.
Dat is wel slim / handig! Heb jij nog een script hiervoor gemaakt? Of gebruik je de default buienradar plugin?Zelf gebruik ik de API van Buienradar voor mijn zonwering.
https://gpsgadget.buienra...ntext/?lat=52.00&lon=5.00
Wat in de praktijk gebeurt is dat volgens de API op één locatie geen regen wordt verwacht maar dat toch gebeurt.
Dit heb ik ondervangen met een matrix van 9 locaties rondom mijn woning met een verschil van +0.01 en -0.01 op de longitude en latitude waarbij ik de matrix van 9 locaties elke minuten ophaal.
Dat zal voor jouw situatie wsch niet nodig zijn.
Zoals ik heb aangegeven om te kijken of je die dag al gesproeid hebt of niet.rens-br schreef op zaterdag 4 oktober 2025 @ 23:01:
Waar heb je die dummy switch voor nodig? Ik wil het liefste niet tot nauwelijks zelf sproeien. Ik heb immers niet voor niets automatische sproeiers.
De weersverwachting wijzigt in ons land relatief snel.
Daarnaast lijkt het mij dat je niet overmatig wilt sproeien, oa om onnodig waterverbruik te voorkomen.
Als op dit moment wordt aangegeven dat het over 8, 16, of 2 uur gaat regenen dan kan de weersverwachting van een paar uur droog weer aangeven. Of juist andersom.
Vandaar dat het mij zinvol lijkt om de controle meerdere keren per dag aan te geven.
Als je een script één keer per dag controleert dan is een dummy switch of dummy teller niet zo relevant.
Heb jij wellicht een andere manier om bij te houden of je die dag al hebt gesproeid of niet?
Ik ben wel benieuwd.
Daarnaast heb ik voor bijna alle scripts een tweede dummy switch aangemaakt voor het aan- of uitzetten van mijn automatische aansturingen.
Zo stuur ik mijn Itho ventilatiebox aan op diverse parameters, maar igv calamiteiten of een enthousiaste buurman met een oververhitte barbecue wil ik de ventilatiebox snel kunnen uitzetten.
Wellicht dat een aan-/uit switch voor automatische aansturing voor jouw tuin in de winter ook handig is?.
Idealiter wilde ik alleen één keer sproeien in de vroege ochtend. Als de sproeiers in de voortuin aanstaan kan niemand er meer door namelijk. Niet zo handig voor de post bezorger. Maar bij dagen waarbij het heel wisselvallig weer is, is dat natuurlijk niet persee heel handig.Lawrentz schreef op zondag 5 oktober 2025 @ 09:28:
[...]
Als je een script één keer per dag controleert dan is een dummy switch of dummy teller niet zo relevant.
Ja slim! Die heb ik ook al in veel scripts zitten ja.Daarnaast heb ik voor bijna alle scripts een tweede dummy switch aangemaakt voor het aan- of uitzetten van mijn automatische aansturingen.
Wellicht dat een aan-/uit switch voor automatische aansturing voor jouw tuin in de winter ook handig is?.
Niet in de late avond of nacht sproeien?rens-br schreef op zondag 5 oktober 2025 @ 10:01:
[...]
Idealiter wilde ik alleen één keer sproeien in de vroege ochtend. Als de sproeiers in de voortuin aanstaan kan niemand er meer door namelijk. Niet zo handig voor de post bezorger. Maar bij dagen waarbij het heel wisselvallig weer is, is dat natuurlijk niet persee heel handig.
[...]
Na de (vroege) ochtend ga je de dag in waardoor het zojuist gesproeide water verdampt.
Verder lijkt het mij zinvol om ook de daadwerkelijke neerslag bij te houden zodat je dit kan meenemen in je beslissing om al dan niet te sproeien.
Als voorbeeld, de afgelopen dagen heeft het hier veel geregend.
Stel dat het de komende dagen droog is lijkt het me niet nodig om vandaag te sproeien.
Ook goede punten! Ik ga eens aan de slag met de informatie die uit de buienradar plugin rolt.Lawrentz schreef op zondag 5 oktober 2025 @ 10:18:
[...]
Niet in de late avond of nacht sproeien?
Na de (vroege) ochtend ga je de dag in waardoor het zojuist gesproeide water verdampt.
Verder lijkt het mij zinvol om ook de daadwerkelijke neerslag bij te houden zodat je dit kan meenemen in je beslissing om al dan niet te sproeien.
Als voorbeeld, de afgelopen dagen heeft het hier veel geregend.
Stel dat het de komende dagen droog is lijkt het me niet nodig om vandaag te sproeien.
https://www.zigbee2mqtt.i...3.html#tuya-ts0601_soil_3rens-br schreef op zaterdag 4 oktober 2025 @ 22:58:
[...]
Nog een specifieke sensor / script die je kan aanraden?
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
| return {
active = true,
on = {
timer = { '40 minutes before sunset', 'at sunset' } -- Controleert een uur voor zonsondergang en bij zonsondergang
},
execute = function(domoticz, device)
local regenmeter1 = domoticz.devices(262)
local bodemvochtigheid = domoticz.devices(1358)
local sproeier1 = domoticz.devices(1027)
local sproeier2 = domoticz.devices(417)
local regen1 = regenmeter1.rain or 0
local raw = bodemvochtigheid.rawData[1] or "0%"
local vochtigheid = tonumber(raw:match("(%d+)")) or 0
-- domoticz.log('Sensorwaarden: regen=' .. regen1 .. 'mm, vochtigheid=' .. vochtigheid .. '%', domoticz.LOG_INFO)
if domoticz.time.matchesRule('at sunset') then
domoticz.log('Zonsondergang bereikt, sproeiers worden uitgeschakeld.', domoticz.LOG_INFO)
sproeier2.switchOff()
sproeier1.switchOff()
sproeier2.switchOff()
elseif vochtigheid < 85 and regen1 < 3 then
-- elseif domoticz.time.matchesRule('40 minutes before sunset') then
domoticz.log('Besproeiing wordt ingeschakeld.', domoticz.LOG_INFO)
sproeier1.switchOn().forMin(35)
sproeier2.switchOn().forMin(35)
domoticz.notify('Besproeiing gestart', 'De besproeiing is ingeschakeld.', domoticz.PRIORITY_NORMAL, nil, domoticz.NSS_TELEGRAM)
sproeier2.switchOn().forMin(35)
else
domoticz.log('Genoeg regen of voldoende bodemvochtigheid, besproeiing blijft uit.', domoticz.LOG_INFO)
domoticz.notify('Besproeiing niet nodig', 'Genoeg regen of voldoende bodemvochtigheid.', domoticz.PRIORITY_NORMAL, nil, domoticz.NSS_TELEGRAM)
end
end
} |
https://www.fam-oldenburger.nl/category/domotica/
Super! Ik ga eens kijken waar die te bestellen is. Waar komt bij jou de waarde voor 'regenmeter1' vandaan?BazemanKM schreef op zondag 5 oktober 2025 @ 10:30:
[...]
https://www.zigbee2mqtt.i...3.html#tuya-ts0601_soil_3
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 34return { active = true, on = { timer = { '40 minutes before sunset', 'at sunset' } -- Controleert een uur voor zonsondergang en bij zonsondergang }, execute = function(domoticz, device) local regenmeter1 = domoticz.devices(262) local bodemvochtigheid = domoticz.devices(1358) local sproeier1 = domoticz.devices(1027) local sproeier2 = domoticz.devices(417) local regen1 = regenmeter1.rain or 0 local raw = bodemvochtigheid.rawData[1] or "0%" local vochtigheid = tonumber(raw:match("(%d+)")) or 0 -- domoticz.log('Sensorwaarden: regen=' .. regen1 .. 'mm, vochtigheid=' .. vochtigheid .. '%', domoticz.LOG_INFO) if domoticz.time.matchesRule('at sunset') then domoticz.log('Zonsondergang bereikt, sproeiers worden uitgeschakeld.', domoticz.LOG_INFO) sproeier2.switchOff() sproeier1.switchOff() sproeier2.switchOff() elseif vochtigheid < 85 and regen1 < 3 then -- elseif domoticz.time.matchesRule('40 minutes before sunset') then domoticz.log('Besproeiing wordt ingeschakeld.', domoticz.LOG_INFO) sproeier1.switchOn().forMin(35) sproeier2.switchOn().forMin(35) domoticz.notify('Besproeiing gestart', 'De besproeiing is ingeschakeld.', domoticz.PRIORITY_NORMAL, nil, domoticz.NSS_TELEGRAM) sproeier2.switchOn().forMin(35) else domoticz.log('Genoeg regen of voldoende bodemvochtigheid, besproeiing blijft uit.', domoticz.LOG_INFO) domoticz.notify('Besproeiing niet nodig', 'Genoeg regen of voldoende bodemvochtigheid.', domoticz.PRIORITY_NORMAL, nil, domoticz.NSS_TELEGRAM) end end }
Edit: inmiddels twee van die sensoren besteld voor 8,50 per stuk via Ali. Ben benieuwd.
Elke 4 uur lijkt me nogal overdreven.rens-br schreef op zaterdag 4 oktober 2025 @ 23:01:
Goede aanname, werkt inderdaad prima. Ik heb nu tijdelijk een script draaien die elke 4 uur even sproeit. Het gras ligt er net in. Dus veel sproeien gaf de hovenier aan.
Eens per dag is meer dan voldoende. En bij vochtig weer hoeft het helemaal niet. Maar dat is misschien meer iets voor Het grote tuinen, balkons en plantentopic
WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.
Van een Alecto weerstation, die via RFlink verbonden is, maar je kunt natuurlijk ook Buienradar of andere weergegevens gebruiken.rens-br schreef op zondag 5 oktober 2025 @ 10:36:
[...]
Waar komt bij jou de waarde voor 'regenmeter1' vandaan?
Misschien is er ook wel een Zigbee regenmeter?
https://www.fam-oldenburger.nl/category/domotica/
Iemand de gouden tip?
Edit: wat suf....had geen Python geïnstalleerd. All good.....
[ Voor 6% gewijzigd door M.v.Veelen op 24-10-2025 13:21 ]
¯\_(ツ)_/¯
Nu je toch aan het overzetten bent, heb je ook gebruik gemaakt van docker toevallig? Dat heb ik destijds wel gedaan en echt geen moment spijt van gehad, zoveel sneller, stabieler en beter onderhoudbaar.M.v.Veelen schreef op vrijdag 24 oktober 2025 @ 13:13:
Hi, ik ben bezig om van een Raspberry Pi 3B+ naar een NUC te migreren (backup teruggezet van de RPi op de NUC) en loop tegen het probleem aan dat de niet-native plugins niet worden herkend in de hardware tabel. Meerdere keren mappen met inhoud verwijderd, git clone uitgevoerd, mappen gekopieerd, rechten goed gezet, domoticz elke keer herstart, maar ze worden niet gezien in de hardwarelijst. Ik zie niet wat de oorzaak kan zijn. Ik draai de laatste Beta en heb eerder van RPi naar RPi nooit dit probleem gehad.
Iemand de gouden tip?
Edit: wat suf....had geen Python geïnstalleerd. All good.....
Docker dus niet gebruikt, ook omdat de NUC op zich meer dan voldoende capaciteit heeft om de volledige installaties op te doen en alles te laten draaien.
Als het straks stabiel draait, waarom zou ik dan naar Docker willen gaan?
Ik sta open voor verbeteringen hoor, maar zie nog geen goede reden.
¯\_(ツ)_/¯
Toevallig vrijdag een Pi 5 gekocht, maar dat was meer ehm life cycle management, immers die pi 3b zal eens de geest geven.
Zwave, Zigbee, Philips Hue, KAKU, draait allemaal door elkaar heen. Alles in docker containers, wat ook wat performance snoept.
Wat heb jij dan dat een Pi3 te licht is?
¯\_(ツ)_/¯
Als ik Donoticz in Docker draai, dan erken mijn plug-ins niet altijdjanne_nl schreef op zondag 26 oktober 2025 @ 10:30:
Te licht? Ik draai al jaren op een pi3b, die gebruikt gemiddeld 20% cpu tijd.
Toevallig vrijdag een Pi 5 gekocht, maar dat was meer ehm life cycle management, immers die pi 3b zal eens de geest geven.
Zwave, Zigbee, Philips Hue, KAKU, draait allemaal door elkaar heen. Alles in docker containers, wat ook wat performance snoept.
Wat heb jij dan dat een Pi3 te licht is?
Bijvoorbeeld modus voor Solaredge omvormer
Is hier een oplossing voor of die ik iets verkeerd
Ik zou zeggen dat je iets verkeerds doet, alhoewel ik sinds de laatste domoticz update 2 keer per dag ongeveer een foutmelding krijg van de solaredge modbus plugin. Verder doen de gebruikte plugins het prima.Goofman2 schreef op zondag 26 oktober 2025 @ 12:21:
[...]
Als ik Donoticz in Docker draai, dan erken mijn plug-ins niet altijd
Bijvoorbeeld modus voor Solaredge omvormer
Is hier een oplossing voor of die ik iets verkeerd
@M.v.Veelen Een rfxcom (kaku) heb ik ook, net als een zigbee stick. Waaruit concludeer je dat de pi er last van heeft?
Heb je veel foutmeldingen in je syslog.M.v.Veelen schreef op zondag 26 oktober 2025 @ 11:19:
Ik heb een RFXcom, P1 kabel en een Sonoff Zigbee stick. Die laatste erbij vraagt soms toch net even teveel van deze RPi zag ik en daarom voor een NUC gegaan.
Ik had een foutmelding van een illuminacs device die in zigbee2mqtt veel meldingen spuwde en het systeem traag maakte.
Calibratie getal ingevuld in z2mqtt ingegeven en performance was veel beter
Geeft je de mogelijkheid om meerdere containers naast elkaar te draaien, zonder dat ze echt elkaar in de weg zitten. Ik vind backups veel eenvoudiger en het overzetten naar een andere apparaat ook.M.v.Veelen schreef op vrijdag 24 oktober 2025 @ 16:57:
Als het straks stabiel draait, waarom zou ik dan naar Docker willen gaan?
Overzetten van mijn ene NUC naar de andere was een kwestie van de data folder kopieren, docker installeren, docker container runnen en alles draaide weer.
Ik vind het vele malen stabieler, ook omdat updaten van de ene container geen invloed heeft op andere diensten of containers.
Undervoltage detected!
Voltage normalised
En ik heb vele, vele jaren tevreden de RPi gebruikt maar nu ik over ben naar de NUC is alles zoveel sneller en stabieler. Ja, de NUC zal iets meer stroom verbruiken, maar ik rook niet, hahahaha.
¯\_(ツ)_/¯
Meestal is dan je voeding te krap bemeten voor wat je met die Pi wilt doen.M.v.Veelen schreef op maandag 27 oktober 2025 @ 16:06:
Ik zag op de Raspberry vrij regelmatig dit:
Undervoltage detected!
Voltage normalised
En wat betreft je vraag over Docker:
Docker heeft niet zoveel met capaciteit te maken (standalone), maar meer dat je dan dit niet hebt:M.v.Veelen schreef op vrijdag 24 oktober 2025 @ 16:57:
Docker dus niet gebruikt, ook omdat de NUC op zich meer dan voldoende capaciteit heeft om de volledige installaties op te doen en alles te laten draaien.
Als het straks stabiel draait, waarom zou ik dan naar Docker willen gaan?
Ik sta open voor verbeteringen hoor, maar zie nog geen goede reden.
Die heeft de ontwikkelaar van Domoticz al in de container gestopt.M.v.Veelen schreef op vrijdag 24 oktober 2025 @ 13:13:
Edit: wat suf....had geen Python geïnstalleerd. All good.....
Als het nu verder draait ook weinig aan doen lijkt mij.
[ Voor 60% gewijzigd door ed1703 op 27-10-2025 16:55 ]
Klopt. De Goodwe plugin heeft altijd nog een extra package nodig. Heel irritant.janne_nl schreef op maandag 27 oktober 2025 @ 17:33:
Dat is wat kort door de bocht. Ja, python is geïnstalleerd, maar niet noodzakelijk alle libraries die je plugins nodig hebben.
Klopt je hebt gelijk, ik ging er gemakshalve vanuit dat er door de ontwikkelaar in ieder geval wel een gedeelte toegevoegd zou zijn, maar dit is blijkbaar niet het geval. Dit is trouwens met een container dan wel erg vervelend.janne_nl schreef op maandag 27 oktober 2025 @ 17:33:
Dat is wat kort door de bocht. Ja, python is geïnstalleerd, maar niet noodzakelijk alle libraries die je plugins nodig hebben.
[ Voor 206% gewijzigd door ed1703 op 27-10-2025 21:22 ]
Ik heb al een keer Domoticz volledig verwijderd en opnieuw geïnstalleerd. Met een lege domoticz.db database gaat het goed, maar zodra ik de domoticz.db vervang door een backup, zie je wel dat de service gestart is. Maar poorten 8080 en 443 geven geen response als ik in powershell test-netconnection probeer uit te voeren.
Als ik vervolgens gewoon de domoticz.exe file wil starten krijg ik het volgende terug:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| 2025-12-01 12:52:46.277 Status: Domoticz V2025.2 (build 16944) (c)2012-2025 GizMoCuz 2025-12-01 12:52:46.277 Status: Build Hash: ddd8f4991, Date: 2025-11-26 08:24:11 2025-12-01 12:52:46.277 Status: Startup Path: C:\Program Files (x86)\Domoticz\ 2025-12-01 12:52:46.293 Error: Default admin password has NOT been changed! Change it asap! 2025-12-01 12:52:46.293 Sunrise: 08:18:00 SunSet: 16:32:00 2025-12-01 12:52:46.293 Day length: 08:14:00 Sun at south: 12:25:00 2025-12-01 12:52:46.293 Civil twilight start: 07:40:00 Civil twilight end: 17:11:00 2025-12-01 12:52:46.293 Nautical twilight start: 06:58:00 Nautical twilight end: 17:52:00 2025-12-01 12:52:46.293 Astronomical twilight start: 06:18:00 Astronomical twilight end: 18:32:00 2025-12-01 12:52:46.308 Status: PluginSystem: Started, Python version '3.9.13', 8 plugin definitions loaded. 2025-12-01 12:52:46.324 Active notification Subsystems: pushbullet (1/13) 2025-12-01 12:52:46.324 Status: WebServer(HTTP) startup failed on address :: with port: 8080: config out of range, trying :: 2025-12-01 12:52:46.324 Status: WebServer(HTTP) startup failed on address :: with port: 8080: config out of range, trying 0.0.0.0 2025-12-01 12:52:46.324 Error: WebServer(HTTP) startup failed on address 0.0.0.0 with port: 8080: config out of range 2025-12-01 12:52:46.324 Error: WebServer(HTTP) check if no other application is using port: 8080 2025-12-01 12:52:46.324 Status: WebServer(SSL) startup failed on address :: with port: 443: config out of range, trying :: 2025-12-01 12:52:46.324 Status: WebServer(SSL) startup failed on address :: with port: 443: config out of range, trying 0.0.0.0 2025-12-01 12:52:46.324 Error: WebServer(SSL) startup failed on address 0.0.0.0 with port: 443: config out of range 2025-12-01 12:52:46.324 Error: WebServer(SSL) check privileges for opening ports below 1024 |
Ik heb ook al eens geprobeerd om een andere poort hoger dan 1024 mee te geven, maar helaas geen succes. Het gekke is dat het met een lege database dus wel gewoon op de genoemde poorten start. En daarbij Windows heeft normaal nooit problemen met poortnummers, ongeacht het nummer.
Met een lege database starten en vervolgens binnen Domoticz een restore uitvoeren lijkt helemaal niets te doen verder.
Ik dacht al een corrupte database, want elk backup bestand is ook precies 470.980kB groot. Ik heb hierdoor een SQL dump gemaakt van de database en deze in een lege geïmporteerd, (tabellen LightingLog en Percentage bevatten extreem veel records) maar nog steeds hetzelfde probleem. Iemand nog de gouden tip? Zeker nu met de kerstverlichting wil ik graag weer gebruik maken van mijn Domoticz installatie. Ik zit een beetje met mijn handen in het haar.
Aan mensen die me ipv mijn gebruiken: hebben jullie in het echt ook zo'n spraakgebrek?
Dit suggereert dat hij zijn eigen IPv6 adres niet kent.
datzelfde zie je bij 443:
WebServer(SSL) startup failed on address :: with port: 443
Maar vervolgens gaat het mis als hij op adres 0.0.0. wil verbinden:
WebServer(HTTP) startup failed on address 0.0.0.0 with port: 8080
WebServer(HTTP) startup failed on address 0.0.0.0 with port: 443
verder zie ik:
Error: WebServer(HTTP) check if no other application is using port: 8080
Als je je systeem opstart zonder Domoticz, zie je dan iets draaien op 8080? en/of 443?
Je zou Domoticz kunnen proberen te starten met
1
| domoticz.exe -www 8080 -sslwww 443 -log "domoticz.log" -loglevel all -debuglevel auth,hardware,received,webserver |
Met name in /var/log/domoticz.log kun je dan hopelijk wat meer zien (disclaimer: geen ervaring met Domoticz op Windows, dus ik weet niet zeker of dit werkt).
Met een lege database starten en vervolgens binnen Domoticz een restore uitvoeren lijkt helemaal niets te doen verder.
Hoe bedoel je dit? Je start met een lege database, opent Domoticz (http://<serverIP>:8080 en kiest voor Instellingen - Instellingen - Herstel database? En dan? Reboot je de server? Zie je wel iets onder Hardware?
Pvoutput 3.190 Wp Zuid; Marstek Venus 5.12 kWh; HW P1; BMW i4 eDrive40
Dat dacht ik dus ook al, maar nee:Pietervs schreef op maandag 1 december 2025 @ 13:45:
Status: WebServer(HTTP) startup failed on address :: with port: 8080
Dit suggereert dat hij zijn eigen IPv6 adres niet kent.
datzelfde zie je bij 443:
WebServer(SSL) startup failed on address :: with port: 443
Maar vervolgens gaat het mis als hij op adres 0.0.0. wil verbinden:
WebServer(HTTP) startup failed on address 0.0.0.0 with port: 8080
WebServer(HTTP) startup failed on address 0.0.0.0 with port: 443
verder zie ik:
Error: WebServer(HTTP) check if no other application is using port: 8080
Als je je systeem opstart zonder Domoticz, zie je dan iets draaien op 8080? en/of 443?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| PS C:\Users\Administrator> test-netconnection 127.0.0.1 -Port 443 WARNING: TCP connect to 127.0.0.1:443 failed ComputerName : 127.0.0.1 RemoteAddress : 127.0.0.1 RemotePort : 443 InterfaceAlias : Loopback Pseudo-Interface 1 SourceAddress : 127.0.0.1 PingSucceeded : True PingReplyDetails (RTT) : 0 ms TcpTestSucceeded : False PS C:\Users\Administrator> test-netconnection 127.0.0.1 -Port 8080 WARNING: TCP connect to 127.0.0.1:8080 failed ComputerName : 127.0.0.1 RemoteAddress : 127.0.0.1 RemotePort : 8080 InterfaceAlias : Loopback Pseudo-Interface 1 SourceAddress : 127.0.0.1 PingSucceeded : True PingReplyDetails (RTT) : 0 ms TcpTestSucceeded : False |
IPv6 staat overigens helemaal uitgeschakeld op deze server, maar dat is al jaren zo. Ook met enablen daarvan verschilt het niet.
Dat werkt met het volledig pad naar domoticz.log. Dit is de output:Je zou Domoticz kunnen proberen te starten met
code:
1 domoticz.exe -www 8080 -sslwww 443 -log "domoticz.log" -loglevel all -debuglevel auth,hardware,received,webserver
Met name in /var/log/domoticz.log kun je dan hopelijk wat meer zien (disclaimer: geen ervaring met Domoticz op Windows, dus ik weet niet zeker of dit werkt).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| 2025-12-01 14:31:21.160 Status: Domoticz V2025.2 (build 16944) (c)2012-2025 GizMoCuz 2025-12-01 14:31:21.160 Status: Build Hash: ddd8f4991, Date: 2025-11-26 08:24:11 2025-12-01 14:31:21.160 Status: Startup Path: C:\Program Files (x86)\Domoticz\ 2025-12-01 14:31:21.206 Error: Default admin password has NOT been changed! Change it asap! 2025-12-01 14:31:21.206 Sunrise: 08:18:00 SunSet: 16:32:00 2025-12-01 14:31:21.206 Day length: 08:14:00 Sun at south: 12:25:00 2025-12-01 14:31:21.206 Civil twilight start: 07:40:00 Civil twilight end: 17:11:00 2025-12-01 14:31:21.206 Nautical twilight start: 06:58:00 Nautical twilight end: 17:52:00 2025-12-01 14:31:21.206 Astronomical twilight start: 06:18:00 Astronomical twilight end: 18:32:00 2025-12-01 14:31:21.222 Status: PluginSystem: Started, Python version '3.9.13', 8 plugin definitions loaded. 2025-12-01 14:31:21.253 Debug: : MQTT PublishSchema 1 (1), Retain 0 2025-12-01 14:31:21.253 Active notification Subsystems: pushbullet (1/13) 2025-12-01 14:31:21.253 Debug: CWebServer::StartServer() : settings : 'server_settings[is_secure_=false, www_root='C:\Program Files (x86)\Domoticz\www', listening_address='::', listening_port='8080', vhostname='', php_cgi_path='']' 2025-12-01 14:31:21.253 Debug: CWebServer::StartServer() : IAM settings : 'iam_settings[is_enabled_=true, auth_url='/oauth2/v1/authorize', token_url='/oauth2/v1/token', discovery_url='/.well-known/openid-configuration', code_expire_seconds='60', token_expire_seconds='3600', refresh_expire_seconds='86400']' 2025-12-01 14:31:21.253 Status: WebServer(HTTP) startup failed on address :: with port: 8080: config out of range, trying :: 2025-12-01 14:31:21.253 Status: WebServer(HTTP) startup failed on address :: with port: 8080: config out of range, trying 0.0.0.0 2025-12-01 14:31:21.253 Error: WebServer(HTTP) startup failed on address 0.0.0.0 with port: 8080: config out of range 2025-12-01 14:31:21.253 Error: WebServer(HTTP) check if no other application is using port: 8080 2025-12-01 14:31:21.253 Debug: CWebServer::StartServer() : settings : ssl_server_settings['server_settings[is_secure_=true, www_root='C:\Program Files (x86)\Domoticz\www', listening_address='::', listening_port='443', vhostname='', php_cgi_path='']', ssl_method='tls', certificate_chain_file_path='./server_cert.pem', ca_cert_file_path='./server_cert.pem', cert_file_path=./server_cert.pem', private_key_file_path='./server_cert.pem', private_key_pass_phrase='', ssl_options='single_dh_use', tmp_dh_file_path='./server_cert.pem', verify_peer=false, verify_fail_if_no_peer_cert=false, verify_file_path=''] 2025-12-01 14:31:21.253 Debug: CWebServer::StartServer() : IAM settings : 'iam_settings[is_enabled_=true, auth_url='/oauth2/v1/authorize', token_url='/oauth2/v1/token', discovery_url='/.well-known/openid-configuration', code_expire_seconds='60', token_expire_seconds='3600', refresh_expire_seconds='86400']' 2025-12-01 14:31:21.253 Status: WebServer(SSL) startup failed on address :: with port: 443: config out of range, trying :: 2025-12-01 14:31:21.253 Status: WebServer(SSL) startup failed on address :: with port: 443: config out of range, trying 0.0.0.0 2025-12-01 14:31:21.253 Error: WebServer(SSL) startup failed on address 0.0.0.0 with port: 443: config out of range 2025-12-01 14:31:21.253 Error: WebServer(SSL) check privileges for opening ports below 1024 |
Dus eigenlijk niet heel veel meer informatie dan ik al had.
Yep, dat dus. Maar het database bestand wordt ook geen byte groter en de server doet helemaal niets lijkt het. CPU verbruik gaat niet omhoog en in Domoticz zelf zie ik helemaal niets verschijnen.Met een lege database starten en vervolgens binnen Domoticz een restore uitvoeren lijkt helemaal niets te doen verder.
Hoe bedoel je dit? Je start met een lege database, opent Domoticz (http://<serverIP>:8080 en kiest voor Instellingen - Instellingen - Herstel database? En dan? Reboot je de server? Zie je wel iets onder Hardware?
Aan mensen die me ipv mijn gebruiken: hebben jullie in het echt ook zo'n spraakgebrek?
En als je een andere poort probeert, bijvoorbeeld 9090?
Pvoutput 3.190 Wp Zuid; Marstek Venus 5.12 kWh; HW P1; BMW i4 eDrive40
9090 is al in gebruik, maar op bijvoorbeeld 8585 heb ik exact hetzelfde probleem. Ook een alternatief voor 443, bijvoorbeeld 4430 geeft geen succes helaas.Pietervs schreef op maandag 1 december 2025 @ 15:33:
Dat werkt met het volledig pad naar domoticz.log.
En als je een andere poort probeert, bijvoorbeeld 9090?
Aan mensen die me ipv mijn gebruiken: hebben jullie in het echt ook zo'n spraakgebrek?
Ook deze geeft eigenlijk weinig oplossingen: https://forum.domoticz.com/viewtopic.php?t=39683
Behalve eventueel eens proberen te starten als administrator? Of had je dat al gedaan?
Pvoutput 3.190 Wp Zuid; Marstek Venus 5.12 kWh; HW P1; BMW i4 eDrive40
Ja, allemaal al gedaan.Pietervs schreef op maandag 1 december 2025 @ 16:44:
wel bijzonder. De foutmelding zie je wel terug op de fora, maar eigenlijk alleen maar gerelateerd aan IPv6.
Ook deze geeft eigenlijk weinig oplossingen: https://forum.domoticz.com/viewtopic.php?t=39683
Behalve eventueel eens proberen te starten als administrator? Of had je dat al gedaan?
Het vreemde is, ik heb 'm straks nog werkend gekregen. Het draait nu een beetje half, maar het lijkt erop dat als ik nu de service stop en weer wil starten het weer om zeep is. Had een nieuwe installatie gedaan. Service gestopt, domoticz.db vervangen door eentje uit de backup en weer starten. Gek genoeg start 'ie dan wel, maar straks ging het weer fout toen ik de server nog een keer ging rebooten.
Ik kwam de foutmelding verder ook al nergens tegen. En zag ergens een oplossing: "zet IPv6 uit", maar die stond al uit.
Edit: en inmiddels bevestigd. Service weer stoppen en weer proberen te starten en het probleem is weer terug...
Edit2: En met 2024.6 lijkt dit wel te lukken...
Edit3: En dit lijkt nu uiteindelijk wel het probleem:
1
2
| 2025-12-01 21:07:57.828 Error: SQL Query("DELETE FROM Percentage") : database disk image is malformed
2025-12-01 21:07:57.969 Error: SQL Query("VACUUM") : database or disk is full |
De disk is niet vol, maar de database is 500MB ongeveer, dat lijkt het maximum te zijn.
[ Voor 19% gewijzigd door Metalfreak op 01-12-2025 21:11 ]
Aan mensen die me ipv mijn gebruiken: hebben jullie in het echt ook zo'n spraakgebrek?
Maar nu weet ik nagenoeg niks van SQL, dus hopelijk zit er hier iemand die je daar mee kan helpen?
Want die database kan misschien wel verkleind worden, misschien door oude data te verwijderen?
Overigens: hoe kom je aan een database van 500 Mb?
Mijn Domoticz gaat terug tot 2017 en telt maar 1,4 Mb.
Pvoutput 3.190 Wp Zuid; Marstek Venus 5.12 kWh; HW P1; BMW i4 eDrive40
Daar zijn wel oplossingen voor te vinden. Volgens mij is exporteren en importeren in een nieuwe al een oplossing. Dat kan met een tooltje als sqlitebrowser, even googlen.
Trouwens, gebruik je een SD kaartje? Sinds ik op een ssd draai (en eerder een tijdje op een read-only filesystem) heb ik dat soort fouten niet meer gehad.
Nee, mijn Domoticz installatie draait op een Windows Server VM (eerst ESXi, nu ProxMox) die gewoon op een SSD draait onderhuids. Al jaren trouwens.janne_nl schreef op dinsdag 2 december 2025 @ 08:08:
Lijkt me niet dat de database vol is, volgens mij heb ik wel groottes van meer dan een Gb gezien. Ik denk dat er een fout in de database zit. Maar ook door fouten in de database kan die wel groot lijken. Ik kan zo niet controleren hoe groot de database is. Hij draait sinds 2014. Ik heb alleen een hele tijd terug het aantal dagen log bewaren van 7 naar 4 gezet.
Daar zijn wel oplossingen voor te vinden. Volgens mij is exporteren en importeren in een nieuwe al een oplossing. Dat kan met een tooltje als sqlitebrowser, even googlen.
Trouwens, gebruik je een SD kaartje? Sinds ik op een ssd draai (en eerder een tijdje op een read-only filesystem) heb ik dat soort fouten niet meer gehad.
Log had ik al tijden op slechts 3 dagen staan.
Dat exporteren was ik ook al mee bezig. Het exporteren is zo gedaan en de dump.sql is dan ongeveer 134MB groot. Maar vervolgens deze dump weer importeren in een nieuwe databasebestand duurt uuuuuuren. Had m'n laptop vannacht aangezet daarvoor, maar na een paar uur is deze uitgevallen en was het helaas nog niet klaar. Dus vanochtend even opnieuw aangezet met andere energiebeheerinstellingen en eens even afwachten. Wel zag ik dus in die export dat de tabellen LightingLog en Percentage echt extreem veel entries hebben. Dat lijkt me ook niet geheel de bedoeling, want ik stel echt niet zovaak iets bij. Het lijkt soms meer entries per seconde te tonen.
Aan mensen die me ipv mijn gebruiken: hebben jullie in het echt ook zo'n spraakgebrek?
Al geüpdatet naar de nieuwe versie, maar helpt niet. Iemand een idee hoe ik de oorzaak kan achterhalen? Log geeft geen foutmeldingen. Heb het draaiende op Raspbian OS op een RPI3b
- Scripts/code graag tussen ~[code] ~[/code] tags voor de leesbaarheid.
- dzVents vragen? Lees eerst even de wiki door!
- Lees ook de openingspost door!
- Sommige vragen kunnen opgelost worden door zelf even Google te gebruiken, probeer dat eerst voordat je een vraag hier stelt!