Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

Domoticz - open source domotica systeem - deel 4 Vorige deelOverzicht

Pagina: 1 ... 79 ... 82 Laatste
Acties:

Onderwerpen


  • Wiley99
  • Registratie: juni 2014
  • Laatst online: 23-02 12:47
bvsteyn schreef op zaterdag 8 februari 2020 @ 21:03:
Heb al een tijdje een RPI 3B+ draaien en laatst een kapotte SD kaart. Dus alle opnieuw geïnstalleerd en nu draait het weer naar behoren. Direct de backups ook maar ingeregeld, want kost wel heel veel tijd om alles weer te installeren en uit te zoeken.

Vandaag ook nog mijn oude RPI 1 uit 2012 (via Farnell besteld destijds) onder het stof vandaag gehaald. De UniFi controller daarop installeren was een slecht idee..niet vooruit te branden..
Maar PiHole draait er prima op. Dus is ie gelijk van nut. Iemand nog tips om meer te doen met dit oude beestje?

Nu maar op zoek naar een RPI 4 om als main Domoticz device te gaan inrichten. De 3B+ zal dan mijn testdevice worden en om Action pluggen te flashes of zo..
Eens met wat @Chrisje1983 zegt over domoticz en de rpi3, ik zijn nog wat verhalen over problemen met sommige onderdelen op de 4. Domoticz draaide bij mij op de rpi1 ook goed (nu staat Domoticz daarop uit, dient alleen als backup als de rpi3 uit zou vallen). Gebruikt dan wel continu zo'n 50-60% Cpu.
Nu is mijn rpi1 de Caddy webserver (en fail2ban), openvpn server, Pihole en grafana server. Komt zelden boven de 0,25 5 min. load uit.

A polar bear is a rectangular bear after a coordinate transform

@Wiley99,
werkt dat echt als je een 1 inzet als backup van je 3? ik ben geupgrade naar een 3 omdat ik bijvoorbeeld zigbee2mqtt niet aan de praat kreeg. architectuur ondersteunde e.o.a. niet (meer).

teruggaan naar een 1 zou dan hooguit zijn voor de hoognodige dingen.

ik herken overigens het CPU gebruik op de 1 vergeleken met de 3.

făbŞŤĄŘ - Mijn PC


  • Wiley99
  • Registratie: juni 2014
  • Laatst online: 23-02 12:47
Ik heb alleen wifi en rfx apparaten dus geen last van zigbee en zwave waar hier het forum mee vol staat >:)
Dus dan werkt het wel. Maar het is ook echt voor het gemak, want alles is ook gewoon met schakelaars of afstandsbediening bedienbaar.

Data verzamelen en presenteren doe ik allemaal buiten domoticz om.

Wiley99 wijzigde deze reactie 09-02-2020 17:11 (12%)

A polar bear is a rectangular bear after a coordinate transform


  • Greenisthebest
  • Registratie: november 2019
  • Laatst online: 23:55
Toppe schreef op zondag 9 februari 2020 @ 09:15:
Krijg net de eind afrekening van de energiemaatschappij. Krijg toch even €1487 terug :*)

(Voorschot staat op €150, uiteindelijk €3xx daadwerkelijk verbruikt)

Toch leuk om deze info bij te houden met Domoticz
Dit bedrag had je beter kunnen beleggen en bijhouden in Excell. Had je meer opgeleverd. 8) Nu heb je de energiemaatschappij goedkoop een lening verstrekt. ;)

  • darklord007
  • Registratie: augustus 2004
  • Laatst online: 22:35
Ik wilde de plugin manager installeren volgens:

wiki
filmpje

alles uitgevoerd, en alles hetzelfde gekregen dan in het filmpje

domoticz/plugins staat vol met de bestanden die er moeten staan incl plugin.py

Ik heb m gereboot, maar hij wordt niet zichtbaar in de hardware lijst.

Iemand enig idee wat ik nog zou kunnen doen?

  • icecreamfarmer
  • Registratie: januari 2003
  • Laatst online: 21-02 19:14
Gisteren ging de update van de mijn rasberry pi mis en zodoende vandaag bezig met een herinstal.

Dit werkte totdat ik de backup wilde terug plaatsen er leek niets toegevoegd of veranderd te zijn.
Dus ik reboot om het nog een keer te checken maar nu kom ik de interface niet meer in.
Heb het net weer geinstalleerd maar blijf hetzelfde probleem houden.
pi@raspberrypi:~ $ wget 192.168.0.115:8080
--2020-02-09 20:33:50-- http://192.168.0.115:8080/
Connecting to 192.168.0.115:8080... failed: Connection refused.
Localhost lijkt te werken:
pi@raspberrypi:~ $ wget localhost
--2020-02-09 20:38:59-- http://localhost/
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3976 (3.9K) [text/html]
Saving to: ‘index.html.1’

index.html.1 100%[=============================================================>] 3.88K --.-KB/s in 0s

2020-02-09 20:38:59 (128 MB/s) - ‘index.html.1’ saved [3976/3976]
En de service draait gewoon:
pi@raspberrypi:~ $ sudo service domoticz.sh status
● domoticz.service - LSB: Home Automation System
Loaded: loaded (/etc/init.d/domoticz.sh; generated)
Active: active (exited) since Sun 2020-02-09 20:31:47 CET; 8min ago
Docs: man:systemd-sysv-generator(8)
Process: 6068 ExecStart=/etc/init.d/domoticz.sh start (code=exited, status=0/SUCCESS)

Feb 09 20:31:47 raspberrypi systemd[1]: Starting LSB: Home Automation System...
Feb 09 20:31:47 raspberrypi domoticz.sh[6068]: 2020-02-09 20:31:47.139 Status: Domoticz V4.10717 (c)2012-2019 GizMoCuz
Feb 09 20:31:47 raspberrypi domoticz.sh[6068]: 2020-02-09 20:31:47.140 Status: Build Hash: b38b49e5, Date: 2019-05-09 13:04:08
Feb 09 20:31:47 raspberrypi domoticz.sh[6068]: 2020-02-09 20:31:47.140 Status: Startup Path: /home/pi/domoticz/
Feb 09 20:31:47 raspberrypi domoticz.sh[6068]: domoticz: Domoticz is starting up....
Feb 09 20:31:47 raspberrypi domoticz[6074]: Domoticz is starting up....
Feb 09 20:31:47 raspberrypi domoticz[6075]: Domoticz running...
Feb 09 20:31:47 raspberrypi systemd[1]: Started LSB: Home Automation System.
Ik draai pihole maar die heb ik uitgezet. Het probleem blijft echter.

https://www.domoticz.com/...iewtopic.php?f=47&t=19228
Dit ook gevolgd maar biedt geen soelaas.

ik zie ik zie wat jij niet ziet


  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
De service draait niet, er staat active (exited), als de service draait moet er active (running) staan.

  • icecreamfarmer
  • Registratie: januari 2003
  • Laatst online: 21-02 19:14
Peutpeut schreef op zondag 9 februari 2020 @ 20:47:
De service draait niet, er staat active (exited), als de service draait moet er active (running) staan.
Aha maar die start toch automatisch op?
Dit commando:
sudo service domoticz.sh start

Veranderd niets aan de status.

Overigens na een restart is hij wel running maar blijft de situatie hetzelfde.
En na een korte tijd gaat hij weer naar active.

sudo netstat -lpn Hieruit blijkt dat de webserver niet draaid er wordt niet naar 8080 geluisterd.

Edit:
De database weggegooid, herstart gedaan en nu kan ik wel in de webinterface.
Het aparte is alleen dat het terugplaatsen van de database niets lijkt te doen al mijn devices en scripts zijn nog steeds weg.

Edit2:
Na het terugplaatsen van de database en een herstart werkt de webinterface niet meer en krijg ik een offline melding. :? Moet ik nu vanaf de grond af alles gaan opbouwen?

Edit3:
Een oudere db werkt wel gelijk. Lijkt er dus op dat er een database corrupt is geraakt. Hoe kan dat?
Want zo heeft backuppen geen enkele zin. Ook de orginele db file waar hij gisteren nog goed op draaide is corrupt.

EDit4: Blijkbaar draaide ik een beta versie van 8 juli 2019. Is er een manier om die te installeren?
Dan zou ik de DB weer terug moeten kunnen zetten. Domoticz op beta kanaal zetten werkte niet krijg dan een melding dat hij niet kan communiceren met de server.

icecreamfarmer wijzigde deze reactie 09-02-2020 21:38 (82%)

ik zie ik zie wat jij niet ziet


  • ronjansen87
  • Registratie: december 2009
  • Laatst online: 23-02 15:20
bvsteyn schreef op zaterdag 8 februari 2020 @ 21:03:
Heb al een tijdje een RPI 3B+ draaien en laatst een kapotte SD kaart. Dus alle opnieuw geïnstalleerd en nu draait het weer naar behoren. Direct de backups ook maar ingeregeld, want kost wel heel veel tijd om alles weer te installeren en uit te zoeken.

Vandaag ook nog mijn oude RPI 1 uit 2012 (via Farnell besteld destijds) onder het stof vandaag gehaald. De UniFi controller daarop installeren was een slecht idee..niet vooruit te branden..
Maar PiHole draait er prima op. Dus is ie gelijk van nut. Iemand nog tips om meer te doen met dit oude beestje?

Nu maar op zoek naar een RPI 4 om als main Domoticz device te gaan inrichten. De 3B+ zal dan mijn testdevice worden en om Action pluggen te flashes of zo..
Ik gebruik de nodige pi's voor oa het volgende, misschien kan je er wat mee ;)

Pi 2 in de meterkast (gevoed vanuit elders via een poe splitter zodat ie in de lucht blijft vanuit de UPS):
- Draait avahi-daemon om mdns/bonjour tussen vlans te regelen
- Draait usb2net om de USB S0 pulsenteller en P1 kabel op de slimme meter door te sturen naar domoticz
- Draait een losstaand scriptje op dat checkt via de P1 kabel of de hoofdaansluiting te zwaar wordt belast en zet dan via de Tesla API de laadsnelheid lager.
- Hangt een DHT22 luchtvochtigheid/temp sensor aan voor in de kruipruimte (omdat t kan :+)
- Hangt een vlotter-contactje aan voor het waterfilter (als zout bijgevuld moet worden)
- Draait homebridge als domoticz<>homekit bridge zodat eea werkt in het wifi/multimedia vlan
- Draait influxdb/graphana voor domoticz
- Voorheen zat de deurbel er ook op

Pi 3+ met pi-touchscreen en poe-hat als "airco controller" in de woonkamer, op de plek waar eerst de thermostaat zat.
- Draait android (EmteriaOS) in kiosk mode met alleen de daikin app.
- Komt nog een pi-camera module onder te hangen als beveiligingscamera voor binnen (cameras binnen worden alleen geactiveerd als de aanwezigheidssensor uit staat in domoticz)

Pi 3 met poe-bordje en pi-cameramodule onder de overkapping in de achtertuin.
- Draait RasPlex als mediaspeler en stuurt tevens de camerabeelden van de nachtzicht-camera door naar een Zoneminder VM.

Pi 3 met poe-splitter en cameramodule in mn EV-BOX/schuur:
- Als bev. camera
- WiFi AP voor de auto
- Heeft een Ampere-sensor voor de wasdroger (voor gereed-notificaties) en stuurt via een fake sensorsignaal de gardena sproeicomputers aan voor de beregening in de tuin.

- Pi 2 met poe-splitter en cameramodule weggewerkt in de keuken, als bev. camera. Camera werkt alleen als ik niet thuis ben.

- Pi 2 als audio receiver voor de marine-speakers in de badkamer.

- Pi 2 als audio receiver (hangt aan een cambridge dacmagic) voor de woonkamer

Heb ook nog een pi zero en een pi2 liggen voor experimentjes e.d. Ik heb onderhand ook zoveel goedkope SD-kaartjes verbrand met die krengen dat ik ze nu, op de android pi na, allemaal laat booten vanaf het netwerk vanaf 1 grote SSD in de nas. De android pi heeft een Samsung endurance pro ssd, die blijven in mijn ervaring wél heel.

All-electric: 2x Daikin US, Daikin FTXM, Boiler, Weber Pulse, Tesla Model 3 LR RWD


  • bvsteyn
  • Registratie: november 2003
  • Laatst online: 06:31
Je hebt genoeg draaien zeg! Dat met die camera module is nog best interessant trouwens. Misschien ook maar eens een project voor verzinnen.

Ik heb vooralsnog besloten om de 3+ te laten draaien zoals hij nu draait. Draait vlot en werkt perfect. Inmiddels ook de RFXCOM en de slimme meter draaiend erop.

Denk dat ik dan de RPI4 gewoon aanschaf om de tv boven te voorzien van streaming mediaplayer functionaliteit middels KODI.

Daarnaast zal het als als test bordje gebruikt gaan worden. Kwestie van wat extra SD kaartjes aanschaffen dus.. :)

  • ronjansen87
  • Registratie: december 2009
  • Laatst online: 23-02 15:20
bvsteyn schreef op maandag 10 februari 2020 @ 11:17:
[...]


Je hebt genoeg draaien zeg! Dat met die camera module is nog best interessant trouwens. Misschien ook maar eens een project voor verzinnen.

Ik heb vooralsnog besloten om de 3+ te laten draaien zoals hij nu draait. Draait vlot en werkt perfect. Inmiddels ook de RFXCOM en de slimme meter draaiend erop.

Denk dat ik dan de RPI4 gewoon aanschaf om de tv boven te voorzien van streaming mediaplayer functionaliteit middels KODI.

Daarnaast zal het als als test bordje gebruikt gaan worden. Kwestie van wat extra SD kaartjes aanschaffen dus.. :)
Dank, 1 tipje nog dan: Er zijn camerakabels van ~1 meter voor een paar euro, dan is eea wat makkelijker te plaatsen/verstoppen. Deze tool maakt ze ook heel makkelijk te beheren en aan je NVR te koppelen: https://blog.ronnyvdb.net...ogy-surveillance-station/

Hou er bij de Pi4 met kodi wel rekening mee dat de videodrivers voor de 4 nog behoorlijk beta zijn.

All-electric: 2x Daikin US, Daikin FTXM, Boiler, Weber Pulse, Tesla Model 3 LR RWD


  • Wiley99
  • Registratie: juni 2014
  • Laatst online: 23-02 12:47
Leuk om te lezen ook al is het wat off topic hier >:) Ik krijg altijd weer nieuwe ideeën.
Hier zijn nog veel meer Pi projectjes te vinden, ongelofelijk wat sommige mensen kunnen.

A polar bear is a rectangular bear after a coordinate transform


  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
