• Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
MikeyMan schreef op maandag 6 maart 2023 @ 10:24:
[...]


Cool :Y

Geloof dat er nog iets mis gaat nog:

[Afbeelding]

De totaalopbrengst loopt niet op lijkt het. Zie in log wel veranderende waardes.

code:
1
2
3
4
5
6
2023-03-06 10:22:48.555 Status: dzVents: Info: Totaal Zonnepanelen: ------ Start internal script: Zonnepanelen: Device: "Goodwe - Inverter output power (Goodwe)", Index: 632
2023-03-06 10:22:48.556 Status: dzVents: Debug: Totaal Zonnepanelen: Processing device-adapter for Solaredge - kWh Meter Inverter 1: kWh device adapter
2023-03-06 10:22:48.556 Status: dzVents: Info: Totaal Zonnepanelen: Totaalopbrengst Zonnepanelen actualWatt: 1461.0
2023-03-06 10:22:48.556 Status: dzVents: Info: Totaal Zonnepanelen: Totaalopbrengst Zonnepanelen counterToday 1.9
2023-03-06 10:22:48.558 Status: dzVents: Debug: Totaal Zonnepanelen: Processing device-adapter for Totaal opbrengst: kWh device adapter
2023-03-06 10:22:48.558 Status: dzVents: Info: Totaal Zonnepanelen: ------ Finished Zonnepanelen


Misschien ben ik wat ongeduldig ;)

edit:

Toch maar andere waarde gebruiken:

code:
1
2
3
4
5
6
7
8
kWh, Electricity (instant and counter)
actualWatt: Number. Actual usage in Watt.
counterToday: Number.
updateElectricity(power, energy): Function. Supports command options.
usage: Number.
WhToday: Number. Total Wh usage of the day. Note the unit is Wh and not kWh!
WhTotal: Number. Total Wh usage.
WhActual: Number. Actual reading in Watt. Please use actualWatt


WhToday gaan we eens proberen :)

Ha, victorie! >:)

[Afbeelding]
Top! misschien je uiteindelijke code hier delen voor toekomstig gebruik door anderen?

Acties:
  • +1Henk 'm!

  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

Heinemancp schreef op maandag 6 maart 2023 @ 10:50:
[...]


Top! misschien je uiteindelijke code hier delen voor toekomstig gebruik door anderen?
Geen probleem!

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
return
{
    on =
    {
--        timer = {
--          'every minute'       
--                }
        devices =   {
            9,
            632
                    }
    },

    logging =
    {
        level = domoticz.LOG_DEBUG,
        marker = 'Totaal Zonnepanelen',
    },

    execute = function(domoticz, device, item)

        local SolarEdgeWhToday = domoticz.devices(9).WhToday
        local SolarEdgeActual = domoticz.devices(9).actualWatt
        local GoodweWhToday = domoticz.devices(632).WhToday
        local GoodweActual = domoticz.devices(632).actualWatt
        local TotalActual = SolarEdgeActual + GoodweActual
        local TotalWhToday = SolarEdgeWhToday + GoodweWhToday

        domoticz.log('Totaalopbrengst Zonnepanelen actualWatt: ' .. TotalActual)
        domoticz.log('Totaalopbrengst Zonnepanelen WhToday ' .. TotalWhToday)

--        domoticz.devices(648).updateEnergy(Total)
        domoticz.devices(649).updateElectricity(TotalActual,TotalWhToday)
    end
}


Hoewel ik zomaar aanneem dat het gemiddelde niveau hier hoger ligt dan mijn gepruts ;)

Acties:
  • +2Henk 'm!

  • Lieuwe15
  • Registratie: Januari 2004
  • Laatst online: 22:13
Deze code heb ik net een paar dagen geleden in gebruik genomen voor de opsomming en het bij elkaar optellen van een drietal elektriciteit meters (omvormers)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
return {

    on = {
        timer = { 'every minute' }
    },
    
    execute = function(domoticz, item)
        
        local growattPower = domoticz.devices(179)      -- growat power meter
        local solarhuisPower = domoticz.devices(200)     -- solaredge huis meter
        local solarhokPower = domoticz.devices(207)      -- solaredge hok meter
        local totalPower = domoticz.devices(349)  -- total solar power meter
        
        totalPower.updateElectricity(
                growattPower.WhActual + solarhuisPower.WhActual + solarhokPower.WhActual,
                growattPower.WhTotal + solarhuisPower.WhTotal + solarhokPower.WhTotal
            )
        
    end 
}

[Voor 6% gewijzigd door Lieuwe15 op 06-03-2023 11:12]


  • SniperGuy
  • Registratie: Juli 2001
  • Laatst online: 19:56
SniperGuy schreef op zaterdag 4 maart 2023 @ 16:40:
Ik heb een probleem dat mn Domoticz op m'n Rpi (volgens mij sinds de laatste update) steeds maar aan poort 443 wil binden, ondanks dat in zowel /etc/init.d/domoticz.sh als /home/pi/domoticz/domoticz.sh ALLEEN DAEMON_ARGS="$DAEMON_ARGS -www 8081"
Ergens lijkt het alsof toch -sslwww 443 ergens doorgegeven wordt. Ik ik kijk naar de service dan staat daar echt alleen 8081:

code:
1
2
3
4
5
6
7
8
9
10
11
● domoticz.service - LSB: Home Automation System
     Loaded: loaded (/etc/init.d/domoticz.sh; generated)
     Active: active (running) since Sat 2023-03-04 16:39:54 CET; 28s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 1886 ExecStart=/etc/init.d/domoticz.sh start (code=exited, status=0/SUCCESS)
      Tasks: 22 (limit: 4915)
        CPU: 3.311s
     CGroup: /system.slice/domoticz.service
             └─1894 /home/pi/domoticz/domoticz -daemon -www 8081

Mar 04 16:39:54 pihole systemd[1]: Starting LSB: Home Automation System...


Kijk ik in de loggin in de HTTP gui dan zie ik beide poorten:
code:
1
2
2023-03-04 16:39:54.943 Status: WebServer(HTTP) started on address: 0.0.0.0 with port 8081
2023-03-04 16:39:54.954 Status: WebServer(SSL) started on address: 0.0.0.0 with port 443


Stop ik de service dan luisteren zowel poort 443 als 8081 niet meer.

Een netstat laat zien dat het domoticz is die naar 443 luisterd:
code:
1
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      792/domoticz


In htop zie ik wel een proces WebServer_443 /home/pi/domoticz/domoticz -daemon -www 8081 én WebServer_8081 /home/pi/domoticz/domoticz -daemon -www 8081 :?
Even mezelf quoten:
https://www.domoticz.com/wiki/Native_HTTPS_/_SSL_support
sslwww poort dus op 0 zetten:
-sslwww port (for example, -sslwww 443). https runs by default. Set port to 0 to ensure https socket won't be open.
Eens even proberen :)

  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

Euh....

-8200...?

https://tweakers.net/i/VKrejwaAj0lcDWOXAdFwd_CwdFU=/800x/filters:strip_exif()/f/image/W5f1g5a5AIJTP6EFA3uOS6eO.png?f=fotoalbum_large

Hoe dit dan weer te debuggen is vraag twee... Logs zijn schoon.

[Voor 8% gewijzigd door MikeyMan op 07-03-2023 10:46]


  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
MikeyMan schreef op dinsdag 7 maart 2023 @ 10:42:
Euh....

-8200...?

[Afbeelding]

Hoe dit dan weer te debuggen is vraag twee... Logs zijn schoon.
toevallig je totaal van gisteren? ik denk dat het met de dagovergang en set-to-zero te maken heeft.

  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

Heinemancp schreef op dinsdag 7 maart 2023 @ 11:08:
[...]


toevallig je totaal van gisteren? ik denk dat het met de dagovergang en set-to-zero te maken heeft.
Eh... Nu ik er beter naar kijk zie ik twee negatieve waardes:



Totaal Solaredge gisteren was: 8200


Totaal Goodwe gisteren was: 1800


Zou zomaar tegengestelde waarde van gisteren kunnen zijn ja. Had het spul niet de hele dag draaien nog.

Zie dat @Lieuwe15 WHTotal gebruikt ipv WHToday.

[Voor 42% gewijzigd door MikeyMan op 07-03-2023 11:15]


  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

Krijg alleen de foute waarde niet verwijderd.

  • Lieuwe15
  • Registratie: Januari 2004
  • Laatst online: 22:13
Soms doordat er geen of foutieve data vanuit solaredge komt wil het nog wel eens zijn dat hij op een waarde blijft hangen:

Als ik mijn losse meters bij elkaar op tel kloppen de waardes wel gewoon met het totaal.

Als ik mijn losse domoticz meters vergelijk met de solaredge portal dan zit er een klein verschil in. Dit verschil wordt dan gecorrigeerd zodra solaredge weer online komt (zie het blauwe balkje ommenabij 6:00 op friday in mijn bovenstaande screenshot.
Domoticz telt dat bij de vrijdag op terwijl het eigenlijk opbrengst is van de donderdag.

Waar die negatieve waardes bij jou vandaan komen is mij een raadsel, misschien verschil tussen WHTotal en WHToday.

De negatieve blauwe balkjes kun je helaas niet verwijderen.

  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

Lieuwe15 schreef op dinsdag 7 maart 2023 @ 11:35:
Soms doordat er geen of foutieve data vanuit solaredge komt wil het nog wel eens zijn dat hij op een waarde blijft hangen:
[Afbeelding]
Als ik mijn losse meters bij elkaar op tel kloppen de waardes wel gewoon met het totaal.

Als ik mijn losse domoticz meters vergelijk met de solaredge portal dan zit er een klein verschil in. Dit verschil wordt dan gecorrigeerd zodra solaredge weer online komt (zie het blauwe balkje ommenabij 6:00 op friday in mijn bovenstaande screenshot.
Domoticz telt dat bij de vrijdag op terwijl het eigenlijk opbrengst is van de donderdag.

Waar die negatieve waardes bij jou vandaan komen is mij een raadsel, misschien verschil tussen WHTotal en WHToday.

De negatieve blauwe balkjes kun je helaas niet verwijderen.
Ben nu over op WHTotal. Maar dat geeft wel een aardige startwaarde ineens:



Ook die kan er niet uit denk ik... Maar zal vanaf hier dan wel goed komen.

  • MdO82
  • Registratie: Maart 2007
  • Nu online
MikeyMan schreef op woensdag 11 januari 2023 @ 09:39:
Zijn er meer mensen die de meterstanden via API uploaden naar Mindergas?

Lijkt niet te werken de laatste dagen.

De upload vanuit domoticz lijkt goed te gaan:
code:
1
2
3
4
5
6
7
8
9
10
2023-01-10 23:58:00.196  Status: dzVents: Info: ------ Start external script: upload_gas_usage_to_minderGas.lua:, trigger: "at 23:58"
2023-01-10 23:58:00.222  Status: dzVents: Debug: Processing device-adapter for Heishamon - Hoofdverbruik: kWh device adapter
2023-01-10 23:58:00.224  Status: dzVents: Debug: Processing device-adapter for Heishamon - Backup verbruik: kWh device adapter
2023-01-10 23:58:00.224  Status: dzVents: Debug: WP kWh is 1444.013
2023-01-10 23:58:00.224  Status: dzVents: Debug: The date is 2023-01-10
2023-01-10 23:58:00.225  Status: dzVents: Debug: OpenURL: url = https://www.mindergas.nl/api/meter_readings
2023-01-10 23:58:00.225  Status: dzVents: Debug: OpenURL: method = POST
2023-01-10 23:58:00.225  Status: dzVents: Debug: OpenURL: post data = {"date":"2023-01-10","reading":1444.013}
2023-01-10 23:58:00.225  Status: dzVents: Debug: OpenURL: headers = !#Content-Type: application/json!#AUTH-TOKEN: 
2023-01-10 23:58:00.225  Status: dzVents: Debug: OpenURL: callback = UploadToMindergas


Brengt me op het volgende... Die domoticz.log is 350mb groot and counting. Is daar niet een max formaat op te zetten?
Heb je kunnen vinden wat er mis ging ?
Sinds 1 maart lijkt hij bij mij ook niet meer te werken door een error 401.
Ik heb van de week alleen een update gedaan van domoticz omdat deze klaar stond, maar weet niet of dit de oorzaak is. :?

API lijkt in ieder geval te kloppen

2250 WP Zuid PVoutput


  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

MdO82 schreef op dinsdag 7 maart 2023 @ 15:36:
[...]


Heb je kunnen vinden wat er mis ging ?
Sinds 1 maart lijkt hij bij mij ook niet meer te werken door een error 401.
Ik heb van de week alleen een update gedaan van domoticz omdat deze klaar stond, maar weet niet of dit de oorzaak is. :?

API lijkt in ieder geval te kloppen
Ja, blijkbaar had mijn slimme meter toch weer iets van een heartbeat gegeven ofzo. Deze is uitgezet door mindergas na een mailtje, en toen werkte alles weer.

  • MdO82
  • Registratie: Maart 2007
  • Nu online
hmm, ik moet even gaan zoeken wat er mis gaat met de mindergas.py die gedeeld is krijg ik een error http 401.
Gooi ik hem in putty via een curl commando dan krijg ik een status 200.

2250 WP Zuid PVoutput


  • Witlof
  • Registratie: Mei 2000
  • Laatst online: 21:02
MdO82 schreef op dinsdag 7 maart 2023 @ 16:00:
hmm, ik moet even gaan zoeken wat er mis gaat met de mindergas.py die gedeeld is krijg ik een error http 401.
Gooi ik hem in putty via een curl commando dan krijg ik een status 200.
Ik weet niet hoelang je al problemen hebt, maar misschien kan deze quote je iets helpen
Per 1 Oktober is de API aangepast dus moet ook het script iets worden aangepast, ‘gas_’ weghalen lijkt voldoende.

https://mindergas.nl/member/api

‘De URL is veranderd van http(s)://www.mindergas.nl/api/gas_meter_readings naar http(s)://www.mindergas.nl/api/meter_readings.’

  • MdO82
  • Registratie: Maart 2007
  • Nu online
Witlof schreef op dinsdag 7 maart 2023 @ 20:13:
[...]


Ik weet niet hoelang je al problemen hebt, maar misschien kan deze quote je iets helpen


[...]
Dat probleem had ik inderdaad in oktober.
Maar het huidige probleem heb ik sinds 1 maart.

Via een curl opdracht gaat het wel goed via het python script niet. Ga er eens in duiken :)

2250 WP Zuid PVoutput


  • MdO82
  • Registratie: Maart 2007
  • Nu online
Nou in mijn code gedoken en het probleem gevonden.
Weet even nog niet wat de permanente oplossing is en of het door de update gekomen is :)

Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def main(argv=None):
    
    parser = ArgumentParser(description='Upload meterstand van Domoticz naar MinderGas.nl')
    parser.add_argument("-a", "--apikey", dest="apikey", help="MinderGas.nl API Key", required=True)
    parser.add_argument("-u", "--url", dest="url", help="URL naar Domoticz, eg: http://localhost:8080", default='http://localhost:8080')
    parser.add_argument("-d", "--device-id", dest="device", help="Device id voor de P1 Gas Smart Meter", type=int, required=True)

    args = parser.parse_args()
    
    device_data = json.load(urllib2.urlopen("%s/json.htm?type=devices&rid=%s" % (args.url, args.device), timeout=5))
    meterstand = device_data['result'][0]['Counter']

    code = upload_meterstand(meterstand, args.apikey)

    if code == 201:
        return 0
    else:
        return code


