Domoticz - open source domotica systeem - deel 4 Vorige deel Overzicht Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 10 ... 112 Laatste
Acties:
  • 573.754 views

Onderwerpen


Acties:
  • 0 Henk 'm!
Toppe schreef op dinsdag 15 januari 2019 @ 16:17:
[...]


Probeer eens os.execute

Of
code:
1
2
3
local handle = io.popen(command)
local result = handle:read("*a")
handle:close()
os.execute:
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
-- Poll volume van versterker
function Round(num, idp)
   return tonumber(string.format("%." ..(idp or 0).. "f", num))
end

-- Variables
local iIDX          = 544                       -- IDX van dummy voor volume van versterker
local receiver      = '6.2 STR-DA5600es A/C'    -- Device versterker A/C

local CVaanvoer     = otherdevices_temperature[var_aanvoer]
local CVretour      = otherdevices_temperature[var_retour]

commandArray = {}

if (otherdevices[receiver] == "On" then
    volume = os.execute('echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001')
    print("Versterker staat aan, pollen van volume = " ..volume.. "dB")
    commandArray['UpdateDevice'] = ''..iIDX..'|0|'..volume..''   
else
    volume = 0
    commandArray['UpdateDevice'] = ''..iIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor volume")
end 

return commandArray


geeft:
code:
1
2019-01-15 16:36:02.675 Error: EventSystem: in volume_poll_test_versterker: [string "-- Poll volume van versterker..."]:15: ')' expected near 'then'

maar die snap ik niet....

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • BizzieBis
  • Registratie: Maart 2004
  • Laatst online: 12-06 23:06
os.execute geeft niets terug en voert alleen maar uit. Misschien dat een opzet als deze werkt:
code:
1
2
3
4
5
6
local file = io.popen("whoami")  -- runs command
local output = file:read("*all") -- read output of command
local output_adjusted = string.sub(output,1,4) -- take the first 4 characters of the output string
file:close()

print(output_adjusted)

En daarbij geeft je error al precies aan wat er aan de hand is, er mist een ')' ;)
Oftewel deze is te veel: regel15, if (otherdevices[receiver]

[ Voor 18% gewijzigd door BizzieBis op 15-01-2019 16:41 ]


Acties:
  • +1 Henk 'm!
fabstar81 schreef op dinsdag 15 januari 2019 @ 16:36:
[...]


os.execute:
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
-- Poll volume van versterker
function Round(num, idp)
   return tonumber(string.format("%." ..(idp or 0).. "f", num))
end

-- Variables
local iIDX          = 544                       -- IDX van dummy voor volume van versterker
local receiver      = '6.2 STR-DA5600es A/C'    -- Device versterker A/C

local CVaanvoer     = otherdevices_temperature[var_aanvoer]
local CVretour      = otherdevices_temperature[var_retour]

commandArray = {}

if (otherdevices[receiver] == "On" then
    volume = os.execute('echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001')
    print("Versterker staat aan, pollen van volume = " ..volume.. "dB")
    commandArray['UpdateDevice'] = ''..iIDX..'|0|'..volume..''   
else
    volume = 0
    commandArray['UpdateDevice'] = ''..iIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor volume")
end 

return commandArray


geeft:
code:
1
2019-01-15 16:36:02.675 Error: EventSystem: in volume_poll_test_versterker: [string "-- Poll volume van versterker..."]:15: ')' expected near 'then'

maar die snap ik niet....
Op regel 15 mis je een )

== “On”)

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!
BizzieBis schreef op dinsdag 15 januari 2019 @ 16:39:
os.execute geeft niets terug en voert alleen maar uit. Misschien dat een opzet als deze werkt:
code:
1
2
3
4
5
6
local file = io.popen("whoami")  -- runs command
local output = file:read("*all") -- read output of command
local output_adjusted = string.sub(output,1,4) -- take the first 4 characters of the output string
file:close()

print(output_adjusted)

En daarbij geeft je error al precies aan wat er aan de hand is, er mist een ')' ;)
Oftewel deze is te veel: regel15, if (otherdevices[receiver]
volgens domoticz wiki geeft die wel iets terug:
Using Ping command to check the status of a network device
This Lua time script will run every minute (if named script_time_ping.lua) and checks the status of a device by sending one IP ping command to its IP address. The result is reported to Domoticz through a (dummy) switch called Ping in the example.

commandArray = {}

ping_success=os.execute('ping -c1 192.168.1.156')
if ping_success then
print("ping success")
commandArray['Ping']='On'
else
print("ping fail")
commandArray['Ping']='Off'
end

return commandArray
ik zal eens proberen met jouw opzet ook.

de foutmelding die ik krijg in de logging is voornamelijk een syntax fout zo te zien.

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!
@Toppe aaah, thanks! Ik staar me echt blind op die code en dan nog niet zien.. Straks aanpassen en checken of hij het doet.

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • Siewert
  • Registratie: December 2015
  • Laatst online: 10:27
Toppe schreef op dinsdag 15 januari 2019 @ 12:16:
[...]


Wat is irritant? mijn aanname of begrijp ik je verkeerd? :9


[...]


Enige irritante is dat je het moet doen via SSH en niet via de interface van Domoticz
@Toppe Gebruik zelf sinds 1998 TotalCommander welke een plugin heeft om via sftp in te loggen.
Lekker simpel en vanuit Windows met notepad++ je files bewerken.
BizzieBis schreef op dinsdag 15 januari 2019 @ 12:10:
[...]


Thanks for the heads-up. Ik heb meteen mijn hele LUA systeem naar deze methode geport >:)
Lekker snel systeempje en eenvoudig te onderhouden met versiebeheer.
Thanks @Siewert voor je voorbeeld _/-\o_
@BizzieBis
Mijn Github vind je mijn Lua scripts en zie hoe ik te werk ben gegaan.
In eerste instantie lastig te lezen, Maar denk dat je er wel uitkomt.
https://github.com/Siewert308SW/MyDomoticz-Scripts

[ Voor 38% gewijzigd door Siewert op 15-01-2019 17:13 ]

Enphase IQ8+ PV @ 8,1kWp (Oost/West °51) \-/ Segway E125s \-/ DIY 7.5kWh Thuisbatterij \-/ My piBattery Project @ GitHub


Acties:
  • 0 Henk 'm!
Nee. Niet toen ik hem programmeerde. Toen ik hem wilde verbeteren wel. Raar...

Volgens mij doet ie het. Krijg Nil value error. Logisch want de versterker staat uit. Mijn If statement is dan ook verkeerd die moet naar het ping device kijken om te checken of de versterker aan staat

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • RobinMM
  • Registratie: Maart 2010
  • Laatst online: 08-06 14:47
Hallo tweakers,

Momenteel gebruik ik in Domoticz een blockly script dat licht in de gang inschakelt. Ik heb in de gang 2 motion sensors. Deze zetten allebei een virtuele switch op aan. Wanneer deze virtuele switch aan gaat gaat ook de verlichting aan. Deze wordt na 60 seconden uitgezet als tussendoor de virtuele schakelaar niet wederom 'on' gezet wordt.

Het kan gebeuren dat 1 of 2 van de motion sensoren continue beweging registeren waardoor ondanks dat er nog beweging is de lamp wel na 60 seconden uit gaat(deze is dan niet in de afgelopen 60 seconen opnieuw aangezet). Dit omdat pas bij een uit/aan signaal van een motion sensor de virtuele switch weer aan gezet wordt.

Eigenlijk wil ik dat op het moment dat het licht uitgeschakeld wordt er gecheckt wordt of 1 van de 2 motion sensors nog op 'on' staat. Als dat zo is moet het script 10 seconden wachten en tot dat beide sensoren uit staan.

Is dit mogelijk met Blockly?

Acties:
  • 0 Henk 'm!

  • Siewert
  • Registratie: December 2015
  • Laatst online: 10:27
@RobinMM
Dat heb ik nog nooit op een simpele manier met blocky voor elkaar kunnen krijgen.
Heb blocky dan wel al twee niet meer gezien dus weet niet wat er nieuw is.
Maar in Lua is het zo voor elkaar, scripts kun je zo lang laten wachten als je zelf wilt.

Enphase IQ8+ PV @ 8,1kWp (Oost/West °51) \-/ Segway E125s \-/ DIY 7.5kWh Thuisbatterij \-/ My piBattery Project @ GitHub


Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
Na heel wat klooien en dom kijken, kwam ik er achter dat ik de gBridge plugin nodig had (duhhh).

Nu blijf ik de volgende foutmelding krijgen:

2019-01-15 17:55:31.749 (Gbridge) Heartbeating...
2019-01-15 17:55:31.750 (Gbridge) MqttClient::Ping
2019-01-15 17:55:31.800 (Gbridge) Message from base
2019-01-15 17:55:31.800 (Gbridge) Incoming message!{'Verb': 'PINGRESP'}

Maar, er gebeurt verder niets

who put a "stop payment" on my reality check


Acties:
  • 0 Henk 'm!

  • RobinMM
  • Registratie: Maart 2010
  • Laatst online: 08-06 14:47
Siewert schreef op dinsdag 15 januari 2019 @ 17:44:
@RobinMM
Dat heb ik nog nooit op een simpele manier met blocky voor elkaar kunnen krijgen.
Heb blocky dan wel al twee niet meer gezien dus weet niet wat er nieuw is.
Maar in Lua is het zo voor elkaar, scripts kun je zo lang laten wachten als je zelf wilt.
Bedankt voor je reactie, ik ga nog wel even aanrommelen :) wellicht dat het niet nodig is om om wachttijd in te bouwen. Daarnaast ook maar is wat gaan verdiepen in Lua.

Acties:
  • 0 Henk 'm!

  • Richard35
  • Registratie: Juli 2007
  • Laatst online: 07:08
[quote]Toppe schreef op zaterdag 12 januari 2019 @ 16:31:
@ThinkPad zie post boven mij :)

@Richard35 misschien handig om even je blocky/LUA/dzVents mee te posten zodat we zien wat er gebeurt :)
Het enige wat de blocky die ThinkPad op het Domoticz forum heeft gedaan is de virtuele schakelaar isDonker (virt) uit zetten als het dag is en isDonker (virt) aan is (zonsopkomst <-> zonsondergang) en aanzetten als het nacht is (zonsondergang <-> zonsopkomst) als isDonker (virt) uit staat

---------------

Ik probeer mijn gebeurtenis(blocky) mee te posten, maar het lukt me niet |:(

Hoe kan ik die in mijn Post Kopieeren? Alvast bedankt _/-\o_

Acties:
  • 0 Henk 'm!
Richard35 schreef op dinsdag 15 januari 2019 @ 18:10:
[quote]Toppe schreef op zaterdag 12 januari 2019 @ 16:31:
@ThinkPad zie post boven mij :)

@Richard35 misschien handig om even je blocky/LUA/dzVents mee te posten zodat we zien wat er gebeurt :)
Het enige wat de blocky die ThinkPad op het Domoticz forum heeft gedaan is de virtuele schakelaar isDonker (virt) uit zetten als het dag is en isDonker (virt) aan is (zonsopkomst <-> zonsondergang) en aanzetten als het nacht is (zonsondergang <-> zonsopkomst) als isDonker (virt) uit staat

---------------

Ik probeer mijn gebeurtenis(blocky) mee te posten, maar het lukt me niet |:(

Hoe kan ik die in mijn Post Kopieeren? Alvast bedankt _/-\o_
Even een screenshotje maken en die ergens uploaden :)

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!

  • Richard35
  • Registratie: Juli 2007
  • Laatst online: 07:08
Toppe schreef op dinsdag 15 januari 2019 @ 18:12:
[...]


Even een screenshotje maken en die ergens uploaden :)
Domoticz
Verlichting buiten


Gelukt :+

Acties:
  • 0 Henk 'm!

  • Richard35
  • Registratie: Juli 2007
  • Laatst online: 07:08
Toppe schreef op dinsdag 15 januari 2019 @ 18:38:
[...]


Je hebt op dit album een wachtwoord, dus zien we hem nog niet :'(
Domoticz
Verlichting buiten


Nu wel |:(

Acties:
  • +1 Henk 'm!

  • thecompany
  • Registratie: Maart 2004
  • Laatst online: 12-06 19:53
DaRk PoIsOn schreef op dinsdag 15 januari 2019 @ 17:58:
Na heel wat klooien en dom kijken, kwam ik er achter dat ik de gBridge plugin nodig had (duhhh).

Nu blijf ik de volgende foutmelding krijgen:

2019-01-15 17:55:31.749 (Gbridge) Heartbeating...
2019-01-15 17:55:31.750 (Gbridge) MqttClient::Ping
2019-01-15 17:55:31.800 (Gbridge) Message from base
2019-01-15 17:55:31.800 (Gbridge) Incoming message!{'Verb': 'PINGRESP'}

Maar, er gebeurt verder niets
Dat is mijn plugin, heb je wel de readme gelezen en de device description voorzien van 'gBridge'. Dit zorgt ervoor dat de plugin de devices in gBridge plaatst, daarna kunnen ze aangeroepen worden middels de Google Assistent.

Acties:
  • +1 Henk 'm!

  • BizzieBis
  • Registratie: Maart 2004
  • Laatst online: 12-06 23:06
Siewert schreef op dinsdag 15 januari 2019 @ 17:09:
[...]


[...]


@BizzieBis
Mijn Github vind je mijn Lua scripts en zie hoe ik te werk ben gegaan.
In eerste instantie lastig te lezen, Maar denk dat je er wel uitkomt.
https://github.com/Siewert308SW/MyDomoticz-Scripts
Ik heb een clone van je repo gemaakt en deze inmiddels aangepast en in gebruik :*)

Ik heb nog een kleine wijziging gemaakt zodat alleen .lua files uitgevoerd worden. Zo kan ik een event hernoemen zodat deze niet meer uitgevoerd wordt.

Verder wil ik de triggers array nog aanpassen zodat een bepaalde trigger alleen het script aanroept waar deze trigger voor bedoeld is. Scheelt weer net dat beetje cpu en systeem respons.

Acties:
  • 0 Henk 'm!

  • Siewert
  • Registratie: December 2015
  • Laatst online: 10:27
@BizzieBis

Ooit ook eens geprobeerd.
Uiteindelijk mee gestopt want daar in cpu was geen winst te behalen.
En bovendien werd het een heel onoverzichtelijk zooitje.
5 triggers gedefinieerd welke onderling weer 4 of 5 scripts mochten oproepen.
Uiteindelijk was Domoticz te kluts kwijt en kreeg errors dat de main_device script langer dan 10sec liep.

CPU gemiddelde op mijn Pi3 is nu tussen 0.5 en 0.6 volgens domoticz
En dat met:
17 Lua scripts
34 z-wave nodes
27 433Mh devices
5 Plugins
2x Youless hardware
1x Nest Hardware
Raspberry Sensors
4x devices in System Alive Checker (Ping)

En misschien nog wat vergeten qua bash scripts e.d.

Enphase IQ8+ PV @ 8,1kWp (Oost/West °51) \-/ Segway E125s \-/ DIY 7.5kWh Thuisbatterij \-/ My piBattery Project @ GitHub


Acties:
  • +1 Henk 'm!

  • BizzieBis
  • Registratie: Maart 2004
  • Laatst online: 12-06 23:06
@Siewert

Winst zal er inderdaad niet mee te behalen zijn. Ik doe het alleen omdat het kan ;)
En onoverzichtelijk? Dat kan ik niet zeggen. In mijn situatie is het juist erg overzichtelijk. Waarschijnlijk omdat ik een enorme berg virtuele switches heb die nu nog de boel bedienen haha. Staat nog op de planning om dat aan te pakken.

Afbeeldingslocatie: https://tweakers.net/ext/f/4vVKnYJzdE5CMS1CLgr26isb/thumb.png

Mijn systeem is ook al behoorlijk uitgebreid en zit nu rond de 1 a 2% cpu. Dat was voorheen ruim boven de 15%.