Hier afgelopen weekend ook weer geklust met de Pi (inmiddels Pi's) en Domoticz. Ter voorbereiding op de upgrade naar Buster een recente image gemaakt van de Pi3. Ook een nieuwe Pi4 in gebruik genomen voor de Unifi Controller en PiHole en alles wat er nog bij komt in de komende tijd. De Pi3 blijft Domoticz draaien met InfluxDB en Grafana. De rest hierbij was helaas teveel aan RAM voor alleen de Pi3.

In Domoticz dummy sensors aangemaakt die de waarde weergeven van de electra en gasmeter van die dag, deze worden doorgestuurd naar Influx en zichtbaar gemaakt in Grafana zodat er geen ingewikkelde queries noodzakelijk zijn. Mijn Grafana dashboard ziet er tot nu to zo uit: https://snapshot.raintank...4K1s8zdILhwUx3Rm5XnXow5lj

Verder nog een aantal nieuwe nodes opgenomen in het Zwave netwerk.

  • bvsteyn
  • Registratie: november 2003
  • Laatst online: 06:31
Peutpeut schreef op maandag 10 februari 2020 @ 14:48:
Hier afgelopen weekend ook weer geklust met de Pi (inmiddels Pi's) en Domoticz. Ter voorbereiding op de upgrade naar Buster een recente image gemaakt van de Pi3. Ook een nieuwe Pi4 in gebruik genomen voor de Unifi Controller en PiHole en alles wat er nog bij komt in de komende tijd. De Pi3 blijft Domoticz draaien met InfluxDB en Grafana. De rest hierbij was helaas teveel aan RAM voor alleen de Pi3.

In Domoticz dummy sensors aangemaakt die de waarde weergeven van de electra en gasmeter van die dag, deze worden doorgestuurd naar Influx en zichtbaar gemaakt in Grafana zodat er geen ingewikkelde queries noodzakelijk zijn. Mijn Grafana dashboard ziet er tot nu to zo uit: https://snapshot.raintank...4K1s8zdILhwUx3Rm5XnXow5lj

Verder nog een aantal nieuwe nodes opgenomen in het Zwave netwerk.
Gaaf hoor! Waar komen de temperatuurmetingen van de diverse ruimtes vandaan?

  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
Lizard schreef op donderdag 6 februari 2020 @ 22:59:
[...]
Zo snel heb ik geen idee waar dit door komt, zelf gebruik ik nog apache...
Zou het kunnen zijn dat je popup blocker van je browser misschien voor problemen zorgt?
Vandaag even naar gekeken. De pop-up blocker is het niet en ook ABP staat uit op het specifieke domein.
bvsteyn schreef op maandag 10 februari 2020 @ 18:34:
[...]
Gaaf hoor! Waar komen de temperatuurmetingen van de diverse ruimtes vandaan?
Die komen van Neo Coolcam bewegingssensoren die ook temperatuur kunnen registreren. Deze gebruik ik om de verlichting en/of andere apparaten te schakelen dus ik laat ze ook meteen de temperatuur registreren. :)

Peutpeut wijzigde deze reactie 10-02-2020 18:36 (34%)


  • icecreamfarmer
  • Registratie: januari 2003
  • Laatst online: 21-02 19:14
icecreamfarmer schreef op zondag 9 februari 2020 @ 20:49:
[...]


Aha maar die start toch automatisch op?
Dit commando:
sudo service domoticz.sh start

Veranderd niets aan de status.

Overigens na een restart is hij wel running maar blijft de situatie hetzelfde.
En na een korte tijd gaat hij weer naar active.

sudo netstat -lpn Hieruit blijkt dat de webserver niet draaid er wordt niet naar 8080 geluisterd.

Edit:
De database weggegooid, herstart gedaan en nu kan ik wel in de webinterface.
Het aparte is alleen dat het terugplaatsen van de database niets lijkt te doen al mijn devices en scripts zijn nog steeds weg.

Edit2:
Na het terugplaatsen van de database en een herstart werkt de webinterface niet meer en krijg ik een offline melding. :? Moet ik nu vanaf de grond af alles gaan opbouwen?

Edit3:
Een oudere db werkt wel gelijk. Lijkt er dus op dat er een database corrupt is geraakt. Hoe kan dat?
Want zo heeft backuppen geen enkele zin. Ook de orginele db file waar hij gisteren nog goed op draaide is corrupt.

EDit4: Blijkbaar draaide ik een beta versie van 8 juli 2019. Is er een manier om die te installeren?
Dan zou ik de DB weer terug moeten kunnen zetten. Domoticz op beta kanaal zetten werkte niet krijg dan een melding dat hij niet kan communiceren met de server.
Dit ondertussen werkend (laatste beta geinstalleerd en die pakt de DB wel) en alles draait met één maar. Alle knoppen en zo werken maar bij devices krijg ik niets te zien. Is een compleet blauw scherm maakt niet uit of ik op used, unused of all klik er verschijnt geen tabel.

Ook als ik de selector switch voor de sonos aansturing wil veranderen krijg ik niet dit:


Maar is de tekst:
Selector Levels: {{ :: 'Level name' | translate}}:
Krijg dus geen tabel te zien.

Edit: https://www.domoticz.com/...iewtopic.php?f=47&t=31109
Is dus een chrome probleem maar die forum starter weet niet hoe hij het verholpen heeft.

icecreamfarmer wijzigde deze reactie 10-02-2020 19:06 (10%)

ik zie ik zie wat jij niet ziet


  • Dylantje2
  • Registratie: april 2007
  • Laatst online: 23-02 16:09
domme vraag....

Is het mogelijk via de interne editor dz of lua of python een crontab aan te slingeren?
Nu heb ik via root 2 en via pi wel 5 crontabs lopen..
Voor het overzichtelijk houden enz enz enz

Lijkt het me mooi om een crontab via domoticz zelf.. en dan zit eea ook in de DB van domotic z:-)

zonneboiler, pelletkachel, 27 panels, Atlantic Wpb, pana 5 Kw H met LANbox, Domoticz, Grafana, Solarmeters, WPboiler: http://wqd.nl/dP9y, WP: http://wqd.nl/9GVg, Pana H versie thread: https://bit.ly/2Or4Unp


  • bvsteyn
  • Registratie: november 2003
  • Laatst online: 06:31
Heb inmiddels Domoticz zover dat hij data stuurt van mijn P1 smartmeter naar de InfluxDB 'Domoticz' en heb daarnaast Grafana geinstalleerd. Ik wil nu simpelweg kijken of ik iets in de database heb staan hiervan, maar snap ff niet hoe ik een simpele query moet maken om uberhaupt iets te zien in Grafana .. :?

Gaat mij nu meer om een simpele test of ik data zie, maar snap blijkbaar de structuur nog niet helemaal. Dit is wat ik oa push naar de influx database:

code:
1
63 (IDX)    Gas (Devicename)    Gas usage (value to send)


Heb echter geen idee of die info idd ook doorkomt in de database. Wat moet ik hiervan gebruiken in de query om bijvoorbeeld mijn gasverbruik in Grafana te kunnen zien? Iemand een tip waarmee ik een klein stapje verder kom?

bvsteyn wijzigde deze reactie 11-02-2020 07:54 (5%)


  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
bvsteyn schreef op dinsdag 11 februari 2020 @ 07:54:
Heb inmiddels Domoticz zover dat hij data stuurt van mijn P1 smartmeter naar de InfluxDB 'Domoticz' en heb daarnaast Grafana geinstalleerd. Ik wil nu simpelweg kijken of ik iets in de database heb staan hiervan, maar snap ff niet hoe ik een simpele query moet maken om uberhaupt iets te zien in Grafana .. :?

Gaat mij nu meer om een simpele test of ik data zie, maar snap blijkbaar de structuur nog niet helemaal. Dit is wat ik oa push naar de influx database:

code:
1
63 (IDX)    Gas (Devicename)    Gas usage (value to send)


Heb echter geen idee of die info idd ook doorkomt in de database. Wat moet ik hiervan gebruiken in de query om bijvoorbeeld mijn gasverbruik in Grafana te kunnen zien? Iemand een tip waarmee ik een klein stapje verder kom?
Maak eens een grafiek aan met deze query (handmatig invoeren):
code:
1
SELECT derivative(mean("value"),1h) FROM "Gas-usage" WHERE $timeFilter GROUP BY time(1h) fill(previous)

Dat levert bij mij het gasverbruik per uur op, zie deze link voor het resultaat: https://snapshot.raintank...4K1s8zdILhwUx3Rm5XnXow5lj

Peutpeut wijzigde deze reactie 11-02-2020 08:53 (3%)


  • skai21
  • Registratie: april 2011
  • Laatst online: 22:34
Ik heb een vraagje, ik ben een beetje aan het rommelen om correcte waardes uit te lezen en weer in een ander device te proppen met dZevents of LUA.
Echter vooral dat eerste deel, de correcte waarde krijgen vind ik lastig.
Wat ik wil bereiken is de opbrengst van mijn Enphase Zonnepanelen uitdrukken in kWh/kWP.
Ofwel de som maken: opbrengst vandaag in kWh / 13725 kWp (wat er op mijn dak ligt).
Op die manier kan ik dagelijks de efficiency uit lezen van mijn Zonnepanelen (info die ik leuk vind :) )
Ik heb de huidige waarde:


Alleen hoe kan ik mijn scripts de omcirkelde waarde van Today gebruiken in mijn scripts.
Momenteel heb ik:

Ik ben dus eigenlijk op zoek naar de value die wel .whtoday is, want deze doet het niet :-P
Domoticz heeft al ergens de usage van vandaag uitgerekend / opgeslagen, want het wordt weergegeven. Maar kan ik hem ook gebruiken in een script O-)
Kan ik ergens alle variables van een device uitlezen?

skai21 wijzigde deze reactie 11-02-2020 10:32 (7%)


  • MikeyMan
  • Registratie: februari 2003
  • Nu online

MikeyMan

Vidi, Vici, Veni

MikeyMan schreef op zaterdag 8 februari 2020 @ 17:52:
[...]


Hmm… daar had ik niet aan gedacht...

Here goes:

[...]


Moet nog wat vertalen her en der :)

Heb een aan/uit switch gemaakt met:
Aan actie: script://somfy.sh --ZoneAOn
Uit actie: script://somfy.sh --AlarmeOff
Iemand nog enig idee?

Heb dus drie dummie knoppen aangemaakt, met respectievelijk de volgende acties:

Zone A:
Aan actie: script://somfy.sh --ZoneAOn
Uit actie: script://somfy.sh --AlarmeOff

Zone B:
Aan actie: script://somfy.sh --ZoneBOn
Uit actie: script://somfy.sh --AlarmeOff

Zone C:
Aan actie: script://somfy.sh --ZoneCOn
Uit actie: script://somfy.sh --AlarmeOff


Maar gek genoeg worden ze én alledrie tegelijk getriggerd bij het aanklikken van 1 knop én elke x seconden daarna weer uitgevoerd. Ben een prutser met scripts, dus wellicht heeft dit er iets mee te maken. Ben al heel lang bezig geweest om dit uberhaupt via de commandline aan de praat te krijgen, maar dit lukt nu inmiddels.

  • adjego
  • Registratie: december 2004
  • Laatst online: 06:56
skai21 schreef op dinsdag 11 februari 2020 @ 10:27:
Ik heb een vraagje, ik ben een beetje aan het rommelen om correcte waardes uit te lezen en weer in een ander device te proppen met dZevents of LUA.
Echter vooral dat eerste deel, de correcte waarde krijgen vind ik lastig.
Wat ik wil bereiken is de opbrengst van mijn Enphase Zonnepanelen uitdrukken in kWh/kWP.
Ofwel de som maken: opbrengst vandaag in kWh / 13725 kWp (wat er op mijn dak ligt).
Op die manier kan ik dagelijks de efficiency uit lezen van mijn Zonnepanelen (info die ik leuk vind :) )
Ik heb de huidige waarde:
[Afbeelding]

Alleen hoe kan ik mijn scripts de omcirkelde waarde van Today gebruiken in mijn scripts.
Momenteel heb ik:
[Afbeelding]
Ik ben dus eigenlijk op zoek naar de value die wel .whtoday is, want deze doet het niet :-P
Domoticz heeft al ergens de usage van vandaag uitgerekend / opgeslagen, want het wordt weergegeven. Maar kan ik hem ook gebruiken in een script O-)
Kan ik ergens alle variables van een device uitlezen?
Je hebt een typefout, het is:
code:
1
.WhToday

De W moet een hoofdletter zijn.

Domoticz | 2900 Wp PVOutput | Tesla Model 3 SR+ | Tesla Referral


  • bvsteyn
  • Registratie: november 2003
  • Laatst online: 06:31
Peutpeut schreef op dinsdag 11 februari 2020 @ 08:48:
[...]


Maak eens een grafiek aan met deze query (handmatig invoeren):
code:
1
SELECT derivative(mean("value"),1h) FROM "Gas-usage" WHERE $timeFilter GROUP BY time(1h) fill(previous)