In de code wordt er een verbinding geopend naar http://localhost:8080/
Ondanks dat mijn crontab en scripts op de raspberry staan vindt hij localhost niet leuk.
Als ik het ip van de raspi hard in de code zet dan wordt mijn tellerstand doorgegeven.

Zoals gezegd weet even niet wat er mis gaat en zoek het nog uit, maar het werkt weer

2250 WP Zuid PVoutput


  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

@MdO82 doet 127.0.0.1 het wel?

Heb je iets aan de autorisatie aangepast in domoticz?

  • MdO82
  • Registratie: Maart 2007
  • Nu online
MikeyMan schreef op woensdag 8 maart 2023 @ 16:06:
@MdO82 doet 127.0.0.1 het wel?

Heb je iets aan de autorisatie aangepast in domoticz?
127.0.0.1 werkt inderdaad ook.
Bij mijn weten heb ik niks aangepast (of wellicht onbewust)

Mijn security staat als volgt.



Overigens wordt localhost wel herkend.
Als ik een ping localhost doe dan krijg ik een ::1 terug
Op ping localhost -4 krijg ik het ipv4 adres 127.0.0.1

[Voor 12% gewijzigd door MdO82 op 08-03-2023 17:00]

2250 WP Zuid PVoutput

M.v.Veelen schreef op donderdag 2 maart 2023 @ 21:49:
Cookies verwijderen of update in incognito venster draaien helpt niet.

Bij het starten van de update telt Domoticz tot 100% (duurt lang, ongeveer 100 seconden) en staat er dit:

Update Available... Downloading Update !...

Bij de 100% aangekomen verschijnt:

Error while downloading Update,
check your internet connection or try again later !...

En moet ik via de CLI alsnog updaten. Dat gaat a) veel sneller en b) werkt wel.
Mocht iemand nog een goede oplossing weten, graag. Moet nu toch telkens via de CLI updaten en dat zou niet nodig hoeven zijn.

¯\_(ツ)_/¯


  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

M.v.Veelen schreef op woensdag 8 maart 2023 @ 18:48:
[...]


Mocht iemand nog een goede oplossing weten, graag. Moet nu toch telkens via de CLI updaten en dat zou niet nodig hoeven zijn.
Ctrl+f5 heeft het tot nu toe altijd gedaan bij mij als dat aan de hand was. Maar dat lijkt me dus iets minder nijpend.

[Voor 9% gewijzigd door MikeyMan op 08-03-2023 18:52]


  • freestyler2
  • Registratie: Februari 2007
  • Niet online

freestyler2

Moderator

Hoe kan je in Domoticz meerdere gebruikers toevoegen voor notificaties te ontvangen via je telegram bot (https://www.domoticz.com/wiki/Telegram_notification)

Ik heb bij "Chat ID" al meerdere scheidingstekens geprobeerd maar dit lijkt niet te werken...

Ik weet dat een oplossing zou kunnen zijn om een eigen kanaal aan te maken en daar je Bot berichten heen te laten sturen maar we zouden Tweakers niet zijn als iets moeilijk kan, waarom makkelijk doen ;-)

Tenzij je naam Google is hou op met te doen alsof je alles weet.

M'n dak ligt sinds gistermiddag vol met zonnepanelen en ik zie in Domoticz wat ik teruglever, maar kan ik ook iets toevoegen zodat ik de opbrengst per omvormer zie (ik heb er 2)? Want dat vind ik ook interessant om op het dashboard te zien.

¯\_(ツ)_/¯


  • de Peer
  • Registratie: Juli 2002
  • Nu online

de Peer

under peer review

M.v.Veelen schreef op vrijdag 10 maart 2023 @ 10:38:
M'n dak ligt sinds gistermiddag vol met zonnepanelen en ik zie in Domoticz wat ik teruglever, maar kan ik ook iets toevoegen zodat ik de opbrengst per omvormer zie (ik heb er 2)? Want dat vind ik ook interessant om op het dashboard te zien.
uiteraard. Dan moet je je omvormers aan Domoticz toevoegen. Het hangt van het type/merk omvormer af hoe makkelijk dat gaat.

Tibber-klant, 20600 Wp, Atlantic Explorer V3, 3x Daikin airco, Nissan Leaf, Gasloos sinds 2018

Het zijn 2 x SMA omvormers. Werkt dat dan met een plugin oid?

¯\_(ツ)_/¯


Acties:
  • +1Henk 'm!

  • de Peer
  • Registratie: Juli 2002
  • Nu online

de Peer

under peer review

M.v.Veelen schreef op vrijdag 10 maart 2023 @ 10:43:
Het zijn 2 x SMA omvormers. Werkt dat dan met een plugin oid?
ja.
1e hit op google.
https://www.google.com/se...&sourceid=chrome&ie=UTF-8

Tibber-klant, 20600 Wp, Atlantic Explorer V3, 3x Daikin airco, Nissan Leaf, Gasloos sinds 2018


  • Poelie
  • Registratie: April 2002
  • Laatst online: 23-03 23:50
Ik heb een raar probleem.
Bij mijn eigen Domoticz heb ik het netto script draaien van één van de forumleden. Dit kan interessant zijn om te zien wat je netto elektra status is zolang je nog mag salderen.
Op mijn eigen Domoticz draait dit probleemloos, de Nettowaarde van de meter is exact de waarde van het verbruik - de levering.

Op de Domoticz van mijn vader leest Dvents naarmate de dag vordert een afwijkende waarde uit dan de wat de elektrometer in Domoticz aangeeft. Hierdoor loopt de berekening van de netto waarde in de soep.
Op dit moment geeft de P1 elektra meter een waarde van 4125kwh, vraag ik de waarde op met Dvents en log deze naar de logfile geeft hij 3802kwh. naarmate de dag vordert wordt het verschil steeds groter.

Wanneer ik een JSON req doe op dezelfde meter kloppen de waarden wel.
Iemand een een idee waar dit verschil vandaan komt? De P1 Elektra waarden zijn de correcte waarden.
Oplossing kan zijn de JSON waarde te gebruiken in het Dvents script maar dat is me nog niet gelukt.
Yikes, dat is wel een flinke riedel aan installaties die moeten worden uitgevoerd. Dat wordt een avondje knutselen als ik het zo zie :X
Thanks

¯\_(ツ)_/¯


  • BazemanKM
  • Registratie: Januari 2008
  • Laatst online: 22:12
freestyler2 schreef op donderdag 9 maart 2023 @ 15:08:
Hoe kan je in Domoticz meerdere gebruikers toevoegen voor notificaties te ontvangen via je telegram bot (https://www.domoticz.com/wiki/Telegram_notification)

Ik heb bij "Chat ID" al meerdere scheidingstekens geprobeerd maar dit lijkt niet te werken...

Ik weet dat een oplossing zou kunnen zijn om een eigen kanaal aan te maken en daar je Bot berichten heen te laten sturen maar we zouden Tweakers niet zijn als iets moeilijk kan, waarom makkelijk doen ;-)
Ik heb een groeps app in Telegram en daar stuur ik de berichten naar toe. Meerdere ontvangers krijgen dan het bericht binnen.

  • Knielen
  • Registratie: December 2009
  • Laatst online: 19:56
Poelie schreef op vrijdag 10 maart 2023 @ 10:52:
Ik heb een raar probleem.
Bij mijn eigen Domoticz heb ik het netto script draaien van één van de forumleden. Dit kan interessant zijn om te zien wat je netto elektra status is zolang je nog mag salderen.
Op mijn eigen Domoticz draait dit probleemloos, de Nettowaarde van de meter is exact de waarde van het verbruik - de levering.

Op de Domoticz van mijn vader leest Dvents naarmate de dag vordert een afwijkende waarde uit dan de wat de elektrometer in Domoticz aangeeft. Hierdoor loopt de berekening van de netto waarde in de soep.
Op dit moment geeft de P1 elektra meter een waarde van 4125kwh, vraag ik de waarde op met Dvents en log deze naar de logfile geeft hij 3802kwh. naarmate de dag vordert wordt het verschil steeds groter.

Wanneer ik een JSON req doe op dezelfde meter kloppen de waarden wel.
Iemand een een idee waar dit verschil vandaan komt? De P1 Elektra waarden zijn de correcte waarden.
Oplossing kan zijn de JSON waarde te gebruiken in het Dvents script maar dat is me nog niet gelukt.
En aan het einde van de dag is het verschil weer kleiner? Zou dan meest vanzelfsprekend zijn dat je toch een verkeerde waarde uitleest en dus het verbruik in huis meeneemt.
Anders even het script aan je bericht toevoegen, kunnen we even meekijken.

  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

@Poelie Zie mijn eerdere posts van deze week. Er zijn nogal wat verschillende subwaardes per device ;)

Wat voor device probeer je als bron te gebruiken?

[Voor 25% gewijzigd door MikeyMan op 10-03-2023 15:45]


  • Poelie
  • Registratie: April 2002
  • Laatst online: 23-03 23:50
MikeyMan schreef op vrijdag 10 maart 2023 @ 15:44:
@Poelie Zie mijn eerdere posts van deze week. Er zijn nogal wat verschillende subwaardes per device ;)

Wat voor device probeer je als bron te gebruiken?
De P1 Smart Meter, Energy is mijn bron.

Code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
return {
    on = { 
        timer   = { "every minute" }
        },
    
    execute = function(dz)
        --Devices.
        local SMdata = dz.devices(17).rawData
        local levering = dz.devices(17).counterDeliveredToday         -- Stroomlevering via Stroommeter device
        local gebruik = dz.devices(17).counterToday                   -- Stroomgebruik via Stroommeter device
        local NettoStroomgebruik = dz.devices('Netto')                -- Netto stroomgebruik device

        --Vorige waardes inlezen.
        local nettototaalvorigedag = NettoStroomgebruik.WhTotal
        local nettototaalvandaag = NettoStroomgebruik.WhToday
        
        --Netto stroomgebruik berekenen.
        --local nettoactueel = SMdata[5] - SMdata[6]
        local nettoactueel = dz.devices(18).actualWatt + dz.devices(81).actualWatt + dz.devices(80).actualWatt - dz.devices(19).actualWatt
        local nettototaaltemp = (dz.utils.round(gebruik - levering, 3)) * 1000
        local nettototaal = nettototaalvorigedag + (nettototaaltemp - nettototaalvandaag)
        
        --Sensoren updaten.
        NettoStroomgebruik.updateElectricity(nettoactueel,nettototaal)
        dz.log('gebruik: ' .. gebruik, dz.LOG_INFO)
        dz.log('levering: ' .. levering, dz.LOG_INFO)
        
    end
}

Acties:
  • +1Henk 'm!

  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

Al heel lang aan willen beginnen maar nu eindelijk eens aan begonnen. Een LCD schermpje in de deur van de meterkast die allerlei waardes vanuit Domoticz laat zien.
Python script op de Pi waar Domoticz op draait die alles door stuurt naar een wemos D1 waar de LCD opzit, jammer dat de Wemos en LCD geen ondersteuning heeft voor spaties op het scherm maar ik ben er blij mee.




[Voor 5% gewijzigd door klump4u op 10-03-2023 19:23]

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
klump4u schreef op vrijdag 10 maart 2023 @ 19:22:
Al heel lang aan willen beginnen maar nu eindelijk eens aan begonnen. Een LCD schermpje in de deur van de meterkast die allerlei waardes vanuit Domoticz laat zien.
Python script op de Pi waar Domoticz op draait die alles door stuurt naar een wemos D1 waar de LCD opzit, jammer dat de Wemos en LCD geen ondersteuning heeft voor spaties op het scherm maar ik ben er blij mee.
[Afbeelding]

[Afbeelding]

[Afbeelding]
Nice! Met roterende schermen met wisselende informatie dus? Keurig. En ligt het nu aan mij, maar volgens mij zie ik hier spaties.
Probeer anders %20 eens in de data ri je scherm.
Dit kan je in je bericht verwerken door in je script te hebben:
Spatie= "%20"
[tekst]..Spatie..[dataveld]
Dus ik stuur:
code:
1
http://192.168.xx.xx/control?cmd=oled,2,1,T_in%3A%2020.3%20*C


Zelfde kan voor punt (%2E) en dubbele punt (%3E)

Haalt de wemos de data op, of pusht domoticz de data naar het scherm?

[Voor 9% gewijzigd door Heinemancp op 10-03-2023 19:38]


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

Heinemancp schreef op vrijdag 10 maart 2023 @ 19:30:
[...]


Nice! Met roterende schermen met wisselende informatie dus? Keurig. En ligt het nu aan mij, maar volgens mij zie ik hier spaties.
Probeer anders %20 eens in de data ri je scherm.
Dit kan je in je bericht verwerken door in je script te hebben:
Spatie= "%20"
[tekst]..Spatie..[dataveld]
Dus ik stuur:
code:
1
http://192.168.xx.xx/control?cmd=oled,2,1,T_in%3A%2020.3%20*C


Zelfde kan voor punt (%2E) en dubbele punt (%3E)