Acties:
  • 0 Henk 'm!

  • GJ007
  • Registratie: Maart 2005
  • Laatst online: 01-06 23:35

GJ007

:)

Fijn topic dit!
Ben al een tijdje aan het experimenteren met domoticz, maar hoor graag even of mijn (basis) gedachtengang wel juist is;
Ik begon met partij ontvangers te koppelen aan een ab, en dan vervolgens inleren via domoticz mbv die afstandsbediening.
Is het niet handiger alle ontvangers vanaf domiticz in te leren en vervolgens de ab apart; dus als je de ab gebruikt deze via domoticz de ontvanger schakelt?

Heb in den beginne nog een schemersensor gebruikt voor de buitenverlichting (433mhz kaku) -
Maar die voegt weinig toe als ik dat via domoticz schakelt lijk mij? - de ontvanger inleren en laten schakel adhv zonsondergang in domoticz?

Thx!

[ Voor 0% gewijzigd door GJ007 op 16-01-2019 08:36 . Reden: Typo ]

signature


Acties:
  • 0 Henk 'm!
BizzieBis schreef op dinsdag 15 januari 2019 @ 22:57:
Mijn systeem is ook al behoorlijk uitgebreid en zit nu rond de 1 a 2% cpu. Dat was voorheen ruim boven de 15%.
lol, gemiddelde CPU van mijn rpi1 is 80%...
nog een reden om over te stappen naar de rpi3B. 8)7

[ Voor 40% gewijzigd door fabstar81 op 16-01-2019 09:57 ]

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!

  • Knielen
  • Registratie: December 2009
  • Laatst online: 14:17
GJ007 schreef op woensdag 16 januari 2019 @ 08:35:
Fijn topic dit!
Ben al een tijdje aan het experimenteren met domoticz, maar hoor graag even of mijn (basis) gedachtengang wel juist is;
Ik begon met partij ontvangers te koppelen aan een ab, en dan vervolgens inleren via domoticz mbv die afstandsbediening.
Is het niet handiger alle ontvangers vanaf domiticz in te leren en vervolgens de ab apart; dus als je de ab gebruikt deze via domoticz de ontvanger schakelt?

Heb in den beginne nog een schemersensor gebruikt voor de buitenverlichting (433mhz kaku) -
Maar die voegt weinig toe als ik dat via domoticz schakelt lijk mij? - de ontvanger inleren en laten schakel adhv zonsondergang in domoticz?

Thx!
Als die schemersensor goed werkt zou ik die blijven gebruiken, op een grauwe dag wil je dat de verlichting eerder inschakelt.

En inderdaad is het handig om ook je AB over Domoticz te laten lopen, dan weet Domoticz altijd de status van apparaten.

Acties:
  • +1 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
GJ007 schreef op woensdag 16 januari 2019 @ 08:35:
Fijn topic dit!
Ben al een tijdje aan het experimenteren met domoticz, maar hoor graag even of mijn (basis) gedachtengang wel juist is;
Ik begon met partij ontvangers te koppelen aan een ab, en dan vervolgens inleren via domoticz mbv die afstandsbediening.
Is het niet handiger alle ontvangers vanaf domiticz in te leren en vervolgens de ab apart; dus als je de ab gebruikt deze via domoticz de ontvanger schakelt?

Heb in den beginne nog een schemersensor gebruikt voor de buitenverlichting (433mhz kaku) -
Maar die voegt weinig toe als ik dat via domoticz schakelt lijk mij? - de ontvanger inleren en laten schakel adhv zonsondergang in domoticz?

Thx!
Ik ben juist bezig via wemos gestuurde lichtsensoren, mijn domoticz te 'verbeteren'. Mijn lampen schakelen ook d.m.v. zons op en ondergang (en daarin variabelen met tijden erbij, dus 10 minuten na bijvoorbeeld), maar ik merk dat het soms toch beter zou zijn als het licht eerder of juist later aan/ uit zou gaan, dit omdat op een bewuste dag, het erg grauw/ grijs/ bewolkt kan zijn of juist heel helder en zonnig. Lang verhaal kort: ik zou die schemersensor juist behouden ;)

Acties:
  • 0 Henk 'm!

  • Duci
  • Registratie: Mei 2011
  • Niet online
fabstar81 schreef op woensdag 16 januari 2019 @ 09:57:
[...]


lol, gemiddelde CPU van mijn rpi1 is 80%...
nog een reden om over te stappen naar de rpi3B. 8)7
Dan zal er nog wel iets meer aan de hand zijn. Ik denk niet dat je van 80% naar 1% gaat door over te stappen. :) Ik zou gelijk een verse install doen met overal de laatste versie van. Paar uurtjes werk, maar dan heb je ook wat.

Acties:
  • 0 Henk 'm!
Duci schreef op woensdag 16 januari 2019 @ 11:11:
[...]

Dan zal er nog wel iets meer aan de hand zijn. Ik denk niet dat je van 80% naar 1% gaat door over te stappen. :) Ik zou gelijk een verse install doen met overal de laatste versie van. Paar uurtjes werk, maar dan heb je ook wat.
ja, die heb ik vaker gehoord. moet zeggen dat ik daar ook meer naar neig vanwege de malformed database én dat de hardware toch wel anders blijkt te zijn tussen een 1 en 3b. Maar probleem is dat ik niet alles zelf heb gedaan. ik weet dus niet goed welke scripts er nog meer draaien enzo. bovendien ga ik echt niet al die devices, lua scripts, timer plans etc opnieuw doen. dat is toch waanzin?

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!
fabstar81 schreef op woensdag 16 januari 2019 @ 11:28:
[...]

ja, die heb ik vaker gehoord. moet zeggen dat ik daar ook meer naar neig vanwege de malformed database én dat de hardware toch wel anders blijkt te zijn tussen een 1 en 3b. Maar probleem is dat ik niet alles zelf heb gedaan. ik weet dus niet goed welke scripts er nog meer draaien enzo. bovendien ga ik echt niet al die devices, lua scripts, timer plans etc opnieuw doen. dat is toch waanzin?
Dat zou ik juist wel doen. Sterker nog, als je de boel volledig werkend heb zo ik een backup maken van je SD kaart zodat je altijd terug kan vallen op een 'perfecte' installatie. Afgezien van het inleren van je apparaten en een apt-get upgrade & apt-get update heb je dan niet nodig :)

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!

  • GJ007
  • Registratie: Maart 2005
  • Laatst online: 01-06 23:35

GJ007

:)

Knielen schreef op woensdag 16 januari 2019 @ 10:24:
[...]


Als die schemersensor goed werkt zou ik die blijven gebruiken, op een grauwe dag wil je dat de verlichting eerder inschakelt.

En inderdaad is het handig om ook je AB over Domoticz te laten lopen, dan weet Domoticz altijd de status van apparaten.
Je beschrijft precies mijn gedachtengang, de status gaat dan goed vis domoticz, top.
Dan leer ik mijn ontvangers rechtstreeks in nadat ik ze allemaal los gekoppeld heb van de ab.
Met de ab kan ik dan mooi een aantal scenes laten schakelen 👍

signature


Acties:
  • 0 Henk 'm!
@Toppe, in principe is mijn installatie perfect. alles werkt zoals het moet werken...zelfs nu nog met de malformed database. De inrichting is dus fantastisch en naar mijn zin. Ik zit alleen met die malformed database dat ie mijn totalen van energymonitoring niet opslaat.

Ik kan voor mezelf niet inschatten wat er allemaal bij komt kijken als ik van scratch zou beginnen.
@AUijtdehaag heeft scripts buiten domoticz geplaatst voor energymonitoring en zonnepanelen
Scripts binnen domoticz
er draait een youless
RFXcomE
Zwave
Ondertussen heel wat blockly en lua
Relais boards
Tig virtual devices.

Om het over de timerplans maar niet te hebben. Voor elke status van het huis een ander aan/uit programma.

Moet er niet aan denken dit manual allemaal opnieuw te bouwen terwijl het nu goed werkt. daar ben ik niet een paar uur mee bezig. Helemaal niet als ik alle devices opnieuw moet inleren in de zwave stick (moet dit uberhaupt?). Daar ben ik noodgedwongen (Vera lite hiled er mee op) dagen, zo niet weken mee bezig geweest....

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!

  • BlakHawk
  • Registratie: Februari 2008
  • Laatst online: 09-01-2021
Ik ben opnieuw begonnen...
Kreeg homebridge niet meer aan de praat en op zich ben ik pas sinds december bezig.

Direct laten draaien vanaf USB stick en alleen opstarten vanaf microSd om zo het probleem van falende kaartjes te ontzien...

Youtube: DashcamNL


Acties:
  • 0 Henk 'm!

  • wmn79
  • Registratie: April 2007
  • Laatst online: 13:30
Voor de geïnteresseerden er is tegenwoordig een apart topic voor deCONZ: deCONZ - Zigbee gateway van Dresden Elektronik

Acties:
  • 0 Henk 'm!
fabstar81 schreef op woensdag 16 januari 2019 @ 12:16:
@Toppe, in principe is mijn installatie perfect. alles werkt zoals het moet werken...zelfs nu nog met de malformed database. De inrichting is dus fantastisch en naar mijn zin. Ik zit alleen met die malformed database dat ie mijn totalen van energymonitoring niet opslaat.

Ik kan voor mezelf niet inschatten wat er allemaal bij komt kijken als ik van scratch zou beginnen.
@AUijtdehaag heeft scripts buiten domoticz geplaatst voor energymonitoring en zonnepanelen
Scripts binnen domoticz
er draait een youless
RFXcomE
Zwave
Ondertussen heel wat blockly en lua
Relais boards
Tig virtual devices.

Om het over de timerplans maar niet te hebben. Voor elke status van het huis een ander aan/uit programma.

Moet er niet aan denken dit manual allemaal opnieuw te bouwen terwijl het nu goed werkt. daar ben ik niet een paar uur mee bezig. Helemaal niet als ik alle devices opnieuw moet inleren in de zwave stick (moet dit uberhaupt?). Daar ben ik noodgedwongen (Vera lite hiled er mee op) dagen, zo niet weken mee bezig geweest....
Voor die database zou ik als ik jou was een issue openen op het Domoticz forum, daar zitten de mensen die de core van Domoticz kennen je hoogst waarschijnlijk veel sneller kunnen helpen.

Lijkt me dat dit in de basis opgelost moet kunnen worden, al is het ergens een fix van je database zelf.

code:
1
2019-01-11 10:01:19.748 Error: SQL Query("SELECT ID,Name, Used, SwitchType, nValue, sValue, LastUpdate, Options FROM DeviceStatus WHERE (HardwareID=14 AND DeviceID='0000068' AND Unit=1 AND Type=17 AND SubType=0)") : database disk image is malformed


Google levert dit:
https://www.domoticz.com/forum/viewtopic.php?t=10984
https://www.domoticz.com/forum/viewtopic.php?t=22844(<- laatste post)

Korte versie: Je maakt en dump van je huidige database en importeert die in een nieuwe, de nieuwe overschrijft de oude...

[ Voor 15% gewijzigd door Toppe op 16-01-2019 13:42 ]

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
fabstar81 schreef op woensdag 16 januari 2019 @ 11:28:
[...]

ja, die heb ik vaker gehoord. moet zeggen dat ik daar ook meer naar neig vanwege de malformed database én dat de hardware toch wel anders blijkt te zijn tussen een 1 en 3b. Maar probleem is dat ik niet alles zelf heb gedaan. ik weet dus niet goed welke scripts er nog meer draaien enzo. bovendien ga ik echt niet al die devices, lua scripts, timer plans etc opnieuw doen. dat is toch waanzin?
Wat voor melding krijg je (in Domoticz over malformed...)?

Acties:
  • 0 Henk 'm!
@vwtune, verschillende:
code:
1
2019-01-16 13:40:02.573 Error: SQL Query("INSERT INTO Meter (DeviceRowID, Value, [Usage]) VALUES ('544', '0', '0')") : database disk image is malformed
code:
1
2019-01-16 13:40:02.685 Error: SQL Query("INSERT INTO MultiMeter (DeviceRowID, Value1, Value2, Value3, Value4, Value5, Value6) VALUES ('123', '0', '0', '0', '0', '0', '0')") : database disk image is malformed


en deze komt elke keer gegroepeerd terug:
code:
1
2
3
4
2019-01-16 13:43:43.964 Error: SQL Query("SELECT Name,nValue,sValue FROM DeviceStatus WHERE (HardwareID==14) AND (DeviceID=='0000067')") : database disk image is malformed
2019-01-16 13:43:43.969 Error: SQL Query("SELECT ID,Name, Used, SwitchType, nValue, sValue, LastUpdate, Options FROM DeviceStatus WHERE (HardwareID=14 AND DeviceID='0000067' AND Unit=1 AND Type=17 AND SubType=0)") : database disk image is malformed
2019-01-16 13:43:43.989 Error: SQL Query("SELECT Name,nValue,sValue FROM DeviceStatus WHERE (HardwareID==14) AND (DeviceID=='0000068')") : database disk image is malformed
2019-01-16 13:43:44.006 Error: SQL Query("SELECT ID,Name, Used, SwitchType, nValue, sValue, LastUpdate, Options FROM DeviceStatus WHERE (HardwareID=14 AND DeviceID='0000068' AND Unit=1 AND Type=17 AND SubType=0)") : database disk image is malformed


maar als ik naar hardware ID 14 kijk (OTGW) bestaat er geen enkel device 67 en 68 in devices tab.

en een hele rits van deze en allerlei device id's:
code:
1
2019-01-16 13:45:00.929 Error: SQL Query("INSERT INTO Meter (DeviceRowID, Value, [Usage]) VALUES ('387', '25830', '20')") : database disk image is malformed


ziet er ongeveer zo uit:
Afbeeldingslocatie: https://i.imgur.com/EuLMfvu.png

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!
thanks, maar die had ik al gevonden en geprobeerd! 1 keer geprobeerd en niet gelukt. maar vanavond ga ik een nieuwe poging wagen.

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!
fabstar81 schreef op woensdag 16 januari 2019 @ 13:50:
[...]

thanks, maar die had ik al gevonden en geprobeerd! 1 keer geprobeerd en niet gelukt. maar vanavond ga ik een nieuwe poging wagen.
Wat bedoel je precies? Het verhelpt het probleem niet of het lukt niet om de database te exporteren en te importeren?

Daar zit namelijk best een groot verschil in.

En anders een account maken op het Domoticz forum en het daar proberen, denk dat je kans van slagen daar groter (= sneller) is dan hier ;)

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!
de procedure is voltooid maar ik zit nog steeds met die fouten :)
het lijkt er nl ook op dat ik een unique constraint error heb. daar kwam ik achter middels de PRAGMA integrity check.

vermoed dat die eerst opgelost moet worden.

registreren op domoticz heb ik al eens geprobeerd, maar krijg nooit de activatiemail (nee, ook niet in Spam) :+

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!
fabstar81 schreef op woensdag 16 januari 2019 @ 13:58:
de procedure is voltooid maar ik zit nog steeds met die fouten :)
het lijkt er nl ook op dat ik een unique constraint error heb. daar kwam ik achter middels de PRAGMA integrity check.

vermoed dat die eerst opgelost moet worden.

registreren op domoticz heb ik al eens geprobeerd, maar krijg nooit de activatiemail (nee, ook niet in Spam) :+
Had ik ook. Gebruik zelf een eigen domein met .email als extensie en die vinden veel forums niet leuk.

Je kan het best even een gmail aanmaken en daar je registratie op zetten, dat heb ik zojuist even getest voor je en dat werkt prima!

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!
nog even terug naar pollen van volume 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
29
30
31
32
33
34
35
36
37
38
39
-- Poll volume van versterker
--function Round(num, idp)
--   return tonumber(string.format("%." ..(idp or 0).. "f", num))
--end