Dat levert bij mij het gasverbruik per uur op, zie deze link voor het resultaat: https://snapshot.raintank...4K1s8zdILhwUx3Rm5XnXow5lj
Sukkel ben ik.. 8)7
Had gisteren de database configuratie wel gedaan binnen Domoticz, maar niet het vinkje 'enable' aangezet. Kwam er achter dat in in de log niks van influx voorbij zag komen. Nu komt er dus pas data binnen.. |:(

Nu kijken of ik iets van een dashboard kan gaan maken. Eerst die query editor ff zien te snappen dmv van wat youtube filmpjes.

  • EvJd
  • Registratie: mei 2014
  • Laatst online: 23-02 14:54
TheGabeMan schreef op maandag 20 januari 2020 @ 21:11:
Mijn domoticz is nog leeg op paar dummy sensoren na. Ik wil voordat ik mijn Action LSC lampen ga flashen om beter met domoticz te laten praten, eerst de google home integratie aan de gang hebben.

Klopt het dat Controlicz the way to go is?

En kan ik een dummy lamp of zo maken in domoticz die ik dan als test via google home -> controlicz -> domoticz aan en uit kan zetten?
Hoi, Controllicz is betaald. Kappelt gbridge stopt helaas per midden maart.
Ik heb beide gebruikt, maar zag bij het domoticz forum een interessant project staan "nora " in combinatie met Node red. Koppelt domoticz aan google home. Zeker interessant om naar te kijken.
Ik heb het inmiddels werkend met aan en uitschakelen van mijn milight lampen. Nu verder stoeien hoe ik rgb en brightness erin kan krijgen

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
TheGabeMan schreef op maandag 20 januari 2020 @ 21:11:
Mijn domoticz is nog leeg op paar dummy sensoren na. Ik wil voordat ik mijn Action LSC lampen ga flashen om beter met domoticz te laten praten, eerst de google home integratie aan de gang hebben.

Klopt het dat Controlicz the way to go is?
Ik heb zelf https://www.domoticz.com/...e_Assistant_Server_python gebruikt, zie ook: rens-br in "Domoticz - open source domotica systeem - deel 4" voor mijn bevindingen / handleiding hoe het in te stellen.

  • Lizard
  • Registratie: februari 2000
  • Laatst online: 23-02 14:05
TheGabeMan schreef op maandag 20 januari 2020 @ 21:11:
Mijn domoticz is nog leeg op paar dummy sensoren na. Ik wil voordat ik mijn Action LSC lampen ga flashen om beter met domoticz te laten praten, eerst de google home integratie aan de gang hebben.

Klopt het dat Controlicz the way to go is?

En kan ik een dummy lamp of zo maken in domoticz die ik dan als test via google home -> controlicz -> domoticz aan en uit kan zetten?
Zelf gebruikte ik ook gBridge.io. Maar doordat die per 15 maart stopt heb ik afgelopen weekend wat tijd gestoken in de self-hosted oplossing en dat heb ik met behulp van het forum ook aan de praat gekregen.

https://community.gbridge...g-for-rpi-self-hosted/115

Lizard wijzigde deze reactie 11-02-2020 15:15 (4%)


  • Ironburn
  • Registratie: juni 2009
  • Laatst online: 16-02 22:27
klump4u schreef op dinsdag 30 april 2019 @ 14:01:
@DjAntoon
S0 van de kwh meter naar gnd en gpio 23 van de pi.
In Domoticz een dummie sensor maken , type Electric (instant+counter)
In onderstaand python script je ip van domoticz aanpassen, de IDX van de dummie sensor en op regel 31 staat: ELEC_DELTA += 0.5, dit is een 0.5 omdat mijn kwh meter 2000 pulsen geeft, heeft je kwh meter 1000 pulsen dan zet je dit op 1.
Naam van het script b.v.: kwh.py
Als je dit script in de map home/pi plaatst op de pi moet je zorgen dat het automatisch mee opstart als je pi reboot.
Doe dan : sudo nano /etc/rc.local
type onder de laatste regel die begint met een # het volgende : python /home/pi/kwh.py &
saven en rebooten.

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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/usr/bin/python

import time
import json
import urllib2
import threading
import logging
import logging.handlers
import os
from gpiozero import DigitalInputDevice

GET_URL = 'http://192.168.0.17:8080/json.htm?type=devices&rid=%d'
SET_URL = 'http://192.168.0.17:8080/json.htm?type=command&param=udevice&idx=%d&svalue=%d'
ELEC_DELTA = 0
ELEC_IDX = 22
ELEC_GPIO = 23
ELEC_COUNTER_LOCK = threading.Lock()
ELEC_LAST_TIME = 0
ELEC_POST_TIME = 0

def elec_intr():
    tme = time.time()
    global ELEC_DELTA
    global ELEC_LAST_TIME
    global ELEC_POST_TIME
    with ELEC_COUNTER_LOCK:
        ELEC_LAST_TIME = tme
        if ELEC_POST_TIME == 0:
            ELEC_POST_TIME = ELEC_LAST_TIME
        else:
            ELEC_DELTA += 0.5
    logging.debug( 'Electricity counter tick: %d' % ELEC_DELTA )

def main():
    global ELEC_DELTA
    global ELEC_LAST_TIME
    global ELEC_POST_TIME
    global ELEC_COUNTER

    syslog = logging.handlers.SysLogHandler(address='/dev/log', facility='local1')
    syslog.setFormatter(logging.Formatter('local_sensors.py: %(levelname)s %(message)s'))
    logging.getLogger().addHandler(syslog)
    logging.getLogger().setLevel(logging.INFO)

    while True:
        try:
            res = json.load(urllib2.urlopen(GET_URL % ELEC_IDX))
            if res['status'] != 'OK':
                raise Exception('Domoticz json error')
            break
        except Exception as e:
            logging.warning( e )
        time.sleep(30.0)

    ELEC_COUNTER = int(float(res['result'][0]['Data'][:-4]) * 1000)
#    ELEC_COUNTER = <Your initial count here * 1000, don't forget to remove after Domoticz updated!>
    logging.info( 'Current electricity counter is: %d' % ELEC_COUNTER )

    elecSensor = DigitalInputDevice(ELEC_GPIO, pull_up=True)
    elecSensor.when_deactivated = elec_intr

    os.nice(-20)

    logging.info('Polling loop starting')

    while True:
        time.sleep(60)

        with ELEC_COUNTER_LOCK:
            if ELEC_LAST_TIME > ELEC_POST_TIME:
                ELEC_LOAD = ELEC_DELTA * 3600 / ( ELEC_LAST_TIME - ELEC_POST_TIME )
            else:
                ELEC_LOAD = 0

            ELEC_COUNTER += ELEC_DELTA

            ELEC_DELTA = 0
            ELEC_POST_TIME = ELEC_LAST_TIME

        if ELEC_LOAD != 0:
            try:
                res = json.load(urllib2.urlopen((SET_URL+';%d') % (ELEC_IDX, int(ELEC_LOAD), ELEC_COUNTER)))
                if res['status'] != 'OK':
                    raise Exception('Domoticz json error')
                logging.info('Elec load %.2f counter %d' % (ELEC_LOAD, ELEC_COUNTER) )
            except Exception as e:
                logging.warning( e )
if __name__=="__main__":
    main()
Hallo daar,
ik heb het script gebruikt en het lijkt er op dat alles werkt. Zit alleen wel met een dingetje.
Ik heb me KWh meter geïnstalleerd voor me zonnepanelen. Mijn datalogger van me zonnepanelen geeft aan dat ik 93watt binnen haal en me KWH meter geeft in Domoticz aan dat ik 504 watt binnen haal. Hoe zou dit kunnen?
Ik heb een kwh meter van ES-32L

Ik hoor het graag.
Alvast bedankt

  • klump4u
  • Registratie: februari 2008
  • Niet online

klump4u

4980wp-Zuid-Limburg,

Ironburn schreef op dinsdag 11 februari 2020 @ 16:43:
[...]


Hallo daar,
ik heb het script gebruikt en het lijkt er op dat alles werkt. Zit alleen wel met een dingetje.
Ik heb me KWh meter geïnstalleerd voor me zonnepanelen. Mijn datalogger van me zonnepanelen geeft aan dat ik 93watt binnen haal en me KWH meter geeft in Domoticz aan dat ik 504 watt binnen haal. Hoe zou dit kunnen?
Ik heb een kwh meter van ES-32L

Ik hoor het graag.
Alvast bedankt
Kan met de instelling van het aantal pulsen van de S0 uitgang te maken hebben of het moment van berekenen, deze doet volgens mij om de 30 seconden een update geven naar Domoticz dus b.v. net veel zon of bewolking in de telling van 30 seconden. Totaal kWh klopt wel?

3020wp-ZW Live 1960wp-ZZW Live Altantic Explorer 270 Live


  • Ironburn
  • Registratie: juni 2009
  • Laatst online: 16-02 22:27
klump4u schreef op dinsdag 11 februari 2020 @ 17:39:
[...]


Kan met de instelling van het aantal pulsen van de S0 uitgang te maken hebben of het moment van berekenen, deze doet volgens mij om de 30 seconden een update geven naar Domoticz dus b.v. net veel zon of bewolking in de telling van 30 seconden. Totaal kWh klopt wel?
Hmm, er gaat iets anders fout denk ik. Domoticz geeft aan dat ik nog steeds verbruik, terwijl ik de s0+ van gpio 23 af heb gehaald. Iemand een idee?

  • tsjoender
  • Registratie: april 2005
  • Laatst online: 19:52
Ironburn schreef op dinsdag 11 februari 2020 @ 19:26:
[...]

Hmm, er gaat iets anders fout denk ik. Domoticz geeft aan dat ik nog steeds verbruik, terwijl ik de s0+ van gpio 23 af heb gehaald. Iemand een idee?
Klinkt als een "floating" IO. De spanning is niet constant en schommelt steeds tussen de drempelwaarde waarbij die als 0 of als 1 gerekend wordt. Dat zou ook goed kunnen verklaren waarom er meer pulsen geteld worden dan er werkelijk zijn. Je kan eens proberen een 4,7kOhm of 10kOhm weerstand tussen pin 23 en 3,3V te zetten. Daarmee is in "rust" die pin altijd 3,3V en schommelt die niet meer. Zo'n weerstand werkt dan als een pull-up weerstand.

  • bvsteyn
  • Registratie: november 2003
  • Laatst online: 06:31
Peutpeut schreef op maandag 10 februari 2020 @ 14:48:


In Domoticz dummy sensors aangemaakt die de waarde weergeven van de electra en gasmeter van die dag, deze worden doorgestuurd naar Influx en zichtbaar gemaakt in Grafana zodat er geen ingewikkelde queries noodzakelijk zijn. Mijn Grafana dashboard ziet er tot nu to zo uit: https://snapshot.raintank...4K1s8zdILhwUx3Rm5XnXow5lj

Verder nog een aantal nieuwe nodes opgenomen in het Zwave netwerk.
Toch nog een vraag over hoe je de weergave van de electra en gasmeter van die dag weergeeft binnen de dummy sensor. Ben ondertussen lekker aan het klussen met het dashbord, maar het weergeven binnen de dummy sensor en het doorgeven aan influx ben ik nog niet geheel achter..

  • Ironburn
  • Registratie: juni 2009
  • Laatst online: 16-02 22:27
tsjoender schreef op dinsdag 11 februari 2020 @ 19:35:
[...]


Klinkt als een "floating" IO. De spanning is niet constant en schommelt steeds tussen de drempelwaarde waarbij die als 0 of als 1 gerekend wordt. Dat zou ook goed kunnen verklaren waarom er meer pulsen geteld worden dan er werkelijk zijn. Je kan eens proberen een 4,7kOhm of 10kOhm weerstand tussen pin 23 en 3,3V te zetten. Daarmee is in "rust" die pin altijd 3,3V en schommelt die niet meer. Zo'n weerstand werkt dan als een pull-up weerstand.
Super. Ga ik morgen ff proberen. Dank.

  • klump4u
  • Registratie: februari 2008
  • Niet online

klump4u

4980wp-Zuid-Limburg,

Ironburn schreef op dinsdag 11 februari 2020 @ 19:26:
[...]

Hmm, er gaat iets anders fout denk ik. Domoticz geeft aan dat ik nog steeds verbruik, terwijl ik de s0+ van gpio 23 af heb gehaald. Iemand een idee?
Wat geeft hij dan nog aan als verbruik en wanneer is de laatste update van de sensor? Volgens mij gaat hij na een bepaalde tijd naar 0 watt ik weet niet hoe lang, tellen de kWh ook nog door?
Heb je bij de settings in Domoticz bij meters en counters electra op 1000 staan?

3020wp-ZW Live 1960wp-ZZW Live Altantic Explorer 270 Live


  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
bvsteyn schreef op dinsdag 11 februari 2020 @ 19:49:
[...]
Toch nog een vraag over hoe je de weergave van de electra en gasmeter van die dag weergeeft binnen de dummy sensor. Ben ondertussen lekker aan het klussen met het dashbord, maar het weergeven binnen de dummy sensor en het doorgeven aan influx ben ik nog niet geheel achter..
Bedoel je de twee tellers rechtsboven? Dit zijn twee dummysensoren (custom sensor) die ik via dZvents van een update voorzie. Die waarde is namelijk niet direct naar InfluxDB te sturen. Er zijn ook andere manieren om dit te doen maar dit leek mij de eenvoudigste. Ik gebruik hiervoor dit script:

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
-- Link naar InfluxDB voor het weergeven van het stroom- en gasverbruik

return {
    on = {
        devices = {322, 326},
    },
    logging = {
        level = domoticz.LOG_INFO,
        marker = "InfluxDB Link"
    },
    execute = function(domoticz, item)
        
        -- Locals
        local TodayElec = domoticz.devices(322).counterToday
        local TodayGas = domoticz.devices(326).counterToday
        
        -- Electra
        if(item.idx == 322) then
            domoticz.devices(339).updateCustomSensor(TodayElec)
            domoticz.log('InfluxDB waarde voor Electra is aangepast naar ' .. TodayElec .. ' kWh.', domoticz.LOG_INFO)
        end
        -- Gas
        if(item.idx == 326) then
            domoticz.devices(340).updateCustomSensor(TodayGas)
            domoticz.log('InfluxDB waarde voor Gas is aangepast naar ' .. TodayGas .. ' m3.', domoticz.LOG_INFO)
        end
    end
}

Vervolgens zorg ik ervoor dat device met IDX 339 en 340 gekoppeld zijn aan InfluxDB en die lees ik vervolgens uit met deze queries (idem voor gas):
code:
1
SELECT last("value") FROM "Percentage" WHERE ("name" = 'Stroom---Influx') AND $timeFilter

Wat ik niet begrijp is dat de waarde wordt weggeschreven als percentage in InfluxDB, maakt niet zoveel uit maar het viel me wel op.

Peutpeut wijzigde deze reactie 11-02-2020 22:27 (10%)


  • Malortje
  • Registratie: maart 2010
  • Laatst online: 12-02 10:43
Goedeavond ;)

Ik ben begonnen met domoticz en loop eigenlijk gelijk tegen problemen aan met me cc2531. Ik heb wel het een en ander rond gezocht zowel op git als hier maar kom er maar niet achter. Zou iemand mij kunnen helpen ?

Krijg de volgende melding.
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
> @serialport/bindings@8.0.6 install /opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings
> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild

prebuild-install WARN install EACCES: permission denied, access '/root/.npm'
gyp WARN EACCES current user ("pi") does not have permission to access the dev dir "/root/.cache/node-gyp/12.15.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/.node-gyp'
gyp ERR! System Linux 4.19.75-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings
gyp ERR! node -v v12.15.0
gyp ERR! node-gyp -v v5.0.5
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules/zigbee-herdsman/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.11: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules/zigbee-herdsman-converters/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @serialport/bindings@8.0.6 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @serialport/bindings@8.0.6 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-02-11T22_05_14_328Z-debug.log
Malortje schreef op dinsdag 11 februari 2020 @ 23:14:
Goedeavond ;)

Ik ben begonnen met domoticz en loop eigenlijk gelijk tegen problemen aan met me cc2531. Ik heb wel het een en ander rond gezocht zowel op git als hier maar kom er maar niet achter. Zou iemand mij kunnen helpen ?

Krijg de volgende melding.
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
> @serialport/bindings@8.0.6 install /opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings
> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild

prebuild-install WARN install EACCES: permission denied, access '/root/.npm'
gyp WARN EACCES current user ("pi") does not have permission to access the dev dir "/root/.cache/node-gyp/12.15.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/.node-gyp'
gyp ERR! System Linux 4.19.75-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/bindings
gyp ERR! node -v v12.15.0
gyp ERR! node-gyp -v v5.0.5
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules/zigbee-herdsman/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.11: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules/zigbee-herdsman-converters/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @serialport/bindings@8.0.6 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @serialport/bindings@8.0.6 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-02-11T22_05_14_328Z-debug.log
Zet eens voor je command's sudo.

Je namelijk geen rechten om de installatie te mogen uitvoeren, wat een normale melding is en dan gebruik je het commando sudo om dit als root gebruiker te installeren.

  • Malortje
  • Registratie: maart 2010
  • Laatst online: 12-02 10:43
MikeOO schreef op woensdag 12 februari 2020 @ 07:39:
[...]


Zet eens voor je command's sudo.

Je namelijk geen rechten om de installatie te mogen uitvoeren, wat een normale melding is en dan gebruik je het commando sudo om dit als root gebruiker te installeren.
Ik had dit uitgevoerd als root. Althans ik had eerst Sudo su gedaan waarna ik daarna npm start deed.

  • Ironburn
  • Registratie: juni 2009
  • Laatst online: 16-02 22:27
klump4u schreef op dinsdag 11 februari 2020 @ 19:56:
[...]

Wat geeft hij dan nog aan als verbruik en wanneer is de laatste update van de sensor? Volgens mij gaat hij na een bepaalde tijd naar 0 watt ik weet niet hoe lang, tellen de kWh ook nog door?
Heb je bij de settings in Domoticz bij meters en counters electra op 1000 staan?
Het energy usage staat nu op 0kwh zie ik sinds gisteren avond (18.23). Maar de power usage staat op 132 en wordt gelogd tot 19.20.

Bij settings staat counter electra inderdaad op 1000
@imdos, ik ben nog steeds aan het rommelen met mijn temperatuursensoren. het duurde even voordat mijn sensoren weer down gingen, dus vandaar nu pas reactie. het script wat ik heb gemaakt werkt perfect in de happy flow. nu de sensoren down zijn, verwacht ik volgens het script een reset van de GPIO pin. dat gebeurt niet. nu heb ik de GPIO commands uit het script handmatig uitgevoerd.
Bash:
1
2
3
4
5
6
7
sudo sh -c 'echo "4" >/sys/class/gpio/unexport' # vrijgeven van GPIO
sudo sh -c 'echo "4" >/sys/class/gpio/export'
sudo sh -c 'echo "out" >/sys/class/gpio/gpio4/direction'
sudo sh -c 'sleep 1'
sudo sh -c 'echo "0" >/sys/class/gpio/gpio4/value'
sudo sh -c 'sleep 1'
sudo sh -c 'echo "4" >/sys/class/gpio/unexport'

Bij de eerste regel krijg ik deze foutcode al:

pi@pi-zb:~ $ sudo sh -c 'echo "4" >/sys/class/gpio/unexport'
sh: echo: I/O error


de volgende schrijfwijzen heb ik ook nog geprobeerd:
pi@pi-zb:~ $ echo "4" >/sys/class/gpio/unexport
-bash: echo: schrijffout: Ongeldig argument
pi@pi-zb:~ $ echo "4" > /sys/class/gpio/unexport
-bash: echo: schrijffout: Ongeldig argument


en als ik begin met deze:
pi@pi-zb:~ $ echo "4" > /sys/class/gpio/export
-bash: echo: schrijffout: Apparaat of hulpbron is bezig
krijg ik die fout weer. ik snapnie meer 8)7

ga ik naar /sys/class/gpio/ dan staat daar wel een export van pin 21 maar ik weet zeker dat ik de sensoren op pin 4 heb aangelosten.
pi@pi-zb:/sys/class/gpio $ ls
export  gpio21  gpiochip0  unexport