Haalt de wemos de data op, of pusht domoticz de data naar het scherm?
Een python script haalt de data uit Domoticz en stuurt dit naar de Wemos, %20 had ik al geprobeerd maar werkte niet.
Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
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
#!/usr/bin/python
from time import sleep

import pycurl
import subprocess
import os
import time
import unicodedata
import urllib, json
import datetime

# Configuration
cfgDomoticzHost = "192.168.0.20:8080"
cfgEspEasy = "http://192.168.0.80/control?cmd="
cfgSpeed = 4
TotalScreens = 5

def get_domoticz_sensor(idx):
        url = "http://"+str(cfgDomoticzHost)+"/json.htm?type=devices&rid="+str(idx)
        response = urllib.urlopen(url);
        data = json.loads(response.read())
        if data["status"] == "OK":
                return data["result"][0]

def get_domoticz_info(result):
    url = "http://"+str(cfgDomoticzHost)+"/json.htm?type=command&param=checkforupdate&forced=true"
        response = urllib.urlopen(url);
        data = json.loads(response.read())
    if data["status"] == "OK":
        return data[result]

# Create screens
def screen_1():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,PanLive:"+str(get_domoticz_sensor(103)["Usage"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,4,PanDag:"+str(get_domoticz_sensor(103)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,3,GarLive:"+str(get_domoticz_sensor(115)["Usage"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,4,GarDag:"+str(get_domoticz_sensor(115)["CounterToday"]))
    c.perform()