-- Variables
local vIDX          = 544                       -- IDX van dummy voor volume van versterker
local sIDX          = 409                       -- IDX van dummy voor surround van versterker
local receiver      = 'STR-DA5600ES On/Off'     -- Device versterker A/C
local receiver_ping = 'STR-DA5600ES (PING)'     -- Device versterker ping
local bravifa_ping  = 'bravifa (PING)'          -- Device televisie ping

commandArray = {}

if (otherdevices[receiver_ping] == "On" and otherdevices[bravifa_ping] == "On") then
    volume = os.execute('echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001')
    if (volume ~= "") then
        print("Versterker staat aan, pollen van volume = "..volume.." dB")
        commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    else
        print('Ophalen volume niet gelukt')
    end
    surround = os.execute('echo -n -e "\x02\x02\xA3\x82\xD9" | nc 192.168.69.222 6001')
    if (surround ~= "") then
        print("Versterker staat aan, pollen van surround sound = "..surround.." sound")
        commandArray['UpdateDevice'] = ''..sIDX..'|0|'..surround..''
    else
        print('Ophalen surround sound niet gelukt')
    end
else
    volume = 0
    commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor volume")
    surround = ''
    commandArray['UpdateDevice'] = ''..sIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor surround")
end 

return commandArray


krijg ik volgende fout in domoticz log:
code:
1
2019-01-16 15:03:02.956 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:18: attempt to concatenate global 'volume' (a nil value)


als ik het commando
code:
1
echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001
in de command line afvuur krijg ik geen output van de poll actie. is de output van een netcat commando doorgaans iets wat je op de command line terug zou krijgen? of moet ik dat op andere manier afvangen?

ik neem tenminste aan dat domoticz de error geeft omdat het script geen output heeft. ik dacht echter dat ik dat af heb gevangen met (if volume ~= '').

verschillende dingen geprobeerd:
if volume ~= nil <= lost iig de nil value error op
if surround ~= nil <= geeft onderstaande foutmelding:
code:
1
2019-01-16 15:20:10.644 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:25: attempt to concatenate global 'surround' (a boolean value)

[ Voor 6% gewijzigd door fabstar81 op 16-01-2019 15:22 ]

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!
fabstar81 schreef op woensdag 16 januari 2019 @ 15:06:
nog even terug naar pollen van volume 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
29
30
31
32
33
34
35
36
37
38
39
-- Poll volume van versterker
--function Round(num, idp)
--   return tonumber(string.format("%." ..(idp or 0).. "f", num))
--end

-- Variables
local vIDX          = 544                       -- IDX van dummy voor volume van versterker
local sIDX          = 409                       -- IDX van dummy voor surround van versterker
local receiver      = 'STR-DA5600ES On/Off'     -- Device versterker A/C
local receiver_ping = 'STR-DA5600ES (PING)'     -- Device versterker ping
local bravifa_ping  = 'bravifa (PING)'          -- Device televisie ping

commandArray = {}

if (otherdevices[receiver_ping] == "On" and otherdevices[bravifa_ping] == "On") then
    volume = os.execute('echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001')
    if (volume ~= "") then
        print("Versterker staat aan, pollen van volume = "..volume.." dB")
        commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    else
        print('Ophalen volume niet gelukt')
    end
    surround = os.execute('echo -n -e "\x02\x02\xA3\x82\xD9" | nc 192.168.69.222 6001')
    if (surround ~= "") then
        print("Versterker staat aan, pollen van surround sound = "..surround.." sound")
        commandArray['UpdateDevice'] = ''..sIDX..'|0|'..surround..''
    else
        print('Ophalen surround sound niet gelukt')
    end
else
    volume = 0
    commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor volume")
    surround = ''
    commandArray['UpdateDevice'] = ''..sIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor surround")
end 

return commandArray


krijg ik volgende fout in domoticz log:
code:
1
2019-01-16 15:03:02.956 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:18: attempt to concatenate global 'volume' (a nil value)


als ik het commando
code:
1
echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001
in de command line afvuur krijg ik geen output van de poll actie. is de output van een netcat commando doorgaans iets wat je op de command line terug zou krijgen? of moet ik dat op andere manier afvangen?

ik neem tenminste aan dat domoticz de error geeft omdat het script geen output heeft. ik dacht echter dat ik dat af heb gevangen met (if volume ~= '').

verschillende dingen geprobeerd:
if volume ~= nil <= lost iig de nil value error op
if surround ~= nil <= geeft onderstaande foutmelding:
code:
1
2019-01-16 15:20:10.644 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:25: attempt to concatenate global 'surround' (a boolean value)
Ik zou eerst op de command line proberen een output te krijgen voordat je de overstap naar Domoticz maakt.
Normaal gesproken zou je met echo inderdaad de output moeten krijgen

Zou je niet eerst je database probleem oplossen voordat je naar de volgende stap gaat?

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!

  • Robbie T
  • Registratie: Februari 2006
  • Laatst online: 11:06
Ik ervaar problemen met de koppeling met Controllicz. Ik heb een account aangemaakt en vervolgens mijn gegevens ingevuld.Bij het testen met de koppeling krijg ik echter een inlogscherm van Controllicz voor mijn neus. Als ik vervolgens mijn gegevens weer invul dan krijg ik het schermpje nog een keer.

Ik maak voor Domoticz gebruik van een custom hostname (subdomein). En voer dit dan ook in als Controllicz.

Acties:
  • 0 Henk 'm!

  • mastair
  • Registratie: Februari 2003
  • Laatst online: 13:33
Welke inloggegevens voer je daar dan in? Volgens mij moet dat je login voor Controlicz zijn (niet van je eigen Domoticz).

Maar heel duidelijk is de website inderdaad niet.

Ik zeg maar zo, ik zeg maar niks.


Acties:
  • +1 Henk 'm!

  • flexje
  • Registratie: September 2001
  • Laatst online: 08:20

flexje

got-father

Ik ben niet zo thuis in Node-red maar ik heb zojuist een flow proberen te maken om mijn Shelly1 met Domoticz te kunnen bedienen. Ik heb het volgende gemaakt en het werkt. Ik moet alleen nog een flow maken om de status van Shelly in Domoticz te gooien bij het handmatig aan/uitzetten van Shelly met een wandschakelaar.

Graag commentaar, nogmaals, mijn eerste flow, dus als het beter kan hoor ik het graag!

code:
1
[{"id":"59d4f9d0.5b9408","type":"tab","label":"Domoticz to Shelly","disabled":false,"info":""},{"id":"4703c51a.e215fc","type":"mqtt in","z":"59d4f9d0.5b9408","name":"","topic":"domoticz/out","qos":"2","broker":"da5a79fa.8a2878","x":87,"y":154,"wires":[["7cc84d9.e7609b4"]]},{"id":"7cc84d9.e7609b4","type":"json","z":"59d4f9d0.5b9408","name":"","property":"payload","action":"","pretty":true,"x":292,"y":120,"wires":[["7644026d.a0838c"]]},{"id":"7644026d.a0838c","type":"function","z":"59d4f9d0.5b9408","name":"filter idx 127","func":"if(msg.payload.idx === 127)\n{\nreturn msg;\n}","outputs":1,"noerr":0,"x":482,"y":108,"wires":[["48005073.c9dbe"]]},{"id":"48005073.c9dbe","type":"switch","z":"59d4f9d0.5b9408","name":"Aan of Uit","property":"payload.nvalue","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"str"},{"t":"eq","v":"0","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":467,"y":182,"wires":[["e8f1027c.72398"],["65e4e7b6.24a9c8"]]},{"id":"810c017f.0f8ca","type":"debug","z":"59d4f9d0.5b9408","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload.nvalue","x":809,"y":96,"wires":[]},{"id":"57d0fd3e.61c024","type":"mqtt out","z":"59d4f9d0.5b9408","name":"MQTT Shelly","topic":"shellies/shelly1-22FDAB/relay/0/command","qos":"0","retain":"","broker":"da5a79fa.8a2878","x":822,"y":228,"wires":[]},{"id":"e8f1027c.72398","type":"change","z":"59d4f9d0.5b9408","name":"Aan","rules":[{"t":"set","p":"payload.nvalue","pt":"msg","to":"on","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":620,"y":228,"wires":[["810c017f.0f8ca","293766ac.18518a"]]},{"id":"65e4e7b6.24a9c8","type":"change","z":"59d4f9d0.5b9408","name":"Uit","rules":[{"t":"set","p":"payload.nvalue","pt":"msg","to":"off","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":618,"y":284,"wires":[["810c017f.0f8ca","f3e8df87.65cb7"]]},{"id":"19737b29.b43d65","type":"mqtt out","z":"59d4f9d0.5b9408","name":"MQTT Shelly","topic":"shellies/shelly1-22FDAB/relay/0/command","qos":"0","retain":"","broker":"da5a79fa.8a2878","x":822,"y":286,"wires":[]},{"id":"293766ac.18518a","type":"trigger","z":"59d4f9d0.5b9408","op1":"on","op2":"","op1type":"str","op2type":"nul","duration":"250","extend":false,"units":"ms","reset":"","bytopic":"all","name":"","x":643,"y":404,"wires":[["57d0fd3e.61c024"]]},{"id":"f3e8df87.65cb7","type":"trigger","z":"59d4f9d0.5b9408","op1":"off","op2":"","op1type":"str","op2type":"nul","duration":"250","extend":false,"units":"ms","reset":"","bytopic":"all","name":"","x":642,"y":463,"wires":[["19737b29.b43d65"]]},{"id":"da5a79fa.8a2878","type":"mqtt-broker","z":"","name":"syn_mqtt","broker":"0.0.0.0","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]



Afbeeldingslocatie: https://i.ibb.co/tx31LWZ/Schermafbeelding-2019-01-16-om-18-07-40.png

"Try not to become a man of success but rather to become a man of value..."


Acties:
  • +1 Henk 'm!

  • BizzieBis
  • Registratie: Maart 2004
  • Laatst online: 12-06 23:06
fabstar81 schreef op woensdag 16 januari 2019 @ 15:06:
nog even terug naar pollen van volume 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
29
30
31
32
33
34
35
36
37
38
39
-- Poll volume van versterker
--function Round(num, idp)
--   return tonumber(string.format("%." ..(idp or 0).. "f", num))
--end

-- Variables
local vIDX          = 544                       -- IDX van dummy voor volume van versterker
local sIDX          = 409                       -- IDX van dummy voor surround van versterker
local receiver      = 'STR-DA5600ES On/Off'     -- Device versterker A/C
local receiver_ping = 'STR-DA5600ES (PING)'     -- Device versterker ping
local bravifa_ping  = 'bravifa (PING)'          -- Device televisie ping

commandArray = {}

if (otherdevices[receiver_ping] == "On" and otherdevices[bravifa_ping] == "On") then
    volume = os.execute('echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001')
    if (volume ~= "") then
        print("Versterker staat aan, pollen van volume = "..volume.." dB")
        commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    else
        print('Ophalen volume niet gelukt')
    end
    surround = os.execute('echo -n -e "\x02\x02\xA3\x82\xD9" | nc 192.168.69.222 6001')
    if (surround ~= "") then
        print("Versterker staat aan, pollen van surround sound = "..surround.." sound")
        commandArray['UpdateDevice'] = ''..sIDX..'|0|'..surround..''
    else
        print('Ophalen surround sound niet gelukt')
    end
else
    volume = 0
    commandArray['UpdateDevice'] = ''..vIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor volume")
    surround = ''
    commandArray['UpdateDevice'] = ''..sIDX..'|0|'..volume..''
    print("Versterker staat uit => geen poll voor surround")
end 

return commandArray


krijg ik volgende fout in domoticz log:
code:
1
2019-01-16 15:03:02.956 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:18: attempt to concatenate global 'volume' (a nil value)


als ik het commando
code:
1
echo -n -e "\x02\x04\xA0\x92\x00\x01\xC9" | nc 192.168.69.222 6001
in de command line afvuur krijg ik geen output van de poll actie. is de output van een netcat commando doorgaans iets wat je op de command line terug zou krijgen? of moet ik dat op andere manier afvangen?

ik neem tenminste aan dat domoticz de error geeft omdat het script geen output heeft. ik dacht echter dat ik dat af heb gevangen met (if volume ~= '').

verschillende dingen geprobeerd:
if volume ~= nil <= lost iig de nil value error op
if surround ~= nil <= geeft onderstaande foutmelding:
code:
1
2019-01-16 15:20:10.644 Error: EventSystem: in poll_versterker: [string "-- Poll volume van versterker..."]:25: attempt to concatenate global 'surround' (a boolean value)
Je moet het vergelijk '(volume ~= nil )' maken, of simpeler: 'if volume then'.

Zoals gezegd, je krijgt geen output van je commando terug. Enkel of het uitvoeren gelukt is, dan bevat 'volume' een waarde. Als het niet gelukt is, dan is 'volume' leeg, en dus nil.

Wil je de waarde terug krijgen, dan moet je toch werken met io.popen().

Lua:
1
2
3
4
5
6
local file = io.popen("onkyo volume.query")  -- runs command
local output = file:read("*all") -- read output of command
local output_adjusted = string.sub(string.sub(output,-3),1,2) -- first take the last 3 characters, then take the first 2 (will eliminate new line)
file:close()

print('Onkyo main volume staat op: '..output_adjusted)

Geeft als output
code:
1
2019-01-16 19:09:56.926 Status: LUA: Onkyo main volume staat op: 42

[ Voor 6% gewijzigd door BizzieBis op 16-01-2019 19:11 ]


Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
thecompany schreef op dinsdag 15 januari 2019 @ 19:25:
[...]

Dat is mijn plugin, heb je wel de readme gelezen en de device description voorzien van 'gBridge'. Dit zorgt ervoor dat de plugin de devices in gBridge plaatst, daarna kunnen ze aangeroepen worden middels de Google Assistent.
Dat had ik idd gedaan en krijg dan:

2019-01-16 18:45:06.979 Error: (Gbridge): Async Secure Read Exception: 1, stream truncated
2019-01-16 18:50:03.875 Error: CheckAuthToken(Token....) : auth token mismatch

who put a "stop payment" on my reality check


Acties:
  • 0 Henk 'm!

  • thecompany
  • Registratie: Maart 2004
  • Laatst online: 12-06 19:53
DaRk PoIsOn schreef op woensdag 16 januari 2019 @ 19:01:
[...]


Dat had ik idd gedaan en krijg dan:

2019-01-16 18:45:06.979 Error: (Gbridge): Async Secure Read Exception: 1, stream truncated
2019-01-16 18:50:03.875 Error: CheckAuthToken(Token....) : auth token mismatch
Dit zegt mij helemaal niks, heb je een screenshot van je configuratie in Domoticz?

Acties:
  • 0 Henk 'm!

  • vonkkie
  • Registratie: Januari 2014
  • Laatst online: 11-06 20:10
tweakers hulp gevraagt

ik ben net begonnen met domoticz en heb een fibaro universele binary sensor op mijn inbraak installatie aan gesloten.

de bedoeling is dat als ik inschakel alle verlichting (hue) uit geschakeld wordt door een script

omgekeerd bij inbraak moet alles aan

de binary sensor laat netjes onder schakelaars zien aan en uit

dus dat werkt hardware matig
ik heb een scene aangemaakt alles uit deze werkt software

dan het probleem ik heb met blocky dit gemaakt


Afbeeldingslocatie: https://tweakers.net/ext/f/zMUcVdgb68UPLsD7kFyQqS68/full.png

alleen gebeurt er niets

moet ik dit nog ergens invullen of iets anders ??

met vriendelijke groet
vonkkie

Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
thecompany schreef op woensdag 16 januari 2019 @ 19:06:
[...]

Dit zegt mij helemaal niks, heb je een screenshot van je configuratie in Domoticz?
Zodra ik thuis ben, zal ik er 1 maken. Maar eigenlijk staat daar alles precies ingevuld zoals het moet

who put a "stop payment" on my reality check


Acties:
  • +4 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
fabstar81 schreef op woensdag 16 januari 2019 @ 13:45:
@vwtune, verschillende:
code:
1
2019-01-16 13:40:02.573 Error: SQL Query("INSERT INTO Meter (DeviceRowID, Value, [Usage]) VALUES ('544', '0', '0')") : database disk image is malformed
code:
1
2019-01-16 13:40:02.685 Error: SQL Query("INSERT INTO MultiMeter (DeviceRowID, Value1, Value2, Value3, Value4, Value5, Value6) VALUES ('123', '0', '0', '0', '0', '0', '0')") : database disk image is malformed


en deze komt elke keer gegroepeerd terug:
code:
1
2
3
4
2019-01-16 13:43:43.964 Error: SQL Query("SELECT Name,nValue,sValue FROM DeviceStatus WHERE (HardwareID==14) AND (DeviceID=='0000067')") : database disk image is malformed
2019-01-16 13:43:43.969 Error: SQL Query("SELECT ID,Name, Used, SwitchType, nValue, sValue, LastUpdate, Options FROM DeviceStatus WHERE (HardwareID=14 AND DeviceID='0000067' AND Unit=1 AND Type=17 AND SubType=0)") : database disk image is malformed
2019-01-16 13:43:43.989 Error: SQL Query("SELECT Name,nValue,sValue FROM DeviceStatus WHERE (HardwareID==14) AND (DeviceID=='0000068')") : database disk image is malformed
2019-01-16 13:43:44.006 Error: SQL Query("SELECT ID,Name, Used, SwitchType, nValue, sValue, LastUpdate, Options FROM DeviceStatus WHERE (HardwareID=14 AND DeviceID='0000068' AND Unit=1 AND Type=17 AND SubType=0)") : database disk image is malformed


maar als ik naar hardware ID 14 kijk (OTGW) bestaat er geen enkel device 67 en 68 in devices tab.

en een hele rits van deze en allerlei device id's:
code:
1
2019-01-16 13:45:00.929 Error: SQL Query("INSERT INTO Meter (DeviceRowID, Value, [Usage]) VALUES ('387', '25830', '20')") : database disk image is malformed


ziet er ongeveer zo uit:
[Afbeelding]
Inderdaad een DB die waarschijnlijk corrupt is. Is meestal vrij eenvoudig op te lossen door via Putty in te loggen op je systeem. Hangt er even van af waar je het op draait en of dat systeem SQLlite3 ondersteunt.

Voor o.a Rapsberry werken deze stappen prima.

Database Controleren op fouten.

1. Maak een backup in Domoticz van je DB en stel deze veilig mocht er toch iets niet goed gaan.
2. In Putty uitvoeren als je sqlite3 nog niet hebt geinstalleerd: sudo apt-get install sqlite3
3. Daarna moet Domoticz gestopt worden: sudo service domoticz stop
4. Vervolgens voer je in: cd domoticz
5. Daarna het commando: sqlite3 domoticz.db
6. Controleren of er fouten aanwezig zijn in de DB met het commando: pragma integrity_check;

Als met stap 6 aangeven wordt dat er errors zijn gevonden ga je verder met onderstaande stappen.

1. Als je sqlite3 al verlaten hebt geef je weer het commando sqlite3 domoticz.db
2. Daarna type je in: .mode insert (let op voor mode staat een punt)
3. Daarna: .output dump.sql (ook hier weer beginnen met een punt)
4. Daarna: .dump (ook een punt ervoor)
5. Daarna: .exit (ook een punt ervoor)
6. Daarna: sqlite3 domoticz1.db < dump.sql (geen punt meer ervoor >:) )