fabstar81 wijzigde deze reactie 12-02-2020 09:43 (50%)

făbŞŤĄŘ - Mijn PC


  • Ironburn
  • Registratie: juni 2009
  • Laatst online: 16-02 22:27
tsjoender schreef op dinsdag 11 februari 2020 @ 19:35:
[...]


Klinkt als een "floating" IO. De spanning is niet constant en schommelt steeds tussen de drempelwaarde waarbij die als 0 of als 1 gerekend wordt. Dat zou ook goed kunnen verklaren waarom er meer pulsen geteld worden dan er werkelijk zijn. Je kan eens proberen een 4,7kOhm of 10kOhm weerstand tussen pin 23 en 3,3V te zetten. Daarmee is in "rust" die pin altijd 3,3V en schommelt die niet meer. Zo'n weerstand werkt dan als een pull-up weerstand.
het ziet er naar uit, dat het inderdaad de weerstand was. Hij geeft alles nu netjes aan.

dank.

  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
Waarom wordt mijn scriptje niet afgevuurd?
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
return {

    on = {
        devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, device)
        --Declarations
        local Telefoon       = domoticz.devices(Telefoon1) 
        local Telefoon       = domoticz.devices(Telefoon2) 
        local TelefoonCheck  = domoticz.devices(747) -- TelefoonCheck

        --Function
        if (device.isDevice and not device.active) then -- Telefoons niet thuis
            domoticz.log('State is: ' ..device.state, domoticz.LOG_INFO) -- check state
                TelefoonCheck.cancelQueuedCommands()
                TelefoonCheck.switchOff()
            elseif (device.isDevice and device.active) then -- Telefoons thuis
                domoticz.log('State is: ' ..device.state, domoticz.LOG_INFO) -- check state
                TelefoonCheck.switchOn()

        end
    end
}


Ik wil gewoon heel simpel:
op het moment dat beide telefoons weg zijn (via system alive checker/ping in Domoticz) dat de dummy switch:TelefoonCheck aan/uit gaat.
Het script wat ik heb gemaakt doet gewoon helemaal niets, ook geen foutmelding
De IDX 690 en 691 veranderen wel van status wanneer de telefoons aan/afwezig zijn.
Wat staat er fout in mijn script?

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op woensdag 12 februari 2020 @ 11:59:
Waarom wordt mijn scriptje niet afgevuurd?
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
return {

    on = {
        devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, device)
        --Declarations
        local Telefoon       = domoticz.devices(Telefoon1) 
        local Telefoon       = domoticz.devices(Telefoon2) 
        local TelefoonCheck  = domoticz.devices(747) -- TelefoonCheck

        --Function
        if (device.isDevice and not device.active) then -- Telefoons niet thuis
            domoticz.log('State is: ' ..device.state, domoticz.LOG_INFO) -- check state
                TelefoonCheck.cancelQueuedCommands()
                TelefoonCheck.switchOff()
            elseif (device.isDevice and device.active) then -- Telefoons thuis
                domoticz.log('State is: ' ..device.state, domoticz.LOG_INFO) -- check state
                TelefoonCheck.switchOn()

        end
    end
}


Ik wil gewoon heel simpel:
op het moment dat beide telefoons weg zijn (via system alive checker/ping in Domoticz) dat de dummy switch:TelefoonCheck aan/uit gaat.
Het script wat ik heb gemaakt doet gewoon helemaal niets, ook geen foutmelding
De IDX 690 en 691 veranderen wel van status wanneer de telefoons aan/afwezig zijn.
Wat staat er fout in mijn script?
Geen idee waarom hij niet triggert.

Maar volgens mij gaat dit sowieso niet goed. Met 'device.IsDevice' controlleer je alleen het device wat op dat moment je script heeft getriggerd. Dus ook wanneer er maar één telefoon niet thuis is, gaat TelefoonCheck uit. Tevens is mij het niet helemaal duidelijk waarom je 'TelefoonCheck.cancelQueuedCommands()' erin hebt staan.

Ik gebruik zelf dit script en dat werk perfect:

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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 26-04-2019
--Last update: 26-04-2019
--Changelog:
--Source: -
--Description: Used check whenevery anyone is home depending on ping
--*------------------------------------------------------------------------------------*--

return {
    on = {
        devices = {
            52, -- Person one
            53  -- Person two
        }
    },
    execute = function(domoticz, device)
         --Declarations
        local IemandThuis   = domoticz.devices(54) -- Iemand Thuis
        local One       = domoticz.devices(52) -- Person one 
        local Two       = domoticz.devices(53) -- Person two
        
        --Function
        if (One.active) or (Two.active) then -- When somebody is at home
            IemandThuis.switchOn().checkFirst()
        else
            IemandThuis.switchOff().checkFirst()
        end
        
    end
}

  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op woensdag 12 februari 2020 @ 12:07:
[...]


Geen idee waarom die het niet doet, maar volgens mij gaat dit sowieso niet goed. Met 'device.IsDevice' controlleer je alleen het device wat op dat moment je script heeft getriggerd. Dus ook wanneer er maar één telefoon niet thuis is, gaat TelefoonCheck uit. Tevens is mij het niet helemaal duidelijk waarom je 'TelefoonCheck.cancelQueuedCommands()' erin hebt staan.

Ik gebruik zelf dit script en dat werk perfect:

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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 26-04-2019
--Last update: 26-04-2019
--Changelog:
--Source: -
--Description: Used check whenevery anyone is home depending on ping
--*------------------------------------------------------------------------------------*--

return {
    on = {
        devices = {
            52, -- Person one
            53  -- Person two
        }
    },
    execute = function(domoticz, device)
         --Declarations
        local IemandThuis   = domoticz.devices(54) -- Iemand Thuis
        local One       = domoticz.devices(52) -- Person one 
        local Two       = domoticz.devices(53) -- Person two
        
        --Function
        if (One.active) or (Two.active) then -- When somebody is at home
            IemandThuis.switchOn().checkFirst()
        else
            IemandThuis.switchOff().checkFirst()
        end
        
    end
}
Hmm oke, dus als ik jouw scriptje gebruik en van 'or' 'and' maak, dan doet hij het wel wanneer ze beide weg of aanwezig zijn toch?

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op woensdag 12 februari 2020 @ 12:13:
Hmm oke, dus als ik jouw scriptje gebruik en van 'or' 'and' maak, dan doet hij het wel wanneer ze beide weg of aanwezig zijn toch?
Even terugkomend. Wat wil je precies doen? Controleren of er iemand thuis is aan de hand van de ping of controleren of niet iedereen thuis is?

Want zoals het er nu in zit: Als wij beide weg zijn, dan is 'IemandThuis' off, als een van de twee aanwezig is 'IemandThuis' on.

  • imdos
  • Registratie: maart 2000
  • Laatst online: 20-02 18:08

imdos

I use FreeNAS and Ubuntu

fabstar81 schreef op woensdag 12 februari 2020 @ 09:21:
@imdos, ik ben nog steeds aan het rommelen met mijn temperatuursensoren. het duurde even voordat mijn sensoren weer down gingen, dus vandaar nu pas reactie. het script wat ik heb gemaakt werkt perfect in de happy flow. nu de sensoren down zijn, verwacht ik volgens het script een reset van de GPIO pin. dat gebeurt niet. nu heb ik de GPIO commands uit het script handmatig uitgevoerd.
Tsja; geen idee. Waarom doe je eigenlijk onderstaande.
sudo sh -c


Maak anders een apart scriptje met al mijn commando's en voer dit uit met sudo. Anders kan je ook dit python script gebruiken.

Lees verder eens de volgende artikelen.
GPIO setup
GPIO Pinout

pvoutput. Waarom makkelijk doen, als het ook moeilijk kan! Every solution has a new problem


  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op woensdag 12 februari 2020 @ 12:25:
[...]


Even terugkomend. Wat wil je precies doen? Controleren of er iemand thuis is aan de hand van de ping of controleren of niet iedereen thuis is?

Want zoals het er nu in zit: Als wij beide weg zijn, dan is 'IemandThuis' off, als een van de twee aanwezig is 'IemandThuis' on.
Ik heb een dummy schakelaar nodig welke uit gaat, wanneer beide telefoons weg zijn en weer aangaat wanneer ze ook weer beide thuis zijn.
dit omdat ik middels een script het gordijn in de slaapkamer open en dicht wil doen.

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op woensdag 12 februari 2020 @ 12:56:
Ik heb een dummy schakelaar nodig welke uit gaat, wanneer beide telefoons weg zijn en weer aangaat wanneer ze ook weer beide thuis zijn.
dit omdat ik middels een script het gordijn in de slaapkamer open en dicht wil doen.
En als de schakelaar aan staat en er gaat één iemand weg, moet die aanblijven? En als de schakelaar uit staat en er komt één iemand thuis moet die ook uitblijven?

Want dan moet het dit worden:
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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 26-04-2019
--Last update: 12-02-2020
--Changelog:
--Source: -
--Description: 
--*------------------------------------------------------------------------------------*--

return {
    on = {
        devices = {
            52, -- Person one
            53  -- Person two
        }
    },
    execute = function(domoticz, device)
         --Declarations
        local IemandThuis   = domoticz.devices(54) -- Iemand Thuis
        local One       = domoticz.devices(52) -- Person one 
        local Two       = domoticz.devices(53) -- Person two
        
        --Function
        if (One.active) and (Two.active) then -- When somebody is at home
            IemandThuis.switchOn().checkFirst()
        elseif (not One.active) and (not Two.active)
            IemandThuis.switchOff().checkFirst()
        end
    end
}

  • k_ers
  • Registratie: april 2011
  • Laatst online: 23-02 17:01
Heeft iemand een idee met een timer die zich elke keer reset.

Dus bij beweging dat een timer 120 sec loopt en als er weer beweging komt de timer weer zich reset naar 120.

Bijvoorbeeld bij de wc

  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op woensdag 12 februari 2020 @ 13:07:
[...]


En als de schakelaar aan staat en er gaat één iemand weg, moet die aanblijven? En als de schakelaar uit staat en er komt één iemand thuis moet die ook uitblijven?

Want dan moet het dit worden:
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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 26-04-2019
--Last update: 12-02-2020
--Changelog:
--Source: -
--Description: 
--*------------------------------------------------------------------------------------*--

return {
    on = {
        devices = {
            52, -- Person one
            53  -- Person two
        }
    },
    execute = function(domoticz, device)
         --Declarations
        local IemandThuis   = domoticz.devices(54) -- Iemand Thuis
        local One       = domoticz.devices(52) -- Person one 
        local Two       = domoticz.devices(53) -- Person two
        
        --Function
        if (One.active) and (Two.active) then -- When somebody is at home
            IemandThuis.switchOn().checkFirst()
        elseif (not One.active) and (not Two.active)
            IemandThuis.switchOff().checkFirst()
        end
    end
}
Precies!
Ik kan dit vanavond pas checken zie ik, ik kan de switches niet handmatig bedienen van de telefoon checker zie ik net. Dus simuleren gaat lastig. Ik zie wel dat hij nu nog nies doet met de 'iemandthuis' switch, terwijl niemand thuis is... Wellicht gaat de trigger meteen op het moment dat de 2e telefoon ook niet meer aanwezig is? Daarna checkt ie pas weer wanneer de 1e en 2e telefoon zich weer aanmeldt?

vwtune wijzigde deze reactie 12-02-2020 13:35 (8%)


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
k_ers schreef op woensdag 12 februari 2020 @ 13:20:
Heeft iemand een idee met een timer die zich elke keer reset.

Dus bij beweging dat een timer 120 sec loopt en als er weer beweging komt de timer weer zich reset naar 120.

Bijvoorbeeld bij de wc
Ja hoor, ik gebruik dit script al een tijdje.

Hierbij gaat de lamp uit na 2 minuten, tenzij hij weer een nieuwe beweging detecteert in die twee minuten.
vwtune schreef op woensdag 12 februari 2020 @ 13:33:
Precies!
Ik kan dit vanavond pas checken zie ik, ik kan de switches niet handmatig bedienen van de telefoon checker zie ik net. Dus simuleren gaat lastig
Even twee extra dummy switches maken kan helpen. Maar wachten tot vanavond is wellicht net zo makkelijk. :)

rens-br wijzigde deze reactie 12-02-2020 13:35 (25%)


  • k_ers
  • Registratie: april 2011
  • Laatst online: 23-02 17:01
@rens-br ga er vanavond even naar kijken, nog niet met een script gewerkt, altijd met blocky. Thanks alvast!

Zie alleen dat je er dag en nacht in hebt staan, dat hoef ik er niet in te hebben en HBS is dan de beweging? :P

k_ers wijzigde deze reactie 12-02-2020 13:52 (34%)


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
k_ers schreef op woensdag 12 februari 2020 @ 13:38:
@rens-br ga er vanavond even naar kijken, nog niet met een script gewerkt, altijd met blocky. Thanks alvast!

Zie alleen dat je er dag en nacht in hebt staan, dat hoef ik er niet in te hebben en HBS is dan de beweging? :P
Yes. Mijn wc lamp gaat minder fel branden 's nachts, beter voor de slaap. HBS = Human Body Sensor, zo heten de bewegingssensoren van Xiaomi.

  • k_ers
  • Registratie: april 2011
  • Laatst online: 23-02 17:01
Top ik heb de zelfde sensoren ga er mee aan de slag bedankt
rens-br schreef op woensdag 12 februari 2020 @ 14:02:
[...]


Yes. Mijn wc lamp gaat minder fel branden 's nachts, beter voor de slaap. HBS = Human Body Sensor, zo heten de bewegingssensoren van Xiaomi.

  • k_ers
  • Registratie: april 2011
  • Laatst online: 23-02 17:01
@rens-br

