Giter VIP home page Giter VIP logo

mr-manuel / venus-os_dbus-enphase-envoy Goto Github PK

View Code? Open in Web Editor NEW
12.0 5.0 2.0 569 KB

This Venus OS driver gets the data from the Enphase Envoy-S and displays it as PV Inverter. It works for all phase combinations. Additionally it's possible to post the data to multiple MQTT topics to get more detailed informations/monitoring for the Enphase system and single inverters.

License: MIT License

Python 98.83% Shell 1.17%
enphase envoy inverter iq mqtt pv solar solar-energy venusos venusos-device

venus-os_dbus-enphase-envoy's People

Contributors

mr-manuel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

venus-os_dbus-enphase-envoy's Issues

Production Values Incorrect

Thank you so much for this package. Works super well and saves me buying an ET112 🙏🏻.

One small issue - if / when the script is disconnected from the Envoy and then gets reconnected (assume bad WiFi on Envoy), it seems to load the EnPhase system’s full (lifetime) production values (27kwh in my case). It then reflects in VRM as if that 27kwh was produced in that moment in time. It does this every time it gets disconnected and reconnects (as a result of poor WiFi this has happened 5 times today). As a result, my solar production and values for today are wildly inaccurate (over 150kwh of production being reported where only around 30kwh has in reality been produced).

Would be awesome if it might be possible to fix this bug.

No device

Hi Mr-Manuel,

I'm running venus 2.93 and tried your application but I cannot get it to work.

  • 2023-02-18 14:10:20.247941500 *** starting dbus-enphase-envoy ***
  • /service/dbus-enphase-envoy: up (pid 1864) 12400 seconds
  • When enabling MQTT I see perfect the enphase json info with MQTT explorer.
  • I don't see any new device in venus GUI, no 'PV inverter', or 'enphase PV'

Anything I could check?

HTTP 401 errors - owner token

Hello,

This is a great project!!!

I'm at a bit of a loss here -- when running enphase-envoy code on Venus OS 3.10~38, RPi 3B+., the log file is showing 'Received HTTP status code 401'. The enphase-envoy code does not click through this warning.

On my Windows Chrome/Edge browsers, I can click-through the "Your connection is not private...", ERR_CERT_AUTHORITY_INVALID and the page redirects to the Enphase home https[Enphase IP]/home#overview. If I open https://10.10.0.239:443/production.json?details=1, I get a page of production json,