Na deze stappen is het verstandig om eerst de nieuwe DB ook te controleren op fouten. Als alles goed is gegaan zou je nu een melding met OK moeten krijgen.

1. Nieuw DB controleren op fouten met het commando: sqlite3 domoticz1.db
2. En daarna: pragma integrity_check;
3. Als er geen fouten meer zijn gevonden geef je het commando: .exit (weer een punt ervoor)
4. Hernoem domoticz1.db naar domoticz.db en restore deze DB via Domoticz.
5. Domoticz weer starten met: sudo service domoticz start

Nu zou je foutmelding verdwenen moeten zijn.

Maak in Domoticz weer een database backup. Shutdown je raspberry p een nette manier, haal je sd kaart eruit en maak een hele kopie van die sd kaart middels win32diskimager. Pak een nieuwe sd kaart en zet daar die image op. Start je raspberry weer op met die nieuwe sd kaart en gooi die oude weg. Mijn advies is op Sandisk kaartjes te gebruiken. Ik had dat mailformed gedoe ook met samsung en kingstone kaartjes, nu met Sanidsk, nooit meer gehad.

Acties:
  • +1 Henk 'm!

  • flexje
  • Registratie: September 2001
  • Laatst online: 08:20

flexje

got-father

vonkkie schreef op woensdag 16 januari 2019 @ 19:16:
tweakers hulp gevraagt

ik ben net begonnen met domoticz en heb een fibaro universele binary sensor op mijn inbraak installatie aan gesloten.

de bedoeling is dat als ik inschakel alle verlichting (hue) uit geschakeld wordt door een script

omgekeerd bij inbraak moet alles aan

de binary sensor laat netjes onder schakelaars zien aan en uit

dus dat werkt hardware matig
ik heb een scene aangemaakt alles uit deze werkt software

dan het probleem ik heb met blocky dit gemaakt


[Afbeelding]

alleen gebeurt er niets

moet ik dit nog ergens invullen of iets anders ??

met vriendelijke groet
vonkkie
Kijk even of je status van je alarm daadwerkelijk als value “On” moet hebben en niet Aan, of on...

"Try not to become a man of success but rather to become a man of value..."


Acties:
  • 0 Henk 'm!

  • vonkkie
  • Registratie: Januari 2014
  • Laatst online: 11-06 20:10
heb het net gevonden bij scene moet staan on ipv active
bedankt voor het mee denken

Acties:
  • 0 Henk 'm!

  • Siewert
  • Registratie: December 2015
  • Laatst online: 10:27
BizzieBis schreef op dinsdag 15 januari 2019 @ 22:57:
@Siewert

Winst zal er inderdaad niet mee te behalen zijn. Ik doe het alleen omdat het kan ;)
En onoverzichtelijk? Dat kan ik niet zeggen. In mijn situatie is het juist erg overzichtelijk. Waarschijnlijk omdat ik een enorme berg virtuele switches heb die nu nog de boel bedienen haha. Staat nog op de planning om dat aan te pakken.

[Afbeelding]

Mijn systeem is ook al behoorlijk uitgebreid en zit nu rond de 1 a 2% cpu. Dat was voorheen ruim boven de 15%.
Weet nu ff niet waarom, maar heb het maar weer eens geprobeerd zoals jij het nu ook hebt draaien.
Maar om een of andere reden loopt mijn systeem ontzettend traag.
Uitvoeren van scripts duurt wel tot 2 seconden langer met als gevolg dat ik de gang al uit ben en dan pas het licht aanspringt.
CPU vloog ook omhoog door al dat gezoek naar de desbetreffende event file.
Maar goed, ben terug gegaan naar hoe ik het had en zoek het later wel eens uit.

Enphase IQ8+ PV @ 8,1kWp (Oost/West °51) \-/ Segway E125s \-/ DIY 7.5kWh Thuisbatterij \-/ My piBattery Project @ GitHub


Acties:
  • 0 Henk 'm!

  • thecompany
  • Registratie: Maart 2004
  • Laatst online: 12-06 19:53
DaRk PoIsOn schreef op woensdag 16 januari 2019 @ 19:18:
[...]


Zodra ik thuis ben, zal ik er 1 maken. Maar eigenlijk staat daar alles precies ingevuld zoals het moet
Heb je logging op debug gezet in de config van de plugin? Misschien dat er dan iets meer duidelijk wordt.

Acties:
  • 0 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 19:29:
[...]


Inderdaad een DB die waarschijnlijk corrupt is. Is meestal vrij eenvoudig op te lossen door via Putty in te loggen op je systeem. Hangt er even van af waar je het op draait en of dat systeem SQLlite3 ondersteunt.

Voor o.a Rapsberry werken deze stappen prima.

Database Controleren op fouten.

1. Maak een backup in Domoticz van je DB en stel deze veilig mocht er toch iets niet goed gaan.
2. In Putty uitvoeren als je sqlite3 nog niet hebt geinstalleerd: sudo apt-get install sqlite3
3. Daarna moet Domoticz gestopt worden: sudo service domoticz stop
4. Vervolgens voer je in: cd domoticz
5. Daarna het commando: sqlite3 domoticz.db
6. Controleren of er fouten aanwezig zijn in de DB met het commando: pragma integrity_check;

Als met stap 6 aangeven wordt dat er errors zijn gevonden ga je verder met onderstaande stappen.

1. Als je sqlite3 al verlaten hebt geef je weer het commando sqlite3 domoticz.db
2. Daarna type je in: .mode insert (let op voor mode staat een punt)
3. Daarna: .output dump.sql (ook hier weer beginnen met een punt)
4. Daarna: .dump (ook een punt ervoor)
5. Daarna: .exit (ook een punt ervoor)
6. Daarna: sqlite3 domoticz1.db < dump.sql (geen punt meer ervoor >:) )

Na deze stappen is het verstandig om eerst de nieuwe DB ook te controleren op fouten. Als alles goed is gegaan zou je nu een melding met OK moeten krijgen.

1. Nieuw DB controleren op fouten met het commando: sqlite3 domoticz1.db
2. En daarna: pragma integrity_check;
3. Als er geen fouten meer zijn gevonden geef je het commando: .exit (weer een punt ervoor)
4. Hernoem domoticz1.db naar domoticz.db en restore deze DB via Domoticz.
5. Domoticz weer starten met: sudo service domoticz start

Nu zou je foutmelding verdwenen moeten zijn.

Maak in Domoticz weer een database backup. Shutdown je raspberry p een nette manier, haal je sd kaart eruit en maak een hele kopie van die sd kaart middels win32diskimager. Pak een nieuwe sd kaart en zet daar die image op. Start je raspberry weer op met die nieuwe sd kaart en gooi die oude weg. Mijn advies is op Sandisk kaartjes te gebruiken. Ik had dat mailformed gedoe ook met samsung en kingstone kaartjes, nu met Sanidsk, nooit meer gehad.
pragma check:
sqlite> pragma integrity_check;
*** in database main ***
Page 8845: btreeInitPage() returns error code 11
Page 8846: btreeInitPage() returns error code 11
On tree page 91 cell 46: Child page depth differs
On tree page 8435 cell 16: Rowid 1075788 out of order (previous was 2247683)
Page 8874: btreeInitPage() returns error code 11
On tree page 235 cell 23: Child page depth differs
On tree page 235 cell 24: Child page depth differs
Page 8855: btreeInitPage() returns error code 11
Page 8849: btreeInitPage() returns error code 11
On tree page 7915 cell 21: Child page depth differs
On tree page 7915 cell 22: Child page depth differs
Page 8851: btreeInitPage() returns error code 11
On tree page 7915 cell 44: Child page depth differs
On tree page 7915 cell 45: Child page depth differs
Page 8869: btreeInitPage() returns error code 11
On tree page 7916 cell 103: Child page depth differs
On tree page 107 cell 5: Rowid 261 out of order (previous was 261)
Page 8870: btreeInitPage() returns error code 11
On tree page 79 cell 65: Child page depth differs
Page 8802 is never used
Page 8803 is never used
Page 8804 is never used
Page 8805 is never used
Page 8806 is never used
Page 8807 is never used
Page 8808 is never used
Page 8809 is never used
Page 8810 is never used
Page 8811 is never used
Page 8812 is never used
Page 8813 is never used
Page 8814 is never used
Page 8815 is never used
Page 8816 is never used
Page 8817 is never used
Page 8818 is never used
Page 8819 is never used
Page 8820 is never used
Page 8821 is never used
Page 8822 is never used
Page 8823 is never used
Page 8824 is never used
Page 8825 is never used
Page 8826 is never used
Page 8827 is never used
Page 8828 is never used
Page 8829 is never used
Page 8830 is never used
Page 8831 is never used
Page 8832 is never used
Page 8833 is never used
Page 8834 is never used
Page 8835 is never used
Page 8836 is never used
Page 8837 is never used
Page 8838 is never used
Page 8839 is never used
Page 8840 is never used
Page 8871 is never used
row 146 missing from index t_id_date_idx
row 166 missing from index t_id_date_idx
row 186 missing from index t_id_date_idx
row 206 missing from index t_id_date_idx
row 226 missing from index t_id_date_idx
row 237 missing from index t_id_date_idx
row 246 missing from index t_id_date_idx
row 257 missing from index t_id_date_idx
row 266 missing from index t_id_date_idx
row 277 missing from index t_id_date_idx
row 286 missing from index t_id_date_idx
row 297 missing from index t_id_date_idx
row 306 missing from index t_id_date_idx
row 317 missing from index t_id_date_idx
row 326 missing from index t_id_date_idx
row 337 missing from index t_id_date_idx
row 346 missing from index t_id_date_idx
row 357 missing from index t_id_date_idx
row 366 missing from index t_id_date_idx
row 377 missing from index t_id_date_idx
row 386 missing from index t_id_date_idx
row 397 missing from index t_id_date_idx
row 406 missing from index t_id_date_idx
row 417 missing from index t_id_date_idx
row 426 missing from index t_id_date_idx
row 437 missing from index t_id_date_idx
row 446 missing from index t_id_date_idx
row 457 missing from index t_id_date_idx
row 466 missing from index t_id_date_idx
row 471 missing from index t_id_date_idx
row 477 missing from index t_id_date_idx
row 486 missing from index t_id_date_idx
row 491 missing from index t_id_date_idx
row 497 missing from index t_id_date_idx
row 506 missing from index t_id_date_idx
row 511 missing from index t_id_date_idx
row 517 missing from index t_id_date_idx
row 526 missing from index t_id_date_idx
row 531 missing from index t_id_date_idx
row 537 missing from index t_id_date_idx
row 546 missing from index t_id_date_idx
sqlite>
na de 2e 6 stappen gaat het fout bij het importeren van dump.sql in domoticz1.db
pi@raspberrypi:~/domoticz $ sqlite3 domoticz1.db < dump.sql
Error: near line 226: UNIQUE constraint failed: DeviceStatus.ID
die moet ik denk ik eerst oplossen, want hij gaat nu niet verder met importeren.

hij is dus wel doorgegaan met importeren ondanks de unique constraint fout:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
pi@raspberrypi:~/domoticz $ sqlite3 domoticz1.db < dump.sql
Error: near line 226: UNIQUE constraint failed: DeviceStatus.ID
pi@raspberrypi:~/domoticz $ sudo sqlite3 domoticz1.db
SQLite version 3.8.7.1 2014-10-29 13:59:56
Enter ".help" for usage hints.
sqlite> pragma integrity_check;
ok
sqlite> .exit

pi@raspberrypi:~/domoticz $ mv domoticz.db domoticz.db.bak

pi@raspberrypi:~/domoticz $ mv domoticz1.db domoticz.db
pi@raspberrypi:~/domoticz $ sudo service domoticz.sh start

en de errors zijn weg!
ik had dus de vorige keer hem gewoon door moeten laten gaan. ik had toen op gegeven moment op CTRL+C gedrukt en blijkbaar afgebroken.

geduld is schone zaak....

thanks @vwtune !!!

[ Voor 5% gewijzigd door fabstar81 op 16-01-2019 21:07 ]

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
fabstar81 schreef op woensdag 16 januari 2019 @ 20:52:
[...]


pragma check:

[...]


na de 2e 6 stappen gaat het fout bij het importeren van dump.sql in domoticz1.db


[...]


die moet ik denk ik eerst oplossen, want hij gaat nu niet verder met importeren.