Ben er mee aan de slag gegaan maar kom er niet uit (nog nooit gedaan) heb de dag/nacht eruit gehaald en mijn pir en wc lamp IDX erin gezet maar hij geeft maar een foutmelding bij ´if ((HBS.active) then -- ´

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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 01-09-2019
--Last update:
--Changelog: 
--Source: -
--Description: Used to Switch on Lamp, when there is movement
--*------------------------------------------------------------------------------------*--

--Declarations
local HBSNum       = 297 -- HBS WC

return {
    on = {
        devices = {
            HBSNum  -- HBS
        }
    },
    execute = function(domoticz, device)
        --Declarations
        local Light     = domoticz.devices(247) --wc Lamp
        local HBS       = domoticz.devices(297) -- PIR Wc
        
        --Function
        if ((HBS.active) then -- sensor on and Evening or Day
            Light.cancelQueuedCommands()
            Light.dimTo(100)-- Turn on 100%
        else
            Light.switchOff().afterMin(2)
        end
    end
}

  • Caayn
  • Registratie: oktober 2011
  • Nu online
Zojuist mijn Pi 4, waar domoticz op draait, aan mijn slimme meter gehangen via de P1 poort. De Pi4 ontvangt netjes iedere paar seconden een update van de slimme meter maar domoticz logt het maar met een interval van 5 minuten? Ik kan alleen zo 123 niet vinden hoe ik de interval kan aanpassen. Iemand een idee?

  • DjAntoon
  • Registratie: augustus 2017
  • Laatst online: 19:26
Caayn schreef op woensdag 12 februari 2020 @ 17:26:
Zojuist mijn Pi 4, waar domoticz op draait, aan mijn slimme meter gehangen via de P1 poort. De Pi4 ontvangt netjes iedere paar seconden een update van de slimme meter maar domoticz logt het maar met een interval van 5 minuten? Ik kan alleen zo 123 niet vinden hoe ik de interval kan aanpassen. Iemand een idee?
Niet is mijn conclusie, de data is er wel, maar word niet gedisplayed. Mocht je dat wel willen dan is influx en grafana je vriend.

  • DjAntoon
  • Registratie: augustus 2017
  • Laatst online: 19:26
Kennen jullie dit topic:

Z-wave kabouters

Ik ben blijkbaar niet de enige die zijn super stabiele z wave omgeving kwijt geraakt is na een update van open z wave.

Ik heb geprobeerd om als workaround mijn domoticz 's nachts een reboot te geven, maar het werkt niet wat ik gevonden heb:

sudo crontab -e

16 4 * * * service domoticz restart

Met als doel dus een restart om 04:16

Wat doe ik fout?

Die crontab was leeg en dus nieuw, moet ik die nog activeren?
Of is in plaats van service een path nodig?

  • klump4u
  • Registratie: februari 2008
  • Niet online

klump4u

4980wp-Zuid-Limburg,

DjAntoon schreef op woensdag 12 februari 2020 @ 17:40:
Kennen jullie dit topic:

Z-wave kabouters

Ik ben blijkbaar niet de enige die zijn super stabiele z wave omgeving kwijt geraakt is na een update van open z wave.

Ik heb geprobeerd om als workaround mijn domoticz 's nachts een reboot te geven, maar het werkt niet wat ik gevonden heb:

sudo crontab -e

16 4 * * * service domoticz restart

Met als doel dus een restart om 04:16

Wat doe ik fout?

Die crontab was leeg en dus nieuw, moet ik die nog activeren?
Of is in plaats van service een path nodig?
Ik denk deze erin zetten, sudo service domoticz.sh restart

3020wp-ZW Live 1960wp-ZZW Live Altantic Explorer 270 Live


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
k_ers schreef op woensdag 12 februari 2020 @ 16:41:
@rens-br

Ben er mee aan de slag gegaan maar kom er niet uit (nog nooit gedaan) heb de dag/nacht eruit gehaald en mijn pir en wc lamp IDX erin gezet maar hij geeft maar een foutmelding bij ´if ((HBS.active) then -- ´

[...]
Zet je code even in code tags, dan is het een stuk leesbaarder. Maar je moet altijd even-veel open-haakjes als sluit-haakjes gebruiken. Je hebt nu open haakjes en naar één sluit haakje.

  • tsjoender
  • Registratie: april 2005
  • Laatst online: 19:52
DjAntoon schreef op woensdag 12 februari 2020 @ 17:40:
Ik heb geprobeerd om als workaround mijn domoticz 's nachts een reboot te geven, maar het werkt niet wat ik gevonden heb:

sudo crontab -e

16 4 * * * service domoticz restart

Met als doel dus een restart om 04:16

Wat doe ik fout?

Die crontab was leeg en dus nieuw, moet ik die nog activeren?
Of is in plaats van service een path nodig?
Een crontab hoef je niet te activeren. Je moet hooguit nagaan of de cron daemon niet gestopt is (sudo systemctl status cron). Ik denk dat je inderdaad het pad van het commando service mee moet geven (/usr/sbin/service waarschijnlijk). Een crontab neemt namelijk niet automatisch de omgevingsvariabelen van de gebruiker mee tenzij je die eerst met de hand sourced (bijvoorbeeld: . ~/.bashrc - dus punt, spatie en dan de file die je wilt inlezen voor de variabelen).

Onder Raspbian worden cron acties gelogd in /var/log/syslog. Je kan ook de log rond 4:16 bekijken of cron toen een fout gelogd heeft.

tsjoender wijzigde deze reactie 12-02-2020 19:40 (6%)


  • k_ers
  • Registratie: april 2011
  • Laatst online: 23-02 17:01
Code heb ik tussen code tags gezet, alleen krijg het nog steeds niet werkend.. in de log krijg ik ´eventSystem: Lua script WC timer script did not return a commandArray ´

wc lamp idx 247
PIR Wc idx 297

krijg het jammer genoeg niet voor elkaar
rens-br schreef op woensdag 12 februari 2020 @ 18:22:
[...]


Zet je code even in code tags, dan is het een stuk leesbaarder. Maar je moet altijd even-veel open-haakjes als sluit-haakjes gebruiken. Je hebt nu open haakjes en naar één sluit haakje.

  • DjAntoon
  • Registratie: augustus 2017
  • Laatst online: 19:26
tsjoender schreef op woensdag 12 februari 2020 @ 19:38:
[...]


Een crontab hoef je niet te activeren. Je moet hooguit nagaan of de cron daemon niet gestopt is (sudo systemctl status cron). Ik denk dat je inderdaad het pad van het commando service mee moet geven (/usr/sbin/service waarschijnlijk). Een crontab neemt namelijk niet automatisch de omgevingsvariabelen van de gebruiker mee tenzij je die eerst met de hand sourced (bijvoorbeeld: . ~/.bashrc - dus punt, spatie en dan de file die je wilt inlezen voor de variabelen).

Onder Raspbian worden cron acties gelogd in /var/log/syslog. Je kan ook de log rond 4:16 bekijken of cron toen een fout gelogd heeft.
Dank je de uitkomst is:
Active: active (running) since Wed 2020-02-12 18:28:06 CET; 1h 14min ago

Running, dus moet goed zijn. Ik controleer morgen of domoticz herstart is, misschien zie ik het morgenvroeg al, als de lampen niet aangegaan zijn... Zo niet dan pas ik het path aan.

Als ik met winscp kijk dan zie ik domoticz.sh staan in: /home/pi/domoticz/domoticz.sh
In /usr/sbin/ staat inderdaad service. Moet deze het dan zijn?

  • tsjoender
  • Registratie: april 2005
  • Laatst online: 19:52
DjAntoon schreef op woensdag 12 februari 2020 @ 19:52:
[...]

Als ik met winscp kijk dan zie ik domoticz.sh staan in: /home/pi/domoticz/domoticz.sh
In /usr/sbin/ staat inderdaad service. Moet deze het dan zijn?
In dat geval zou ik dit als crontab entry proberen:

code:
1
16 4 * * * /usr/sbin/service domoticz restart

  • Jimster
  • Registratie: januari 2000
  • Laatst online: 04:01

Jimster

A State of Trance

Iemand die mij kan helpen met het koppelen van een Xiaomi Mi Robot? Ik heb 0,0 linux ervaring, ik ben al blij dat ik Domoticz en Dashticz aan de praat heb. Ik ben al paar dagen hiermee bezig. Hiervoor moet ik python-miio installeren. Ik draai Domoticz op een Pi3B+ met Raspbian.
Als ik pip3 install python-miio doe, krijg ik dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting python-miio
  Using cached python_miio-0.4.8-py3-none-any.whl (174 kB)
Collecting construct
  Using cached construct-2.10.56.tar.gz (54 kB)
    ERROR: Command errored out with exit status 1:
     command: /usr/local/bin/python3.8 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-mvj6p02r/construct/setup.py'"'"'; __file__='"'"'/tmp/pip-install-mvj6p02r/construct/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-mvj6p02r/construct/pip-egg-info
         cwd: /tmp/pip-install-mvj6p02r/construct/
    Complete output (11 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/local/lib/python3.8/site-packages/setuptools/__init__.py", line 20, in <module>
        from setuptools.dist import Distribution, Feature
      File "/usr/local/lib/python3.8/site-packages/setuptools/dist.py", line 36, in <module>
        from setuptools import windows_support
      File "/usr/local/lib/python3.8/site-packages/setuptools/windows_support.py", line 2, in <module>
        import ctypes
      File "/usr/local/lib/python3.8/ctypes/__init__.py", line 7, in <module>
        from _ctypes import Union, Structure, Array
    ModuleNotFoundError: No module named '_ctypes'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Er lijkt iets mis te zijn met _ctypes.

Wat ik al geprobeerd heb:
Python 3.8.1 geinstalleerd
Libffi-dev en libssl-dev zijn de laatste versies:
libffi-dev is already the newest version (3.2.1-9).
libssl-dev is already the newest version (1.1.1d-0+deb10u2+rpt1).
Setuptools is versie 45.2.0

Ik volg dus alles zoals hier staat: https://python-miio.readt...scovery.html#installation
Geen idee wat er fout gaat. Wat kan ik nog proberen?
imdos schreef op woensdag 12 februari 2020 @ 12:50:
[...]

Tsja; geen idee. Waarom doe je eigenlijk onderstaande.
sudo sh -c


Maak anders een apart scriptje met al mijn commando's en voer dit uit met sudo. Anders kan je ook dit python script gebruiken.

Lees verder eens de volgende artikelen.
GPIO setup
GPIO Pinout
ik zag "sudo sh -c" in een ander script in 1 van jouw referenties in de GPIO commando's. dacht: misschien lukt het zo. afijn, niet dus.

heb apart script gemaakt gpio.sh met de volgende inhoud:
Bash:
1
2
3
4
5
6
7
echo "21" > /sys/class/gpio/unexport
echo "21" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio21/direction
sleep 1
echo "0" > /sys/class/gpio/gpio21/value
sleep 1
echo "21" > /sys/class/gpio/unexport


dat geeft volgende output:
pi@pi-zb:~ $ sudo bash /home/pi/Downloads/gpio.sh
/home/pi/Downloads/gpio.sh: regel 1: echo: schrijffout: Ongeldig argument


de 2 sites heb ik al best vaak keer doorgelezen. ik kom er alleen echt niet uit. als ik de commando's los uitvoer kom ik op zelfde output. schrijffout.

als je de one-wire inricht, moet je volgens de tutorial ook niets met de GPIO commando's doen, alleen met de w1 of one wire commando's. dus ik vraag mij af of er uberhaupt wel iets is ingericht naar die GPIO pins en of dat niet eerst moet.

als je een GPIO pin wilt resetten, moet je dan niet eerst inrichten ook dat die one wire sensors op die specifieke pin is aangesloten? voor het uitlezen middels het script, is dat blijkbaar niet nodig. maar voor het resetten van de GPIO pin, misschien wel?

overigens heb ik net de sensors aangesloten op een ESP boardje, @Toppe, maar dat is ook niet ideaal. blijkbaar, als je de sensors aansluit op een ander board, krijgen de sensors allemaal andere unieke serienummers. aangezien ik niet bij de sensors kan, kan ik ze dan dus ook niet verder inrichten...ik zit dus vast aan deze setup.

de one wire is trouwens volgens diezelfde tutorial aangesloten op GPIO4, op pin 7 volgens de pin out.

welk getal moet ik nou in het script opnemen? 4 of 7?

fabstar81 wijzigde deze reactie 13-02-2020 00:34 (12%)

făbŞŤĄŘ - Mijn PC


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
k_ers schreef op woensdag 12 februari 2020 @ 19:42:
Code heb ik tussen code tags gezet, alleen krijg het nog steeds niet werkend.. in de log krijg ik ´eventSystem: Lua script WC timer script did not return a commandArray ´
Dan heb je ook niet de juiste script geselecteerd. Bij het aanmaken van een script in Domoticz kun je kiezen voor Blocky, Python, LUA en DzVents. Je moet dus Dzvents selecteren.

Deze fout is al vaker gemaakt in dit topic. Het is dus handig als je even de search gebruikt om de specifieke error, dan komt de oplossing vanzelf naar boven.
Jimster schreef op woensdag 12 februari 2020 @ 22:17:
Iemand die mij kan helpen met het koppelen van een Xiaomi Mi Robot?

[...]
Ik volg dus alles zoals hier staat: https://python-miio.readt...scovery.html#installation
Geen idee wat er fout gaat. Wat kan ik nog proberen?
Zelf gebruik ik altijd deze guide en die werkt perfect.

rens-br wijzigde deze reactie 13-02-2020 08:32 (27%)


  • imdos
  • Registratie: maart 2000
  • Laatst online: 20-02 18:08

imdos

I use FreeNAS and Ubuntu

fabstar81 schreef op donderdag 13 februari 2020 @ 00:23:
[...]
heb apart script gemaakt gpio.sh met de volgende inhoud:
Bash:
1
2
3
4
5
6
7
echo "21" > /sys/class/gpio/unexport
echo "21" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio21/direction
sleep 1
echo "0" > /sys/class/gpio/gpio21/value
sleep 1
echo "21" > /sys/class/gpio/unexport
Ik zou dit even toevoegen als eerste regel, mocht dat er nog niet staan.
#!/bin/bash
Die unexport kun je blijkbaar skippen omdat deze niet eerder is geëxporteerd. Heb het even nagekeken in je gelinkte artikel; die GPIO poort wordt niet ingeladen op die manier.
fabstar81 schreef op donderdag 13 februari 2020 @ 00:23:
[...]
als je een GPIO pin wilt resetten, moet je dan niet eerst inrichten ook dat die one wire sensors op die specifieke pin is aangesloten? voor het uitlezen middels het script, is dat blijkbaar niet nodig. maar voor het resetten van de GPIO pin, misschien wel?

welk getal moet ik nou in het script opnemen? 4 of 7?
4; het is GPIO pin 4. Tenzij je de modus veranderd. Dus tip; gewoon niet aanzitten.

Blijkbaar zit onewire op een andere standaard (bus) en maakt deze op een andere manier gebruik v/d GPIO-poort. Het script zorgt als het ware ervoor dat de pin even een harde reset krijgt en opnieuw wordt geïnitialiseerd.

En aangezien het een getal is; hoef je geen quotes te gebruiken bij de echo.

Mogelijk moet je nog even spelen met de timeout's trouwens. Ik heb nu 2x een 'sleep 1' gepakt; maar in het origineel staat 3 en 5.

pvoutput. Waarom makkelijk doen, als het ook moeilijk kan! Every solution has a new problem


  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
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
return {

    on = {
        timer = { 'at sunset' },
                devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (not Telefoon1.active) and (not Telefoon2.active) then -- Niemand thuis
            if (CurrentTime.matchesRule('between sunrise and 10:00')) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
        elseif (item.isTimer and item.trigger == 'at sunset') then 
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        end
        
    end
}


Bovenstaande werkt, alleen het eerste stuk (if) werkt alleen wanneer beide telefoons NA sunrise en tussen 10:00 uur offline zijn. Wanneer beide telefoons al VOOR sunrise weg zijn, dan gebeurt er niets tussen sunrise en 10:00 uur. Waarom is dit en hoe krijg ik het voor elkaar dat dit wel gebeurt?
Ik wil dus gewoon tussen sunrise en 10:00 uur, wanneer beide telefoons weg zijn, het gordijn open gaat, ook als de telefoon voor die tijd al weg zijn. (uiteraard wanneer 1 van de telefoons thuis zijn, moet er niets gebeuren tussen die tijden)

  • Caayn
  • Registratie: oktober 2011
  • Nu online
DjAntoon schreef op woensdag 12 februari 2020 @ 17:33:
[...]


Niet is mijn conclusie, de data is er wel, maar word niet gedisplayed. Mocht je dat wel willen dan is influx en grafana je vriend.
Jammer, maar in ieder geval bedankt. Dan zal ik met influx en grafana aan de slag gaan :)

  • Jimster
  • Registratie: januari 2000
  • Laatst online: 04:01

Jimster

A State of Trance

rens-br schreef op donderdag 13 februari 2020 @ 08:30:
[...]


Zelf gebruik ik altijd deze guide en die werkt perfect.
Bedankt, maar helaas. Bij de stap
pip3 install -r pip_req.txt
# or pip3 install gevent msgpack-python python-miio==0.3.1
loop ik tegen dezelfde fout aan.

  • Indiaan706
  • Registratie: september 2004
  • Laatst online: 23-02 16:53
Ik wil mijn energieverbruik & opbrengst zonnepanelen gaan loggen. Slimme meter via p1, zonnepanelen via din rail kwh meter met s0 aansluiting. Nu heb ik nog een Synology DS213 liggen, is een oudje maar heb nog een versie gevonden van Domoticz die werkt. Docker en dus influx & grafana is echter onmogelijk voor zover ik kan vinden?

En met alleen domoticz krijg ik nooit de p1 & s0 synchroon toch?
Dus moet ik toch maar een Raspberry pi kopen ben ik bang?

Nu liggen er echter ook nog een paar oude panelen aan een Stecagrid omvormer die gewoon in het stopcontact zit, deze wil ik uitlezen met een BlitzWolf BW-SHp6. Ik heb dit topic gelezen maar dat flashen lijkt toch een beetje 12 versies 13 ongelukken te zijn.
En/of het gaat mij gewoon boven de pet, dat kan het ook zijn :+. Ook heb ik hier niet de goede soldeerspullen etc voor en om die nou aan te schaffen om 1 plug te flashen.. Is er anders mss iemand die mijn plug wil flashen of me een geflashte kan bezorgen?
Of weet iemand een alternatieve plug die wat meer plug & play in Domoticz te krijgen is?
Liefst niet te duur want met die 450Wp uit 2001 die er aan hangt schiet het terugverdienen niet bijster hard op ;).

Ben totale beginner met Domoticz, pi etc dus wordt nog een hele uitdaging denk ik.
En dan denk ik ook mocht het loggen van die Stecagrid nou niet lukken, dan kan ik voor de p1 & s0 net zo goed een Youless kopen in het kader van Keep It Simple Stupid. Lastige keuzes, hoop dat jullie goede adviezen hebben.

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
Jimster schreef op donderdag 13 februari 2020 @ 10:48:
[...]

Bedankt, maar helaas. Bij de stap
pip3 install -r pip_req.txt
# or pip3 install gevent msgpack-python python-miio==0.3.1
loop ik tegen dezelfde fout aan.
Kun je eens kijken of je met 'sudo' en dan de commando's wel verder komt?

  • D.de.Ruiter
  • Registratie: december 2009
  • Laatst online: 17-02 14:37
vwtune schreef op donderdag 13 februari 2020 @ 10:22:
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
return {

    on = {
        timer = { 'at sunset' },
                devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (not Telefoon1.active) and (not Telefoon2.active) then -- Niemand thuis
            if (CurrentTime.matchesRule('between sunrise and 10:00')) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
        elseif (item.isTimer and item.trigger == 'at sunset') then 
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        end
        
    end
}


Bovenstaande werkt, alleen het eerste stuk (if) werkt alleen wanneer beide telefoons NA sunrise en tussen 10:00 uur offline zijn. Wanneer beide telefoons al VOOR sunrise weg zijn, dan gebeurt er niets tussen sunrise en 10:00 uur. Waarom is dit en hoe krijg ik het voor elkaar dat dit wel gebeurt?
Ik wil dus gewoon tussen sunrise en 10:00 uur, wanneer beide telefoons weg zijn, het gordijn open gaat, ook als de telefoon voor die tijd al weg zijn. (uiteraard wanneer 1 van de telefoons thuis zijn, moet er niets gebeuren tussen die tijden)
Volgens mij ligt het aan de triggering, als je 'at sunrise' toevoegd zou het moeten werken. Nu schakelt het wel op status wijzigingen van je mobiel, maar als deze voor voor sunrise gebeuren zorgt je tweede IF statement ervoor dat er geen actie gebeurt.
fabstar81 schreef op donderdag 13 februari 2020 @ 00:23:
[...]

ik zag "sudo sh -c" in een ander script in 1 van jouw referenties in de GPIO commando's. dacht: misschien lukt het zo. afijn, niet dus.

heb apart script gemaakt gpio.sh met de volgende inhoud:
Bash:
1
2
3
4
5
6
7
echo "21" > /sys/class/gpio/unexport
echo "21" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio21/direction
sleep 1
echo "0" > /sys/class/gpio/gpio21/value
sleep 1
echo "21" > /sys/class/gpio/unexport


dat geeft volgende output:
pi@pi-zb:~ $ sudo bash /home/pi/Downloads/gpio.sh
/home/pi/Downloads/gpio.sh: regel 1: echo: schrijffout: Ongeldig argument


de 2 sites heb ik al best vaak keer doorgelezen. ik kom er alleen echt niet uit. als ik de commando's los uitvoer kom ik op zelfde output. schrijffout.

als je de one-wire inricht, moet je volgens de tutorial ook niets met de GPIO commando's doen, alleen met de w1 of one wire commando's. dus ik vraag mij af of er uberhaupt wel iets is ingericht naar die GPIO pins en of dat niet eerst moet.

als je een GPIO pin wilt resetten, moet je dan niet eerst inrichten ook dat die one wire sensors op die specifieke pin is aangesloten? voor het uitlezen middels het script, is dat blijkbaar niet nodig. maar voor het resetten van de GPIO pin, misschien wel?

overigens heb ik net de sensors aangesloten op een ESP boardje, @Toppe, maar dat is ook niet ideaal. blijkbaar, als je de sensors aansluit op een ander board, krijgen de sensors allemaal andere unieke serienummers. aangezien ik niet bij de sensors kan, kan ik ze dan dus ook niet verder inrichten...ik zit dus vast aan deze setup.

de one wire is trouwens volgens diezelfde tutorial aangesloten op GPIO4, op pin 7 volgens de pin out.

welk getal moet ik nou in het script opnemen? 4 of 7?
Wellicht dat ik midden in een discussie inbreek, maar waarom niet één keer de moeite nemen om het over te zetten op een ESP bordje zodat je daarna van al het gezeik afbent?

MacBook Pro Retina 13" 2018  iPhone Xs Max  Apple Watch Series 4  2x Apple TV 4  Stereopair HomePods


  • tsjoender
  • Registratie: april 2005
  • Laatst online: 19:52
Indiaan706 schreef op donderdag 13 februari 2020 @ 11:18:
Ik wil mijn energieverbruik & opbrengst zonnepanelen gaan loggen. Slimme meter via p1, zonnepanelen via din rail kwh meter met s0 aansluiting. Nu heb ik nog een Synology DS213 liggen, is een oudje maar heb nog een versie gevonden van Domoticz die werkt. Docker en dus influx & grafana is echter onmogelijk voor zover ik kan vinden?

En met alleen domoticz krijg ik nooit de p1 & s0 synchroon toch?
Dus moet ik toch maar een Raspberry pi kopen ben ik bang?

Nu liggen er echter ook nog een paar oude panelen aan een Stecagrid omvormer die gewoon in het stopcontact zit, deze wil ik uitlezen met een BlitzWolf BW-SHp6. Ik heb dit topic gelezen maar dat flashen lijkt toch een beetje 12 versies 13 ongelukken te zijn.
En/of het gaat mij gewoon boven de pet, dat kan het ook zijn :+. Ook heb ik hier niet de goede soldeerspullen etc voor en om die nou aan te schaffen om 1 plug te flashen.. Is er anders mss iemand die mijn plug wil flashen of me een geflashte kan bezorgen?
Of weet iemand een alternatieve plug die wat meer plug & play in Domoticz te krijgen is?
Liefst niet te duur want met die 450Wp uit 2001 die er aan hangt schiet het terugverdienen niet bijster hard op ;).

Ben totale beginner met Domoticz, pi etc dus wordt nog een hele uitdaging denk ik.
En dan denk ik ook mocht het loggen van die Stecagrid nou niet lukken, dan kan ik voor de p1 & s0 net zo goed een Youless kopen in het kader van Keep It Simple Stupid. Lastige keuzes, hoop dat jullie goede adviezen hebben.
Heb je de S0 kWh meter al of moet je die nog aanschaffen? Als je die al hebt en je wilt de kosten laaghouden, dan is dat een prima uitgangspunt. Je kan eventueel ook nog voor een paar euro een ESP8266 aan die meter hangen die de pulsen doorgeeft aan Domoticz. Mocht je nog een kWh meter moeten kopen dan is een met modbus een betere keus. Bij pulsen tellen loopt de monitoring uit de pas als je pulsen mist of pulsen teveel telt. Een modbus teller geeft een soort van telegram net als P1 waarbij je altijd weer de draad op kan pakken mocht jouw oplossing bijvoorbeeld tijdens de vakantie stoppen. Een Eastron SDM120 is dan aan te bevelen omdat die betaalbaar is en er verschillende scripts voor te vinden zijn om die uit te lezen. Een RS485 TTL adapter kost iets van €1 - €2 uit China vandaan.

Een SHP6 is inderdaad iets lastiger te flashen omdat je moet solderen en het is allemaal erg compact, maar ik heb het nu twee keer gedaan en het is op zich goed te doen. De nauwkeurigheid van de stroommeting schijnt niet al te best te zijn vanwege de gebruikte shunt weerstand.
imdos schreef op donderdag 13 februari 2020 @ 08:45:
[...]

Ik zou dit even toevoegen als eerste regel, mocht dat er nog niet staan.
#!/bin/bash
Die unexport kun je blijkbaar skippen omdat deze niet eerder is geëxporteerd. Heb het even nagekeken in je gelinkte artikel; die GPIO poort wordt niet ingeladen op die manier.

[...]

4; het is GPIO pin 4. Tenzij je de modus veranderd. Dus tip; gewoon niet aanzitten.

Blijkbaar zit onewire op een andere standaard (bus) en maakt deze op een andere manier gebruik v/d GPIO-poort. Het script zorgt als het ware ervoor dat de pin even een harde reset krijgt en opnieuw wordt geïnitialiseerd.

En aangezien het een getal is; hoef je geen quotes te gebruiken bij de echo.

Mogelijk moet je nog even spelen met de timeout's trouwens. Ik heb nu 2x een 'sleep 1' gepakt; maar in het origineel staat 3 en 5.
thanks voor je hulp. lijkt eindeloos onoplosbaar, want nu ziet het script er zo uit:
Bash:
1
2
3
4
5
6
7
8
#!/bin/bash
#echo 4 > /sys/class/gpio/unexport
echo 4 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio4/direction
sleep 3
echo 0 > /sys/class/gpio/gpio4/value
sleep 5
echo 4 > /sys/class/gpio/unexport

eerste wat ik dan terugkrijg is:
pi@pi-zb:~ $ sudo bash /home/pi/Downloads/gpio.sh
/home/pi/Downloads/gpio.sh: regel 3: echo: schrijffout: Apparaat of hulpbron is bezig
/home/pi/Downloads/gpio.sh: regel 4: /sys/class/gpio/gpio4/direction: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 6: /sys/class/gpio/gpio4/value: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 8: echo: schrijffout: Ongeldig argument


werkt dus ook niet :? 8)7 |:( :'(

exporteren lukt dus niet, uitzetten dan ook niet. denk dat dit doodlopende weg is.
Toppe schreef op donderdag 13 februari 2020 @ 12:28:
[...]


Wellicht dat ik midden in een discussie inbreek, maar waarom niet één keer de moeite nemen om het over te zetten op een ESP bordje zodat je daarna van al het gezeik afbent?
inbreken mag, goede tips geven ook. sterker nog, er hangt al een ESP bordje naast en een breadbordje en heb ze zelfs gisteren even overgeprikt daarin. probleem daarmee was, dat de sensors allemaal een nieuwe ID kregen op het ESP bordje. waar ik overigens niks van snap omdat die ID in de hardware ingebakken zouden moeten zijn. gevolg was dat ik dus niet meer kon opzoeken welke sensor bij welke IDX in Domoticz hoorde. Komt moeilijkheid bij omdat ik niet makkelijk meer bij alle sensoren kom; die zijn weggewerkt en onder de buisisolatie geplakt. met de hand even de temperatuur opwarmen zodat ik zie welke sensor welke is, is dus ook nagenoeg onmogelijk.

En als laatste, ik kan het gewoon niet hebben dat het niet lukt om die GPIO pin te resetten. het moet werken, dus waarom lukt het niet? ik wil niet gauw opgeven...maar leuk is anders ja...

ik zit trouwens te denken, @imdos, in het script wordt GPIO4 gereset, dat is de data pin. in deze tutorial reset hij de voeding pin. ik ga het script even aanpassen naar die pin (GPIO1 in mijn geval). kijken wat ie doet.

edit: hij geeft iig geen foutmeldingen meer! ik heb het ingebakken in het algemene temperatuurscript. nu is het weer wachten op een error, zodat ik kan testen of het daadwerkelijk gereset wordt.

fabstar81 wijzigde deze reactie 13-02-2020 13:51 (7%)

făbŞŤĄŘ - Mijn PC


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op donderdag 13 februari 2020 @ 10:22:
Ik wil dus gewoon tussen sunrise en 10:00 uur, wanneer beide telefoons weg zijn, het gordijn open gaat, ook als de telefoon voor die tijd al weg zijn. (uiteraard wanneer 1 van de telefoons thuis zijn, moet er niets gebeuren tussen die tijden)
Heb je nu het vorige script aangepast, of is dit weer een nieuwe? Want anders kan je beter de dummy switch gebruiken, scheelt aanpassen in de toekomst.

Verder moet het script volgens mij gewoon zo zijn:

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
return {
    on = {
                timer = { 
           'at sunset' 
        }, 
                devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (not Telefoon1.active) and (not Telefoon2.active) then -- Niemand thuis
            if (CurrentTime.matchesRule('between sunrise and 10:00')) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
        elseif (CurrentTime.matchesRule('at sunset')) then 
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        end
    end
}

  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op donderdag 13 februari 2020 @ 13:36:
[...]


Heb je nu het vorige script aangepast, of is dit weer een nieuwe? Want anders kan je beter de dummy switch gebruiken, scheelt aanpassen in de toekomst.

Verder moet het script volgens mij gewoon zo zijn:

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
return {
    on = {
                timer = { 
           'at sunset' 
        }, 
                devices = { 
            690, -- Telefoon1
            691  -- Telefoon2

        }

    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (not Telefoon1.active) and (not Telefoon2.active) then -- Niemand thuis
            if (CurrentTime.matchesRule('between sunrise and 10:00')) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
        elseif (CurrentTime.matchesRule('at sunset')) then 
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        end
    end
}
Ik heb een nieuw scriptje gemaakt aan de hand van jouw voorbeeld, welke ik overigens ook gebruik, maar heeft een andere doel gekregen :)
Ik vond het makkelijker om gewoon in 1 script alles te zetten, maar ik kan nu niet zien wat je nou eigenlijk aangepast hebt zodat het wel zou doen wat ik wil of lees ik ergens overheen?
Peutpeut schreef op maandag 10 februari 2020 @ 18:35:
[...]


Vandaag even naar gekeken. De pop-up blocker is het niet en ook ABP staat uit op het specifieke domein.


[...]


Die komen van Neo Coolcam bewegingssensoren die ook temperatuur kunnen registreren. Deze gebruik ik om de verlichting en/of andere apparaten te schakelen dus ik laat ze ook meteen de temperatuur registreren. :)
welke sensoren zijn dit?

făbŞŤĄŘ - Mijn PC


  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
D.de.Ruiter schreef op donderdag 13 februari 2020 @ 12:24:
[...]


Volgens mij ligt het aan de triggering, als je 'at sunrise' toevoegd zou het moeten werken. Nu schakelt het wel op status wijzigingen van je mobiel, maar als deze voor voor sunrise gebeuren zorgt je tweede IF statement ervoor dat er geen actie gebeurt.
bedoel je dan zo?:
code:
1
2
on = {
        timer = { 'at sunset, at sunrise' },

  • tsjoender
  • Registratie: april 2005
  • Laatst online: 19:52
fabstar81 schreef op donderdag 13 februari 2020 @ 13:17:
[...]

thanks voor je hulp. lijkt eindeloos onoplosbaar, want nu ziet het script er zo uit:
Bash:
1
2
3
4
5
6
7
8
#!/bin/bash
#echo 4 > /sys/class/gpio/unexport
echo 4 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio4/direction
sleep 3
echo 0 > /sys/class/gpio/gpio4/value
sleep 5
echo 4 > /sys/class/gpio/unexport

eerste wat ik dan terugkrijg is:
pi@pi-zb:~ $ sudo bash /home/pi/Downloads/gpio.sh
/home/pi/Downloads/gpio.sh: regel 3: echo: schrijffout: Apparaat of hulpbron is bezig
/home/pi/Downloads/gpio.sh: regel 4: /sys/class/gpio/gpio4/direction: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 6: /sys/class/gpio/gpio4/value: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 8: echo: schrijffout: Ongeldig argument


werkt dus ook niet :? 8)7 |:( :'(

exporteren lukt dus niet, uitzetten dan ook niet. denk dat dit doodlopende weg is.


[...]

inbreken mag, goede tips geven ook. sterker nog, er hangt al een ESP bordje naast en een breadbordje en heb ze zelfs gisteren even overgeprikt daarin. probleem daarmee was, dat de sensors allemaal een nieuwe ID kregen op het ESP bordje. waar ik overigens niks van snap omdat die ID in de hardware ingebakken zouden moeten zijn. gevolg was dat ik dus niet meer kon opzoeken welke sensor bij welke IDX in Domoticz hoorde. Komt moeilijkheid bij omdat ik niet makkelijk meer bij alle sensoren kom; die zijn weggewerkt en onder de buisisolatie geplakt. met de hand even de temperatuur opwarmen zodat ik zie welke sensor welke is, is dus ook nagenoeg onmogelijk.

En als laatste, ik kan het gewoon niet hebben dat het niet lukt om die GPIO pin te resetten. het moet werken, dus waarom lukt het niet? ik wil niet gauw opgeven...maar leuk is anders ja...

ik zit trouwens te denken, @imdos, in het script wordt GPIO4 gereset, dat is de data pin. in deze tutorial reset hij de voeding pin. ik ga het script even aanpassen naar die pin. kijken wat ie doet.
De melding "schrijffout: Apparaat of hulpbron is bezig" is waarschijnlijk het gevolg van de 1 Wire driver die de betreffende GPIO "bezet" houdt. Met dtoverlay zou je dat misschien kunnen regelen.

De ids staan inderdaad in de hardware zoals je zelf al aangaf. Domoticz presenteert ze alleen wel een beetje anders volgens mij. Een adres als 1234 toont Domoticz als 3412 als ik het goed onthouden heb of iets in die richting. Vergelijk de adressen nog maar eens en dan zie je vast wel de overeenkomsten.

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op donderdag 13 februari 2020 @ 13:51:
Ik heb een nieuw scriptje gemaakt aan de hand van jouw voorbeeld, welke ik overigens ook gebruik, maar heeft een andere doel gekregen :)
Ik vond het makkelijker om gewoon in 1 script alles te zetten, maar ik kan nu niet zien wat je nou eigenlijk aangepast hebt zodat het wel zou doen wat ik wil of lees ik ergens overheen?
Ik heb wat kleine aanpassingen gemaakt in je elseif. Het is mij overigens nog niet 100% duidelijk wanneer het scherm dicht moet gaan. Is dat altijd bij sunset ongeacht de status van de telefoons? Want dan zou dit script namelijk niet voldoen en moet je werken met twee 'if' statements.

rens-br wijzigde deze reactie 13-02-2020 14:00 (6%)


  • bing69
  • Registratie: december 2000
  • Laatst online: 23-02 13:57
Vraagje, ben aan het scripten in Dzvents. Loop tegen een simpel probleem aan. Heb in domoticz een integer variable en die wil ik in een local variable zetten maar gek genoeg kom ik er niet uit. Krijg telkens een foutmelding dat ie Nil is.

ik doe: local sterkte = domoticz.variables.kantoorlichtsterkte

wie weet raad?

Bing

fabstar81 schreef op donderdag 13 februari 2020 @ 13:17:
[...]

thanks voor je hulp. lijkt eindeloos onoplosbaar, want nu ziet het script er zo uit:
Bash:
1
2
3
4
5
6
7
8
#!/bin/bash
#echo 4 > /sys/class/gpio/unexport
echo 4 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio4/direction
sleep 3
echo 0 > /sys/class/gpio/gpio4/value
sleep 5
echo 4 > /sys/class/gpio/unexport

eerste wat ik dan terugkrijg is:
pi@pi-zb:~ $ sudo bash /home/pi/Downloads/gpio.sh
/home/pi/Downloads/gpio.sh: regel 3: echo: schrijffout: Apparaat of hulpbron is bezig
/home/pi/Downloads/gpio.sh: regel 4: /sys/class/gpio/gpio4/direction: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 6: /sys/class/gpio/gpio4/value: Bestand of map bestaat niet
/home/pi/Downloads/gpio.sh: regel 8: echo: schrijffout: Ongeldig argument


werkt dus ook niet :? 8)7 |:( :'(

exporteren lukt dus niet, uitzetten dan ook niet. denk dat dit doodlopende weg is.


[...]

inbreken mag, goede tips geven ook. sterker nog, er hangt al een ESP bordje naast en een breadbordje en heb ze zelfs gisteren even overgeprikt daarin. probleem daarmee was, dat de sensors allemaal een nieuwe ID kregen op het ESP bordje. waar ik overigens niks van snap omdat die ID in de hardware ingebakken zouden moeten zijn. gevolg was dat ik dus niet meer kon opzoeken welke sensor bij welke IDX in Domoticz hoorde. Komt moeilijkheid bij omdat ik niet makkelijk meer bij alle sensoren kom; die zijn weggewerkt en onder de buisisolatie geplakt. met de hand even de temperatuur opwarmen zodat ik zie welke sensor welke is, is dus ook nagenoeg onmogelijk.

En als laatste, ik kan het gewoon niet hebben dat het niet lukt om die GPIO pin te resetten. het moet werken, dus waarom lukt het niet? ik wil niet gauw opgeven...maar leuk is anders ja...

ik zit trouwens te denken, @imdos, in het script wordt GPIO4 gereset, dat is de data pin. in deze tutorial reset hij de voeding pin. ik ga het script even aanpassen naar die pin (GPIO1 in mijn geval). kijken wat ie doet.

edit: hij geeft iig geen foutmeldingen meer! ik heb het ingebakken in het algemene temperatuurscript. nu is het weer wachten op een error, zodat ik kan testen of het daadwerkelijk gereset wordt.
Maar werkt het nu helemaal niet of werkt het automatisch resetten niet goed?

In geval van de laatste: Maak ze even handmatig werkend en koppel dan per sensor hem los van je Pi en sluit hem aan op je ESP bordje. Dan ben je van al 't gezeik af. Ik zet die ESP bordjes ondertussen voor van alles in omdat het juist zo simpel werkt :)

MacBook Pro Retina 13" 2018  iPhone Xs Max  Apple Watch Series 4  2x Apple TV 4  Stereopair HomePods


  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op donderdag 13 februari 2020 @ 13:57:
[...]


Ik heb wat kleine aanpassingen gemaakt in je elseif. Het is mij overigens nog niet 100% duidelijk wanneer het scherm dicht moet gaan. Is dat altijd bij sunset ongeacht de status van de telefoons? Want dan zou dit script namelijk niet voldoen en moet je werken met twee 'if' statements.
Dat klopt en ik was van mening dat het wel gewoon werkt zoals het nu is met sunset?
Het moet niet uitmaken wat de statussen zijn van de telefoons, altijd met sunset moet het gordijn dicht gaan :)
Overigens is het grootste 'probleem' nog steeds dat het IF statement niet werkt zoal ik wil:
gordijnen open wanneer beide telefoons weg zijn tussen sunrise en 10:00 uur, dit moet hij ook doen wanneer beide telefoons voor die tijd al weg zijn (dus als bijvoorbeeld 04:17 uur beide offline zijn) dan toch gordijnen open wanneer het sunrise is.

vwtune wijzigde deze reactie 13-02-2020 14:44 (21%)

Toppe schreef op donderdag 13 februari 2020 @ 14:24:
[...]


Maar werkt het nu helemaal niet of werkt het automatisch resetten niet goed?

In geval van de laatste: Maak ze even handmatig werkend en koppel dan per sensor hem los van je Pi en sluit hem aan op je ESP bordje. Dan ben je van al 't gezeik af. Ik zet die ESP bordjes ondertussen voor van alles in omdat het juist zo simpel werkt :)
De sensors werken perfect evenals het script. Enige wat ik niet aan de gang krijg is het resetten van de GPIO pin als hij dus weer eens de sensors niet herkent.

Even de Sensors handmatig uit de raspi-gpio trekken en weer erin en ze worden weer herkend. Dat wil ik dus automatisch doen met het script.

Er zitten aan de pi 12 sensoren allemaal aan elkaar vast gesoldeerd. Die kan ik dus niet even 1 voor 1 eraf halen en overzetten...

făbŞŤĄŘ - Mijn PC


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op donderdag 13 februari 2020 @ 14:37:
Dat klopt en ik was van mening dat het wel gewoon werkt zoals het nu is met sunset? Het moet niet uitmaken wat de statussen zijn van de telefoons, altijd met sunset moet het gordijn dicht gaan :)
Met de if -elseif constructie gaat die eerst kijken naar if. Wanneer 'if' waar is voert die de rest niet meer uit. Kortom als een van de twee telefoons aanwezig is, is de 'if' waar en zal hij alles wat bij elseif staat niet meer uitvoeren.
Overigens is het grootste 'probleem' nog steeds dat het IF statement niet werkt zoal ik wil:
gordijnen open wanneer beide telefoons weg zijn tussen sunrise en 10:00 uur, dit moet hij ook doen wanneer beide telefoons voor die tijd al weg zijn (dus als bijvoorbeeld 04:17 uur beide offline zijn)
Je bent niet helemaal duidelijk met de bewoording, maar als ik het goed begrijp moet er het volgende gebeuren:
- Ongeacht de tijd: Wanneer beide telefoons weg zijn, dan gordijnen open
- Ongeacht de status van de telefoons en Sunrise, dan Gordijnen openen
- Ongeacht de status van de telefoons en Sunset, dan gordijnen dicht

Klopt dat?
bing69 schreef op donderdag 13 februari 2020 @ 14:22:
Vraagje, ben aan het scripten in Dzvents. Loop tegen een simpel probleem aan. Heb in domoticz een integer variable en die wil ik in een local variable zetten maar gek genoeg kom ik er niet uit. Krijg telkens een foutmelding dat ie Nil is.

ik doe: local sterkte = domoticz.variables.kantoorlichtsterkte

wie weet raad?
Wanneer je globale variabelen wilt schrijven moet je het volgende gebruiken:
code:
1
VARIABLE.set(NIEUWE WAARDE)


Wil je globale variabelen lezen moet je het volgende gebruiken:
code:
1
VARIABLE.value


Tevens als je globale variable wilt toewijzen aan een lokale variable moet je simpelweg het volgende gebruiken:

code:
1
local var = domoticz.variables('NAAM' / IDX van variable)


Zie bijvoorbeeld het onderstaande script als voorbeeld waar ik een globale variable gebruik.
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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 29-05-2019
--Last update: 04-01-2020
--Changelog: Added check so that fan does not go on after activating the script
--Source: -
--Description: Checks the Humidity changes every 2 minutes and turn off/on the ITHO fan based on that changes
--*------------------------------------------------------------------------------------*--

return {
    on = {
        timer = {
            'at 06:00-23:15 every 2 minutes'

    },
    execute = function(domoticz, device)
         --Declarations
        local bad               = domoticz.devices(102) --Humidity badkamer
        local fan               = domoticz.devices(195) -- ITHO Fan: off (0), level1 (10), level2 (20), level3 (30)
        local PrevHum           = domoticz.variables(4) -- Variable PrevHum
        local Time              = require('Time') --Time function
        local CurrentTime       = Time() --Current time
        local IemandThuis       = domoticz.devices(54) -- Iemand Thuis
        --Function
        
        if (PrevHum.lastUpdate.minutesAgo < 360) then --Als de waarde niet de eerste waarde na de 'nachtstop' is
            if ((bad.humidity-PrevHum.value) > 5 and IemandThuis.active) then 
                if (fan.level ~= 30) then
                    fan.switchSelector(30) -- Set fan to level 3
                end
            elseif (PrevHum.value-bad.humidity > 5) then
                if (fan.level ~= 10) then
                    fan.switchSelector(10) -- Set fan to level1
                end
            end
        end
        
        if bad.humidity ~= PrevHum.value then
            PrevHum.set(bad.humidity)
        end
    end
}

rens-br wijzigde deze reactie 13-02-2020 14:59 (52%)


  • Indiaan706
  • Registratie: september 2004
  • Laatst online: 23-02 16:53
tsjoender schreef op donderdag 13 februari 2020 @ 12:51:
[...]


Heb je de S0 kWh meter al of moet je die nog aanschaffen? Als je die al hebt en je wilt de kosten laaghouden, dan is dat een prima uitgangspunt. Je kan eventueel ook nog voor een paar euro een ESP8266 aan die meter hangen die de pulsen doorgeeft aan Domoticz. Mocht je nog een kWh meter moeten kopen dan is een met modbus een betere keus. Bij pulsen tellen loopt de monitoring uit de pas als je pulsen mist of pulsen teveel telt. Een modbus teller geeft een soort van telegram net als P1 waarbij je altijd weer de draad op kan pakken mocht jouw oplossing bijvoorbeeld tijdens de vakantie stoppen. Een Eastron SDM120 is dan aan te bevelen omdat die betaalbaar is en er verschillende scripts voor te vinden zijn om die uit te lezen. Een RS485 TTL adapter kost iets van €1 - €2 uit China vandaan.
Ze komen de panelen volgende week pas installeren maar de S0 meter is al wel besteld eigenlijk.
Een SHP6 is inderdaad iets lastiger te flashen omdat je moet solderen en het is allemaal erg compact, maar ik heb het nu twee keer gedaan en het is op zich goed te doen. De nauwkeurigheid van de stroommeting schijnt niet al te best te zijn vanwege de gebruikte shunt weerstand.
Dat laatste is nog een extra reden daar niet te veel geld en moeite in te investeren dan. Is er een goed alternatief voor een SHP6?

  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op donderdag 13 februari 2020 @ 14:51:
[...]


Met de if -elseif constructie gaat die eerst kijken naar if. Wanneer 'if' waar is voert die de rest niet meer uit. Kortom als een van de twee telefoons aanwezig is, is de 'if' waar en zal hij alles wat bij elseif staat niet meer uitvoeren.


[...]


Je bent niet helemaal duidelijk met de bewoording, maar als ik het goed begrijp moet er het volgende gebeuren:
- Ongeacht de tijd: Wanneer beide telefoons weg zijn, dan gordijnen open
- Ongeacht de status van de telefoons en Sunrise, dan Gordijnen openen
- Ongeacht de status van de telefoons en Sunset, dan gordijnen dicht

Klopt dat?


[...]
- Ongeacht de tijd: Wanneer beide telefoons weg zijn, dan gordijnen open, maar dan in het tijdspad tussen sunrise en 10:00 uur
- Ongeacht de status van de telefoons en Sunrise, dan Gordijnen openen, maar dan alleen bij status offline van beide telefoons
- Ongeacht de status van de telefoons en Sunset, dan gordijnen dicht, dit klopt

Ik snap dat ik wat onduidelijk ben, ik hoop dat je nu meer helderheid hebt van wat ik precies wil :)

  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op donderdag 13 februari 2020 @ 15:31:
Ik snap dat ik wat onduidelijk ben, ik hoop dat je nu meer helderheid hebt van wat ik precies wil :)
Samenvattend moet het dan:
- Wanneer sunset -> Gordijnen dicht
- Tussen sunrise en 10.00u en als beide telefoons weg zijn -> Gordijnen open
- Als sunrise en beide telefoons zijn weg -> Gordijnen open