def screen_2():
        c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,5,ZonLive:"+str(get_domoticz_sensor(114)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,2,ZonVandaag:"+str(get_domoticz_sensor(114)["CounterToday"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,4,ElecLive:"+str(get_domoticz_sensor(43)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,1,ElecVandaag:"+str(get_domoticz_sensor(43)["CounterToday"]))
        c.perform()


def screen_3():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,1,CvA:"+str(get_domoticz_sensor(20)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,11,CvR:"+str(get_domoticz_sensor(21)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,1,D-T:"+str(get_domoticz_sensor(23)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,11,CO2:"+str(get_domoticz_sensor(36)["Data"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,4,WP-Live:"+str(get_domoticz_sensor(88)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,1,WP-Vandaag:"+str(get_domoticz_sensor(88)["CounterToday"]))
        c.perform()
def screen_4():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,KW:"+str(get_domoticz_sensor(126)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,13,WW:"+str(get_domoticz_sensor(125)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,3,WaterTotaal:"+str(get_domoticz_sensor(124)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,1,WpbT:"+str(get_domoticz_sensor(32)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,11,WpbW:"+str(get_domoticz_sensor(29)["Usage"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,3,WpBVandaag:"+str(get_domoticz_sensor(29)["CounterToday"]))
        c.perform()

def screen_5():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,PaneelTemp:"+str(get_domoticz_sensor(25)["Temp"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,3,BuitenTemp:"+str(get_domoticz_sensor(73)["Temp"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,2,Vochtigheid:"+str(get_domoticz_sensor(73)["Humidity"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,4,Luchtdruk:"+str(get_domoticz_sensor(73)["Barometer"]))
        c.perform()
# Determine order of the screens
screens = {
        1 : screen_1,
        2 : screen_2,
        3 : screen_3,
        4 : screen_4,
        5 : screen_5,
          }

# Start LCD
c = pycurl.Curl()
  
# Display screens
i=0
while 1:
    try:
        screens[i]()
    except:
        pass

    sleep(cfgSpeed)
    i+=1
    if i == TotalScreens+1:
        i=0

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

----

[Voor 199% gewijzigd door klump4u op 10-03-2023 19:58]

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
klump4u schreef op vrijdag 10 maart 2023 @ 19:56:
[...]

Een python script haalt de data uit Domoticz en stuurt dit naar de Wemos, %20 had ik al geprobeerd maar werkte niet.
Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
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
#!/usr/bin/python
from time import sleep

import pycurl
import subprocess
import os
import time
import unicodedata
import urllib, json
import datetime

# Configuration
cfgDomoticzHost = "192.168.0.20:8080"
cfgEspEasy = "http://192.168.0.80/control?cmd="
cfgSpeed = 4
TotalScreens = 5

def get_domoticz_sensor(idx):
        url = "http://"+str(cfgDomoticzHost)+"/json.htm?type=devices&rid="+str(idx)
        response = urllib.urlopen(url);
        data = json.loads(response.read())
        if data["status"] == "OK":
                return data["result"][0]

def get_domoticz_info(result):
    url = "http://"+str(cfgDomoticzHost)+"/json.htm?type=command&param=checkforupdate&forced=true"
        response = urllib.urlopen(url);
        data = json.loads(response.read())
    if data["status"] == "OK":
        return data[result]

# Create screens
def screen_1():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,PanLive:"+str(get_domoticz_sensor(103)["Usage"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,4,PanDag:"+str(get_domoticz_sensor(103)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,3,GarLive:"+str(get_domoticz_sensor(115)["Usage"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,4,GarDag:"+str(get_domoticz_sensor(115)["CounterToday"]))
    c.perform()

def screen_2():
        c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,5,ZonLive:"+str(get_domoticz_sensor(114)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,2,ZonVandaag:"+str(get_domoticz_sensor(114)["CounterToday"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,4,ElecLive:"+str(get_domoticz_sensor(43)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,1,ElecVandaag:"+str(get_domoticz_sensor(43)["CounterToday"]))
        c.perform()


def screen_3():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,1,CvA:"+str(get_domoticz_sensor(20)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,11,CvR:"+str(get_domoticz_sensor(21)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,1,D-T:"+str(get_domoticz_sensor(23)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,11,CO2:"+str(get_domoticz_sensor(36)["Data"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,4,WP-Live:"+str(get_domoticz_sensor(88)["Usage"]))
        c.perform()
        c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,1,WP-Vandaag:"+str(get_domoticz_sensor(88)["CounterToday"]))
        c.perform()
def screen_4():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,KW:"+str(get_domoticz_sensor(126)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,13,WW:"+str(get_domoticz_sensor(125)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,3,WaterTotaal:"+str(get_domoticz_sensor(124)["CounterToday"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,1,WpbT:"+str(get_domoticz_sensor(32)["Temp"]))
    c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,11,WpbW:"+str(get_domoticz_sensor(29)["Usage"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,3,WpBVandaag:"+str(get_domoticz_sensor(29)["CounterToday"]))
        c.perform()

def screen_5():
    c.setopt(c.URL, str(cfgEspEasy)+"lcdcmd,clear")
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,PaneelTemp:"+str(get_domoticz_sensor(25)["Temp"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,2,3,BuitenTemp:"+str(get_domoticz_sensor(73)["Temp"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,3,2,Vochtigheid:"+str(get_domoticz_sensor(73)["Humidity"]))
        c.perform()
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,4,4,Luchtdruk:"+str(get_domoticz_sensor(73)["Barometer"]))
        c.perform()
# Determine order of the screens
screens = {
        1 : screen_1,
        2 : screen_2,
        3 : screen_3,
        4 : screen_4,
        5 : screen_5,
          }

# Start LCD
c = pycurl.Curl()
  
# Display screens
i=0
while 1:
    try:
        screens[i]()
    except:
        pass

    sleep(cfgSpeed)
    i+=1
    if i == TotalScreens+1:
        i=0
Ah check. Geen verstand van Python. Heeft vast andere tekens dan de html die ik stuur naar mn schermpje op de wemos.

  • bello2011
  • Registratie: November 2011
  • Laatst online: 21:26
Ik heb een Sonoff Zigbee 3.0 USB Dongel geplaatst in mijn RPI4. Hierna de domoticz-zigbee2mqtt-plugin geïnstalleerd. Bij de hardwareninstellingen vind ik de Zigbee2MQTT Plugin terug en heb deze toegevoegd.
Ik vind daarna geen sensoren terug bij apparaten. In de log zie ik echter de volgende foutmelding:
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Failed to connect to: localhost:1883, Description: Connection refused
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Disconnected from MQTT Server: localhost:1883
Als ik het IP adrtes van der RPI gebruik krijg ik dezelfde melding.
Wat doe ik fout?

Acties:
  • +1Henk 'm!

  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
bello2011 schreef op vrijdag 10 maart 2023 @ 21:05:
Ik heb een Sonoff Zigbee 3.0 USB Dongel geplaatst in mijn RPI4. Hierna de domoticz-zigbee2mqtt-plugin geïnstalleerd. Bij de hardwareninstellingen vind ik de Zigbee2MQTT Plugin terug en heb deze toegevoegd.
Ik vind daarna geen sensoren terug bij apparaten. In de log zie ik echter de volgende foutmelding:
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Failed to connect to: localhost:1883, Description: Connection refused
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Disconnected from MQTT Server: localhost:1883
Als ik het IP adrtes van der RPI gebruik krijg ik dezelfde melding.
Wat doe ik fout?
Wachtwoord fout of niet ingegeven?

  • bello2011
  • Registratie: November 2011
  • Laatst online: 21:26
Heinemancp schreef op vrijdag 10 maart 2023 @ 21:26:
[...]


Wachtwoord fout of niet ingegeven?
Dit heb ik geprobeerd. Met het ww van de PI en dat van Domoticz. Beide zonder succes.

Acties:
  • +1Henk 'm!

  • davegriffejoen
  • Registratie: Mei 2003
  • Laatst online: 18:59
bello2011 schreef op vrijdag 10 maart 2023 @ 21:05:
Ik heb een Sonoff Zigbee 3.0 USB Dongel geplaatst in mijn RPI4. Hierna de domoticz-zigbee2mqtt-plugin geïnstalleerd. Bij de hardwareninstellingen vind ik de Zigbee2MQTT Plugin terug en heb deze toegevoegd.
Ik vind daarna geen sensoren terug bij apparaten. In de log zie ik echter de volgende foutmelding:
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Failed to connect to: localhost:1883, Description: Connection refused
2023-03-10 21:00:26.142 Error: Sonoff Zigbee: Disconnected from MQTT Server: localhost:1883
Als ik het IP adrtes van der RPI gebruik krijg ik dezelfde melding.
Wat doe ik fout?
Heb je ook een MQTT server en Zigbee2mqtt zelf (dus niet alleen de plugin) geïnstalleerd?

  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
bello2011 schreef op vrijdag 10 maart 2023 @ 21:43:
[...]


Dit heb ik geprobeerd. Met het ww van de PI en dat van Domoticz. Beide zonder succes.
Ja voor de mqqt server bedoel ik

  • bello2011
  • Registratie: November 2011
  • Laatst online: 21:26
davegriffejoen schreef op vrijdag 10 maart 2023 @ 21:46:
[...]

Heb je ook een MQTT server en Zigbee2mqtt zelf (dus niet alleen de plugin) geïnstalleerd?
Nee dus, :z Nu gedaan en ik ben weer een stap verder. De foutmelding is weg. Nu uitzoeken hoe ik sensoren en schakelaars ga toevoegen.

  • RovloSQL
  • Registratie: Oktober 2008
  • Nu online
klump4u schreef op vrijdag 10 maart 2023 @ 19:54:
Een python script haalt de data uit Domoticz en stuurt dit naar de Wemos, %20 had ik al geprobeerd maar werkte niet.
Python:
1
    c.setopt(c.URL, str(cfgEspEasy)+"lcd,1,3,PanLive:"+str(get_domoticz_sensor(103)["Usage"]))
Deze documentatie zegt dat je de tekst tussen quotes moet zetten als je spaties of comma's gebruikt in de text parameter. Wellicht een poging waard:
code:
1
2
3
4
5
6
lcd,<row>,<col>,<text>
The <row> parameter corresponds with the same lines as the plugin configuration has.
The <col> parameter sets the column the text will be displayed.
The <text> parameter must be a single command parameter. Meaning, it must be wrapped in quotes when using a space or comma as text.
If double quote characters are needed, wrap the parameter in single quotes or back quotes.
All template notations can be used, like system variables, or reference to a task value.

  • bello2011
  • Registratie: November 2011
  • Laatst online: 21:26
bello2011 schreef op zaterdag 11 maart 2023 @ 12:14:
[...]


Nee dus, :z Nu gedaan en ik ben weer een stap verder. De foutmelding is weg. Nu uitzoeken hoe ik sensoren en schakelaars ga toevoegen.
Ik heb toch weer een zetje nodig.
Er is geinstalleert: Zigbee2MQTT; MQTT Client Gateway with LAN interface; MQTT Auto Discovery Client Gateway with LAN interface; Mosquitto. Als ik deze laatste wil starten geeft deze de volgende melding:
pi@raspberrypi:~ $ mosquitto
1678549146: mosquitto version 1.5.7 starting
1678549146: Using default config.
1678549146: Opening ipv4 listen socket on port 1883.
1678549146: Error: Address already in use
Ik heb een dummy aangemaakt in Domoticz en deze wordt weergegeven.
Waar ik naar op zoek ben is hoe ik een Sonoff temperatuur en vocht sensor kan weergeven in Domoticz en welke stappen hiervoor nodig zijn om deze ergens als hardware of apparaat terug te vinden.

  • davegriffejoen
  • Registratie: Mei 2003
  • Laatst online: 18:59
@bello2011
Die foutmelding krijg je waarschijnlijk omdat mosquito al werkt. Ik zou beginnen met zigbee2mqtt configureren, dan via de frontend je sensor koppelen, en daarna pas proberen om het in Domoticz werkend te krijgen.

[Voor 17% gewijzigd door davegriffejoen op 11-03-2023 17:23]


  • bello2011
  • Registratie: November 2011
  • Laatst online: 21:26
davegriffejoen schreef op zaterdag 11 maart 2023 @ 17:22:
@bello2011
Die foutmelding krijg je waarschijnlijk omdat mosquito al werkt. Ik zou beginnen met zigbee2mqtt configureren, dan via de frontend je sensor koppelen, en daarna pas proberen om het in Domoticz werkend te krijgen.
Ik stel wellicht domme vragen maar hoe kom ik bij een configuratie menu oid van zigbee2mqtt? Hoe configureer ik deze?

  • Seafarer
  • Registratie: November 2012
  • Laatst online: 19:46
M.v.Veelen schreef op woensdag 8 maart 2023 @ 18:48:
[...]


Mocht iemand nog een goede oplossing weten, graag. Moet nu toch telkens via de CLI updaten en dat zou niet nodig hoeven zijn.
Welke opdracht gebruik jij dan via de cli?

Want bij mij lukt updaten helemaal niet. Beetje gegoogled natuurlijk. Maar ook geen succes.

Een CV-Ketel is een vlamkoeler en een radiator is een waterkoeler.


  • Knielen
  • Registratie: December 2009
  • Laatst online: 19:56
bello2011 schreef op zaterdag 11 maart 2023 @ 17:52:
[...]


Ik stel wellicht domme vragen maar hoe kom ik bij een configuratie menu oid van zigbee2mqtt? Hoe configureer ik deze?
via het port nummer dat in je configuratie bestand staat van zigbee2mqtt

als je het via de linux methode hebt geinstalleerd te vinden in /opt/zigbee2mqtt/data/configuration.yaml

  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

Seafarer schreef op zondag 12 maart 2023 @ 16:16:
[...]

Welke opdracht gebruik jij dan via de cli?

Want bij mij lukt updaten helemaal niet. Beetje gegoogled natuurlijk. Maar ook geen succes.
Updating Domoticz
Navigate to the directory where Domoticz is installed: cd domoticz (You want to end up in /home/YOURUSERNAME/domoticz/)
Update to the latest Beta with: ./updatebeta.
Update to the latest Release with: ./updaterelease.
14 feb 2023

Eerste hit op Google

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


Acties:
  • +1Henk 'm!

  • Seafarer
  • Registratie: November 2012
  • Laatst online: 19:46
klump4u schreef op zondag 12 maart 2023 @ 18:42:
[...]

Updating Domoticz
Navigate to the directory where Domoticz is installed: cd domoticz (You want to end up in /home/YOURUSERNAME/domoticz/)
Update to the latest Beta with: ./updatebeta.
Update to the latest Release with: ./updaterelease.
14 feb 2023

Eerste hit op Google
Ja klopt. Maar dat werkt niet. Bij mij althans.

[Voor 20% gewijzigd door Seafarer op 12-03-2023 20:52]

Een CV-Ketel is een vlamkoeler en een radiator is een waterkoeler.


  • Lizard
  • Registratie: Februari 2000
  • Laatst online: 17:59
Seafarer schreef op zondag 12 maart 2023 @ 20:06:
[...]

Ja klopt. Maar dat werkt niet. Bij mij althans.

[Afbeelding]
Lijkt erop dat je internet connectiviteit niet goed is.
Kloppen je netwerk instellingen wel?
Ik gebruik inderdaad alleen die commando's:

SSH naar de Pi
cd domoticz
./updatebeta

En dat gaat altijd goed.

Zojuist in een andere browser geprobeerd via de GUI en dat ging meteen goed. Dan heb ik wss toch de cookies niet of niet goed verwijderd in de browser waarin ik het telkens probeerde..... thanks guys!

Edit:

ondertussen gebruik ik deze plugin: https://github.com/rklomp/Domoticz-SMA-SunnyBoy

Het vervelende is alleen, dat ik 2 omvormers heb en ik zie nergens hoe ik dat voor elkaar krijg. Mocht iemand eenzelfde situatie hebben en een oplossing hebben gevonden, ik heb interesse.

Zo stuur ik nu ook maar van 1 omvormer de gegevens naar PVoutput.org, ik gebruik daarvoor het device dat is aangemaakt met de naam "SMA Sunny Boy - PV Generation" en dit is slechts van de garage, terwijl op het dak van de woning nog het dubbele aantal zonnepanelen ligt.

Hoe zou ik dit afzonderlijk van elkaar in Domoticz kunnen krijgen en vervolgens als totaal naar PVoutput.org kunnen sturen?

Edit 2:

Ik kan nogmaals de plugin toevoegen, maar omdat het een SMA SB 3.6 is, krijg ik een foutmelding:
2023-03-15 08:08:59.038 SMA Sonny Boy Solar inverter woning: Pushing 'onHeartbeatCallback' on to queue
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Processing 'onHeartbeatCallback' message
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Acquiring GIL for 'onHeartbeatCallback'
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Calling message handler 'onHeartbeat' on 'module' type object.
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: onHeartbeat called 0
2023-03-15 08:08:59.368 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:08:59.637 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:08:59.637 SMA Sonny Boy Solar inverter woning: Previous attempt failed, trying new login...
2023-03-15 08:09:00.058 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:09:00.352 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:09:00.352 SMA Sonny Boy Solar inverter woning: Previous attempt failed, trying new login...
2023-03-15 08:09:00.626 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:09:00.998 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:09:00.998 SMA Sonny Boy Solar inverter woning: Acquiring GIL for 'onHeartbeatCallback'
2023-03-15 08:09:00.998 Error: SMA Sonny Boy Solar inverter woning: Failed to retrieve data from 192.168.0.20, cancelling...
Kan het zo zijn dat er dan in de code van de plugin iets moet worden aangepast (met het risico dat de SMA SB 2 dan niet meer werkt) ?

Gegevens converters:

Sunny Boy

3.6 (deze krijg ik dus niet werkend met deze plugin)
firmware 4.0.55.R
Naam SB3.6-1AV-41622
Webconnect 1.5.4.R

2.0
firmware 3.11.5.R
Naam SB2.0-1VL-40383
Webconnect 1.5.1.R

[Voor 109% gewijzigd door M.v.Veelen op 15-03-2023 08:10]

¯\_(ツ)_/¯

Het is een beetje stilgevallen, hopelijk niet door mijn toedoen, hahaha.

Wat ik nu heb gedaan, is SBFSpot geïnstalleerd en daar krijg ik ook wel wat info mee in Domoticz, maar dit wordt om de 5 minuten geüpdate en is geen (nagenoeg) realtime informatie én wordt weer in een aparte DB/csv weggeschreven. Niet helemaal wat ik wil.

Ik zou heel graag beide SMA omvormers willen uitlezen, het liefst op de manier zoals die nu lukt met 1 van de 2, namelijk met de plugin van rklomp. Daarmee heb ik op de paar seconden een update wat de opbrengst op dat moment is en wat het totaal van die dag is.

De plugin van merlot-dev omzetten dmv een session ID uitleven/aanpassen werkt niet voor de SMA SB 3.6 omdat ik daar geen waarden krijg als ik de instructies volg die zijn beschreven in het "SMA Sunny Boy 1.5" topic op Domoticz.com helaas.

Wie kan me verder helpen met het uitlezen van de SMA SB 3.6 op deze manier :-) ?

¯\_(ツ)_/¯


  • MdO82
  • Registratie: Maart 2007
  • Nu online
MdO82 schreef op woensdag 8 maart 2023 @ 16:00:
Nou in mijn code gedoken en het probleem gevonden.
Weet even nog niet wat de permanente oplossing is en of het door de update gekomen is :)

Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def main(argv=None):
    
    parser = ArgumentParser(description='Upload meterstand van Domoticz naar MinderGas.nl')
    parser.add_argument("-a", "--apikey", dest="apikey", help="MinderGas.nl API Key", required=True)
    parser.add_argument("-u", "--url", dest="url", help="URL naar Domoticz, eg: http://localhost:8080", default='http://localhost:8080')
    parser.add_argument("-d", "--device-id", dest="device", help="Device id voor de P1 Gas Smart Meter", type=int, required=True)

    args = parser.parse_args()
    
    device_data = json.load(urllib2.urlopen("%s/json.htm?type=devices&rid=%s" % (args.url, args.device), timeout=5))
    meterstand = device_data['result'][0]['Counter']

    code = upload_meterstand(meterstand, args.apikey)

    if code == 201:
        return 0
    else:
        return code


In de code wordt er een verbinding geopend naar http://localhost:8080/
Ondanks dat mijn crontab en scripts op de raspberry staan vindt hij localhost niet leuk.
Als ik het ip van de raspi hard in de code zet dan wordt mijn tellerstand doorgegeven.

Zoals gezegd weet even niet wat er mis gaat en zoek het nog uit, maar het werkt weer
Vandaag eens getest door http://127.0.0.1:8080 welke werkt te wijzigen naar http://localhost:8080 om te kijken wat er gebeurd.

Helaas weer een 401 Unauthorized

Terug gezet naar http://127.0.0.1:8080

HTTP Error 422: Unprocessable Entity

Dus op een of andere reden werkt localhost:8080 bij mij niet.
Nog gedacht aan dns problemen maar kan wel hostnamen pingen op naam.

Kan het wellicht zijn dat de pi over zijn nek gaat door ipv6 ?
Als ik ping naar localhost krijg ik een ::1

Zomaar een gedachten, maar zou dat een oorzaak kunnen zijn ?

Verder laat ik het maar even zo en laat ik hem op ip-adres staan tot ik eens tijd heb om er echt in te duiken

2250 WP Zuid PVoutput


  • Vollervo
  • Registratie: Oktober 2014
  • Laatst online: 17:26
MdO82 schreef op vrijdag 17 maart 2023 @ 12:18:
[...]

Als ik ping naar localhost krijg ik een ::1

Zomaar een gedachten, maar zou dat een oorzaak kunnen zijn ?
Ik denk het wel. Je zal of moeten zorgen dat het IP6 adres ook geautoriseerd is in de software waarnaar je connect, of zorgen dat localhost alleen naar IP4v resolved.

Gebruik je DNS? Als je een interne DNS server hebt kan je het misschien daar aanpassen.
Geen DNS, dan op de pi in /etc/hosts kijken

BTW, het lijkt me dat je IPv6 niet (volledig) geconfigureerd hebt. Ik ook niet, maar heb het dan ook uit staan...

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 22:04

Dylantje2

sorry Bricklayere here :-)

M.v.Veelen schreef op vrijdag 17 maart 2023 @ 10:13:
Het is een beetje stilgevallen, hopelijk niet door mijn toedoen, hahaha.

Wat ik nu heb gedaan, is SBFSpot geïnstalleerd en daar krijg ik ook wel wat info mee in Domoticz, maar dit wordt om de 5 minuten geüpdate en is geen (nagenoeg) realtime informatie én wordt weer in een aparte DB/csv weggeschreven. Niet helemaal wat ik wil.

Ik zou heel graag beide SMA omvormers willen uitlezen, het liefst op de manier zoals die nu lukt met 1 van de 2, namelijk met de plugin van rklomp. Daarmee heb ik op de paar seconden een update wat de opbrengst op dat moment is en wat het totaal van die dag is.

De plugin van merlot-dev omzetten dmv een session ID uitleven/aanpassen werkt niet voor de SMA SB 3.6 omdat ik daar geen waarden krijg als ik de instructies volg die zijn beschreven in het "SMA Sunny Boy 1.5" topic op Domoticz.com helaas.

Wie kan me verder helpen met het uitlezen van de SMA SB 3.6 op deze manier :-) ?
Heb je problemen met een S0?
Die ertussen en dan heb je alle data? evt in domoticz of via pvo uploader.... In Pvo en dan terug te halen in domoticz
https://pvoutput.org/intraday.jsp?id=15321&sid=15807

https://pvoutput.org/list.jsp?id=15321&sid=15807

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

Dylantje2 schreef op zondag 19 maart 2023 @ 20:59:
[...]


Heb je problemen met een S0?
Die ertussen en dan heb je alle data? evt in domoticz of via pvo uploader.... In Pvo en dan terug te halen in domoticz
https://pvoutput.org/intraday.jsp?id=15321&sid=15807

[Afbeelding]
S0? Wat heb ik daar dan precies voor nodig? Met m'n P1 lees ik (Domoticz) natuurlijk al wat af, maar ik wil dus het liefst per omvormer de opbrengst realtime zien in Domoticz. Via de webinterface van beide omvormers kan ik dat ook zien, maar ik krijg het slechts van één in de Domoticz. De SMA Sunny Boy 3.6 krijg ik niet toegevoegd in Domoticz, met nog geen enkel script.

¯\_(ツ)_/¯


  • bing69
  • Registratie: December 2000
  • Laatst online: 16:06
M.v.Veelen schreef op maandag 20 maart 2023 @ 11:41:
[...]


S0? Wat heb ik daar dan precies voor nodig? Met m'n P1 lees ik (Domoticz) natuurlijk al wat af, maar ik wil dus het liefst per omvormer de opbrengst realtime zien in Domoticz. Via de webinterface van beide omvormers kan ik dat ook zien, maar ik krijg het slechts van één in de Domoticz. De SMA Sunny Boy 3.6 krijg ik niet toegevoegd in Domoticz, met nog geen enkel script.
Als beide omvormers op een aparte groep zitten zou je ze met een KwH meter en een Youless kunnen uitlezen.

Ik heb het net andersom twee omvormers op 1 group met een KwH meter en een youless

Bing

Het zijn inderdaad 2 groepen waarbij de garage dedicated op 1 groep zit en uitgelezen kan worden mbv een script, dit is de SMA Sunny Boy 2.0

De andere, SMA Sunny Boy 3.6, zit op een groep waarop ook de wasmachine zit dmv een PV verdeler.

Ik kan inloggen op beide webinterfaces van de omvormers, maar het uitlezen lukt dus niet op laatstgenoemde. Als ik met een Youless de SB 3.6 uit zou willen lezen, gaat dit dan wel goed als die op een groep zit met de wasmachine? Waar zou de Youless moeten worden bevestigd

Eigenlijk wil ik het liefst dat het op dezelfde manier wordt uitgelezen als de SB 2.0, desnoods beide tegelijk via sunnyportal.com maar ik krijg dat script (4 jaar oud) maar niet aan de praat. Zie: https://robothuis.nl/2020...len-uitlezen-in-domoticz/


Ik heb denk ik alles precies gedaan wat daar staat, maar ik zie niets in het log gebeuren als ik test. Als dit zou werken, ben ik al blij. Het gaat me om het totaal uiteindelijk.

[Voor 3% gewijzigd door M.v.Veelen op 20-03-2023 18:28]

¯\_(ツ)_/¯


  • jobr
  • Registratie: Januari 2009
  • Laatst online: 19:08
M.v.Veelen schreef op maandag 20 maart 2023 @ 18:27:
Ik kan inloggen op beide webinterfaces van de omvormers, maar het uitlezen lukt dus niet op laatstgenoemde. Als ik met een Youless de SB 3.6 uit zou willen lezen, gaat dit dan wel goed als die op een groep zit met de wasmachine? Waar zou de Youless moeten worden bevestigd

Eigenlijk wil ik het liefst dat het op dezelfde manier wordt uitgelezen als de SB 2.0, desnoods beide tegelijk via sunnyportal.com maar ik krijg dat script (4 jaar oud) maar niet aan de praat. Zie: https://robothuis.nl/2020...len-uitlezen-in-domoticz/
Waarschijnlijk is er iets in die 4 jaar op sunnyportal gewijzigd waardoor dat niet meer werkt.

Waarom gebruikt je niet SBFspot. Zie ook https://www.domoticz.com/wiki/SMASpot_Monitoring_in_Domoticz
Ik gebruik het niet dus weet niet of dat laatste wel werkt maar het is vrij recent

edit: ik zie nu net dat je dat al gebruikt hebt.

[Voor 3% gewijzigd door jobr op 20-03-2023 19:02]


Acties:
  • +1Henk 'm!

  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 22:04

Dylantje2

sorry Bricklayere here :-)

M.v.Veelen schreef op maandag 20 maart 2023 @ 11:41:
[...]


S0? Wat heb ik daar dan precies voor nodig? Met m'n P1 lees ik (Domoticz) natuurlijk al wat af, maar ik wil dus het liefst per omvormer de opbrengst realtime zien in Domoticz. Via de webinterface van beide omvormers kan ik dat ook zien, maar ik krijg het slechts van één in de Domoticz. De SMA Sunny Boy 3.6 krijg ik niet toegevoegd in Domoticz, met nog geen enkel script.
S0 Meter.
https://www.elektramat.nl...0HsCg0r2v7BBoCgrsQAvD_BwE

Dan:
https://github.com/Dylantje/PVOutput-S0-Uploader

Die Upload dan naar:
https://pvoutput.org/list.jsp?id=15321&sid=15807

Waar je mooie grafieken enz heb..
data altijd gesaved is vergelijk kunt hebben met andere systemen.

Waarmee je dan in domoticz:
https://www.domoticz.com/wiki/Domoticz_and_PvOutput.org

Data importeert.

Ik heb zo al mijn systemen werkend.
Een "afgekeurde" inverter omdat hij niet te benaderen was met een wifi module, die weinig koste.
Werkt perfect, en meer als opbrengst en totaal opbrengst hoef ik niet te zien

Ander voordeel, nooit meer data kwijt van je system
als je het goed kun je ook je verbruik uploaden, en kun je je netto data uitlezen op pvo..

Vroeger alle systemen gratis, nu alleen 1 of 2 geloof ik, en dan als je meer wilt 10 dollar per jaar.
Of je maakt meerdere gratis sids aan:-)

Help je graag. [ pvouploader is een fork van ooit wijhebbenzon :-) ]

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


  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 22:04

Dylantje2

sorry Bricklayere here :-)

jobr schreef op maandag 20 maart 2023 @ 18:59:
[...]


Waarschijnlijk is er iets in die 4 jaar op sunnyportal gewijzigd waardoor dat niet meer werkt.

Waarom gebruikt je niet SBFspot. Zie ook https://www.domoticz.com/wiki/SMASpot_Monitoring_in_Domoticz
Ik gebruik het niet dus weet niet of dat laatste wel werkt maar het is vrij recent
Juist die portal ellende en extra kosten voor bt systemen om uit te lezen wilde we toen niet..
Wijhebbenzon was een tweakers 2.0 voor uploaden naar pvo, en uitlezen zonder ellende

Al mijn systemen upload ik naar pvo. 4 pvouploaders met xx sids die zichtbaar zijn in pvo.:)

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


  • jobr
  • Registratie: Januari 2009
  • Laatst online: 19:08
M.v.Veelen schreef op zondag 12 maart 2023 @ 22:10:

ondertussen gebruik ik deze plugin: https://github.com/rklomp/Domoticz-SMA-SunnyBoy

Het vervelende is alleen, dat ik 2 omvormers heb en ik zie nergens hoe ik dat voor elkaar krijg. Mocht iemand eenzelfde situatie hebben en een oplossing hebben gevonden, ik heb interesse.
Edit 2:

Ik kan nogmaals de plugin toevoegen, maar omdat het een SMA SB 3.6 is, krijg ik een foutmelding:

Kan het zo zijn dat er dan in de code van de plugin iets moet worden aangepast (met het risico dat de SMA SB 2 dan niet meer werkt) ?
Er is denk ik wel een manier om de plugin te dupliceren.
Je moet dan de dir een andere naam geven. Bijv nu heb je denk ik de dir Domoticz-SMA-SunnyBoy. Kopieer dan die dir met de inhoud naar Domoticz-SMA-SunnyBoy2
En pas dan deze regel aan van:
code:
1
<plugin key="SMASunnyBoy" name="SMA Sunny Boy Solar Inverter" author="rklomp" version="1.0.6">

naar
code:
1
<plugin key="SMASunnyBoy2" name="SMA Sunny Boy2 Solar Inverter" author="rklomp" version="1.0.6">


Natuurlijk domoticz herstarten.

Ik weet niet of je bij eerder genoemde foutmelding ook de debug had aanstaan. Zo nee, zet deze eens aan en post dan eens de meldingen met de SB 3.6
Waarschijnlijk dan even de plugin disablen en enablen. Je moet dan in de log iets tegenkomen wat begint met "onStart called". Alles wat daarna volgt graag posten.

En weet je zeker dat 192.168.0.20 het ip adres is van de SB 3.6?

[Voor 72% gewijzigd door jobr op 20-03-2023 20:00]

Hi beiden, dank voor de reacties. Een S0 meter is denk ik geen optie omdat mijn meterkast vol zit, er kan echt niets meer bij.

Vwb de plugin, ik kan 2 keer de plugins (met een afwijkende naam) toevoegen, dat is het probleem niet. Het IP adres is echt de juiste, het lukt alleen niet om op dezelfde manier als bij de 2.0 met de plugin in te loggen. Ik krijg dan:
2023-03-15 08:08:59.038 SMA Sonny Boy Solar inverter woning: Pushing 'onHeartbeatCallback' on to queue
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Processing 'onHeartbeatCallback' message
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Acquiring GIL for 'onHeartbeatCallback'
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: Calling message handler 'onHeartbeat' on 'module' type object.
2023-03-15 08:08:59.088 SMA Sonny Boy Solar inverter woning: onHeartbeat called 0
2023-03-15 08:08:59.368 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:08:59.637 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:08:59.637 SMA Sonny Boy Solar inverter woning: Previous attempt failed, trying new login...
2023-03-15 08:09:00.058 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:09:00.352 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:09:00.352 SMA Sonny Boy Solar inverter woning: Previous attempt failed, trying new login...
2023-03-15 08:09:00.626 SMA Sonny Boy Solar inverter woning: No valid response from SMA inverter on 192.168.0.20; {'err': 404}
2023-03-15 08:09:00.998 SMA Sonny Boy Solar inverter woning: Received data: {'err': 404}
2023-03-15 08:09:00.998 SMA Sonny Boy Solar inverter woning: Acquiring GIL for 'onHeartbeatCallback'
2023-03-15 08:09:00.998 Error: SMA Sonny Boy Solar inverter woning: Failed to retrieve data from 192.168.0.20, cancelling...
Inloggen op de webpagina van de omvormer lukt dus wel, ook met exact dezelfde gegevens, dus wachtwoord is goed.

Details van de omvormers:

Sunny Boy

3.6
firmware 4.0.55.R
Naam SB3.6-1AV-41622
Webconnect 1.5.4.R

2.0
firmware 3.11.5.R
Naam SB2.0-1VL-40383
Webconnect 1.5.1.R

Het lukt me echter nu wel met onderstaand commando een reply te krijgen:

curl -k -H "Content-Type: application/json, Accept-Charset: UTF-8" -X POST -d '{"pass" : "MijnPass", "right" : "usr"}' https://192.168.0.20/dyn/login.json

Alleen, na paar keer deze regel ingegeven te hebben, zijn er teveel ingelogd en moet ik wachten tot ik weer in kan loggen. Goed om te weten.....

¯\_(ツ)_/¯


  • Strontvlieg
  • Registratie: September 2006
  • Laatst online: 21-03 23:25
M.v.Veelen schreef op maandag 20 maart 2023 @ 20:32:
Het IP adres is echt de juiste, het lukt alleen niet om op dezelfde manier als bij de 2.0 met de plugin in te loggen.
Heb je in de SB wel de juiste communicatieprotocollen geactiveerd. Ik weet zo uit mijn hoofd niet welke. Waarschijnlijk webconnect. Ik heb een Sb5.0 draaien met zelfde firmware als jij met sbfspot.
Strontvlieg schreef op maandag 20 maart 2023 @ 22:51:
[...]

Heb je in de SB wel de juiste communicatieprotocollen geactiveerd. Ik weet zo uit mijn hoofd niet welke. Waarschijnlijk webconnect. Ik heb een Sb5.0 draaien met zelfde firmware als jij met sbfspot.
Zie de post hierboven die ik gisteravond heb gedaan, ik heb op beide webconnect aan staan, zie ook de versienummers.

¯\_(ツ)_/¯


Acties:
  • +1Henk 'm!

  • bing69
  • Registratie: December 2000
  • Laatst online: 16:06
Dylantje2 schreef op maandag 20 maart 2023 @ 19:00:
[...]


S0 Meter.
https://www.elektramat.nl...0HsCg0r2v7BBoCgrsQAvD_BwE

Dan:
https://github.com/Dylantje/PVOutput-S0-Uploader

Die Upload dan naar:
https://pvoutput.org/list.jsp?id=15321&sid=15807

Waar je mooie grafieken enz heb..
data altijd gesaved is vergelijk kunt hebben met andere systemen.

Waarmee je dan in domoticz:
https://www.domoticz.com/wiki/Domoticz_and_PvOutput.org

Data importeert.

Ik heb zo al mijn systemen werkend.
Een "afgekeurde" inverter omdat hij niet te benaderen was met een wifi module, die weinig koste.
Werkt perfect, en meer als opbrengst en totaal opbrengst hoef ik niet te zien

Ander voordeel, nooit meer data kwijt van je system
als je het goed kun je ook je verbruik uploaden, en kun je je netto data uitlezen op pvo..

Vroeger alle systemen gratis, nu alleen 1 of 2 geloof ik, en dan als je meer wilt 10 dollar per jaar.
Of je maakt meerdere gratis sids aan:-)

