similar for me too - over the last 30 days I’ve averaged 7.86p/kWh - and actually it might be less than that, as I just checked quickly on the OctoWatch iOS app, and I think that includes standing charge, which if so, would actually be more like 6.5p/kWh for the actual usage.
I did that this morning and the version is at v0.1.7
My uBuntu & docker along with the Homeassistant & Appdaemon containers are all upto date also
Thanks, so is it working ok now, if you restart AppDaemon?
As this line in the traceback:
File "/conf/apps/octoblock/octoblock.py", line 10, in initialize
self.run_every(self.get_best_period_and_cost, time, 30 * 60)
isn’t in the current code.
Ok, Thats Odd
I noticed I had two appdaemon/apps folders, one in my appdaemon container where my other apps run happily and one in my homeassistant container and both had an octoblock folder in them
So I deleted the plugin via HACS and checked in the appdaemon container in the apps folder and octoblock was not removed so checked under my homeassistant container and it was gone
I deleted all octoblock folders, reinstalled via HACS and it has recreated under my homeassistant folder in appdaemon/apps and not in the apps folder in my appdaemon contaniner
It seem to be working this way but about to re-add my hourly blocks in and test
Any idea why it creating in the homeassistant container under appdaemon/apps and not in the appdaemon apps folder?
I’m not really sure. When I’ve install any appdaemon thing though HACS they end up in /config/appdaemon/apps/
Maybe its that I have mine in docker and seperate appdaemon and homeassistant but hacs is a custom component so does it under homeassistant container
Its working both ways, so all fine. Will try and see if I can get HACS to use the appdaemon container but that my issue
Cheers
Landed up just changing my appdaemon /config folder to the homeassistant/appdaemon folder
Just easier
Are you on the Octopus forum?
If so have a look at https://forum.octopus.energy/t/a-tool-to-reconcile-agile-bills/771/50
I have just ran the calculations from 28-09-2019 to 27-03-2020
On my fixed price Tariff it has cost me £165.66 inc VAT for Electric
If I had been on Agile it would have cost me £122.38 inc VAT
I would have made a saving of £43.28 that is with out shifting any time of use about.Now I have a better understanding of 4pm to 7pm no go zone and the ability to Grid Charge my Battery Bank / Limit when and how much it can charge and discharge at I should be able to make further savings.
I have just switched to Agile. Today is my first day!
Now that I have full battery control on my Solax Inverter / Battery Setup I am starting to put the pieces together to control my energy use / charging from the battery depending on the Solar Forecast and Agile pricing. So I can charge at cheaper points of time etc
Hey no i’m not - thanks for pointing it out. I’ve just switched over to agile today so I’ll drop them a message and sign up.
Straight away I’ve moved a couple of ‘dumb’ heavy use devices to the early hours which I’m expecting to make quite a difference. Triggering stuff is my next task.
I’m waiting on my switchover to octopus and then agile in the next couple of weeks. I’ve been working on a component to automatically switch on devices devices at the cheapest n hours, for example my immersion heater needs to be on for 5 hours a day and at least 1 hour at night and 1 hour in the day. As well at doing things like turning the immersion on for all times that the price is negative and turning the heating up a notch. If you’re interested, I will try and get it uploaded to github over the weekend.
Interesting to see what people are Saving, over the last week my home assistant integrations predict that i will save roughly £2/day just on water heating, and the odd bit of our electric central heating kicking in. So hopefully we’ll worth paying the £30 early exit fee from our old supplier.
nice idea for the water - what relay are you using to switch an immersion heater?
definitely interested in the component too - are you also running octocost and octoblock?
I’m using a sonoff pow2 Running tasmota for the immersion, I am still looking around for other options though. There is a time guard fused spur that looks good but I can’t find any documentation to see if it’s controllable from our side their own app.
I hadn’t seen octocost or octoblock when I started looking at this and to be honest I’ve been using it as a bit of a learning experience to write components for home assistant so carried on with what I was doing, but I will most likely be using them once my switchover is complete.
In the last few weeks the cheapest time has often been in the afternoon before the 4pm peak. Even been negative, so don’t assume early hours are cheapest. Octopus Agile Southern Scotland | Energy Stats UK
I’m using a Shelly 1PM for mine. Works out of the box with no flashing, supports local MQTT/HTTP with no cloud requirement, does power monitoring and can support a backup “real” switch in case all my high-tech fiddling stops working and we need hot water
One consideration is that the device’s reported internal temperature can quite high. Mine reports 80°C internal after half an hour running the 3kW immersion. It allegedly has safety cut-off if the temperature gets too high, but I’ve never seen this triggered, and the outside of the wall-mounted back box I have it inside doesn’t get particularly hot. I think it’s just because it’s a small and enclosed circuit.
I am in the process of moving to Octopus and will move onto agile when I can get the meter installed however I currently controll my waterheater via a few automation and have replaced the supplied timer with 2 x sonoff POW2 with tasmota on them as I have two 2500w elements in my water heater (off peak/peak) and can control on the sonoff, home assistant or via Alexa HA integrations
Big concern was having them on at the same time as the fused switch would not be able to handle them on at the same time so I have an automation in Home Assistant that if the top one is on, the bottom one turns off and visa versa. The same is for the physical button on them, If you press the physical button on one off them, the automation kicks in and switches the other off
Still to do is turn the physical button press into a timed action rather than just on/off so that it can be used as a “Boost” button and want to see if I can get the automation that switches them on/off when the other is on done via tasmota that way its a standalone solution but I am thinking of replacing them with a 2/4ch sonoff and using contactors as it will solve the reliance on HA for the logic but will also look neater
I have one for night time as I am still on Economy 7 with my old supplier (until the switch is done) which I will be replacing with the octoblock p/kWh for agile pricing and when it drops below say 2p/kWh or less in the night it will turn on the main element and then during the day it will do the boost element to top up
The other I have is when ever I am produciong more than 3000w solar then the main element switches on and turns off if my solar goes below 2000w
Anyway of having a nice list of the next 24 hours? having to use an app on my phone, would prefer to ditch that for home assistant, have used the current price provided here, thankyou very much the bottom half is all past my knoweldge as a nooby
@mcon I’ve uploaded the component to https://github.com/markgdev/home-assistant_OctopusAgile.
Hopefully the README is enough to get you going, if I’ve missed anything give me a shout.
@Creatish I’ve put an example image of how I’m viewing the rates in the readme on the repo above, it’s the best I’ve come up with so far. I am going to have a better look around to see if there are any custom lovelace cards to create a table of attributes that I can use with this.
I’ve also been compiling a python library to use on the backend of home assistant that will work outside of home assistant just as well. I originally used it to summarise the last years rates and create and average to estimate how much I could save if I switched. https://github.com/markgdev/OctopusAgile
Wow. This looks fantastic - nice work. Will try it out today.
Got it up and running.
The prev/current/next rates are working great - I really wanted to find a way to add ‘current’ in particular so thanks very much for sharing your work on that - makes a very helpful addition for this panel which has some octoblock and octocost bits in as well.
Really like your timers implementation - I can trigger my washing machine cycle from HA so I’ve set up a timer to run it at the cheapest time - waiting to see what it does - this will really be something.
I also tried out ‘run times’ but it doesn’t appear to be generating the entities for these so I can’t display them. Any ideas? Extract from my config looks like this (I have the sensor higher up). I couldn’t get the rates entity working either.
OctopusAgile:
region_code: "J"
# moneymakers:
# - switch.water_heater: null
# - climate.downstairs:
# params:
# temp: 25
timers:
- day_from: today
day_to: today
entity_id: switch.washing_machine
numHrs: 4
paramms: null
requirements:
- day_from: today
day_to: today
numHrs: 4
time_from: '09:00:00'
time_to: '21:00:00'
# - day_from: tomorrow
# day_to: tomorrow
# numHrs: 1
# time_to: '16:00:00'
# time_from: '19:00:00'
# time_to: '19:00:00'
# time_from: '10:00:00'
run_devices:
- energy_time: 2
entity_id: washer
run_before: '21:00:00'
run_time: 2
- energy_time: 2
entity_id: dryer
run_before: '21:00:00'
run_time: 2
- energy_time: 2
entity_id: dishwasher
run_before: '21:00:00'
run_time: 2
Pretty sure your config is correct other than a couple of tweaks to the timer which I note below. I think I missed a step in the setup, because mine is already running I forgot about it getting everything to initialize. If you were to wait until tonight I think everything would run ok.
Do you see the services octopusagile.update_timers and octopusagile.half_hour? Hopefully you also see an entity called octopusagile.update_timers_nextupdate and it’s set to 1900 tonight and octopusagile.half_hour_timer_nextupdate which is hopefully set to the next half hour, but is probably failing to run if update_timers hasn’t run yet. Assuming you do see them, call the update_timers service from the developer tools followed by the half_hour timer.
With a bit of luck that works, I will have a look at making that happen on startup if nothing is populated.
One thing to note is that the timers won’t give you 4 hours in one block as it is now, it’ll give you the cheapest 4 hours worth of slots in that period. It shouldn’t be too hard for me to add that in though, I can see that would be useful.
Your timer shouldn’t need the requirements block, but put the time_from and time_to into the main block
timers:
- day_from: today
day_to: today
entity_id: switch.washing_machine
numHrs: 4
paramms: null
time_from: '09:00:00'
time_to: '21:00:00’