Toch?

Je komt dan volgens mij uit op het volgende:

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
return {
    on = {
        timer = { 
           'at sunset',
           'at sunrise' 
        }, 
        devices = { 
            690, -- Telefoon1
            691  -- Telefoon2
        }
    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (CurrentTime.matchesRule('at sunset')) then
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        elseif (CurrentTime.matchesRule('between sunrise and 10:00') and (not Telefoon1.active) and (not Telefoon2.active)) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
    end
}


Syntax errors daargelaten.

Het grootste 'probleem' wat je had dat je alleen triggerde op sunset en je devices. Je wilde ook iets laten gebeuren op het moment dat er sunrise was en die trigger miste nog. Zoals @D.de.Ruiter ook al opmerkte.

rens-br wijzigde deze reactie 13-02-2020 15:49 (9%)


  • vwtune
  • Registratie: mei 2008
  • Laatst online: 21-02 14:55
rens-br schreef op donderdag 13 februari 2020 @ 15:45:
[...]


Samenvattend moet het dan:
- Wanneer sunset -> Gordijnen dicht
- Tussen sunrise en 10.00u en als beide telefoons weg zijn -> Gordijnen open
- Als sunrise en beide telefoons zijn weg -> Gordijnen open

Toch?

Je komt dan volgens mij uit op het volgende:

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
return {
    on = {
        timer = { 
           'at sunset',
           'at sunrise' 
        }, 
        devices = { 
            690, -- Telefoon1
            691  -- Telefoon2
        }
    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (CurrentTime.matchesRule('at sunset')) then
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        elseif (CurrentTime.matchesRule('between sunrise and 10:00') and (not Telefoon1.active) and (not Telefoon2.active)) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
    end
}


Syntax errors daargelaten.

Het grootste 'probleem' wat je had dat je alleen triggerde op sunset en je devices. Je wilde ook iets laten gebeuren op het moment dat er sunrise was en die trigger miste nog. Zoals @D.de.Ruiter ook al opmerkte.
_/-\o_

Hij geeft geen syntax errors ;)

Samenvattend moet het dan:
- Wanneer sunset -> Gordijnen dicht
- Tussen sunrise en 10.00u en als beide telefoons weg zijn -> Gordijnen open
- Als sunrise en beide telefoons zijn weg -> Gordijnen open: dit zit al in de regel hierboven lijkt mij?

Ik geloof dat dit hem wel is ja. Ik merk toch dat je in elke situatie wel een andere benadering van scripting rules moet gebruiken. Dit maakt het voor mij nog lastig aangezien ik nog vaak al werkende scripts gebruik, maar dan om iets anders te doen. Nou ja, met hulp en vallen en opstaan kom je er wel 8)

  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