Help je graag. [ pvouploader is een fork van ooit wijhebbenzon :-) ]
Hier bijna hetzelfde alleen de Youless uploadt naar PVoutput

Bing


Acties:
  • +1Henk 'm!

  • MdO82
  • Registratie: Maart 2007
  • Nu online
Vollervo schreef op vrijdag 17 maart 2023 @ 17:30:
[...]


Ik denk het wel. Je zal of moeten zorgen dat het IP6 adres ook geautoriseerd is in de software waarnaar je connect, of zorgen dat localhost alleen naar IP4v resolved.

Gebruik je DNS? Als je een interne DNS server hebt kan je het misschien daar aanpassen.
Geen DNS, dan op de pi in /etc/hosts kijken

BTW, het lijkt me dat je IPv6 niet (volledig) geconfigureerd hebt. Ik ook niet, maar heb het dan ook uit staan...
IPv6 disabled op de rpi en probleem was opgelost d:)b

2250 WP Zuid PVoutput


Acties:
  • +1Henk 'm!

  • jobr
  • Registratie: Januari 2009
  • Laatst online: 19:08
M.v.Veelen schreef op maandag 20 maart 2023 @ 20:32:

Vwb de plugin, ik kan 2 keer de plugins (met een afwijkende naam) toevoegen, dat is het probleem niet. Het IP adres is echt de juiste, het lukt alleen niet om op dezelfde manier als bij de 2.0 met de plugin in te loggen. Ik krijg dan:
Weet je wel heel zeker dat je https hebt gekozen in de plugin ipv http voor de SB 3.6 ? :) :)

[Voor 35% gewijzigd door jobr op 21-03-2023 20:24]


  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 22:04

Dylantje2

sorry Bricklayere here :-)

M.v.Veelen schreef op maandag 20 maart 2023 @ 20:32:
Hi beiden, dank voor de reacties. Een S0 meter is denk ik geen optie omdat mijn meterkast vol zit, er kan echt niets meer bij.

Vwb de plugin, ik kan 2 keer de plugins (met een afwijkende naam) toevoegen, dat is het probleem niet. Het IP adres is echt de juiste, het lukt alleen niet om op dezelfde manier als bij de 2.0 met de plugin in te loggen. Ik krijg dan:


[...]


Inloggen op de webpagina van de omvormer lukt dus wel, ook met exact dezelfde gegevens, dus wachtwoord is goed.

Details van de omvormers:

Sunny Boy

3.6
firmware 4.0.55.R
Naam SB3.6-1AV-41622
Webconnect 1.5.4.R

2.0
firmware 3.11.5.R
Naam SB2.0-1VL-40383
Webconnect 1.5.1.R

Het lukt me echter nu wel met onderstaand commando een reply te krijgen:

curl -k -H "Content-Type: application/json, Accept-Charset: UTF-8" -X POST -d '{"pass" : "MijnPass", "right" : "usr"}' https://192.168.0.20/dyn/login.json

Alleen, na paar keer deze regel ingegeven te hebben, zijn er teveel ingelogd en moet ik wachten tot ik weer in kan loggen. Goed om te weten.....
Mss een dunnele allamat vervangen voor een enkele.
of een kastje buiten je mk, waar je die panelen groep apart in zet.

Maar het was een idee/optie.

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


  • Dylantje2
  • Registratie: April 2007
  • Laatst online: 22:04

Dylantje2

sorry Bricklayere here :-)

bing69 schreef op dinsdag 21 maart 2023 @ 08:09:
[...]

Hier bijna hetzelfde alleen de Youless uploadt naar PVoutput
Youless past ook in domoticz geloof.

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


  • bing69
  • Registratie: December 2000
  • Laatst online: 16:06
Dylantje2 schreef op dinsdag 21 maart 2023 @ 22:25:
[...]


Youless past ook in domoticz geloof.
zeker en vast!

Bing

jobr schreef op dinsdag 21 maart 2023 @ 19:41:
[...]