hij is dus wel doorgegaan met importeren ondanks de unique constraint fout:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
pi@raspberrypi:~/domoticz $ sqlite3 domoticz1.db < dump.sql
Error: near line 226: UNIQUE constraint failed: DeviceStatus.ID
pi@raspberrypi:~/domoticz $ sudo sqlite3 domoticz1.db
SQLite version 3.8.7.1 2014-10-29 13:59:56
Enter ".help" for usage hints.
sqlite> pragma integrity_check;
ok
sqlite> .exit

pi@raspberrypi:~/domoticz $ mv domoticz.db domoticz.db.bak

pi@raspberrypi:~/domoticz $ mv domoticz1.db domoticz.db
pi@raspberrypi:~/domoticz $ sudo service domoticz.sh start

en de errors zijn weg!
ik had dus de vorige keer hem gewoon door moeten laten gaan. ik had toen op gegeven moment op CTRL+C gedrukt en blijkbaar afgebroken.

geduld is schone zaak....

thanks @vwtune !!!
No problem, maar ik adviseer je wel om je sd kaart weg te gooien en een nieuwe Sandisk te kopen. want anders komt het terug. (bij de action toevallig verkopen ze die erg goedkoop). Ik heb met deze echt nooit meer problemen gehad, ook niet na gewoon stroom van mijn rpi trekken, dus niet netjes afsluiten....

Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
thecompany schreef op woensdag 16 januari 2019 @ 20:45:
[...]

Heb je logging op debug gezet in de config van de plugin? Misschien dat er dan iets meer duidelijk wordt.
2019-01-16 21:32:13.688 (Gbridge) Heartbeating...
2019-01-16 21:32:13.688 (Gbridge) MqttClient::Ping
2019-01-16 21:32:13.689 (Gbridge) Sending 2 bytes of data
2019-01-16 21:32:13.689 (Gbridge) c0 00 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. �.
2019-01-16 21:32:13.739 (Gbridge) Received 2 bytes of data
2019-01-16 21:32:13.739 (Gbridge) d0 00 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. �.
2019-01-16 21:32:13.740 (Gbridge) Message from base
2019-01-16 21:32:13.740 (Gbridge) Incoming message!{'Verb': 'PINGRESP'}

who put a "stop payment" on my reality check


Acties:
  • 0 Henk 'm!

  • Milmoor
  • Registratie: Januari 2000
  • Laatst online: 10:19

Milmoor

Footsteps and pictures.

flexje schreef op woensdag 16 januari 2019 @ 18:14:
Ik ben niet zo thuis in Node-red maar ik heb zojuist een flow proberen te maken om mijn Shelly1 met Domoticz te kunnen bedienen. Ik heb het volgende gemaakt en het werkt. Ik moet alleen nog een flow maken om de status van Shelly in Domoticz te gooien bij het handmatig aan/uitzetten van Shelly met een wandschakelaar.

Graag commentaar, nogmaals, mijn eerste flow, dus als het beter kan hoor ik het graag!

code:
1
[{"id":"59d4f9d0.5b9408","type":"tab","label":"Domoticz to Shelly","disabled":false,"info":""},{"id":"4703c51a.e215fc","type":"mqtt in","z":"59d4f9d0.5b9408","name":"","topic":"domoticz/out","qos":"2","broker":"da5a79fa.8a2878","x":87,"y":154,"wires":[["7cc84d9.e7609b4"]]},{"id":"7cc84d9.e7609b4","type":"json","z":"59d4f9d0.5b9408","name":"","property":"payload","action":"","pretty":true,"x":292,"y":120,"wires":[["7644026d.a0838c"]]},{"id":"7644026d.a0838c","type":"function","z":"59d4f9d0.5b9408","name":"filter idx 127","func":"if(msg.payload.idx === 127)\n{\nreturn msg;\n}","outputs":1,"noerr":0,"x":482,"y":108,"wires":[["48005073.c9dbe"]]},{"id":"48005073.c9dbe","type":"switch","z":"59d4f9d0.5b9408","name":"Aan of Uit","property":"payload.nvalue","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"str"},{"t":"eq","v":"0","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":467,"y":182,"wires":[["e8f1027c.72398"],["65e4e7b6.24a9c8"]]},{"id":"810c017f.0f8ca","type":"debug","z":"59d4f9d0.5b9408","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload.nvalue","x":809,"y":96,"wires":[]},{"id":"57d0fd3e.61c024","type":"mqtt out","z":"59d4f9d0.5b9408","name":"MQTT Shelly","topic":"shellies/shelly1-22FDAB/relay/0/command","qos":"0","retain":"","broker":"da5a79fa.8a2878","x":822,"y":228,"wires":[]},{"id":"e8f1027c.72398","type":"change","z":"59d4f9d0.5b9408","name":"Aan","rules":[{"t":"set","p":"payload.nvalue","pt":"msg","to":"on","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":620,"y":228,"wires":[["810c017f.0f8ca","293766ac.18518a"]]},{"id":"65e4e7b6.24a9c8","type":"change","z":"59d4f9d0.5b9408","name":"Uit","rules":[{"t":"set","p":"payload.nvalue","pt":"msg","to":"off","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":618,"y":284,"wires":[["810c017f.0f8ca","f3e8df87.65cb7"]]},{"id":"19737b29.b43d65","type":"mqtt out","z":"59d4f9d0.5b9408","name":"MQTT Shelly","topic":"shellies/shelly1-22FDAB/relay/0/command","qos":"0","retain":"","broker":"da5a79fa.8a2878","x":822,"y":286,"wires":[]},{"id":"293766ac.18518a","type":"trigger","z":"59d4f9d0.5b9408","op1":"on","op2":"","op1type":"str","op2type":"nul","duration":"250","extend":false,"units":"ms","reset":"","bytopic":"all","name":"","x":643,"y":404,"wires":[["57d0fd3e.61c024"]]},{"id":"f3e8df87.65cb7","type":"trigger","z":"59d4f9d0.5b9408","op1":"off","op2":"","op1type":"str","op2type":"nul","duration":"250","extend":false,"units":"ms","reset":"","bytopic":"all","name":"","x":642,"y":463,"wires":[["19737b29.b43d65"]]},{"id":"da5a79fa.8a2878","type":"mqtt-broker","z":"","name":"syn_mqtt","broker":"0.0.0.0","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]



[Afbeelding]
De basis is prima, ik zou een paar punten anders doen:
  • Er is een MQTT-json node, meestal wil je de combinatie hebben, dus ik zou die gebruiken.
  • Filteren op ID zou ik in een switch node of in de MQTT node doen. Je hebt geen twee MQTT nodes nodig om te versturen en ook de aan/uit kan je combineren in een change node (SET msg.payload to jsonata payload = "on" ? "off" : "on)
  • Ik ben bezig om i.p.v. rechtstreeks, de communicatie en status bijhouden rond de MQTT apparaten via globale variabelen te doen. Dat scheelt heel veel lijntjes als je wat complexere constructies wil maken. Ik zal binnenkort een voorbeeld plaatsen.
Sommige punten zijn een kwestie van smaak. Ik probeer functies te vermijden en moet mezelf te bedwingen om alles in zo min mogelijk nodes te doen. Het moet wel leesbaar blijven. Waarom de trigger? Die gebruik ik nog niet.

Inmiddels meer info hier.

[ Voor 5% gewijzigd door Milmoor op 19-01-2019 21:06 . Reden: Link opgenomen ]

Rekeningrijden is onvermijdelijk, uitstel is struisvogelpolitiek.


Acties:
  • 0 Henk 'm!

  • thecompany
  • Registratie: Maart 2004
  • Laatst online: 12-06 19:53
DaRk PoIsOn schreef op woensdag 16 januari 2019 @ 21:33:
[...]


2019-01-16 21:32:13.688 (Gbridge) Heartbeating...
2019-01-16 21:32:13.688 (Gbridge) MqttClient::Ping
2019-01-16 21:32:13.689 (Gbridge) Sending 2 bytes of data
2019-01-16 21:32:13.689 (Gbridge) c0 00 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. �.
2019-01-16 21:32:13.739 (Gbridge) Received 2 bytes of data
2019-01-16 21:32:13.739 (Gbridge) d0 00 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. �.
2019-01-16 21:32:13.740 (Gbridge) Message from base
2019-01-16 21:32:13.740 (Gbridge) Incoming message!{'Verb': 'PINGRESP'}
Dat lijkt niet echt op de logging die mijn plugin oplevert. Welke git repo heb je gecloned in je domoticz plugins folder? En welke hardware heb je geselecteerd? Als je op update klikt, en je gaat vervolgens direct naar de log, wat zie je dan kwa gBridge logging?

Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
thecompany schreef op woensdag 16 januari 2019 @ 22:16:
[...]

Dat lijkt niet echt op de logging die mijn plugin oplevert. Welke git repo heb je gecloned in je domoticz plugins folder? En welke hardware heb je geselecteerd? Als je op update klikt, en je gaat vervolgens direct naar de log, wat zie je dan kwa gBridge logging?
https://github.com/giejay...gin/blob/master/README.md

De heartbeat en die ping zijn dus het enige wat in de log staat om de 10 seconden. En 1x deze onder probleem:

2019-01-16 22:49:10.349 Error: CheckAuthToken(79f1e9d1d1f7bf7b217898e8941e8e22_NGRlMTc0ZGQtYWQ0Zi00ODBjLWI2ZjQtMmQwMjZiMTA0Zjlk) : auth token mismatch

Dit gebeurt er na een herstart van domoticz, maar ook na een update van de plugin:

2019-01-16 22:48:50.638 Status: (Gbridge) Entering work loop.
2019-01-16 22:48:50.639 Status: (Gbridge) Initialized version 0.0.14

[ Voor 26% gewijzigd door DaRk PoIsOn op 16-01-2019 22:57 ]

who put a "stop payment" on my reality check


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Ik heb zojuist een ip cam in Domoticz toegevoegd en ik kan de stream in de test verbinding zien. Nu wil ik graag in een blockly voor mijn deurbel deze camera toevoegen. Ik kan hem wel toevoegen, maar wanneer ik op de bel druk dan krijg ik een mail met de tekst wat ik bij de camera heb toegevoegd, maar a: geen foto en b: ik wil het niet via mail, maar via Telegram krijgen.

Iemand tips om dit voor elkaar te krijgen?

Acties:
  • 0 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 23:06:
Ik heb zojuist een ip cam in Domoticz toegevoegd en ik kan de stream in de test verbinding zien. Nu wil ik graag in een blockly voor mijn deurbel deze camera toevoegen. Ik kan hem wel toevoegen, maar wanneer ik op de bel druk dan krijg ik een mail met de tekst wat ik bij de camera heb toegevoegd, maar a: geen foto en b: ik wil het niet via mail, maar via Telegram krijgen.

Iemand tips om dit voor elkaar te krijgen?
Daarvoor heb je een script nodig. Er staan een paar in dit topic. Morgen zal ik een voorbeeld posten. Batterij laptop net op.

Misschien lukt het over ssh vanavond nog.

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • mike123
  • Registratie: Oktober 2007
  • Laatst online: 10:54
flexje schreef op woensdag 16 januari 2019 @ 18:14:
Ik ben niet zo thuis in Node-red maar ik heb zojuist een flow proberen te maken om mijn Shelly1 met Domoticz te kunnen bedienen. Ik heb het volgende gemaakt en het werkt. Ik moet alleen nog een flow maken om de status van Shelly in Domoticz te gooien bij het handmatig aan/uitzetten van Shelly met een wandschakelaar.
Ik heb geen antwoord op jouw vraag maar heb je Shelly ook nog geflashed met Tasmota of andere software of is deze nog origineel? Mijn Shelly is nog onderweg.
Ben net begonnen met Domoticz.

Acties:
  • 0 Henk 'm!
@vwtune

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
GNU nano 2.2.6 File: snapshot.sh 
#!/bin/sh
Caption=$1
TelegramBotToken=12345
Chatid=12345
SnapFile="/var/tmp/camsnapshot.jpg"
# Get snapshot via Domoticz server
wget -O $SnapFile "192.168.x.x:8080/camsnapshot.jpg?idx=3"
# Send Telegram message with image
curl -s -X POST "https://api.telegram.org/bot"$TelegramBotToken"-s/sendPhoto" -F chat_id=$Chatid -F photo="@$SnapFile" -F caption="$Caption"
sleep 1
# Get snapshot via Domoticz server
wget -O $SnapFile "192.168.x.x:8080/camsnapshot.jpg?idx=3"
# Send Telegram message with image
curl -s -X POST "https://api.telegram.org/bot"$TelegramBotToken"-s/sendPhoto" -F chat_id=$Chatid -F photo="@$SnapFile" -F caption="$Caption"
sleep 1 # Get snapshot via Domoticz server
wget -O $SnapFile "192.168.x.x:8080/camsnapshot.jpg?idx=3"
# Send Telegram message with image
curl -s -X POST "https://api.telegram.org/bot"$TelegramBotToken"-s/sendPhoto" -F chat_id=$Chatid -F photo="@$SnapFile" -F caption="$Caption"
# Remove Image
/bin/rm $SnapFile

Dit script plaats je in Domoticz scripts folder en in de On action van je deurbel doe je de verwijzing naar het script.

Met de variabele Caption kan je tekst meegeven vanuit domoticz.

Dat ziet er dan als volgt uit:

code:
1
script:///home/pi/domoticz/scripts/bash/snapshot.sh "DEURBEL ON  ACTION TEST"


Enige is dat alleen het eerste woord wordt meegegeven. Maar goed.... Werkt wel

[ Voor 13% gewijzigd door fabstar81 op 18-01-2019 13:03 ]

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
fabstar81 schreef op woensdag 16 januari 2019 @ 23:29:
[...]

Daarvoor heb je een script nodig. Er staan een paar in dit topic. Morgen zal ik een voorbeeld posten. Batterij laptop net op.

Misschien lukt het over ssh vanavond nog.
Dit is dus niet voor blockly begrijp ik? Ik heb in blockly een deurbel actie lopen. Jouw script gaat dan niet werken?

[ Voor 17% gewijzigd door vwtune op 16-01-2019 23:38 ]


Acties:
  • 0 Henk 'm!
Er zijn scripts die het heel netjes in 1 bericht doen. Ik doe gewoon 3 keer zelfde commando achter elkaar voor 3 foto's. Werkt ook :+

Zie boven ;)

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 23:36:
[...]


Dit is dus niet voor blockly begrijp ik? Ik heb in blockly een deurbel actie lopen. Jouw script gaat dan niet werken?
Klopt...vanuit blockly de scripts in de domoticz folder oproepen werkt niet echt lekker. Gewoon in de On action van de deurbel en bam. Werkt!

@vwtune, Heb het script geüpdatet. Was voor de helft gekopieerd.

[ Voor 8% gewijzigd door fabstar81 op 16-01-2019 23:50 ]

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
fabstar81 schreef op woensdag 16 januari 2019 @ 23:43:
[...]

Klopt...vanuit blockly de scripts in de domoticz folder oproepen werkt niet echt lekker. Gewoon in de On action van de deurbel en bam. Werkt!

Heb het script geüpdatet. Was voor de helft gekopieerd.
Dan denk ik niet dat het in mijn situatie gaat werken... ik maak namelijk gebruik van een Xiaomi square switch als deurbel. Hier hangen via blockly dus scenes aan. Ik kan die switch niet definiëren als doorbell in domoticz dus :|

Acties:
  • 0 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 23:52:
[...]


Dan denk ik niet dat het in mijn situatie gaat werken... ik maak namelijk gebruik van een Xiaomi square switch als deurbel. Hier hangen via blockly dus scenes aan. Ik kan die switch niet definiëren als doorbell in domoticz dus :|
Je zou via DzVents een script er naast kunnen draaien die alleen zorg draagt voor het versturen van je afbeelding inclusief bericht. Je Blocky blijft dan het zelfde en kan je dus ook gewoon blijven aanpassen.

Als wat ziet Domoticz jou square switch?

[ Voor 6% gewijzigd door Toppe op 17-01-2019 06:02 ]

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!
Voor de mensen die ook gebruik maken van de MeteoAlarmEU plugin, hierbij de Nederlandse versie:

code: plugin.py
163
164
165
166
167
168
169
170
171
172
173
174
                if (AWTvalue == "1") : AWTtext = "Wind"
                if (AWTvalue == "2") : AWTtext = "Sneeuw/ijs"
                if (AWTvalue == "3") : AWTtext = "Onweer"
                if (AWTvalue == "4") : AWTtext = "Mist"
                if (AWTvalue == "5") : AWTtext = "Hoge temperaturen"
                if (AWTvalue == "6") : AWTtext = "Lage temperaturen"
                if (AWTvalue == "7") : AWTtext = "Kustbedreiging"
                if (AWTvalue == "8") : AWTtext = "Bos- en heidebranden"
                if (AWTvalue == "9") : AWTtext = "Lawines"
                if (AWTvalue == "10") : AWTtext = "Regen"
                if (AWTvalue == "11") : AWTtext = "Overstromingen"
                if (AWTvalue == "12") : AWTtext = "Regen-overstromingen"

code: plugin.py
134
ValueToUpdate="Geen speciale aandacht vereist"

code: plugin.py
226
227
228
229
230
231
232
233
234
235
236
237
                if (AWTvalue == "1") : AWTtext = "Wind"
                if (AWTvalue == "2") : AWTtext = "Sneeuw/ijs"
                if (AWTvalue == "3") : AWTtext = "Onweer"
                if (AWTvalue == "4") : AWTtext = "Mist"
                if (AWTvalue == "5") : AWTtext = "Hoge temperaturen"
                if (AWTvalue == "6") : AWTtext = "Lage temperaturen"
                if (AWTvalue == "7") : AWTtext = "Kustbedreiging"
                if (AWTvalue == "8") : AWTtext = "Bos- en heidebranden"
                if (AWTvalue == "9") : AWTtext = "Lawines"
                if (AWTvalue == "10") : AWTtext = "Regen"
                if (AWTvalue == "11") : AWTtext = "Overstromingen"
                if (AWTvalue == "12") : AWTtext = "Regen-overstromingen"

code: plugin.py
198
ValueToUpdate="Geen speciale aandacht vereist"

Regelnummers kloppen met het orgineel :9

Edit: voor de mensen die de buienradar plugin gebruiken en fouten blijven krijgen over attempt to concatenate field '?' (a nil value) hier de oplossing:"

code:
1
2
3
4
5
6
7
8
--Functie devices updaten
function UpdateDev(device,nvalue,svalues)
    if(commandArray == nil) then
        commandArray = {['UpdateDevice'] = otherdevices_idx[device]..'|'..tostring(nvalue)..'|'..tostring(svalues)}
    else 
        commandArray[#commandArray+1] = {['UpdateDevice'] = otherdevices_idx[device]..'|'..tostring(nvalue)..'|'..tostring(svalues)}
    end 
end
Script wilt een +1 doen, alleen krijg je een foutmelding bij de eerste regel omdat er nog helemaal niets in commandArray zit

[ Voor 19% gewijzigd door Toppe op 17-01-2019 07:38 ]

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • +1 Henk 'm!

  • DizzyWeb
  • Registratie: Februari 2001
  • Laatst online: 14:31

DizzyWeb

Ondertiteld

fabstar81 schreef op woensdag 16 januari 2019 @ 23:36:

code:
1
script:///home/pi/domoticz/scripts/bash/snapshot.sh "DEURBEL ON  ACTION TEST"


Enige is dat alleen het eerste woord wordt meegegeven. Maar goed.... Werkt wel
Verander het caption deel van de commando's eens naar dit:
code:
1
-F caption="$Caption"

Acties:
  • 0 Henk 'm!

  • thecompany
  • Registratie: Maart 2004
  • Laatst online: 12-06 19:53
DaRk PoIsOn schreef op woensdag 16 januari 2019 @ 22:26:
[...]


https://github.com/giejay...gin/blob/master/README.md

De heartbeat en die ping zijn dus het enige wat in de log staat om de 10 seconden. En 1x deze onder probleem:

2019-01-16 22:49:10.349 Error: CheckAuthToken(79f1e9d1d1f7bf7b217898e8941e8e22_NGRlMTc0ZGQtYWQ0Zi00ODBjLWI2ZjQtMmQwMjZiMTA0Zjlk) : auth token mismatch

Dit gebeurt er na een herstart van domoticz, maar ook na een update van de plugin:

2019-01-16 22:48:50.638 Status: (Gbridge) Entering work loop.
2019-01-16 22:48:50.639 Status: (Gbridge) Initialized version 0.0.14
En na de Initialized Version melding zie je dus niet: Starting sync?

Dit is hoe het er bij mij uitziet:

2019-01-17 07:55:46.832 Status: (gBridge) Started.
2019-01-17 07:55:47.809 (gBridge) Debug logging mask set to: PYTHON
2019-01-17 07:55:47.810 (gBridge) onStart called
2019-01-17 07:55:47.811 (gBridge) MqttClient::__init__
2019-01-17 07:55:47.811 (gBridge) MqttClient::Open
2019-01-17 07:55:47.812 (gBridge) gBridgeClient::__init__
2019-01-17 07:55:47.812 (gBridge) DomoticzClient::__init__
2019-01-17 07:55:47.812 (gBridge) Starting sync
2019-01-17 07:55:47.817 (gBridge) Calling API for action: Fetching all devices from gBridge, url: http://192.168.1.50:8081/api/device
2019-01-17 07:55:47.802 Status: (gBridge) Entering work loop.
2019-01-17 07:55:47.804 Status: (gBridge) Initialized version 0.0.14

En tot slot:

(gBridge) Successfully executed action: Fetching all devices from gBridge, response: Mijn devices

Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Toppe schreef op donderdag 17 januari 2019 @ 06:00:
[...]


Je zou via DzVents een script er naast kunnen draaien die alleen zorg draagt voor het versturen van je afbeelding inclusief bericht. Je Blocky blijft dan het zelfde en kan je dus ook gewoon blijven aanpassen.

Als wat ziet Domoticz jou square switch?
Ja DzVents/ LUA... Geen kaas van gegeten, dus wanneer ik er gebruik van maak, is het het betere kopie en paste werk...

Die square switch van Xiaomi is als selector toegevoegd uit mijn hoofd. Je kan hem dus 1 keer indrukken of 2 keer indrukken en daar kan je dan een gebeurtenis aan hangen.

Acties:
  • +2 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 11:07:
[...]


Ik ben juist bezig via wemos gestuurde lichtsensoren, mijn domoticz te 'verbeteren'. Mijn lampen schakelen ook d.m.v. zons op en ondergang (en daarin variabelen met tijden erbij, dus 10 minuten na bijvoorbeeld), maar ik merk dat het soms toch beter zou zijn als het licht eerder of juist later aan/ uit zou gaan, dit omdat op een bewuste dag, het erg grauw/ grijs/ bewolkt kan zijn of juist heel helder en zonnig. Lang verhaal kort: ik zou die schemersensor juist behouden ;)
Als je met lichtsensor een LUX meter bedoelt dan zou ik dit juist anders aanpakken. Vergeet zons op en ondergang want dan heb je niets aan je lux meter.

De kracht van een lux meter is juist om de verlichting op een bepaalde waarde te laten schakelen. Hiermee krijg je een veel beter schakelmoment. Met xx aantal min na of voor zonsopgang kan het zijn dat het nog te licht/donker is. Met de lux waarde zit je redelijk save. Natuurlijk op een zonnige dag is het lichter dan op een bewolkte dag ondanks dat de lux waarde gelijk is maar toch werkt dit erg goed.

Ik gebruik nu al ruim 1,5 jaar een wemos met lux meter icm Tasmota in een kastje die achter het raam hangt om zo een goede meting te kunnen doen. In die 1,5 jaar nooit een keer opnieuw hoeven starten en elke dag schakelt hij vrijwel altijd op het juiste moment het licht aan/uit. Soms denk ik wel hé is er iets met Domoticz moet het licht niet eens aangaan. Pak ik mijn tablet om te gaan kijken of alles nog werkt floept het licht meestal op dat moment dat ik hem bijna in mij hand hebt aan. Dus perfecte timing dus >:)

