then continue charging if needed (depending on battery %) from a certain time so it reaches around the desired full charge at the time you leave the house in the morning
Actually that's an interesting approach. Working with the Tesla API (to figure out charging rate etc.) is extremely fraught. People (like TeslaFi) have done it, and there is a thread on the main Tesla forum where people post their findings about the API, but documentation is scant, and I reckon its only people like TeslaFi , processing for loads of cars, that actually manage to figure out how it works - and be resourced-up to handle any changes promptly (they are frequent enough, and far reaching enough, to be annoying ... typical Tesla). Personally I'd forget that ... hence I like your idea.
You would need to know the SOC at the start of the night, but you could "scrape" that from the APP, or TeslaFi/other, or even figure out the API enough to just get that information once (a pitfall of the APi is that you get blocked if you make frequent calls, loads of snags like that, but a simple "What's the SOC" request at midnight might be OK ("OK" in the sense of not too much work, little risk of API changes, but you'll still probably have to mess with waking the car up, if asleep, and so on ...)
So .. armed with SOC you could then say "Car charges at 10% per hour" (my approximate guess), its currently at 60% so I can charge for 3 hours now and one hour prior to leaving, and adjust the "3 hours now" according to actual SOC.
Of course the snag is if you get a powercut during the initial 3 hour period (not much you can do about the second one ...). Most of the solutions I have seen work on charging to 80%, using active monitoring, but perhaps you could detect powercuts and resume charge so that the whole "3 hours" was done at the start of Off Peak and then the final 1 hours before departure,a nd avoided the need to interact with the API to achieve that.
I would like a warmer battery before departure in Winter, to shorten the time that the car is on reduced Regen ... but I've stopped shooting for that level of sophistication and just let the thing charge at midnight ... however I do use TeslaFi to schedule "charge to 100% before departure" on days when I am going far afield, which then also has the battery-warming benefit.
Whilst rambling on ... and on ... you could use TeslaFi scheduler to change Max Charge to 80% at midnight, let it charge on E7, and then change Max Charge to 90% an hour before departure (or an hour before the end of Off Peak). That would get you to 80% as soon after Off Peak start as possible, regardless of power cuts, and assuming power available resume charging an hour before departure / end of Off Peak
Some possible risk that resumed charging is slower on exceptionally cold nights when battery cold soaked?
Move to a Passivehouse ... no heating needed, much easier
And a LOT more healthy too (something I didn't previously know). (We also have whole house automation which we put in when rewiring was needed, if you are interested I posted a list of "possibly useless"
functions we have configured on our HA in
another thread)