Weet je wel heel zeker dat je https hebt gekozen in de plugin ipv http voor de SB 3.6 ? :) :)
Dit méén je niet. Wat ongelooflijk suf van me dat ik hier overheen heb gelezen!! |:( |:( |:(

Deze probeerde ik inderdaad met http (dat werkt bij de SB 2.0 namelijk wel) en ik heb er simpelweg nooit bij stilgestaan dat het voor de andere (SB 3.6) met https moest worden geprobeerd. Wat stom van me!

klikkerdeklik en ik ben ingelogd en heb nu beide omvormers keurig in m'n Domoticz staan.

Dankjewel voor deze duw in de goede richting, heel blij mee. Nu zorgen dat de juiste waardes naar PVOutput worden gestuurd want met SBFSpot zie ik toch wel wat afwijkingen.

Volgende stap is om te kijken of ik totalen kan krijgen en wat kan spelen met deze waardes. Tips zijn welkom :)

[Voor 22% gewijzigd door M.v.Veelen op 22-03-2023 09:35]

¯\_(ツ)_/¯

Ik heb nu een totaal onder "Zonnepanelen" die elke seconde zo'n beetje wordt geupdate omdat ik die dmv een dzVents scriptje laat meeveranderen met de 2 realtime devices SMA SB 2.0 garage en SMA SB 3.6 woning. Leuk, maar m'n log wordt nu wel volgeplempt met status updates die het script wegschrijft.

Wat zouden jullie doen om de juiste waardes naar PVOutput weg te schrijven, welk advies kunnen jullie me geven, want dan ga ik daar straks mee aan de slag zodat eindelijk de juiste waardes daar worden weggeschreven.

Thanks in advance!

¯\_(ツ)_/¯


  • de Peer
  • Registratie: Juli 2002
  • Nu online

de Peer

under peer review

M.v.Veelen schreef op woensdag 22 maart 2023 @ 11:03:
Ik heb nu een totaal onder "Zonnepanelen" die elke seconde zo'n beetje wordt geupdate omdat ik die dmv een dzVents scriptje laat meeveranderen met de 2 realtime devices SMA SB 2.0 garage en SMA SB 3.6 woning. Leuk, maar m'n log wordt nu wel volgeplempt met status updates die het script wegschrijft.

Wat zouden jullie doen om de juiste waardes naar PVOutput weg te schrijven, welk advies kunnen jullie me geven, want dan ga ik daar straks mee aan de slag zodat eindelijk de juiste waardes daar worden weggeschreven.

Thanks in advance!
Ik zou het 1 x per kwartier bijwerken ipv 1 x per seconde.

Tibber-klant, 20600 Wp, Atlantic Explorer V3, 3x Daikin airco, Nissan Leaf, Gasloos sinds 2018

Bijwerken van het Dummy device bedoel je? Dat is vrij eenvoudig.

Maar dan, hoe verder met PVOutput, wat stuur ik daar naartoe? Welke waarde pak ik dan?

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op woensdag 22 maart 2023 @ 12:23:
Bijwerken van het Dummy device bedoel je? Dat is vrij eenvoudig.

Maar dan, hoe verder met PVOutput, wat stuur ik daar naartoe? Welke waarde pak ik dan?
Wat wil je uploaden ? Per omvormer en dan samen via pvoutput naar een parent systeem(moet je wel donateur zijn), of alleen de totalen van beide omvormers?

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

Gewoon de totalen (dus niet apart) en dat dit dan nagenoeg overeenkomt met wat de app aangeeft.

[Voor 9% gewijzigd door M.v.Veelen op 22-03-2023 15:53]

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op woensdag 22 maart 2023 @ 15:52:
Gewoon de totalen (dus niet apart) en dat dit dan nagenoeg overeenkomt met wat de app aangeeft.
Dan zou ik de sensor zonnepanelen ieder minuut laten updaten door er een time script van te maken en dan ieder 5 minuten de 'now' en 'total' waarde naar PVOutput uploaden.

edit
Dit is mijn totaal script"
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
return {

    on = {
        timer = { 'every minute' }
    },
    
    execute = function(domoticz, item)
        
        local GrowattPower1 = domoticz.devices(103)      -- Growatt1 meter
        local GrowattPower2 = domoticz.devices(115)      -- Growatt2 meter
        local TotalPower = domoticz.devices(114)         -- TotaalPanelen
        
        TotalPower.updateElectricity(
                GrowattPower1.WhActual + GrowattPower2.WhActual,
                GrowattPower1.WhTotal + GrowattPower2.WhTotal
            )
        
    end 
}

[Voor 44% gewijzigd door klump4u op 22-03-2023 16:02]

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

klump4u schreef op woensdag 22 maart 2023 @ 16:00:
[...]

Dan zou ik de sensor zonnepanelen ieder minuut laten updaten door er een time script van te maken en dan ieder 5 minuten de 'now' en 'total' waarde naar PVOutput uploaden.
Hoe doe ik dat laatste?

Ik heb dit script:

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

        date = os.date("*t")
        if (date.min % 10 == 0) then
            solar = otherdevices_svalues['Zonnepanelen']
            now, total = solar:match("(%d+);(%d+)")
        --  print(solar..' '..now..' '..total)

        -- Upload data to PVoutput every 10 mins
            baseURL = "http://pvoutput.org/service/r2/addstatus.jsp?"
            SID = "9424"
            API = "331f3f6f1381e45d95fcef9fe179f5a806062c"
            PVO_URL = baseURL .. "sid=" .. SID .. "&key=" .. API .. "&d=" .. os.date("%Y%m%d") .. "&t=" .. os.date("%H:%M")
            PVO_URL = PVO_URL .. "&v1=" .. total .. "&v2=" .. now .. "&c1=1"
            --print(PVO_URL)
            commandArray['OpenURL'] = PVO_URL
        end
        
return commandArray


Heb ik dan een ander script nodig?

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op woensdag 22 maart 2023 @ 16:03:
[...]


Hoe doe ik dat laatste?

Ik heb dit script:

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

        date = os.date("*t")
        if (date.min % 10 == 0) then
            solar = otherdevices_svalues['Zonnepanelen']
            now, total = solar:match("(%d+);(%d+)")
        --  print(solar..' '..now..' '..total)

        -- Upload data to PVoutput every 10 mins
            baseURL = "http://pvoutput.org/service/r2/addstatus.jsp?"
            SID = "97424"
            API = "331f3f6f13181e45d95fcef9fe8179f5a806062c"
            PVO_URL = baseURL .. "sid=" .. SID .. "&key=" .. API .. "&d=" .. os.date("%Y%m%d") .. "&t=" .. os.date("%H:%M")
            PVO_URL = PVO_URL .. "&v1=" .. total .. "&v2=" .. now .. "&c1=1"
            --print(PVO_URL)
            commandArray['OpenURL'] = PVO_URL
        end
        
return commandArray


Heb ik dan een ander script nodig?
Gewoon proberen ;) maar 10 minuten op 5 zetten

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

Ik zal de timing aanpassen in ieder geval, maar omdat jij het over 2 waardes had vroeg ik me af of dit script dan wel de juiste is. Morgen eens kijken of de totalen in orde zijn.

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op woensdag 22 maart 2023 @ 16:12:
Ik zal de timing aanpassen in ieder geval, maar omdat jij het over 2 waardes had vroeg ik me af of dit script dan wel de juiste is. Morgen eens kijken of de totalen in orde zijn.
Ja klopt toch, de waarde now en total, staan ook in jou script.

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

Check. Ik upload nu elke 5 minuten beide waarden. Zal morgen met een schone lei starten, want zit nu rommel tussen. Ik heb trouwens exact hetzelfde script in gebruik als die jij hebt geplaatst om beide waardes bij elkaar op te tellen.

edit:

Volgens de app hebben de panelen op dit vroege uur 5,6kWh opgeleverd. Dat wijkt af van wat ik hieronder zie. Hoe kan dat?

Edit 2: ik dénk dat de app 1 uur achter loopt. Ik zie dat deze is bijgewerkt tot 10:30 en op dat moment was de opbrengst ook 5,8kWh, dus dat komt dan vrijwel overeen.

Klopt mijn aanname?



Antwoord op m'n eigen vraag:

De App geeft 20,2kWh aan en de virtuele sensor 20,170kWh (en PVOutput dus ook), dan zijn we er: de gegevens komen overeen :*)

Dank voor de hulp weer!

[Voor 88% gewijzigd door M.v.Veelen op 23-03-2023 19:19]

¯\_(ツ)_/¯

Volgende stap(je).

In PVOutput.org zou ik ook de 'energy used' (en 'power used' ?) willen uploaden. Dat is vast uit de 'Elektra' meter (p1) te halen, toch? Hoe zou ik onderstaand script dan aan moeten passen?

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

        date = os.date("*t")
        if (date.min % 5 == 0) then
            solar = otherdevices_svalues['Zonnepanelen']
            now, total = solar:match("(%d+);(%d+)")
        --  print(solar..' '..now..' '..total)

        -- Upload data to PVoutput every 5 mins
            baseURL = "http://pvoutput.org/service/r2/addstatus.jsp?"
            SID = "97224"
            API = "331f3f6f13181e45dhfe6fe8179f5a806062c"
            PVO_URL = baseURL .. "sid=" .. SID .. "&key=" .. API .. "&d=" .. os.date("%Y%m%d") .. "&t=" .. os.date("%H:%M")
            PVO_URL = PVO_URL .. "&v1=" .. total .. "&v2=" .. now .. "&c1=1"
            --print(PVO_URL)
            commandArray['OpenURL'] = PVO_URL
        end
        
return commandArray

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op zondag 26 maart 2023 @ 11:32:
Volgende stap(je).

In PVOutput.org zou ik ook de 'energy used' (en 'power used' ?) willen uploaden. Dat is vast uit de 'Elektra' meter (p1) te halen, toch? Hoe zou ik onderstaand script dan aan moeten passen?

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

        date = os.date("*t")
        if (date.min % 5 == 0) then
            solar = otherdevices_svalues['Zonnepanelen']
            now, total = solar:match("(%d+);(%d+)")
        --  print(solar..' '..now..' '..total)

        -- Upload data to PVoutput every 5 mins
            baseURL = "http://pvoutput.org/service/r2/addstatus.jsp?"
            SID = "97224"
            API = "331f3f6f13181e45dhfe6fe8179f5a806062c"
            PVO_URL = baseURL .. "sid=" .. SID .. "&key=" .. API .. "&d=" .. os.date("%Y%m%d") .. "&t=" .. os.date("%H:%M")
            PVO_URL = PVO_URL .. "&v1=" .. total .. "&v2=" .. now .. "&c1=1"
            --print(PVO_URL)
            commandArray['OpenURL'] = PVO_URL
        end
        
return commandArray
Waar solar staat hetzelfde toevoegen maar dan met de P1 sensor en bij de upload v3 en v4 ertussen zetten,
V3 is total en V4 is now.

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


  • asing
  • Registratie: Oktober 2001
  • Laatst online: 21:25
Ik heb gisteren mijn script compleet gemaakt. Ik kan nu mijn APSystems ECU-R PV systeem uitlezen. Dit zonder gebruik te maken van ModBus, PVOutput of plugin scripts. Ik scrape de web pagina's en stuur die vervolgens naar Domoticz toe.

Ik heb niet de behoefte om alle data te verzamelen, dus ik heb alleen de opbrengst, gemiddelde temperatuur van de omvormers en de gemiddelde netstpanning. Het script draait op mijn Ubuntu server maar kan ook op een Pi. Het is zo gemaakt dat het de ECU-R alleen uitleest tussen zonsopkomst en zonsondergang.

Iemand interesse?

Who's General Failure and why is he reading my harddrive? - Projectmanager : a person who thinks nine women can make one baby in one month


  • Heinemancp
  • Registratie: Maart 2011
  • Laatst online: 17:17
asing schreef op zondag 26 maart 2023 @ 12:11:
Ik heb gisteren mijn script compleet gemaakt. Ik kan nu mijn APSystems ECU-R PV systeem uitlezen. Dit zonder gebruik te maken van ModBus, PVOutput of plugin scripts. Ik scrape de web pagina's en stuur die vervolgens naar Domoticz toe.

Ik heb niet de behoefte om alle data te verzamelen, dus ik heb alleen de opbrengst, gemiddelde temperatuur van de omvormers en de gemiddelde netstpanning. Het script draait op mijn Ubuntu server maar kan ook op een Pi. Het is zo gemaakt dat het de ECU-R alleen uitleest tussen zonsopkomst en zonsondergang.

Iemand interesse?
zeker, ik krijg APsystems op mijn dak - ik zag de stappen voor integratie en ik denk dat jouw script veel netter / beheersbaarder is.

Acties:
  • +1Henk 'm!

  • asing
  • Registratie: Oktober 2001
  • Laatst online: 21:25
Heinemancp schreef op zondag 26 maart 2023 @ 12:12:
[...]

zeker, ik krijg APsystems op mijn dak - ik zag de stappen voor integratie en ik denk dat jouw script veel netter / beheersbaarder is.
Goed plan, hier doen ze het prima. Ook met dit sombere weer.

Anyway, het script bestaat uit twee delen. Ik had er 1 script van kunnen maken maar ik heb geen Python achtergrond. Wel heb ik jaren geleden Pascal en C++ moeten leren op school. Heel netjes is het niet, maar het werkt wel goed.

Deel 1 van de inspiratie : https://www.bjorn-meijer....en-apsystems-in-domoticz/
Deel 2 van de inspitatie : https://github.com/daanvd...blob/main/ecu2pvoutput.py

Als eerste een scriptje wat ik iedere 5 min draai (Cron job)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/python

import urllib.request, json, time, datetime, os


with urllib.request.urlopen("http://DOMOTICZ_IP:8080/json.htm?type=command&param=getSunRiseSet") as url:  <=== CHANGE ME
    data = json.load(url)
    sunrise = data["Sunrise"]
    sunset = data["Sunset"] 
    sunrise_time = time.strptime(sunrise,'%H:%M')
    sunset_time = time.strptime(sunset, '%H:%M')
    t = time.localtime()
    current_time = time.strftime("%H:%M", t)
    ct = time.strptime(current_time, '%H:%M')
    if sunrise_time <= ct <= sunset_time:
       #print ('It is in between')
       os.system("/pad/naar/script//apsystems.py")  <=== CHANGE ME