En als hij niet juist werkt dan kan ik de waardes exact instellen door de waardes iets hoger of lager te zetten.
Het resultaat schakelt een dummy naar licht of donker.
Daarbij laat ik nog een andere dummy schakelaar een switch lopen van Licht / Bewolkt / Schemer / Donker

Doel met die laatste is om afhankelijk van die waarde 1 lamp aan te zetten. Wordt het weer wat donkerder dan komen en nog een lampen tot hij eindigt in Donker en ook de buitenlampen aangaan.

Overdag wil het ook wel eens donker worden door bv bewolking en/of regen. Maar dan hoeven niet alle lampen aan in het huis want dat is teveel van het goede. Wordt het toch nog weer iets donkerde overdag dan schakelen ze bij. Maar als het weer lichter wordt moeten ze ook weer stap voor stap uit gaan.

Het laatste stukje moet ik verder nog uitwerken aangezien het lichtplan al vrij uitgebreid is en moet ik nog een keer voor gaan zitten.

Maar mocht je ermee willen testen

Maak een dummy schakelaar aan met de naam: LUX Buiten
Laat je LUX meter naar deze dummy de lux waarde doorgeven.

Maak een dummy schakelaar aan met de naam: State - IsDonker
Ik gebruik nu nog alleen deze optie.

Plaat het lua script in: /home/pi/domoticz/scripts/lua
Bestandsnaam: script_device_isdonker.lua

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
commandArray = {}

local light_intensity = 'LUX Buiten'
local isdark_switch = 'State - IsDonker'
local lux_lower = 210
local lux_upper = 250


if (devicechanged[light_intensity]) then
lux = tonumber(otherdevices_svalues[light_intensity])
     
   if lux <= tonumber(lux_lower) and otherdevices[isdark_switch] == 'Off' then
    commandArray[isdark_switch] = 'On'
        print('<font color="blue">isdonker is ingeschakeld!!</font>')

   elseif lux >= tonumber(lux_upper) and otherdevices[isdark_switch] == 'On' then
        commandArray[isdark_switch] = 'Off'
        print('<font color="blue">isdonker is uitgeschakeld!!</font>')
   end
end
return commandArray


Wil je een stap verder gaan dan kun je Lichtssterkte + script_device_lichtsterkte.lua gebruiken.

Maak een dummy schakelaar aan met de naam: Lichtssterkte en als switch type: Selector
Selector Levels: Off / Licht / Bewolkt / Schemer / Donker
Selector actions: 0 / 10 / 20 / 30 / 40


Bestandsnaam: script_device_lichtsterkte.lua
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
local light_intensity = 'LUX Buiten'
local lux_licht = 250
local lux_bewolkt = 210
local lux_schemer = 150
local lux_donker = 75

commandArray = {}

if (devicechanged[light_intensity]) then
lux = tonumber(otherdevices_svalues[light_intensity])
     
    if (lux >= tonumber(lux_licht) and otherdevices_svalues['Lichtssterkte'] ~= '10') then
        commandArray['Lichtssterkte']='Set Level: 10'
             print('<font color="blue">Lichtsterkte aangepast naar Licht!!</font>')

    elseif ((lux <= tonumber(lux_bewolkt) and lux > tonumber(lux_schemer) and otherdevices_svalues['Lichtssterkte'] ~= '20')) then
        commandArray['Lichtssterkte']='Set Level: 20'
            print('<font color="blue">Lichtsterkte aangepast naar Bewolkt!!</font>')

    elseif ((lux <= tonumber(lux_schemer) and lux > tonumber(lux_donker) and otherdevices_svalues['Lichtssterkte'] ~= '30')) then
        commandArray['Lichtssterkte']='Set Level: 30'
           print('<font color="blue">Lichtsterkte aangepast naar Schemer!!</font>')

    elseif (lux <= tonumber(lux_donker) and otherdevices_svalues['Lichtssterkte'] ~= '40') then
        commandArray['Lichtssterkte']='Set Level: 40'
            print('<font color="blue">Lichtsterkte aangepast naar Donker!!</font>')
   end
end
return commandArray


Met het resultaat van de dummy's kun je dan je verlichting schakelen.

Acties:
  • +1 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
@MikeOO Thanks! hier ga ik van het weekend eens mee spelen :-)

Acties:
  • 0 Henk 'm!
vwtune schreef op donderdag 17 januari 2019 @ 08:24:
[...]


Ja DzVents/ LUA... Geen kaas van gegeten, dus wanneer ik er gebruik van maak, is het het betere kopie en paste werk...

Die square switch van Xiaomi is als selector toegevoegd uit mijn hoofd. Je kan hem dus 1 keer indrukken of 2 keer indrukken en daar kan je dan een gebeurtenis aan hangen.
Kijk even wat het exact is, het hoeft namelijk allemaal niet zo ingewikkeld te zijn... Zeker als hij één keer drukken als een device ziet en twee keer drukken ook als een nieuw device.

Wil dan vanmiddag wel ff kijken of ik je in de goede richting kan helpen 8)

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!
vwtune schreef op woensdag 16 januari 2019 @ 21:17:
[...]


No problem, maar ik adviseer je wel om je sd kaart weg te gooien en een nieuwe Sandisk te kopen. want anders komt het terug. (bij de action toevallig verkopen ze die erg goedkoop). Ik heb met deze echt nooit meer problemen gehad, ook niet na gewoon stroom van mijn rpi trekken, dus niet netjes afsluiten....
ik denk zelf dat de malformed is opgetreden door het heen en weer schuiven van backups omdat er andere zaken misgingen. vervolgens had ik "accept new hardware" aanstaan wat erin resulteerde dat elke minuut 6 OTGW devices werden aangemaakt, uiteindelijk 2130 lege devices weggeschreven.

op internet lees ik ook dat heel veel schrijven in de database dit soort meldingen kan veroorzaken. bovenstaande lijkt op veel nutteloze acties die zijn weggeschreven. hoop maar dat de SD kaart het volhoudt totdat ik gemigreerd ben naar de rpi3B.

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Toppe schreef op donderdag 17 januari 2019 @ 09:17:
[...]


Kijk even wat het exact is, het hoeft namelijk allemaal niet zo ingewikkeld te zijn... Zeker als hij één keer drukken als een device ziet en twee keer drukken ook als een nieuw device.

Wil dan vanmiddag wel ff kijken of ik je in de goede richting kan helpen 8)
Doe ik vanavond, dan ben ik pas weer thuis 8) :)

Acties:
  • +1 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Toppe schreef op donderdag 17 januari 2019 @ 09:28:
[...]


Dan wordt het denk ik morgen, heb vanavond z'n verplichting op het werk ;w
Geeft niet, heb ik even de tijd om alles netjes via screendumps aan te geven, hoe de situatie is.

Acties:
  • 0 Henk 'm!

  • flexje
  • Registratie: September 2001
  • Laatst online: 08:20

flexje

got-father

mike123 schreef op woensdag 16 januari 2019 @ 23:30:
[...]


Ik heb geen antwoord op jouw vraag maar heb je Shelly ook nog geflashed met Tasmota of andere software of is deze nog origineel? Mijn Shelly is nog onderweg.
Ben net begonnen met Domoticz.
Ik heb toevallig afgelopen zondag een shelly1 geflashed met tasmota (heb er stuk of 20 op voorraad). Werkt wel lekker snel via de interface, alleen ik krijg de relay niet geschakeld handmatig. Moet nog verder uitzoeken wat ik moet aanpassen.

"Try not to become a man of success but rather to become a man of value..."


Acties:
  • 0 Henk 'm!
@MikeOO
waarom laat je je LUX sensor naar dummy schrijven? kan toch gewoon valideren tegen de sensor zelf icm de schemerschakelaar?

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • DaRk PoIsOn
  • Registratie: Oktober 2002
  • Laatst online: 12-06 09:59
