This is a wireless solution http://www.esp8266thingies.nl/wp/ It uses the espeasy pluging https://github.com/letscontrolit/ESPEasyPluginPlayground/blob/master/_P110_P1WifiGateway.ino
I’m not sure if (how) this works with @aequitas his component.
This is a wireless solution http://www.esp8266thingies.nl/wp/ It uses the espeasy pluging https://github.com/letscontrolit/ESPEasyPluginPlayground/blob/master/_P110_P1WifiGateway.ino
I’m not sure if (how) this works with @aequitas his component.
Hi, I am fairly new to the Home Assistant system.
I have got the “Slimme meter” working on my new PI.
I have noticed that the telegrams got pushed to the homeassistant.db file but after a couple of days the system got a bit slow.
After some investigating I found out the homeassistant.db file got very large because of the telegrams that have been pushed every 10 seconds.
After some reading on the forums I have setup a MySQL database on my NAS and now everything is good/snappy again.
Now my question, is there a file that I can edit so that I can change frequency that the telegram gets pushed from maybe 10 seconds to 1 minute or more so that my MySQL DB doesn’t get filled up that fast?
Sorry for my bad English, it is not my native language.
Thanks in advance
Best thing you can do is purge your database (removing all values older than 7 days) and for the logging revert to influxdb. Some useful documentation on the known error of huge data see files can be found at Large homeassistant database files
I am using this wireless solution: http://www.esp8266thingies.nl/wp/
But I am getting CRC errors. If I set it to dsmr_version 2 it’ll work (but with incorrect/missing data, since it parses as 2 instead of 4).
Smart Meter; Kaifa MA105C -> p1 wifi gateway -> dsmr sensor in home assistant
Does anyone happen to know how to fix this or what the problem might be?
p1 gateway set as, 115200 8N1
Quick and dirty hack;
In deps/dsmr_parser/parser.py
I commented line 92:
# self.validate_telegram_checksum(line_values)
The p1 wifi gateway already does CRC validation, and I am guessing somewhere in the next step something minor changes. So for now I just disabled the validation in the dsmr_parser and all the values appear correct in my dashboard.
If anyone with DSMR5 feels like giving this a try.
Could you raise this issue at: https://github.com/ndokter/dsmr_parser/issues and provide some output of the p1 wifi gateway?
I would like to see friendly_name on the sensors so I can translate the english names to my local language (Dutch) in configuration.yaml
I create a template now to make the translation:
Please look into customizing (https://home-assistant.io/docs/configuration/customizing-devices/) that should provide that functionality.
I noticed that after version 0.6 of the dsmr_parser (that is used here) some additional fixes with regards to CRC errors (https://github.com/ndokter/dsmr_parser/issues/17) I was planning on seeing if I could test and/or integrate the newer version. I was also informed that Domoticz also fails on the CRC parsing at the moment.
But I guess I can make an issue, with all this information on github
Is there a nice way to combine the power_consumption_low.state and power_consumption_normal.state in a single value?
Thanks.
Totally forgot. Yes this will do the trick.
I never managed to get it working reliable so I now have a python script which I run through from every night at 0.45. script is below
import requests
import json
import datetime
import homeassistant.remote as remote
mindergas = “http://www.mindergas.nl/api/gas_meter_readings”
mindergas_token = ‘XXXXXXXXXXX’
hass_ip = ‘127.0.0.1’
hass_password = ‘’
hass_port = ‘8123’
gas_sensor = ‘sensor.gas_consumption’
api = remote.API(hass_ip,hass_password, hass_port)
gas_usage = remote.get_state(api, ‘sensor.gas_consumption’)
def post():
yesterday = datetime.date.today () - datetime.timedelta (days=1)
data = {‘date’: yesterday.strftime (“%Y%m%d”), ‘reading’:gas_usage.state}
headers = {‘Content-Type’: ‘application/json’, ‘AUTH-TOKEN’: mindergas_token}
r = requests.post(mindergas, data=json.dumps(data), headers=headers)
print (yesterday.strftime (“%Y%m%d”))
print (data)
print (r)
print (‘Ready’)
post()
I’m using a Python script too but the using the Notify.rest platform is a much more elegant solution. I’ll have a look at it.
Whatever you do; post the outcome here please
I think you can use this:
Looks promising. Had not thought of this. I will try this asap.
I have looked at the binary sensor and that is not what we need. The sensor is polled every minute. I actually need the REST notify or REST command. When I have the time I will try to modify the latter to support headers.
For the moment I have implemented the python script above. But I can’t get it to work, so I need some help.
I can successfully run the command from the command line in the virtualenv:
(homeassistant) homeassistant@raspberrypi:/home/pi$ python /home/homeassistant/.homeassistant/scripts/mindergas.py
20170329
{'reading': '2539.406', 'date': '20170329'}
<Response [201]>
Ready
(homeassistant) homeassistant@raspberrypi:/home/pi$
This is the configuration (I can see the logbook entry and the pushover notification, but the reading is not published, so the script is not being called, I guess.
sensor:
- platform: dsmr
#etc
shell_command:
mindergas: 'python /home/homeassistant/.homeassistant/scripts/mindergas.py'
script:
mindergas:
alias: Verstuur gasverbruik
sequence:
- service: shell_command.mindergas
- service: logbook.log
data:
name: Gasverbruik
message: is verstuurd
entity_id: sensor.gas_consumption
domain: sensor
- service: notify.pushover
data_template:
message: "Gasverbruik ({{ states.sensor.gas_consumption.state}} m3) is verstuurd naar mindergas.nl"
automation:
mindergas:
alias: Verstuur gasverbruik
hide_entity: no # default no
trigger:
platform: time
# run daily at 00:05:00
hours: 00
minutes: 15
seconds: 00
action:
service: script.mindergas
I had the exact same problem! That’s why I decided to run the script through a cronjob instead of running it from Homeassistant…