{"production":[{"type":"inverters","activeCount":15,"readingTime":0,"wNow":0,"whLifetime":798107},{"type":"eim","activeCount":1,"measurementType":"production","readingTime":1695043269,"wNow":-0.0,"whLifetime":1855744.91,"varhLeadLifetime":......  

Your dbus-enphse-envoy code is very close to working. Is there a way to ignore the 401 security warning and continue and add the proper https authentication?

Excerpt from log file,

2023-09-18 13:08:31.681029500 *** starting dbus-enphase-envoy ***
2023-09-18 13:08:34.497445500 ERROR:root:D7 firmware selected
2023-09-18 13:08:34.508175500 INFO:root:step: tokenManager
2023-09-18 13:08:34.508987500 INFO:root:--> token still empty
2023-09-18 13:08:34.510508500 INFO:root:EnphaseToken: Token still valid. Creation date 2023-09-18 12:56:48 UTC
2023-09-18 13:08:35.511982500 INFO:root:step: fetch_handler
2023-09-18 13:08:35.512477500 INFO:root:step: fetch_production_historic
2023-09-18 13:08:35.521729500 INFO:root:--> data_production_historic not yet ready
2023-09-18 13:08:35.528809500 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): 10.10.0.239:443
2023-09-18 13:08:36.207748500 DEBUG:urllib3.connectionpool:https://10.10.0.239:443 "GET /production.json?details=1 HTTP/1.1" 200 None
2023-09-18 13:08:36.219330500 INFO:root:--> fetch_handler() --> fetch_production_historic(): JSON data feched. Wait 3600 seconds for next run
2023-09-18 13:08:36.529936500 INFO:root:step: fetch_meter_stream
2023-09-18 13:08:36.530771500 INFO:root:--> data_meter_stream not yet ready
2023-09-18 13:08:36.542614500 DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): 10.10.0.239:443
2023-09-18 13:08:36.828011500 DEBUG:urllib3.connectionpool:https://10.10.0.239:443 "GET /stream/meter HTTP/1.1" 401 555
2023-09-18 13:08:36.831502500 ERROR:root:--> fetch_meter_stream(): Received HTTP status code 401. Restarting the driver in 60 seconds.
2023-09-18 13:08:37.540739500 INFO:root:--> data_meter_stream not yet ready

Thank you,
Don

no data received

Hello,

script installed according your install notes. Now I receive this in console;

2023-11-27 14:44:47.433530500 *** starting dbus-enphase-envoy ***
2023-11-27 14:44:51.400052500 ERROR:root:D7 firmware selected
2023-11-27 14:44:51.414963500 INFO:root:step: tokenManager
2023-11-27 14:44:51.416468500 INFO:root:--> token still empty
2023-11-27 14:44:51.419106500 INFO:root:EnphaseToken: Token still valid. Creation date 2023-11-27 07:55:49 UTC
2023-11-27 14:44:52.420219500 INFO:root:step: fetch_handler
2023-11-27 14:44:52.422053500 INFO:root:--> data_production_historic not yet ready
2023-11-27 14:44:52.422477500 INFO:root:step: fetch_production_historic
2023-11-27 14:44:53.424203500 INFO:root:--> data_production_historic not yet ready
2023-11-27 14:44:54.432183500 INFO:root:--> data_production_historic not yet ready
2023-11-27 14:44:55.433401500 INFO:root:--> data_production_historic not yet ready
2023-11-27 14:44:55.852502500 INFO:root:--> fetch_handler() --> fetch_production_historic(): JSON data feched. Wait 3600 seconds for next run
2023-11-27 14:44:55.853228500 INFO:root:step: fetch_devices
2023-11-27 14:44:56.459465500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:44:56.476125500 INFO:root:step: fetch_meter_stream
2023-11-27 14:44:57.461491500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:44:58.463566500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:44:59.465614500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:00.468033500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:01.470043500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:01.772627500 ERROR:root:--> fetch_meter_stream(): ReadTimeout occurred: HTTPSConnectionPool(host='192.168.178.105', port=443): Read timed out. (read timeout=5)
2023-11-27 14:45:02.472533500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:03.474531500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:04.476063500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:05.478174500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:06.480369500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:07.482503500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:08.093709500 ERROR:root:--> fetch_meter_stream(): ReadTimeout occurred: HTTPSConnectionPool(host='192.168.178.105', port=443): Read timed out. (read timeout=5)
2023-11-27 14:45:08.484849500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:09.486853500 INFO:root:--> data_meter_stream not yet ready
2023-11-27 14:45:09.514240500 WARNING:root:--> fetch_devices(): HTTP request took longer than 5 seconds: 13.64589 seconds
2023-11-27 14:45:09.518317500 INFO:root:--> fetch_handler() --> fetch_devices(): JSON data feched. Wait 3600 seconds for next run
2023-11-27 14:45:09.519082500 INFO:root:step: fetch_inverters
2023-11-27 14:45:09.874449500 INFO:root:--> fetch_handler() --> fetch_inverters(): JSON data feched. Wait 300 seconds for next run

Can you assist? I don't receive data in my Cerbo GX now.

Regards,

Gateway without CT's - Error when using D5 firmware

I installed and set firmware to d%, however I get this error:

2023-09-13 17:49:13.317477500 *** starting dbus-enphase-envoy ***
2023-09-13 17:49:16.397291500 ERROR:root:D5 firmware selected
2023-09-13 17:49:16.420323500 Exception in thread Thread-TokenManager:
2023-09-13 17:49:16.420332500 Traceback (most recent call last):
2023-09-13 17:49:16.420334500   File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
2023-09-13 17:49:16.420337500     self.run()
2023-09-13 17:49:16.420338500   File "/usr/lib/python3.8/threading.py", line 870, in run
2023-09-13 17:49:16.420341500     self._target(*self._args, **self._kwargs)
2023-09-13 17:49:16.420344500   File "/data/etc/dbus-enphase-envoy/dbus-enphase-envoy.py", line 292, in tokenManager
2023-09-13 17:49:16.420578500     token = getToken(envoy_enlighten_user, envoy_enlighten_password, envoy_serial)
2023-09-13 17:49:16.420584500 NameError: name 'envoy_enlighten_user' is not defined
2023-09-13 17:50:16.484154500 WARNING:root:token still empty
2023-09-13 17:51:16.556522500 WARNING:root:token still empty

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.