quote]thecompany schreef op donderdag 17 januari 2019 @ 07:57:
[...]

En na de Initialized Version melding zie je dus niet: Starting sync?

Dit is hoe het er bij mij uitziet:

2019-01-17 07:55:46.832 Status: (gBridge) Started.
2019-01-17 07:55:47.809 (gBridge) Debug logging mask set to: PYTHON
2019-01-17 07:55:47.810 (gBridge) onStart called
2019-01-17 07:55:47.811 (gBridge) MqttClient::__init__
2019-01-17 07:55:47.811 (gBridge) MqttClient::Open
2019-01-17 07:55:47.812 (gBridge) gBridgeClient::__init__
2019-01-17 07:55:47.812 (gBridge) DomoticzClient::__init__
2019-01-17 07:55:47.812 (gBridge) Starting sync
2019-01-17 07:55:47.817 (gBridge) Calling API for action: Fetching all devices from gBridge, url: http://192.168.1.50:8081/api/device
2019-01-17 07:55:47.802 Status: (gBridge) Entering work loop.
2019-01-17 07:55:47.804 Status: (gBridge) Initialized version 0.0.14

En tot slot:

(gBridge) Successfully executed action: Fetching all devices from gBridge, response: Mijn devices
[/quote]

Nee, geen van dit alles bij mij.
Dus alleen wat ik heb gepost.
Doe ik misschien iets verkeerd bij de domoticz port?
Is dit de interne poort of voor buitenaf?
Screenshot komt er zo aan

who put a "stop payment" on my reality check


Acties:
  • 0 Henk 'm!

  • Furiousz
  • Registratie: November 2010
  • Laatst online: 04-05 14:08
Hopelijk heeft er hier iemand een oplossing voor mijn probleem.

Ik gebruik voor Controlicz i.c.m. Domoticz poort 443 voor HTTPS toegang (tevens voor toegang buiten mijn eigen netwerk). Nu wil ik ook de diyHue brigde op mijn RPi gebruiken zodat mijn Yeelights gezien worden als Hue lampen (dit om ze te kunnen bedienen met mijn Logitech Harmony Elite).

diyHue installeren op de RPi was geen probleem, alleen gebruikt diyHue ook poort 443 (verplicht) voor de communicatie. Domoticz én diyHue tegelijk draaien kan dus niet :? . Is er een mogelijkheid om dit toch samen te laten werken??

[ Voor 3% gewijzigd door Furiousz op 17-01-2019 15:07 ]

3025Wp ZZW | 11 x REC 275 TwinPeak 2 BLK | SMA Sunny Boy 3.0 | PVoutput


Acties:
  • 0 Henk 'm!

  • rroetenberg
  • Registratie: Juni 2009
  • Laatst online: 03-06 16:17
Ik gebruik DDWRT i.c.m. iDetect. Nu springt mijn device in Domoticz soms terug van Off naar On en visa versa waardoor soms mijn lampen en dergelijke aan gaan.

Met name 's nachts en wanneer ik mijn telefoon niet gebruik overdag. Nu heb ik de ageing dat een MAC Address moet blijven staan al aangepast op de router, echter heeft dit het wel beter gemaakt maar nog niet opgelost.

Zijn er misschien meer mensen die dit probleem hebben of hebben gehad?

Ik gebruik niet het WiFi op de router zelf, maar externe Access Points.

Acties:
  • 0 Henk 'm!

  • Kraatsie
  • Registratie: April 2015
  • Laatst online: 29-11-2023
Heb eindelijk de zigbee2mqtt draaiend op de pi inclusief een aantal sensoren. Nu wil ik echter de domoticz plugin installeren echter ik draai domoticz op een Synology. Nu zie ik via een ftp proggie dat de plugin map staat in /volume1/@appstore/domoticz/var/plugins
Via scp lukt het niet om de bestanden van te kopieren naar de plugin map, geen toegang
Iemand een idee hoe ik dit voor elkaar kan krijgen.
Een redelijke noob

Acties:
  • 0 Henk 'm!

  • Cooni
  • Registratie: Juni 2015
  • Laatst online: 01-06 10:04
Complete beginner hier die graag zijn eerste stappen in de home automation wil zetten. Omdat ik een aantal Action schakelcontacten (433 Mhz) en Mi Light LED strips bezit wil ik graag een Arduino Mega met RFLink en een NRF24L01 erop bouwen. Ik heb al heel wat research gedaan maar blijf toch nog met enkele vragen zitten:

1) Welke Arduino Mega clone kies ik best?
Ik vond op Banggood een Arduino Mega met ingebouwde ESP8266 terug die amper duurder is dan een standaard Mega R3 clone. Naast deze WeMos variant bestaat er ook een versie van RobotDyn. Als ik op deze bordje google, vind ik vooral posts terug van mensen die er maar niet in slagen om de verschillende componenten (Mega, ESP, ...) met elkaar werkend te krijgen. Heeft iemand hier ervaring met deze Mega clone met geïntegreerde ESP8266? Welke extra (nuttige) functionaliteit levert dit op? Ik heb geen Arduino ervaring dus als dit bordje alles alleen ingewikkelder maakt bestel ik liever een gewone Mega clone. Als ik het goed begrijp is hier achteraf ook een ESP8266 bordje aan te hangen?

2) Kan ik een aparte receiver en transmitter op één enkele antenne aansluiten?
Ik ga deze buildlog volgen. De auteur verbindt een RXB6 receiver en FS1000A transmitter aan één enkele SMA aansluiting waarop een antenne kan geschroefd worden.Ik las echter op letscontrolit dat het niet mogelijk (/ideaal) is om zowel receiver als transmitter op één antenna aan te sluiten. Wat is jullie ervaring hiermee?

[ Voor 8% gewijzigd door Cooni op 17-01-2019 21:52 ]


Acties:
  • 0 Henk 'm!
DizzyWeb schreef op donderdag 17 januari 2019 @ 06:56:
[...]


Verander het caption deel van de commando's eens naar dit:
code:
1
-F caption="$Caption"
dit werkte! Gehele string wordt nu doorgegeven...

făbŞŤĄŘ - Mijn PC


Acties:
  • +1 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Toppe schreef op donderdag 17 januari 2019 @ 09:17:
[...]


Kijk even wat het exact is, het hoeft namelijk allemaal niet zo ingewikkeld te zijn... Zeker als hij één keer drukken als een device ziet en twee keer drukken ook als een nieuw device.

Wil dan vanmiddag wel ff kijken of ik je in de goede richting kan helpen 8)
Dit is mijn situatie:

Afbeeldingslocatie: http://i66.tinypic.com/2itmwlx.jpg

Daar wil ik nu dus een actie aan toevoegen: ipcam stuurt foto via telegram wanneer er gebeld wordt :)

Acties:
  • 0 Henk 'm!

  • BlakHawk
  • Registratie: Februari 2008
  • Laatst online: 09-01-2021
Nou dit is weer vaag, ik ben opnieuw begonnen.

Dus Honeywell wil ik weer toevoegen.

Ik heb maar 2 invoer velden, maar heb er 4 nodig bij de hardware toevoegen.

Collega kijkt in zijn domoticz, die heeft 4 invoervelden....

We draaien beide Version: 4.10360

Hoe kan dit nou in dezelfde versie?

Ik heb alleen:
Access token:
Refresh token:

Ik mis:
Consumer API key
Consumer API secret

[ Voor 14% gewijzigd door BlakHawk op 17-01-2019 20:53 ]

Youtube: DashcamNL


Acties:
  • +1 Henk 'm!

  • vwtune
  • Registratie: Mei 2008
  • Laatst online: 15-11-2024
Toppe schreef op donderdag 17 januari 2019 @ 21:22:
[...]


Ga morgen ochtend ff kijken. Als dit werkt dan moet je hier niets aan doen en zou ik een apart DzVents aanmaken met alléén de optie om je telegram te versturen.
Dit werkt al een jaar perfect en kom er liever ook niet aan :*)

Acties:
  • 0 Henk 'm!

  • Rgerr
  • Registratie: Juni 2017
  • Laatst online: 29-05 14:52
Furiousz schreef op donderdag 17 januari 2019 @ 15:05:
Hopelijk heeft er hier iemand een oplossing voor mijn probleem.

Ik gebruik voor Controlicz i.c.m. Domoticz poort 443 voor HTTPS toegang (tevens voor toegang buiten mijn eigen netwerk). Nu wil ik ook de diyHue brigde op mijn RPi gebruiken zodat mijn Yeelights gezien worden als Hue lampen (dit om ze te kunnen bedienen met mijn Logitech Harmony Elite).

diyHue installeren op de RPi was geen probleem, alleen gebruikt diyHue ook poort 443 (verplicht) voor de communicatie. Domoticz én diyHue tegelijk draaien kan dus niet :? . Is er een mogelijkheid om dit toch samen te laten werken??
HTTP i.p.v. HTTPS poort gaan gebruiken voor Domoticz/Controlicz?

Acties:
  • 0 Henk 'm!
vwtune schreef op donderdag 17 januari 2019 @ 20:43:
[...]


Dit is mijn situatie:

[Afbeelding]

Daar wil ik nu dus een actie aan toevoegen: ipcam stuurt foto via telegram wanneer er gebeld wordt :)
simpel! als het goed is, zie je onderaan de selector switch een tweede tabel. daar kan je het script aanroepen. doe ik ook met de versterker

Zie deze post:

fabstar81 in "Sony STR-DA5600es IP-control"

făbŞŤĄŘ - Mijn PC


Acties:
  • 0 Henk 'm!

  • GVR
  • Registratie: November 2004
  • Laatst online: 14:35

GVR

Help!
Ik heb deze tutorial gevolgd om een begin te maken met het aansturen van klikaanklikuit. @K-Jay lijkt niet meer actief, maar wellicht leest hij mee :)

Voordat ik met deze tutorial startte heb ik domoticz geïnstalleerd om mijn slimme meter uit te lezen en heb ik mijn Tado thermostaat aan Domoticz toegevoegd. Met een dagelijkse backup naar mijn nas en een upload naar mindergas.nl ben ik al blij dat dat allemaal gelukt is :)

In bovengenoemde tutorial gaat het goed tot aan stap 4. Het commando "sudo npm install pimatic-homeduino" gaat mis. Ik heb de logging even online gezet:

Wie zou me hiermee kunnen helpen? Ik mis de kennis om hier een oplossing voor te vinden.

*deze vraagt hoort wellicht niet in dit topic thuis bedenk ik me nu, ik wil de schakelaars uiteindelijk wel vanuit Domoticz gaan bedienen.

[ Voor 7% gewijzigd door GVR op 17-01-2019 22:56 ]


Acties:
  • 0 Henk 'm!

  • mike123
  • Registratie: Oktober 2007
  • Laatst online: 10:54
flexje schreef op donderdag 17 januari 2019 @ 10:13:
[...]


Ik heb toevallig afgelopen zondag een shelly1 geflashed met tasmota (heb er stuk of 20 op voorraad). Werkt wel lekker snel via de interface, alleen ik krijg de relay niet geschakeld handmatig. Moet nog verder uitzoeken wat ik moet aanpassen.
Dank je. Ik krijg 2 x Shelly 1 en 2 x Shelly 2. Maar worden pas na 19 januari verstuurd. Waren op. Kreeg ik pas te horen na aanschaf, helaas. Maar wacht rustig af en dan flash ik ze ook.
Misschien heb je hier nog iets aan. Shelly 1 die dubbel word gebruikt. YouTube: Shelly 1 Switch Tricks - True 3-Way, Long Press Actions, 2 switches,...

Acties:
  • 0 Henk 'm!
@AUijtdehaag, ik heb op onderstaand script, een rode error in de domoticz log. het is de enige error nog maar in domoticz. als deze nil value is opgelost, ben ik error vrij :)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
----------------------------------------------------------------------------------------------------------
-- /home/pi/domoticz/scripts/lua/script_device_aurora.lua
----------------------------------------------------------------------------------------------------------
-- This script collects the values directly from a one-line.csv
-- Copy http://www.curtronics.com/Solar/ftp/aurora-1.9.3.tar.gz in /home/pi and extract with tar -xvf aurora-1.9.3.tar.gz and sudo make to install it.
--   * A single line csv with the latest Power one, Aurora data
--
-- To send the value to Domoticz enter the *IDX and *Name
----------------------------------------------------------------------------------------------------------
-- Written by Alphons Uijtdehaag (Auijtdehaag) 2017
----------------------------------------------------------------------------------------------------------
-- V1.0 Initial versions
----------------------------------------------------------------------------------------------------------
--
----------------------------------------------------------------------------------------------------------
-- Domoticz IDX and names of the needed devices
----------------------------------------------------------------------------------------------------------
-- System settings
local AuroraData = "/home/pi/aurora-1.9.3"          -- Location of Aurora installation on the Pi
local GenerationDeviceName = "Zonnepanelen"         -- Device name of the Generated energy
-- Domoticz IDX
local Udc1IDX = 7                                  -- IDX of the energy device that shows Udc1 voltage (volt)
local Idc1IDX = 8                                  -- IDX of the energy device that shows Idc2 current (ampere)
local Pdc1IDX = 9                                   -- IDX of the energy device that shows Pdc1 power (watt)
local Udc2IDX = 10                                   -- IDX of the energy device that shows Udc2 voltage (volt)
local Idc2IDX = 11                                   -- IDX of the energy device that shows Idc1 current (ampere)
local Pdc2IDX = 12                                  -- IDX of the energy device that shows Pdc2 power (watt)
local Uac1IDX = 13                                   -- IDX of the energy device that shows Uac1 voltage (volt)
local Iac1IDX = 14                                   -- IDX of the energy device that shows Iac1 current (ampere)
local Pac1IDX = 15                                   -- IDX of the energy device that shows Pac1 power (watt)
local FrequencyIDX = 20                              -- IDX of the energy device that shows frequency (Hz)
local EfficiencyIDX = 17                             -- IDX of the energy device that shows the efficiency (%)
local InverterTempIDX = 18                           -- IDX of the energy device that shows inverter temperature (degrees C) 
local BoosterTempIDX = 19                            -- IDX of the energy device that shows booster temperature (degrees C)
local DailyEnergyIDX = 54                            -- IDX of the energy device that shows today's generated electricity (kWh)
local WeeklyEnergyIDX = 0                           -- IDX of the energy device that shows daily generated electricity (kWh)
local UnknownParameterIDX = 0
local MonthlyEnergyIDX = 51                          -- IDX of the energy device that shows weekly generated electricity (kWh)
local YearlyEnergyIDX = 52                           -- IDX of the energy device that shows yearly generated electricity (kWh)
local TotalEnergyIDX = 53                            -- IDX of the energy device that shows total generated electricity (kWh)
local PartialEnergyIDX = 0                            -- IDX of the energy device that shows total generated electricity (kWh)
local InverterActiveIDX = 0                         -- IDX of the energy device that shows inverter is active
-- Domoticz device names
local Udc1DeviceName = "Udc1"                       -- DeviceName of the energy device that shows Udc1 voltage (volt)
local Idc1DeviceName = "Idc1"                       -- DeviceName of the energy device that shows Idc2 current (ampere)
local Pdc1DeviceName = "Pdc1"                       -- DeviceName of the energy device that shows Pdc1 power (watt)
local Udc2DeviceName = "Udc2"                       -- DeviceName of the energy device that shows Udc2 voltage (volt)
local Idc2DeviceName = "Idc2"                       -- DeviceName of the energy device that shows Idc1 current (ampere)
local Pdc2DeviceName = "Pdc2"                       -- DeviceName of the energy device that shows Pdc2 power (watt)
local Uac1DeviceName = "Uac1"                       -- DeviceName of the energy device that shows Uac1 voltage (volt)
local Iac1DeviceName = "Iac1"                       -- DeviceName of the energy device that shows Iac1 current (ampere)
local Pac1DeviceName = "Pac1"                       -- DeviceName of the energy device that shows Pac1 power (watt)
local FrequencyDeviceName = "Frequency"             -- DeviceName of the energy device that shows frequency (Hz)
local EfficiencyDeviceName = "Efficiency"           -- DeviceName of the energy device that shows the efficiency (%)
local InverterTempDeviceName = "InverterTemp"       -- DeviceName of the energy device that shows inverter temperature (degrees C)
local BoosterTempDeviceName = "BoosterTemp"         -- DeviceName of the energy device that shows booster temperature (degrees C)
local DailyEnergyDeviceName = "Aurora Dag"              -- DeviceName of the energy device that shows today's generated electricity (kWh)
local WeeklyEnergyDeviceName = "EWeekly"            -- DeviceName of the energy device that shows daily generated electricity (kWh)
local UnknownParameterDeviceName = "Unknown"
local MonthlyEnergyDeviceName = "Aurora Maand"          -- DeviceName of the energy device that shows weekly generated electricity (kWh)
local YearlyEnergyDeviceName = "Aurora Jaar"            -- DeviceName of the energy device that shows yearly generated electricity (kWh)
local TotalEnergyDeviceName = "Aurora Totaal"              -- DeviceName of the energy device that shows total generated electricity (kWh)
local PartialEnergyDeviceName = "EPartial"          -- DeviceName of the energy device that shows partial generated electricity (kWh)
local InverterActive = "InverterActive"             -- DeviceName of the energy device that shows inverter is active
----------------------------------------------------------------------------------------------------------
-- Require parameters
----------------------------------------------------------------------------------------------------------
-- None
----------------------------------------------------------------------------------------------------------
-- Script parameters including all parameters in sbfspot single line csv
----------------------------------------------------------------------------------------------------------
local CSVfile = AuroraData .. '/' .. 'one-line.csv'
CurrentTime = 0
Udc1 = 0
Idc1 = 0
Pdc1 = 0
Udc2 = 0
Idc2 = 0
Pdc2 = 0
Uac1 = 0
Iac1 = 0
Pac1 = 0
Frequency = 0
Efficiency = 0
InverterTemp = 0
BoosterTemp = 0
DailyEnergy = 0
WeeklyEnergy = 0
UnknownParameter = 0
MonthlyEnergy = 0
YearlyEnergy = 0
TotalEnergy = 0
PartialEnergy = 0
InverterActive = 0
Debug = "NO"           -- Turn debugging on ("YES") or off ("NO")
 