Dit zijn de Neo Coolcam Bewegingssensoren V2, deze versie ondersteunt ook temperatuurmeting.

Link: https://www.robbshop.nl/b...olcam?sqr=neo%20coolcam&#
Peutpeut schreef op donderdag 13 februari 2020 @ 16:16:
[...]


Dit zijn de Neo Coolcam Bewegingssensoren V2, deze versie ondersteunt ook temperatuurmeting.

Link: https://www.robbshop.nl/b...olcam?sqr=neo%20coolcam&#
O ja, zo een heb ik buiten hangen. Geeft bij mij ook temperatuur door inderdaad. duh...

făbŞŤĄŘ - Mijn PC


  • Peutpeut
  • Registratie: december 2013
  • Laatst online: 23:08
rens-br schreef op donderdag 13 februari 2020 @ 15:45:
[...]


Samenvattend moet het dan:
- Wanneer sunset -> Gordijnen dicht
- Tussen sunrise en 10.00u en als beide telefoons weg zijn -> Gordijnen open
- Als sunrise en beide telefoons zijn weg -> Gordijnen open

Toch?

Je komt dan volgens mij uit op het volgende:

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
return {
    on = {
        timer = { 
           'at sunset',
           'at sunrise' 
        }, 
        devices = { 
            690, -- Telefoon1
            691  -- Telefoon2
        }
    },
    execute = function(domoticz, item)
        --Declarations
        local Gordijn        = domoticz.devices(744)
        local Telefoon1     = domoticz.devices(690)
        local Telefoon2    = domoticz.devices(691) 
        local Time           = require('Time') --Time function
        local CurrentTime    = Time() --Current time
        
        --Function
        if (CurrentTime.matchesRule('at sunset')) then
            Gordijn.setLevel(100) -- Gordijn Dicht
            Gordijn.switchOff().afterSec(30)
        elseif (CurrentTime.matchesRule('between sunrise and 10:00') and (not Telefoon1.active) and (not Telefoon2.active)) then
            Gordijn.setLevel(1) -- Gordijn open
            Gordijn.switchOff().afterSec(30)
        end
    end
}