Het enige wat dit script doet is het opvragen van de tijden van Domoticz, van belang zijn sunrise en sunset. Werken met datum en tijd in scripts is altijd een dingetje omdat computers nu eenmaal tijd omzetten in een getal wat voor ons mensen onwerkbaar is. Anyway, het vereist wat werk om te zorgen dat je tijden kan vergelijken.

Als het dag is (tussen sunrise en sunset) wordt het volgende script uitgevoerd. Dat heeft geen zin als de inverters slapen, dan krijg je alleen maar errrors.

Zorg er wel voor dat het volgende script execute rechten heeft (chmod +x).

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
#!/usr/bin/python3

#Load required modules
from bs4 import BeautifulSoup
import requests
import urllib.request
from lxml.html import fromstring
import re
import csv
import pandas as pd
from datetime import datetime
from statistics import mean

urldomo = "http://DOMOTICZ_IP:8080/json.htm?" <=== CHANGE ME
puntcomma = "\u003B"

url1 = "http://ECU-R_IP/index.php/display/historical_data" <=== CHANGE ME

#Basic Vars
page = requests.get(url1)
soup = BeautifulSoup(page.text,features="lxml")
table = soup.find_all('table')[0]
tmp = table.find_all('tr')

# fix_rowspan
first = tmp[0]
allRows = tmp[1:len(tmp)]
headers = [header.get_text() for header in first.find_all('th')]
results = [[data.get_text() for data in row.find_all('td')] for row in allRows]
rowspan = []

# Collect Total Generated Solar Power
for result in results:
    TPD = float(result[1])
    TPD = TPD * 1000
    lifetime_energy = str(TPD)


# Collect Real-Time Data from ECU-R

url2 = "http://ECU-R_IP/index.php/realtimedata" <=== CHANGE ME

#Basic Vars
page = requests.get(url2)
soup = BeautifulSoup(page.text,features="lxml")
table = soup.find_all('table')[0]
tmp = table.find_all('tr')

# fix_rowspan
first = tmp[0]
allRows = tmp[1:len(tmp)]
headers = [header.get_text() for header in first.find_all('th')]
results = [[data.get_text() for data in row.find_all('td')] for row in allRows]
rowspan = []

for no, tr in enumerate(allRows):
    tmp = []
    for td_no, data in enumerate(tr.find_all('td')):
        if data.has_attr("rowspan"):
            rowspan.append((no, td_no, int(data["rowspan"]), data.get_text()))

if rowspan:
    for i in rowspan:
        # tr value of rowspan in present in 1th place in results
        for j in range(1, i[2]):
            #- Add value in next tr.
            results[i[0]+j].insert(i[1], i[3])

#Looping through the table
res1 = []
res4 = []
res5 = []
for result in results:
    for i in result[1].split(): 
        if i.isdigit():
            res1.append(int(i))
    for voltage in result[4].split():
        if voltage.isdigit():
            res4.append(int(voltage))
    for temp in result[5].split():
        if temp.isdigit():
            res5.append(int(temp))

#Combine results
avgtemp = mean(res5)
avgvoltage = mean(res4)
current_power = format(sum(res1))
averagetemp = round(avgtemp)
averagevoltage = round(avgvoltage)

#Print it!
print("Summary:")
print("Total power:",current_power)
print("Avarage inverter temp:",averagetemp)
print("Average inverter voltage:",averagevoltage)

# Upload it! <=== CHANGE INDEXES BELOW
generated_energy = (current_power + puntcomma + lifetime_energy)
print("Generated Energy:",generated_energy)

getVars = {'type' : 'command', 'param' : 'udevice', 'nvalue' : 0, 'idx': 278, 'svalue': (generated_energy)}
webUrl = urllib.request.urlopen(urldomo + urllib.parse.urlencode(getVars))

getVars = {'type' : 'command', 'param' : 'udevice', 'nvalue' : 0, 'idx': 279, 'svalue': (averagetemp)}
webUrl = urllib.request.urlopen(urldomo + urllib.parse.urlencode(getVars))

getVars = {'type' : 'command', 'param' : 'udevice', 'nvalue' : 0, 'idx': 280, 'svalue': (averagevoltage)}
webUrl = urllib.request.urlopen(urldomo + urllib.parse.urlencode(getVars))


Alles wat dikgedrukt is moet je even aanpassen naar je eigen waarden.

Who's General Failure and why is he reading my harddrive? - Projectmanager : a person who thinks nine women can make one baby in one month

klump4u schreef op zondag 26 maart 2023 @ 11:59:
[...]

Waar solar staat hetzelfde toevoegen maar dan met de P1 sensor en bij de upload v3 en v4 ertussen zetten,
V3 is total en V4 is now.
Kun je iets uitgebreider uitleggen hoe? Ik kan het script zelf niet goed doorgronden en wil de boel niet om zeep helpen.

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op zondag 26 maart 2023 @ 13:41:
[...]


Kun je iets uitgebreider uitleggen hoe? Ik kan het script zelf niet goed doorgronden en wil de boel niet om zeep helpen.
Hier hoef je toch echt geen hogere wiskunde voor te hebben, maar allee
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
commandArray = {}

        date = os.date("*t")
        if (date.min % 5 == 0) then
            solar = otherdevices_svalues['Zonnepanelen']
            now, total = solar:match("(%d+);(%d+)")
        --  print(solar..' '..now..' '..total)
            energy = otherdevices_svalues['jouwP1Sensornaam']
            now1, total1 = energy:match("(%d+);(%d+)")
        --  print(energy..' '..now1..' '..total1) 

        -- Upload data to PVoutput every 5 mins
            baseURL = "http://pvoutput.org/service/r2/addstatus.jsp?"
            SID = "97224"
            API = "331f3f6f13181e45dhfe6fe8179f5a806062c"
            PVO_URL = baseURL .. "sid=" .. SID .. "&key=" .. API .. "&d=" .. os.date("%Y%m%d") .. "&t=" .. os.date("%H:%M")
            PVO_URL = PVO_URL .. "&v1=" .. total .. "&v2=" .. now .. "&v3=" .. total1 .. "&v4=" .. now1 .. "&c1=1"
            --print(PVO_URL)
            commandArray['OpenURL'] = PVO_URL
        end
        
return commandArray

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

Dankjewel,

ik heb in jouw opzetje dit aangepast:

now1, total1 = energy:match("(%d+);(%d+)")

Maar er wordt niets weggeschreven in de kolommen 'Power used' en 'Energy used', ik kijk even in het log wat de waardes zijn.

Kan het zijn dat now1, total1 = energy:match("(%d+);(%d+)") verder uitgesplitst moet worden?

Edit:

Dit is wat ik zie in het log:


2023-03-26 15:35:00.350 Status: LUA: http://pvoutput.org/servi...15825384&v4=16256756&c1=1

2023-03-26 15:35:00.350 Status: EventSystem: Fetching URL http://pvoutput.org/servi...15825384&v4=16256756&c1=1 after 0.2 seconds...

[Voor 40% gewijzigd door M.v.Veelen op 26-03-2023 15:38]

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op zondag 26 maart 2023 @ 15:19:
Dankjewel,

ik heb in jouw opzetje dit aangepast:

now1, total1 = energy:match("(%d+);(%d+)")

Maar er wordt niets weggeschreven in de kolommen 'Power used' en 'Energy used', ik kijk even in het log wat de waardes zijn.

Kan het zijn dat now1, total1 = energy:match("(%d+);(%d+)") verder uitgesplitst moet worden?

Edit:

Dit is wat ik zie in het log:


2023-03-26 15:35:00.350 Status: LUA: http://pvoutput.org/servi...15825384&v4=16256756&c1=1

2023-03-26 15:35:00.350 Status: EventSystem: Fetching URL http://pvoutput.org/servi...15825384&v4=16256756&c1=1 after 0.2 seconds...
Klopt je api key?
Doet hij de zonnepanelen wel uploaden?

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

klump4u schreef op zondag 26 maart 2023 @ 17:33:
[...]

Klopt je api key?
Doet hij de zonnepanelen wel uploaden?
Jazeker, alles is nog steeds in orde vwb de waardes van de zonnepanelen, ik zie alleen niet de waardes die toegevoegd zijn verschijnen in PVOutput.org

[Voor 34% gewijzigd door M.v.Veelen op 26-03-2023 21:03]

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op zondag 26 maart 2023 @ 21:02:
[...]


Jazeker, alles is nog steeds in orde vwb de waardes van de zonnepanelen, ik zie alleen niet de waardes die toegevoegd zijn verschijnen in PVOutput.org
Haal eens de 2 -- weg voor print, dan kun je in de log van domoticz zien of er een waarde is.
Naam van sensor van de P1 ook ingevuld?

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.

klump4u schreef op zondag 26 maart 2023 @ 21:05:
[...]

Haal eens de 2 -- weg voor print, dan kun je in de log van domoticz zien of er een waarde is.
Naam van sensor van de P1 ook ingevuld?
Ja, de sensor heet simpelweg Elektra en heb ik exact zo overgenomen. Er verschijnen wel waardes in het log:

URL....http://pvoutput.org/service/r2/addstatus.jsp?sid=MIJN_SID&key=MIJN_API&d=20230326&t=21:05&v1=213211&v2=0&v3=15825384&v4=16260023&c1=1

de waardes van de zonnepanelen:

2023-03-26 21:05:00.476 Status: LUA: 0.0;213211.0 0 213211

De waardes van Elektra:

2023-03-26 21:05:00.476 Status: LUA: 16260023;15825384;57880;101233;442;0 16260023 15825384

[Voor 28% gewijzigd door M.v.Veelen op 26-03-2023 21:10]

¯\_(ツ)_/¯


  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

14400Wp Zuid-Limburg

M.v.Veelen schreef op zondag 26 maart 2023 @ 21:08:
[...]


Ja, de sensor heet simpelweg Elektra en heb ik exact zo overgenomen. Er verschijnen wel waardes in het log:

URL....http://pvoutput.org/service/r2/addstatus.jsp?sid=MIJN_SID&key=MIJN_API&d=20230326&t=21:05&v1=213211&v2=0&v3=15825384&v4=16260023&c1=1

de waardes van de zonnepanelen:

2023-03-26 21:05:00.476 Status: LUA: 0.0;213211.0 0 213211

De waardes van Elektra:

2023-03-26 21:05:00.476 Status: LUA: 16260023;15825384;57880;101233;442;0 16260023 15825384

[Afbeelding]
Sorry, de P1 sensor heeft niet de 2 waardes Now en Total, dat is alleen bij een kWh counter, die heeft maar 2 waardes, mijn fout.
De P1 heeft 6 waardes.
Dan moet je zoeken op het Domoticz forum of zo. Hier kan ik je verder niet mee helpen

14400Wp🌞Live, Atlantic Explorer 270V3💧Live, Pana-mono WP5🔥Live.


Acties:
  • +1Henk 'm!

  • bing69
  • Registratie: December 2000
  • Laatst online: 16:06
M.v.Veelen schreef op zondag 26 maart 2023 @ 21:08:
[...]


Ja, de sensor heet simpelweg Elektra en heb ik exact zo overgenomen. Er verschijnen wel waardes in het log:

URL....http://pvoutput.org/service/r2/addstatus.jsp?sid=MIJN_SID&key=MIJN_API&d=20230326&t=21:05&v1=213211&v2=0&v3=15825384&v4=16260023&c1=1

de waardes van de zonnepanelen:

2023-03-26 21:05:00.476 Status: LUA: 0.0;213211.0 0 213211

De waardes van Elektra:

2023-03-26 21:05:00.476 Status: LUA: 16260023;15825384;57880;101233;442;0 16260023 15825384

[Afbeelding]
Weet niet of je er iets aan hebt maar ik gebruik (niet van mij hoor) dit script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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
--[[
        dzVents version of pvOutput script.
pvOutput.lua downloaded van https://www.huizebruin.nl/domoticz/pvoutput-systeem-koppelen-aan-domoticz-v2020-1/
Bron : https://domoticz.com/forum/viewtopic.php?f=61&t=4714&start=100

Om een functie aan of uit te zetten haal of plaats de 2 streepjes voor de regel weg.

        api-key and id stored in domoticz uservariables:

            PVoutput_API     
           PVSettings.api

        both as type string

        v1 - energy generated
        v2 - power generated            W from 
        v3 - energy consumption
        v4 - power consumption
        v5 - temperature
        v6 - voltage

        c1 - Cumulatieve vlag 1 Zowel v1- als v3-waarden zijn levenslange energiewaarden.
Het verbruik en de opgewekte energie worden aan het begin van de dag op 0 gezet. 
2 Alleen v1 gegenereerd is een levenslange energiewaarde. 
3 Alleen v3-verbruik is een levenslange energiewaarde.

        
        n  - Net flag          Indien ingesteld op 1, geeft dit aan dat de vermogenswaarden netto export / import zijn.
                                in plaats van bruto gegenereerd / verbruik. 
            Deze optie wordt gebruikt voor apparaten die dat wel zijn niet in staat om bruto consumptiegegevens te rapporteren. 
            De verstrekte import- / exportgegevens worden samengevoegd met bestaande gegenereerde gegevens om het verbruik af te leiden.

        Donation mode only parms
        ========================
        '&delay=' .. Delay
        '&v7=' .. WaterConsumption
        '&v8=' .. InverterFrequency
        '&v11=' .. InverterTemp
        '&v12=' .. GasConsumption

]]

local scriptVar = 'PVOutput'