----------------------------------------------------------------------------------------------------------
-- Lua Functions
----------------------------------------------------------------------------------------------------------
-- Update to domoticz
function update(device, id, value, index)
    if Debug=="YES" then print("Lua Aurora: commandArray[" ..  index .. "] = {['" ..device .. "'] = " .. id .. "|0|" .. value .."}") end    
    commandArray[index] = {['UpdateDevice'] = id .. "|0|" .. value}
end 

-- Round up number
function round(num, numDecimalPlaces)
  local mult = 10^(numDecimalPlaces or 0)
  return math.floor(num * mult + 0.5) / mult
end

----------------------------------------------------------------------------------------------------------
-- CommandArray
----------------------------------------------------------------------------------------------------------
commandArray = {}

    if devicechanged[GenerationDeviceName] then
        -- Read aurora single line csv file
        if Debug=="YES" then
            print("Lua Aurora: Using file: " .. CSVfile)
        end
    
        file = io.open(CSVfile, "r")
        CurrentTime,Udc1,Idc1,Pdc1,Udc2,Idc2,Pdc2,Uac1,Iac1,Pac1,Frequency,Efficiency,InverterTemp,BoosterTemp,DailyEnergy,WeeklyEnergy,UnknownParameter,MonthlyEnergy,YearlyEnergy,TotalEnergy,PartialEnergy,InverterActive=file:read():match '(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)%s+(%S+)'
        
        -- remove comma's
        if Debug=="YES" then
            print("Lua Aurora: Replacing comma's with dots and rounding up/down")
        end
--        Udc1=round(string.gsub(Udc1,"%,","."))
--        Idc1=round(string.gsub(Idc1,"%,","."),2)
--        Pdc1=round(string.gsub(Pdc1,"%,","."))
--        Udc2=round(string.gsub(Udc2,"%,","."))
--        Idc2=round(string.gsub(Idc2,"%,","."),2)
--        Pdc2=round(string.gsub(Pdc2,"%,","."))
--        Uac1=round(string.gsub(Uac1,"%,","."))
--        Iac1=round(string.gsub(Iac1,"%,","."),2)
--        Pac1=round(string.gsub(Pac1,"%,","."))
--        Frequency=round(string.gsub(Frequency,"%,","."),2)
--        Efficiency=round(string.gsub(Efficiency,"%,","."),2)
--        InverterTemp=round(string.gsub(InverterTemp,"%,","."),1)
--        BoosterTemp=round(string.gsub(BoosterTemp,"%,","."),1)
--        DailyEnergy=string.gsub(DailyEnergy,"%,",".")
--        WeeklyEnergy=string.gsub(WeeklyEnergy,"%,",".")
--        MonthlyEnergy=string.gsub(MonthlyEnergy,"%,",".")
--        YearlyEnergy=string.gsub(YearlyEnergy,"%,",".")
--        TotalEnergy=string.gsub(TotalEnergy,"%,",".")
--        PartialEnergy=string.gsub(PartialEnergy,"%,",".")


        if Debug=="YES" then
            print("Lua Aurora: CurrentDateTime= " .. CurrentTime)
            print("Lua Aurora: Udc1= " .. Udc1.. " volt")
            print("Lua Aurora: Idc1= " .. Idc1.. " ampere")
            print("Lua Aurora: Pdc1= " .. Pdc1.. " watt")
            print("Lua Aurora: Udc2= " .. Udc2.. " volt")
            print("Lua Aurora: Idc2= " .. Idc2.. " ampere")
            print("Lua Aurora: Pdc2= " .. Pdc2.. " watt")
            print("Lua Aurora: Uac1= " .. Uac1.. " volt")
            print("Lua Aurora: Iac1= " .. Iac1.. " ampere")
            print("Lua Aurora: Pac1= " .. Pac1.. " watt")
            print("Lua Aurora: Frequency= " .. Frequency.. " Hz")
            print("Lua Aurora: Efficiency= " .. Efficiency .. " %")
            print("Lua Aurora: InverterTemp= " .. InverterTemp .. " C")
            print("Lua Aurora: BoosterTemp= " .. BoosterTemp .. " C")
            print("Lua Aurora: DailyEnergy= " .. DailyEnergy .. " kWh")
            print("Lua Aurora: WeeklyEnergy= " .. WeeklyEnergy .. " kWh")
            print("Lua Aurora: UnknownParameter= " .. UnknownParameter .. " kWh")
            print("Lua Aurora: MonthlyEnergy= " .. MonthlyEnergy .. " kWh")
            print("Lua Aurora: YearlyEnergy= " .. YearlyEnergy .. " kWh")
            print("Lua Aurora: TotalEnergy= " .. TotalEnergy .. " kWh")
            print("Lua Aurora: PartialEnergy= " .. PartialEnergy .. " kWh")
            print("Lua Aurora: InverterActive= " .. InverterActive)
        end 
 
        -- Create array with values to update'
        local count = 0
        if Udc1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Udc1DeviceName, Udc1IDX, Udc1, count) " .. Udc1DeviceName .. "," .. Udc1IDX .. "," .. Udc1 .. "," .. count) end 
            update(Udc1DeviceName, Udc1IDX, Udc1, count)
        end
        
        if Idc1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Idc1DeviceName, Idc1IDX, Idc1, count) " .. Idc1DeviceName .. "," .. Idc1IDX .. "," .. Idc1 .. "," .. count) end 
            update(Idc1DeviceName, Idc1IDX, Idc1, count)
        end

        if Pdc1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Pdc1DeviceName, Pdc1IDX, Pdc1, count) " .. Pdc1DeviceName .. "," .. Pdc1IDX .. "," .. Pdc1 .. "," .. count) end 
            update(Pdc1DeviceName, Pdc1IDX, Pdc1, count)
        end
        
        if Udc2IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Udc1DeviceName, Udc2IDX, Udc2, count) " .. Udc2DeviceName .. "," .. Udc2IDX .. "," .. Udc2 .. "," .. count) end 
            update(Udc2DeviceName, Udc2IDX, Udc2, count)
        end
        
        if Idc2IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Idc2DeviceName, Idc2IDX, Idc2, count) " .. Idc2DeviceName .. "," .. Idc2IDX .. "," .. Idc2 .. "," .. count) end 
            update(Idc2DeviceName, Idc2IDX, Idc2, count)
        end

        if Pdc2IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Pdc2DeviceName, Pdc2IDX, Pdc2, count) " .. Pdc2DeviceName .. "," .. Pdc2IDX .. "," .. Pdc2 .. "," .. count) end 
            update(Pdc2DeviceName, Pdc2IDX, Pdc2, count)
        end
        
        if Uac1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Uac1DeviceName, Uac1IDX, Uac1, count) " .. Uac1DeviceName .. "," .. Uac1IDX .. "," .. Uac1 .. "," .. count) end 
            update(Uac1DeviceName, Uac1IDX, Uac1, count)
        end
        
        if Iac1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Iac1DeviceName, Iac1IDX, Iac1, count) " .. Iac1DeviceName .. "," .. Iac1IDX .. "," .. Iac1 .. "," .. count) end 
            update(Iac1DeviceName, Iac1IDX, Iac1, count)
        end

        if Pac1IDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(Pac1DeviceName, Pac1IDX, Pac1, count) " .. Pac1DeviceName .. "," .. Pac1IDX .. "," .. Pac1 .. "," .. count) end 
            update(Pac1DeviceName, Pac1IDX, Pac1, count)
        end
        
        if FrequencyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(FrequencyDeviceName, FrequencyIDX, Frequency, count) " .. FrequencyDeviceName .. "," .. FrequencyIDX .. "," .. Frequency .. "," .. count) end 
            update(FrequencyDeviceName, FrequencyIDX, Frequency, count)
        end
 
 
        if EfficiencyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(EfficiencyDeviceName, EfficiencyIDX, Efficiency, count) " .. EfficiencyDeviceName .. "," .. EfficiencyIDX .. "," .. Efficiency*100 .. "," .. count) end 
            update(EfficiencyDeviceName, EfficiencyIDX, Efficiency, count)
        end

        if InverterTempIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(InverterTempDeviceName, InverterTempIDX, InverterTemp, count) " .. InverterTempDeviceName .. "," .. InverterTempIDX .. "," .. InverterTemp .. "," .. count) end 
            update(InverterTempDeviceName, InverterTempIDX, InverterTemp, count)
        end

        if BoosterTempIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(BoosterTempDeviceName, BoosterTempIDX, BoosterTemp, count) " .. BoosterTempDeviceName .. "," .. BoosterTempIDX .. "," .. BoosterTemp .. "," .. count) end 
            update(BoosterTempDeviceName, BoosterTempIDX, BoosterTemp, count)
        end        

       if DailyEnergyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(MonthlyEnergyDeviceName, MonthlyEnergyIDX, MonthlyEnergy, count) " .. MonthlyEnergyDeviceName .. "," .. MonthlyEnergyIDX .. "," .. MonthlyEnergy .. "," .. count) end 
            update(DailyEnergyDeviceName, DailyEnergyIDX, DailyEnergy, count)
        end

       if MonthlyEnergyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(MonthlyEnergyDeviceName, MonthlyEnergyIDX, MonthlyEnergy, count) " .. MonthlyEnergyDeviceName .. "," .. MonthlyEnergyIDX .. "," .. MonthlyEnergy .. "," .. count) end 
            update(MonthlyEnergyDeviceName, MonthlyEnergyIDX, MonthlyEnergy, count)
        end

       if YearlyEnergyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(YearlyEnergyDeviceName, YearlyEnergyIDX, YearlyEnergy, count) " .. YearlyEnergyDeviceName .. "," .. YearlyEnergyIDX .. "," .. YearlyEnergy .. "," .. count) end 
            update(YearlyEnergyDeviceName, YearlyEnergyIDX, YearlyEnergy, count)
        end
       
       if TotalEnergyIDX ~=0 then
            count= count +1 
            if Debug=="YES" then print("Lua Aurora: update(YearlyEnergyDeviceName, YearlyEnergyIDX, YearlyEnergy, count) " .. YearlyEnergyDeviceName .. "," .. YearlyEnergyIDX .. "," .. YearlyEnergy .. "," .. count) end 
            update(TotalEnergyDeviceName, TotalEnergyIDX, TotalEnergy, count)
        end


--        if ETodayIDX ~=0 then
--           count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(ETodayDeviceName, ETodayIDX, EToday, count) " .. ETodayDeviceName .. "," .. ETodayIDX .. "," .. EToday .. "," .. count) end 
--            update(ETodayDeviceName, ETodayIDX, EToday, count)
--        end
--        if ETotalIDX ~=0 then
---            count= count +1 
-- -           if Debug=="YES" then print("Lua Calculate PacX: update(ETotalDeviceName, ETotalIDX, ETotal, count) " .. ETotalDeviceName .. "," .. ETotalIDX .. "," .. ETotal .. "," .. count) end 
--            update(ETotalDeviceName, ETotalIDX, ETotal, count)
--        end

--        if OperatingTimeIDX ~=0 then
--            count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(OperatingTimeDeviceName, OperatingTimeIDX, OperatingTime, count) " .. OperatingTimeDeviceName .. "," .. OperatingTimeIDX .. "," .. OperatingTime .. "," .. count) end 
--            update(OperatingTimeDeviceName, OperatingTimeIDX, OperatingTime, count)
--        end
--        if FeedInTimeIDX ~=0 then
--            count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(FeedInTimeDeviceName, FeedInTimeIDX, FeedInTime, count) " .. FeedInTimeDeviceName .. "," .. FeedInTimeIDX .. "," .. FeedInTime .. "," .. count) end 
--            update(FeedInTimeDeviceName, FeedInTimeIDX, FeedInTime, count)  
--        end
--        if BT_SignalIDX ~=0 then
--            count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(BT_SignalDeviceName, BT_SignalIDX, BT_Signal, count) " .. BT_SignalDeviceName .. "," .. BT_SignalIDX .. "," .. BT_Signal .. "," .. count) end 
--            update(BT_SignalDeviceName, BT_SignalIDX, BT_Signal, count)
--        end
--        if ConditionIDX ~=0 then
--            count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(ConditionDeviceName, ConditionIDX, Condition, count) " .. ConditionDeviceName .. "," .. ConditionIDX .. "," .. Condition .. "," .. count) end 
--            update(ConditionDeviceName, ConditionIDX, Condition, count)
--            end
--        if GridRelayIDX ~=0 then
--            count= count +1 
--            if Debug=="YES" then print("Lua Calculate PacX: update(GridRelayDeviceName, GridRelayIDX, GridRelay, count) " .. GridRelayDeviceName .. "," .. GridRelayIDX .. "," .. GridRelay .. "," .. count) end 
--            update(GridRelayDeviceName, GridRelayIDX, GridRelay, count)
--        end

    end

return commandArray


geeft onderstaande error:
code:
1
2019-01-17 23:17:06.675 Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_device_aurora_KOPIE.lua: ...e/pi/domoticz/scripts/lua/script_device_aurora_KOPIE.lua:124: attempt to index a nil value


dus ik op regel 124 kijken, is het een array van ongeveer 100 variabelen....hoe weet ik welke nu nil geeft?

făbŞŤĄŘ - Mijn PC

Pagina: 1 ... 10 ... 112 Laatste

Dit topic is gesloten.

Let op:
  • Scripts/code graag tussen ~[code] ~[/code] tags voor de leesbaarheid.
  • dzVents vragen? Lees eerst even de wiki door!
  • Lees ook de openingspost door!
  • Sommige vragen kunnen opgelost worden door zelf even Google te gebruiken, probeer dat eerst voordat je een vraag hier stelt!