Syntax errors daargelaten.

Het grootste 'probleem' wat je had dat je alleen triggerde op sunset en je devices. Je wilde ook iets laten gebeuren op het moment dat er sunrise was en die trigger miste nog. Zoals @D.de.Ruiter ook al opmerkte.
Eventueel kun je het deel rondom de tijdcheck nog inkorten door deze check:

code:
1
2
3
4
5
6
execute = function(domoticz, timer)
        if(timer.trigger == 'at 23:57') then
        
        Hier je script.

        end
fabstar81 schreef op donderdag 13 februari 2020 @ 16:18:
[...]

O ja, zo een heb ik buiten hangen. Geeft bij mij ook temperatuur door inderdaad. duh...
Mooi :) Ondanks de niet zo positieve verhalen over Zwave de afgelopen tijd doen deze het bij ons prima. We triggeren er meerdere lampen en apparaten mee in huis via dZvents. Zelfs mijn vriendin vroeg laatst of het mogelijk was om de lamp in de hal automatisch te laten schakelen, ja hoor, dat kan! 8)

Peutpeut wijzigde deze reactie 13-02-2020 16:22 (12%)


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
vwtune schreef op donderdag 13 februari 2020 @ 16:04:
- Als sunrise en beide telefoons zijn weg -> Gordijnen open: dit zit al in de regel hierboven lijkt mij?
Yes. :)
Ik merk toch dat je in elke situatie wel een andere benadering van scripting rules moet gebruiken. Dit maakt het voor mij nog lastig aangezien ik nog vaak al werkende scripts gebruik, maar dan om iets anders te doen. Nou ja, met hulp en vallen en opstaan kom je er wel 8)
Komt allemaal vanzelf goed en anders kan je het simpelweg hier posten. Verder helpt het vaak ook enorm om in een paar simpele regels op te schrijven wat je wilt doen (psudo code), daarna is het relatief simpel om dat om te zetten naar normale code.

Overigens zul je wellicht ook merken dat ik regels zoals 'item.isdevice' en 'item.istimer' e.d. niet gebruik. Ik vind dat zelf niet doorzichtig genoeg, zeker bij de wat grotere scripts raak je dan al gauw het spoor bijster.
Peutpeut schreef op donderdag 13 februari 2020 @ 16:20:
Eventueel kun je het deel rondom de tijdcheck nog inkorten door deze check:
Dat werkt inderdaad ook, maar vind dat dus niet erg handig / logisch wanneer je meerdere triggers / langere scripts gebruikt.
Zelfs mijn vriendin vroeg laatst of het mogelijk was om de lamp in de hal automatisch te laten schakelen, ja hoor, dat kan! 8)
Kijk eens aan. Je hebt haar goed opgevoed. O-) Mijn vriendin begint het ook steeds fijner te vinden dat lampen e.d. automatisch aan/uit gaan. Het enige wat er hier nog wel eens fout gaat is instabiliteit en vertraging. Met name op Zigbee2mqtt apparaten.

rens-br wijzigde deze reactie 13-02-2020 16:30 (43%)


  • bing69
  • Registratie: december 2000
  • Laatst online: 23-02 13:57
rens-br schreef op donderdag 13 februari 2020 @ 14:51:
[...]


Met de if -elseif constructie gaat die eerst kijken naar if. Wanneer 'if' waar is voert die de rest niet meer uit. Kortom als een van de twee telefoons aanwezig is, is de 'if' waar en zal hij alles wat bij elseif staat niet meer uitvoeren.


[...]


Je bent niet helemaal duidelijk met de bewoording, maar als ik het goed begrijp moet er het volgende gebeuren:
- Ongeacht de tijd: Wanneer beide telefoons weg zijn, dan gordijnen open
- Ongeacht de status van de telefoons en Sunrise, dan Gordijnen openen
- Ongeacht de status van de telefoons en Sunset, dan gordijnen dicht

Klopt dat?


[...]


Wanneer je globale variabelen wilt schrijven moet je het volgende gebruiken:
code:
1
VARIABLE.set(NIEUWE WAARDE)


Wil je globale variabelen lezen moet je het volgende gebruiken:
code:
1
VARIABLE.value


Tevens als je globale variable wilt toewijzen aan een lokale variable moet je simpelweg het volgende gebruiken:

code:
1
local var = domoticz.variables('NAAM' / IDX van variable)


Zie bijvoorbeeld het onderstaande script als voorbeeld waar ik een globale variable gebruik.
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
--*------------------------------------------------------------------------------------*--
--Creator: Rens
--Date: 29-05-2019
--Last update: 04-01-2020
--Changelog: Added check so that fan does not go on after activating the script
--Source: -
--Description: Checks the Humidity changes every 2 minutes and turn off/on the ITHO fan based on that changes
--*------------------------------------------------------------------------------------*--

return {
    on = {
        timer = {
            'at 06:00-23:15 every 2 minutes'

    },
    execute = function(domoticz, device)
         --Declarations
        local bad               = domoticz.devices(102) --Humidity badkamer
        local fan               = domoticz.devices(195) -- ITHO Fan: off (0), level1 (10), level2 (20), level3 (30)
        local PrevHum           = domoticz.variables(4) -- Variable PrevHum
        local Time              = require('Time') --Time function
        local CurrentTime       = Time() --Current time
        local IemandThuis       = domoticz.devices(54) -- Iemand Thuis
        --Function
        
        if (PrevHum.lastUpdate.minutesAgo < 360) then --Als de waarde niet de eerste waarde na de 'nachtstop' is
            if ((bad.humidity-PrevHum.value) > 5 and IemandThuis.active) then 
                if (fan.level ~= 30) then
                    fan.switchSelector(30) -- Set fan to level 3
                end
            elseif (PrevHum.value-bad.humidity > 5) then
                if (fan.level ~= 10) then
                    fan.switchSelector(10) -- Set fan to level1
                end
            end
        end
        
        if bad.humidity ~= PrevHum.value then
            PrevHum.set(bad.humidity)
        end
    end
}
Thanks, dacht dat het me helder was maar kom er nog niet uit, de global var is een integer, krijg de volgende fout:
--------

2020-02-13 16:45:43.501 Error: dzVents: Error: (2.5.7) An error occurred when calling event handler Kantoor_helderheid
2020-02-13 16:45:43.501 Error: dzVents: Error: (2.5.7) /home/pi/domoticz/dzVents/runtime/Variable.lua:49: bad argument #1 to 'floor' (number expected, got nil)
--------


return {
active = true,
on = {
devices = {
'Kantoor (Brightness Down)',
'Kantoor (Brightness Up)'
}
},

execute = function(domoticz,kantoorlampen)
local lampen = domoticz.devices('kantoorlampen')
local Links = domoticz.devices('Kantoor links')
local Rechts = domoticz.devices('Kantoor rechts')
local up = domoticz.devices('Kantoor (Brightness Up)')
local down = domoticz.devices('Kantoor (Brightness Down)')
local sterkte = domoticz.variables('kantoorlichtsterkte')
if (lampen.state == 'On') and (up.state == 'Click') then
domoticz.log(sterkte)
sterkte = sterkte + 10
Links.dimTo(sterkte)
Rechts.dimTo(sterkte)

end
-- if (lampen.state == 'On') and (down.state == 'Click') then
-- sterkte = sterkte - 10

-- Links.dimTo(sterkte)
-- Rechts.dimTo(sterkte)
-- end
end
}

Bing


  • rens-br
  • Registratie: december 2009
  • Laatst online: 21:40
bing69 schreef op donderdag 13 februari 2020 @ 16:52:
[...]

Thanks, dacht dat het me helder was maar kom er nog niet uit, de global var is een integer, krijg de volgende fout:
--------

2020-02-13 16:45:43.501 Error: dzVents: Error: (2.5.7) An error occurred when calling event handler Kantoor_helderheid
2020-02-13 16:45:43.501 Error: dzVents: Error: (2.5.7) /home/pi/domoticz/dzVents/runtime/Variable.lua:49: bad argument #1 to 'floor' (number expected, got nil)
Vreemd genoeg geeft hij problemen op 'floor' maar dat hele woord komt niet voor in je script.

Daarnaast plaats code a.u.b. in code tags, dan is het een stuk beter leesbaar!!!! Staat niet voor niets in de topicwarning. :)

Paar (algemene) opmerkingen:
[list]
• Persoonlijk vind ik het makkelijk om te werken met de IDX in plaats van de naamgeving, de namen willen nog wel eens wijzigen.
• Je kijkt nu of een knop op 'On' of 'Off' staat. Ik vind het persoonlijk fijner om .active ( en not . active) te gebruiken.
• Je hebt in 'execute = function(domoticz,kantoorlampen)' je eigen naam gebruikt. Waarom is dat? Persoonlijk zou ik dat overal hetzelfde houden. Dus 'execute = function(domoticz, device)'.

Verder geef je nu aan je lokale variable nog steeds geen argumenten mee. Zoals ik in mijn vorige post al aangaf, je moet sterkte uitlezen met:
code:
1
sterkte.value


En schrijven met:

code:
1
sterkte.set(NIEUWE WAARDE)


Dan het script zelf. Wat wil je precies maken? Het lijkt erop dat je een dimmer wilt bouwen. Bij elke click een stap van 10 brightness naar beneden of naar boven, klopt dat? Want dan moet je ook nog iets inbouwen dat ervoor zorgt dat je geen negatieve waarde probeert in te stellen.

Met al die dingen in het achterhoofd gehouden wordt je script vervolgens zo:

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
return {
    on = {
        devices = {
            'Kantoor (Brightness Down)',
            'Kantoor (Brightness Up)'
                }
        },

    execute = function(domoticz,kantoorlampen)
            local lampen = domoticz.devices('kantoorlampen')
            local Links = domoticz.devices('Kantoor links')
            local Rechts = domoticz.devices('Kantoor rechts')
            local up = domoticz.devices('Kantoor (Brightness Up)')
            local down = domoticz.devices('Kantoor (Brightness Down)')
            local sterkte = domoticz.variables('kantoorlichtsterkte')
        if (lampen.active) and (up.state == 'Click') then
          if sterkte.value <> 100 then
            domoticz.log(sterkte.value)
            sterkte.set(sterkte.value + 10)
            Links.dimTo(sterkte.value)
            Rechts.dimTo(sterkte.value) 
           end

        end
--        if (lampen.active) and (down.state == 'Click') then
          if sterkte.value <> 0 then
--            sterkte.set(sterkte.value - 10)

--            Links.dimTo(sterkte.value)
--            Rechts.dimTo(sterkte.value) 
        end
--       end    
 end
}


Heb dit niet getest, maar het moet een heel eind werken.

rens-br wijzigde deze reactie 13-02-2020 17:07 (3%)

fabstar81 schreef op donderdag 13 februari 2020 @ 14:47:
[...]

De sensors werken perfect evenals het script. Enige wat ik niet aan de gang krijg is het resetten van de GPIO pin als hij dus weer eens de sensors niet herkent.

Even de Sensors handmatig uit de raspi-gpio trekken en weer erin en ze worden weer herkend. Dat wil ik dus automatisch doen met het script.

Er zitten aan de pi 12 sensoren allemaal aan elkaar vast gesoldeerd. Die kan ik dus niet even 1 voor 1 eraf halen en overzetten...
“Als hij dus weer eens de sensors niet herkent”

Geloof dat ik toch echt even een uurtje de-solderen dan voor lief zou nemen :+



Net de Ikea plug-in ge-update, lijkt stuk sneller te gaan

MacBook Pro Retina 13" 2018  iPhone Xs Max  Apple Watch Series 4  2x Apple TV 4  Stereopair HomePods

Pagina: 1 ... 79 ... 82 Laatste


Apple iPhone 11 Microsoft Xbox Series X LG OLED C9 Google Pixel 4 CES 2020 Samsung Galaxy S20 4G Sony PlayStation 5 Nintendo Switch Lite

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2020 Hosting door True