return 
{
    on =    
    { 
        timer = 
        { 
            'every 5 minutes', --om de 10 minuten is voor mij voldoende
        },
        httpResponses = 
        { 
            scriptVar,
        },
    },
 
    logging =    
    {   
        level = domoticz.LOG_DEBUG, -- change to LOG_ERROR when OK - was LOG_DEBUG
        marker = scriptVar,
    },

    execute = function(dz, item)

        local function post2PVOutput(PVSettings, postData)
            dz.openURL({
                url = PVSettings.url,
                method = 'POST',
                headers = {
                    ['X-Pvoutput-Apikey'] = PVSettings.api,
                    ['X-Pvoutput-SystemId'] = PVSettings.id
                },
                callback = scriptVar,
                postData = postData
            })
        end

        local function makepostData()
        local P1 = dz.devices('Power')                   -- P1-Slimme meter\
        local generated = dz.devices('Youless')           -- Uitvoer van S0 meter omvormer\
  --      local generated = dz.devices('Youless').counterDeliveredToday
  --    local consumed = dz.devices('Consumption')          -- Verbruik virtueel apparaat \
        local temperature = dz.devices('Openweather')       -- Temperatuur sensor \
  --    local voltageDevice = dz.devices('uac1')            --  Voltage meting van \
        local round = dz.utils.round

       --     local voltageString = voltageDevice.sValue
       --    local voltage = round(tonumber(voltageString:match('%d*%.*%d*')),1) -- To prevent error if 'V' is part of the string
                        
            dz.log('P1         : ' .. P1.sValue,dz.LOG_DEBUG)
       --     dz.log('generated  : ' .. generated.nValue .. ';' .. generated.sValue,dz.LOG_DEBUG)
      --      dz.log('consumed   : ' .. consumed.nValue .. ';' .. consumed.sValue,dz.LOG_DEBUG)
            dz.log('Temperature: ' .. temperature.temperature,dz.LOG_DEBUG)
       --     dz.log('voltage    : ' .. voltage,dz.LOG_DEBUG)
            
            local postdDataAsString = 
                    'd=' .. os.date("%Y%m%d") ..
                    '&t=' .. os.date("%H:%M") .. 
                    
                    -- Gebruik deze als u netto productie van zonnepanelen wilt
             --       '&v1=' .. round(generated.WhTotal,1) ..  -- produced
             --       '&v2=' .. round(generated.actualWatt,1) ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor teruggave
                    -- '&v1=' .. P1.return1 + P1.return2 ..  -- returned to the grid
                    -- '&v2=' .. P1.usageDelivered ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor gebruik
                     '&v3=' .. P1.usage1 + P1.usage2 .. -- net values from your smart meter
                    -- '&v4=' .. P1.usage ..
                    
                    -- Gebruik deze als je wilt wat er wordt berekend
                   -- '&v3=' .. round(consumed.WhTotal,1) .. -- consumed 
                   -- '&v4=' .. round(consumed.actualWatt,1) ..
                       
                   -- Gebruik deze als je temperatuur en je voltage wilt uploaden
                    '&v5=' .. round(temperature.temperature,1) .. 
                   -- '&v6=' .. voltage ..

                    '&c1=1'

            return postdDataAsString
        end

        --hieronder hoef je niets te wijzigen

        if item.isHTTPResponse then
            dz.log("Return from PVOutput ==>> " .. item.data,dz.LOG_FORCE)
        else
            PVSettings = 
            {
            url = 'HTTPS://pvoutput.org/service/r2/addstatus.jsp',
            api = dz.variables('PVoutput_API').value,
            id  = dz.variables('PVoutput_ID').value,
            }
            post2PVOutput(PVSettings, makepostData())
        end
    end
}

Bing

bing69 schreef op maandag 27 maart 2023 @ 08:47:
[...]


Weet niet of je er iets aan hebt maar ik gebruik (niet van mij hoor) dit script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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
--[[
        dzVents version of pvOutput script.
pvOutput.lua downloaded van https://www.huizebruin.nl/domoticz/pvoutput-systeem-koppelen-aan-domoticz-v2020-1/
Bron : https://domoticz.com/forum/viewtopic.php?f=61&t=4714&start=100

Om een functie aan of uit te zetten haal of plaats de 2 streepjes voor de regel weg.

        api-key and id stored in domoticz uservariables:

            PVoutput_API     
           PVSettings.api

        both as type string

        v1 - energy generated
        v2 - power generated            W from 
        v3 - energy consumption
        v4 - power consumption
        v5 - temperature
        v6 - voltage

        c1 - Cumulatieve vlag 1 Zowel v1- als v3-waarden zijn levenslange energiewaarden.
Het verbruik en de opgewekte energie worden aan het begin van de dag op 0 gezet. 
2 Alleen v1 gegenereerd is een levenslange energiewaarde. 
3 Alleen v3-verbruik is een levenslange energiewaarde.

        
        n  - Net flag          Indien ingesteld op 1, geeft dit aan dat de vermogenswaarden netto export / import zijn.
                                in plaats van bruto gegenereerd / verbruik. 
            Deze optie wordt gebruikt voor apparaten die dat wel zijn niet in staat om bruto consumptiegegevens te rapporteren. 
            De verstrekte import- / exportgegevens worden samengevoegd met bestaande gegenereerde gegevens om het verbruik af te leiden.

        Donation mode only parms
        ========================
        '&delay=' .. Delay
        '&v7=' .. WaterConsumption
        '&v8=' .. InverterFrequency
        '&v11=' .. InverterTemp
        '&v12=' .. GasConsumption

]]

local scriptVar = 'PVOutput'

return 
{
    on =    
    { 
        timer = 
        { 
            'every 5 minutes', --om de 10 minuten is voor mij voldoende
        },
        httpResponses = 
        { 
            scriptVar,
        },
    },
 
    logging =    
    {   
        level = domoticz.LOG_DEBUG, -- change to LOG_ERROR when OK - was LOG_DEBUG
        marker = scriptVar,
    },

    execute = function(dz, item)

        local function post2PVOutput(PVSettings, postData)
            dz.openURL({
                url = PVSettings.url,
                method = 'POST',
                headers = {
                    ['X-Pvoutput-Apikey'] = PVSettings.api,
                    ['X-Pvoutput-SystemId'] = PVSettings.id
                },
                callback = scriptVar,
                postData = postData
            })
        end

        local function makepostData()
        local P1 = dz.devices('Power')                   -- P1-Slimme meter\
        local generated = dz.devices('Youless')           -- Uitvoer van S0 meter omvormer\
  --      local generated = dz.devices('Youless').counterDeliveredToday
  --    local consumed = dz.devices('Consumption')          -- Verbruik virtueel apparaat \
        local temperature = dz.devices('Openweather')       -- Temperatuur sensor \
  --    local voltageDevice = dz.devices('uac1')            --  Voltage meting van \
        local round = dz.utils.round

       --     local voltageString = voltageDevice.sValue
       --    local voltage = round(tonumber(voltageString:match('%d*%.*%d*')),1) -- To prevent error if 'V' is part of the string
                        
            dz.log('P1         : ' .. P1.sValue,dz.LOG_DEBUG)
       --     dz.log('generated  : ' .. generated.nValue .. ';' .. generated.sValue,dz.LOG_DEBUG)
      --      dz.log('consumed   : ' .. consumed.nValue .. ';' .. consumed.sValue,dz.LOG_DEBUG)
            dz.log('Temperature: ' .. temperature.temperature,dz.LOG_DEBUG)
       --     dz.log('voltage    : ' .. voltage,dz.LOG_DEBUG)
            
            local postdDataAsString = 
                    'd=' .. os.date("%Y%m%d") ..
                    '&t=' .. os.date("%H:%M") .. 
                    
                    -- Gebruik deze als u netto productie van zonnepanelen wilt
             --       '&v1=' .. round(generated.WhTotal,1) ..  -- produced
             --       '&v2=' .. round(generated.actualWatt,1) ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor teruggave
                    -- '&v1=' .. P1.return1 + P1.return2 ..  -- returned to the grid
                    -- '&v2=' .. P1.usageDelivered ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor gebruik
                     '&v3=' .. P1.usage1 + P1.usage2 .. -- net values from your smart meter
                    -- '&v4=' .. P1.usage ..
                    
                    -- Gebruik deze als je wilt wat er wordt berekend
                   -- '&v3=' .. round(consumed.WhTotal,1) .. -- consumed 
                   -- '&v4=' .. round(consumed.actualWatt,1) ..
                       
                   -- Gebruik deze als je temperatuur en je voltage wilt uploaden
                    '&v5=' .. round(temperature.temperature,1) .. 
                   -- '&v6=' .. voltage ..

                    '&c1=1'

            return postdDataAsString
        end

        --hieronder hoef je niets te wijzigen

        if item.isHTTPResponse then
            dz.log("Return from PVOutput ==>> " .. item.data,dz.LOG_FORCE)
        else
            PVSettings = 
            {
            url = 'HTTPS://pvoutput.org/service/r2/addstatus.jsp',
            api = dz.variables('PVoutput_API').value,
            id  = dz.variables('PVoutput_ID').value,
            }
            post2PVOutput(PVSettings, makepostData())
        end
    end
}
Ik ga daar eens naar kijken. Het gekke is dat sinds vanochtend wel waardes doorkomen in PVOutput.org, ik zit alleen op m'n werk en kan zo niet zien of dit wel juist is:

¯\_(ツ)_/¯


  • MikeyMan
  • Registratie: Februari 2003
  • Laatst online: 22:40

MikeyMan

Vidi, Vici, Veni

bing69 schreef op maandag 27 maart 2023 @ 08:47:
[...]


Weet niet of je er iets aan hebt maar ik gebruik (niet van mij hoor) dit script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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
--[[
        dzVents version of pvOutput script.
pvOutput.lua downloaded van https://www.huizebruin.nl/domoticz/pvoutput-systeem-koppelen-aan-domoticz-v2020-1/
Bron : https://domoticz.com/forum/viewtopic.php?f=61&t=4714&start=100

Om een functie aan of uit te zetten haal of plaats de 2 streepjes voor de regel weg.

        api-key and id stored in domoticz uservariables:

            PVoutput_API     
           PVSettings.api

        both as type string

        v1 - energy generated
        v2 - power generated            W from 
        v3 - energy consumption
        v4 - power consumption
        v5 - temperature
        v6 - voltage

        c1 - Cumulatieve vlag 1 Zowel v1- als v3-waarden zijn levenslange energiewaarden.
Het verbruik en de opgewekte energie worden aan het begin van de dag op 0 gezet. 
2 Alleen v1 gegenereerd is een levenslange energiewaarde. 
3 Alleen v3-verbruik is een levenslange energiewaarde.

        
        n  - Net flag          Indien ingesteld op 1, geeft dit aan dat de vermogenswaarden netto export / import zijn.
                                in plaats van bruto gegenereerd / verbruik. 
            Deze optie wordt gebruikt voor apparaten die dat wel zijn niet in staat om bruto consumptiegegevens te rapporteren. 
            De verstrekte import- / exportgegevens worden samengevoegd met bestaande gegenereerde gegevens om het verbruik af te leiden.

        Donation mode only parms
        ========================
        '&delay=' .. Delay
        '&v7=' .. WaterConsumption
        '&v8=' .. InverterFrequency
        '&v11=' .. InverterTemp
        '&v12=' .. GasConsumption

]]

local scriptVar = 'PVOutput'

return 
{
    on =    
    { 
        timer = 
        { 
            'every 5 minutes', --om de 10 minuten is voor mij voldoende
        },
        httpResponses = 
        { 
            scriptVar,
        },
    },
 
    logging =    
    {   
        level = domoticz.LOG_DEBUG, -- change to LOG_ERROR when OK - was LOG_DEBUG
        marker = scriptVar,
    },

    execute = function(dz, item)

        local function post2PVOutput(PVSettings, postData)
            dz.openURL({
                url = PVSettings.url,
                method = 'POST',
                headers = {
                    ['X-Pvoutput-Apikey'] = PVSettings.api,
                    ['X-Pvoutput-SystemId'] = PVSettings.id
                },
                callback = scriptVar,
                postData = postData
            })
        end

        local function makepostData()
        local P1 = dz.devices('Power')                   -- P1-Slimme meter\
        local generated = dz.devices('Youless')           -- Uitvoer van S0 meter omvormer\
  --      local generated = dz.devices('Youless').counterDeliveredToday
  --    local consumed = dz.devices('Consumption')          -- Verbruik virtueel apparaat \
        local temperature = dz.devices('Openweather')       -- Temperatuur sensor \
  --    local voltageDevice = dz.devices('uac1')            --  Voltage meting van \
        local round = dz.utils.round

       --     local voltageString = voltageDevice.sValue
       --    local voltage = round(tonumber(voltageString:match('%d*%.*%d*')),1) -- To prevent error if 'V' is part of the string
                        
            dz.log('P1         : ' .. P1.sValue,dz.LOG_DEBUG)
       --     dz.log('generated  : ' .. generated.nValue .. ';' .. generated.sValue,dz.LOG_DEBUG)
      --      dz.log('consumed   : ' .. consumed.nValue .. ';' .. consumed.sValue,dz.LOG_DEBUG)
            dz.log('Temperature: ' .. temperature.temperature,dz.LOG_DEBUG)
       --     dz.log('voltage    : ' .. voltage,dz.LOG_DEBUG)
            
            local postdDataAsString = 
                    'd=' .. os.date("%Y%m%d") ..
                    '&t=' .. os.date("%H:%M") .. 
                    
                    -- Gebruik deze als u netto productie van zonnepanelen wilt
             --       '&v1=' .. round(generated.WhTotal,1) ..  -- produced
             --       '&v2=' .. round(generated.actualWatt,1) ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor teruggave
                    -- '&v1=' .. P1.return1 + P1.return2 ..  -- returned to the grid
                    -- '&v2=' .. P1.usageDelivered ..
                    
                    -- Gebruik deze als u wilt dat je de gegevens van je slimme meter wilt gebruiken voor gebruik
                     '&v3=' .. P1.usage1 + P1.usage2 .. -- net values from your smart meter
                    -- '&v4=' .. P1.usage ..
                    
                    -- Gebruik deze als je wilt wat er wordt berekend
                   -- '&v3=' .. round(consumed.WhTotal,1) .. -- consumed 
                   -- '&v4=' .. round(consumed.actualWatt,1) ..
                       
                   -- Gebruik deze als je temperatuur en je voltage wilt uploaden
                    '&v5=' .. round(temperature.temperature,1) .. 
                   -- '&v6=' .. voltage ..

                    '&c1=1'

            return postdDataAsString
        end

        --hieronder hoef je niets te wijzigen

        if item.isHTTPResponse then
            dz.log("Return from PVOutput ==>> " .. item.data,dz.LOG_FORCE)
        else
            PVSettings = 
            {
            url = 'HTTPS://pvoutput.org/service/r2/addstatus.jsp',
            api = dz.variables('PVoutput_API').value,
            id  = dz.variables('PVoutput_ID').value,
            }
            post2PVOutput(PVSettings, makepostData())
        end
    end
}
Ook maar eens naar kijken. Na het bijplaatsen van een tweede omvormer, klopt er weinig meer van m'n PVOutput.
Pagina: 1 ... 38 39 40 Laatste

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!

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee