Velair: local-first climate scheduling for Home Assistant climates

First, thanks for the great work on Velair! Looking at the UI, having daily model templates is already super handy, but setting explicit numerical temperatures on every single time slot can get a bit tedious over time.

It would be awesome to have Temperature Presets / Named Profiles (e.g., Night = 17°C, Eco = 18°C, Morning = 18.5°C, Comfort = 19°C) that could be assigned directly to time slots instead of raw temperature values.

Key benefits:

  • Centralized Updates: If I decide to drop Night from 17°C to 16°C, updating the preset once would automatically update all schedules using it across the board.

  • Color Coding Option: Assigning custom color codes to each preset (e.g., blue for Night, green for Eco, orange for Comfort) would provide an instant visual overview of the daily timeline.

What do you think about this approach?

Hi @GuiPoM,

Thanks for the kind words and the suggestion. I think reusable Temperature presets would be a useful addition to Velair, especially for adjusting several schedules without editing every block individually.

The approach will be to let a temperature block use either a direct value or a named preset. Blocks using a preset will remain linked to it, so changing its temperature will update all blocks referencing it across Default and Profile schedules. Existing numerical schedules will keep their current behaviour.

I would call these “Temperature presets” rather than “Profiles”, since Velair already uses Climate Profiles for complete alternative routines. They will also be separate from presets exposed by the climate device itself.

This fits something I have been considering for the Templates section: making it easier to reuse schedules across selected days, Default schedules and Profile schedules. Applying templates to selected climates and weekdays is already possible; the useful extension would be a clearer workflow covering Profile schedules too. Modes would continue selecting Profiles, which contain the schedules.

There is an important distinction, though: schedule templates currently copy their blocks. I will preserve that behaviour while allowing the copied blocks to retain references to shared temperature presets. Keeping entire templates permanently linked introduces additional questions about local edits and which changes should propagate.

Optional preset colours also seem feasible. I would want them to help identify blocks while keeping the preset name, effective temperature and existing operating-state indicators readable.

The main work will be making shared updates predictable: validating every affected climate, supporting heating, cooling and target ranges, showing where a preset is used, and respecting Boosts, pauses and manual control.

I will try to add reusable Temperature presets in the next Velair release, following the approach described above. Optional preset colours and the broader Templates improvements may follow separately.

Thanks again for the suggestion — it addresses a practical limitation when maintaining several schedules.

1 Like

Hi @CristianGonzalezFern,

First of all, thanks again for your previous feedback and for taking the temperature preset idea on board so quickly!

I’ve been testing the integration further, and I wanted to share a few thoughts, questions, and a minor bug report:

1. Away / No-Frost mode & Anticipation
I couldn’t find a built-in “Away” or “No-Frost” (hors-gel) mode. While regular routines can handle some scenarios via profiles, an “Away” state usually behaves more like a timed override or boost (e.g., away until a specific date/time). In that kind of scenario, does Velair’s anticipation feature still kick in correctly to ensure the home is back to the target temperature by the scheduled return time?
This is how I implementated away and I see that setting a boost has some drawbacks.

2. Seasonal Temperature Sets / Decoupled Time Slots
To expand a bit on temperature management: I often use the exact same time slots across different periods, but with different temperature targets (for example, a Winter mode with a smaller setback versus a Mid-season mode with deeper drops). It would be fantastic if we could dynamically associate a schedule (time grid) with a specific temperature set or mode on the fly, rather than duplicating schedules. To complète my previous query…

3. Integration & Widget UI Behavior
On the positive side, I’ve fully integrated Velair with my existing automations, and it works really smoothly! However, I’ve noticed a small quirk: the custom widgets/cards sometimes show as “unavailable” until you actually open the main Velair page for the first time in a session (as if they aren’t initialized until loaded in the UI).

4. Open Window Handling
Since Velair focuses on local-first scheduling, how does it handle external overrides like open window sensors? It would be great to ensure that if a window opens (triggering a climate pause or shutdown), the active Velair schedule doesn’t immediately override or fight it until the window is closed again.
I discovered the blueprint Pause a zone while windows are open velair/docs/user/blueprints.md at main · cgonfer/velair · GitHub. I was more expecting a sensor or anything in the configuration, but at least it exists to help quickly setup that feature, this is nice !

5. Atypical Weeks & Dynamic Teleworking Schedules
My weekly routine isn’t strictly fixed due to shifting teleworking days. Right now, I rely on custom Home Assistant buttons and a nightly script to switch profiles/schedules when needed. I suspect there isn’t a magic bullet for this yet, but I’m curious if you have any recommended patterns or future ideas in mind for handling irregular, non-standard weekly schedules more natively.

Thanks again for your amazing work on this project! This is by far the most complete and feature-packed project I have seen in this area.
I am planning to demo Velair this week :blush:

Hi @GuiPoM,

Thanks for continuing to test Velair and for sharing your experience with your automations!

Away / No-Frost and anticipation

A temporary pause may help here: it suspends Velair’s scheduled control and resumes it when the pause expires. You can leave the thermostat unchanged during the pause or turn it off.

The timing matters, though. Preconditioning does not run while the zone is paused, so resuming at your arrival time would not give it time to prepare the home beforehand. Resuming earlier, with a comfort block scheduled for your return, can cover that through a Home Assistant automation. An active Boost also blocks preconditioning for that zone.

For frost protection, leaving the thermostat unchanged could preserve a suitable target you have already set; the pause itself does not establish a frost-protection temperature.

Could you share how you configured your Away behaviour and which drawbacks you encountered with Boost? That would help me understand whether the existing pause controls cover your setup or whether something more specific is needed.

Seasonal temperature sets

This makes sense, especially to avoid maintaining several copies of the same schedule. I’ll give it some thought alongside the temperature preset idea and consider how it could fit into Velair without making configuration more complicated.

Cards loading only after opening the panel

The cards should work without opening the main panel first. Please check that your dashboard has this resource registered as a JavaScript module:

url: /velair_frontend/velair-card.js
type: module

Remove any old or duplicate /local/velair-card.js resource and reload the browser or companion app. If it still happens, could you share your Velair version and the exact error shown? “Unavailable” and “custom element doesn’t exist” would point to different causes.

Open windows

There is already an optional open-window blueprint for this. You can also build your own automation using velair.pause_zone, optionally turning the climate off, and velair.resume_zone.

One of the main reasons I kept window handling in a Home Assistant blueprint was to let users take full advantage of Home Assistant automations: combining sensors, presence, helpers, conditions, delays, and any other logic their setup needs. Built-in window settings in Velair would limit those possibilities to the options I had implemented. Instead, your automations decide when and why to pause, while Velair manages the pause reasons and resumes scheduling when they have all been cleared. The blueprint provides a ready-to-use starting point, and the same pause actions are available for more advanced custom automations.

The useful part is the pause_id: each automation can identify its own reason for pausing. For example, a window automation could use window_guard, while another automation uses maintenance. Both reasons can remain active together. Closing the window removes only window_guard, so the zone stays paused until maintenance also ends.

That lets independent automations cooperate without accidentally resuming each other’s pauses. Use distinct IDs for independent reasons and the same ID when adding and removing a particular reason. Avoid an unrestricted resume when you only intend to clear one automation’s pause.

Turning the thermostat off directly does not suspend Velair’s scheduling, which is why using these pause actions is important.

Irregular teleworking weeks

Your buttons and nightly script are a good fit for the current design. Home Assistant can decide which Mode or Profile is needed, and Velair applies its schedule. Selecting the routine the night before also gives preconditioning time to prepare for the morning.

Thanks again for all the feedback! I noticed you have a YouTube channel—is that where you’re planning to demo Velair? Thank you for taking the time to share the project. If there’s anything I can help with while you prepare it—explaining features, putting together example configurations, or providing resources—please let me know. I’d also be happy to take part in an interview or help prepare specific content for the video, if that would be useful. I speak Spanish and English, so either language would work for me!

On the seasonal stuff, I’m switching over from a homemade Node Red automation that uses outdoor temperature to decide whether to heat, cool, or do nothing. The do nothing feature is great as units wont turn on and save me energy and money when weather is mild.

Before it inititates a scheduled start it checks today’s high/max temp.

  • Less than 20°C = run winter mode
  • Between 20°C and 27°C = do not turn on
  • Greater than 27°C = run summer mode

If summer mode starts:

  • It checks if the current outside temp is greater than 24°C. If not, nothing turns on and it will recheck every 30 mins and enable if the temp rises above the threshold. The sytem alerts me to close windows.
  • At scheduled turn off times it does a simliar check. If outside is greater than 22°C it won’t switch off, rechecking every 30 mins until temp drops below the threshold. The system alerts me to open windows.

Hi @CristianGonzalezFern,

Thanks for the detailed breakdown, especially regarding how pauses and pause_id work under the hood!

Let me follow up on a few points based on your explanations:

1. Away Mode & Anticipation My expectation for an “Away” mode is really closer to how native ecosystems like Tado or Netatmo handle it. I’d love to see Velair handle this natively: setting a default Away temperature (globally or per schedule), where Away acts like a timed override with a defined return time (e.g., away until 7 PM).

The key point here is anticipation. If I’m coming home at 7 PM and the house has been setback at 17°C all day, I expect Velair to factor in the preconditioning so that the house actually hits 20°C at 7 PM. If I have to manually handle the anticipation math and schedule triggers via external Home Assistant automations for return times, then Velair isn’t really solving that part for me. No-frost (hors-gel) can stay a basic, static state since it’s indefinite, but “Away” needs that smart return-time + preconditioning loop as a schedule override.

Here I really see a nice addition to Velair and a very good fit in term of features as it already has all the knowledge to handle it properly, and any external logic will never go close to that.

2. Open Windows Thanks for pointing out the blueprint and the power of pause_id! It’s actually a very robust architecture for advanced setups (allowing multiple independent reasons to stack up without stepping on each other). However, from a UX perspective, it might feel a bit complex for a standard user looking for an out-of-the-box experience. Having a simpler option to directly map a binary sensor (or a helper boolean) to a zone’s pause state directly in the UI, while keeping the underlying pause_id logic for advanced use cases, could be the best of both worlds. But it exists, and there is already a way of defining it, so definitively not anything important !

3. Atypical Weeks Totally agree that keeping it external via scripts/toggles works fine for now. This is what I am doing, I switch modes each day at midnight depending on status in Home Assistant.
If you ever find a clean way to introduce conditional schedule alternatives based on modes or state helpers without bloating the UI, that would be a neat bonus, but it’s definitely not urgent. This could also help defining for example what I mentionned with winter, same schedule, another set of temperatures, but it should not make the use of Velair more complex, I fully agree and understand, there are already many steps to go through.

4. Regarding the YouTube Demo Yes, that’s indeed where I’ll be showcasing Velair! :clapper_board: I am documenting my migration from Netatmo to Tado + Home Assistant + Velair to prepare 2026/2027 and I will most probably also have another content after Winter to explain what went well with this new local control approach.

Thanks again for the incredible work and the great exchange!

Thanks for sharing your setup! It gives me some useful ideas to consider as I work through the seasonal temperature sets and linked presets.

I’d like to make it easier to change temperatures without duplicating schedules, while keeping the flexibility to control everything through Home Assistant automations. I’ll keep your example in mind as I explore how this could fit into Velair.

2 Likes

Hi @CristianGonzalezFern!

Just wanted to share that I’ve just published a new video (in French) covering a complete tour and setup of Velair to get everything ready for winter: :link: Watch the video here (https://youtu.be/xIrB-Z2WPio)

Regarding your kind offer to take part in an interview or help prepare content: just to clarify, I always produce my content with complete independence, whether we’re dealing with commercial brands or open-source projects. That being said, I always make sure to provide thorough, elaborate feedback with concrete avenues to explore to help improve the project!

Following up on a few specific points from our exchange:

  • Temperature Templates: As we discussed, being able to define temperature targets using Home Assistant templates (instead of static values) would bring amazing flexibility for dynamic adjustments and reuse profiles.

  • Window Handling: While the pause_id logic is clever, having native support to simply assign an open/close sensor entity directly to the thermostat would be so much smoother. It could be as straightforward as picking the sensor, or letting advanced users build custom automations around it when complex checks and decisions are needed, without forcing it as the only path.

That said, my main operational feedback and core pain point regarding absences remains:

The Missing Piece: A True “Away” Mode with Return Anticipation

Right now, handling being away from home cleanly is still quite tricky.

  • The limitation of current workarounds: Using a temporary time boost or manually switching the schedule doesn’t cut it for a true away scenario.

  • Why anticipation matters: When you are away (whether for an evening or a few days), you expect the scheduling system to anticipate your return time so that the house is already at the correct temperature the exact moment you step back inside.

  • The challenge with automations: Because of how scheduling and overrides currently interact, this cannot be cleanly handled by a basic automation or a separate static schedule change without losing the core benefits of Velair’s intelligent preconditioning and heating/cooling curves.

Having a native Away mode that properly factors in return-time anticipation would make Velair truly unbeatable for local climate management. I think it cannot be managed outside Velair and with what exists now.

1 Like

Hi @GuiPom!

I found your video incredibly thorough. You explored Velair in real depth and explained its features and setup clearly, leaving very little to guesswork. Thank you also for your kind words about the project—I really appreciate them.

I also understand and respect your editorial independence, and I appreciate the detailed, practical feedback you’ve shared here and along the video.

I haven’t had enough time to reply properly to both of your messages, but your suggestions haven’t been forgotten. I’ve been working on several of these areas, and the upcoming version now includes some substantial additions.

Away mode and return anticipation

Your main point is addressed by a new native feature called Planned Return, configured directly in the Velair panel. It also provides Home Assistant actions, including velair.start_planned_return, so automations and scripts can use the same native behavior.

It brings together household occupancy, Away settings, an expected arrival time, and Velair’s existing adaptive preconditioning. It uses Modes and Profiles to define the away and return settings, so each room can have its own targets.

You can configure a regular weekly arrival routine or plan a one-off return for later today, including when you’re already away. Velair calculates preparation for each room using its existing heating/cooling learning and the temperature required by the destination schedule at arrival.

For your example of keeping the house at 17°C while away and wanting 20°C at 7 PM, the aim is to calculate when preparation should begin so the house is closer to that target by 7 PM. That anticipation is handled inside Velair, without having to calculate the timing yourself in external automations.

You can also adjust the arrival time, skip the planned return, or indicate that you’re home early. The panel shows each room’s preparation status and explains when advance preparation is unavailable.

This first beta supports same-day returns. Overnight and multi-day planned arrivals aren’t included yet, so it doesn’t cover every absence scenario you described. That is a deliberate scope choice for the first iteration: I prefer to develop and validate features step by step. My intention is to expand the supported return scenarios as the feature matures.

Reusable temperatures and seasonal schedules

The new version also introduces shared climate presets and linked daily templates.

Several schedule blocks can reference the same preset, and editing that preset updates its linked uses. Daily templates can share just their times, allowing different temperatures in different Profiles, or share both times and climate settings. This should help with your “same schedule, different winter/summer temperatures” example.

For dynamic adjustments, the new velair.update_block_preset action lets a Home Assistant automation or script update a shared preset using values calculated by Home Assistant templates. Velair then updates the affected schedules and preconditioning plans.

This provides a route for template-driven temperatures, although it isn’t direct Jinja template support inside Velair’s temperature fields. Your existing approach of selecting Modes from Home Assistant can also work alongside these reusable schedules and presets.

A suggestion for Comfort

From your walkthrough, one option I’d recommend exploring is Guided psychrometric range in the Comfort configuration. It accounts for the physical relationship between temperature and relative humidity, adapting the acceptable humidity range across your configured temperature range. This gives a more useful interpretation than treating the same humidity percentage identically at every temperature.

If you also enable Outdoor comparison and select outdoor temperature and humidity sensors, Velair can suggest when opening a window could move the room closer to your comfort range, potentially reducing the need for heating or air conditioning. It can also highlight trade-offs when ventilation would improve one aspect but worsen another.

Those suggestions are available through the Ventilation opportunity sensor, so you could use it in an automation to send yourself a notification when ventilation might help.

Window handling

That ventilation guidance is separate from your suggestion about automatically pausing a thermostat when a window opens. I understand the distinction you’re making between a robust automation mechanism and a simple built-in setup.

Directly assigning a window sensor to a thermostat for automatic pausing isn’t part of this beta; the existing window-pause blueprint remains the available approach. I’ve kept your suggestion in mind.

Although Velair already has quite a few features, they reflect the care, time, and effort I put into my projects. It is still only a few months old, and this will be its first winter in real-world use. I expect broader testing to reveal bugs and details that need refining. That’s why I’ve also put considerable work into diagnostics and clear explanations of what Velair is doing: to make problems easier to understand and investigate, and help limit their impact wherever possible.

I’m aiming to release the beta over the next few days, hopefully this weekend, once the remaining checks are complete.

Would you be willing to try it and share your feedback—especially on Planned Return and whether it fits the away/anticipation workflow you described? Testing it against your actual setup would be very helpful.

Thanks again for taking the time to explore Velair so thoroughly and explain where it could work better for you! :blush:

1 Like

Hi @CristianGonzalezFern,

Thanks for the detailed update and for taking these points on board so quickly, this upcoming release sounds great!

I would be more than happy to test the beta, especially since the Planned Return feature directly addresses one of the biggest missing pieces for my setup.

The only small caveat is that I only run a single production installation for my home heating, so as long as it’s reasonably stable for daily use, I will definitely put it through its paces and share my feedback with you.

Really looking forward to trying it out!

Hi @GuiPoM, Velair 1.9.0-beta.1 is now available. Thank you for offering to test it on your setup.

Your feedback helped shape several of the changes, especially Planned Return. You can configure Away and return Modes, then let Velair prepare each eligible room using its existing adaptive heating/cooling estimates and the destination schedule’s target at arrival. Boost, manual control and pauses retain priority.

One correction to my previous message: one-off returns now support future dates, including a return after several days away. Only the regular weekly arrival routine remains limited to same-day returns. You can change the arrival time, and cancelling after departure restores the previously saved Mode/Profile selection when it is still available and compatible.

One-off returns also work without occupancy sensors: explicitly planning a return activates Away immediately. With occupancy sources configured, Velair waits for confirmed absence before activating Away. The same behavior is available to automations through velair.start_planned_return.

I also noticed you were using Velair’s climate cards in your video. Dashboards with several Velair cards should load noticeably faster now, because the cards share data loading and live updates. Sidebar navigation has received a similar improvement.

You can also plan, adjust and cancel a return directly from those climate cards. Configure Planned Return in the sidebar first, then edit each existing card, open Actions, and enable Show for One-off return. Existing cards keep the new action hidden until you enable it. It opens the return controls alongside Boost and Pause and controls the household return, regardless of which room that card displays. A dedicated Planned Return card is available too.

The temperature and seasonal-schedule changes are included as well:

  • Shared Climate presets let blocks reference named settings such as Night or Comfort. Updating a preset updates its linked uses across Default schedules, Profiles and templates.
  • Hours-only template links let Winter and Mid-season Profiles share the same time grid while keeping different climate settings. Complete links can share both times and settings.
  • velair.update_block_preset lets an automation use values calculated by Home Assistant templates to update a shared preset. These are persistent changes to the preset; direct Jinja expressions inside Velair’s temperature fields are not included.
  • An optional Seasonal climate selection blueprint can run your chosen winter, mild-weather or summer actions after a temperature reading remains stable.

Direct window-sensor assignment and custom preset colours are not included in this beta. The existing window-pause blueprint remains the available approach, and irregular workdays can still be handled through your Home Assistant Mode-selection automations.

I’ve also expanded the explanations and practical examples, including the Planned Return guide in French.

Regarding your production-installation concern: the automated checks and isolated Home Assistant tests pass, including a scheduling fix for overlapping preconditioning in multiple rooms. It is still a beta, though, and I can’t promise it will be free of issues on every installation. Keep a backup of your current setup before trying it.

If you do test it, I’d be particularly interested in whether Planned Return covers your Away/anticipation workflow, how the preparation timing behaves in your rooms, and whether the cards load more smoothly on your dashboard.

Hi @CristianGonzalezFern,

Thank you so much for the detailed message and for releasing 1.9.0-beta.1! It’s great to see how much work went into this release.

Following my complete migration to this version and testing the Planned Return feature alongside my Home Assistant scripts, here is my exhaustive feedback step-by-step. But this covers mainly setup, this is too early for checking if everything works well. Please note that even if I try to understant the best I can the logic in Velair, I am not using HVAC, only heating system, so maybe there are required steps to have it working in all cases that makes it more complex for my case :

1. Temperature Profiles, Scheduling & Workflow Ergonomic Issues

  • Tedious Profile Creation & Configuration Steps: Having to migrate all my thermostats really highlighted how heavy the profile setup process feels. When creating or updating a profile, navigating through selecting the time source, linking schedules, linking settings, and managing browser warning/confirmation prompts involves many manual interactions and page updates. Having direct action buttons or shortcuts to link and apply these settings directly would streamline the workflow significantly.

  • Lack of Day Grouping (Mon-Fri / Sat-Sun / All Days): Currently, the system forces a day-by-day definition (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday). For most of my thermostats and profiles, I do not need day-by-day granularity. It would be much more practical to have built-in options to define schedules for Monday to Friday, Saturday to Sunday, or even All days of the week simultaneously. While copying a day to other days is possible, having to set up individual days and duplicate them when the schedule is strictly identical across the week is redundant and unnecessarily tedious.

  • Reusing Time Grids across Seasons/Profiles (Hours-only Links): I double-checked the “Hours only” (“Horaires uniquement”) link option in the schedule editor alongside the Shared Climate Presets. Being able to reuse the exact same time grid while applying different temperature presets per profile/season (e.g., Winter vs. Mid-season) is extremely useful and avoids having to clone or re-create entire schedules from scratch.

2. Modes & Away Mode Configuration

  • Creating Modes & Profiles: I created an Away mode linked to an Away profile to handle my absences. Note that I rely heavily on default and manual modes (the two forced default modes in Velair) and rarely create extra modes unless necessary. Creating and assigning them went fine without major technical blocking.

  • Placement of Away Mode Selector: The setting to pick which mode gets triggered when you are away is currently buried in the middle of the page under the Detect absence section (Activate this mode while away). Because defining the Away mode is a primary setting, it should be placed in a prominent, global position at the top of the configuration page rather than hidden deep inside sub-sections.

3. Anticipation & Planned Return (One-off return)

  • Automation & Script Integration: In my setup, I don’t use regular arrival schedules; I exclusively rely on One-off return because all my absences are on-demand. I trigger these features directly from Home Assistant scripts by making service calls to im_living and cancel planned return (annuler le retour prévu). This integration works flawlessly.

  • Visual Feedback & Pre-conditioning / Anticipation State: When calling im_living, the main Overview page in Velair correctly updates: the purple status shows the expected return date/time, and the daily schedule reflects the Away status. However, there is a clear lack of visual feedback regarding anticipation/pre-conditioning. There is no progress bar or explicit indicator showing when the heating pre-conditioning phase actually starts, how long it will run, or how Velair is managing the anticipation curve leading up to the return time. I am thinking about the top card in the anticipation section, which is very clear about what will happen.

  • Dashboard Cards: The cards load smoothly and function well on my dashboard, but it was already smooth, so I can’t say if it is any better, sorry !

Thanks again for your continuous work on Velair!

Sorry for the slow reply, and thank you for taking the time to share this feedback. I keep working on Velair and reading the comments, but my day job sometimes leaves me less time to respond than I would like.

1. Profiles, schedules and setup

I agree that the initial setup can feel slow, especially when migrating several thermostats. Making the interface easier to use is one of my ongoing goals, and feedback like yours helps me decide where improvements will make the biggest difference.

I’m going to implement your suggestion for configuring multiple days together in the next beta, so you should be able to try that soon.

I’m also glad the “Hours only” links and shared presets are useful for your seasonal profiles. Keeping one time grid while changing the temperature settings makes maintenance much easier. If you find any bugs or have suggestions about that workflow, please let me know.

2. Modes and Profiles

I have some further improvements to the use of Profiles and Modes on my near-term roadmap. Would it help your setup if you could select a Profile directly for absence handling, instead of creating a Mode for it? I still need to evaluate the details, but supporting that alongside Modes looks feasible.

Your suggestion about the Away Mode selector’s placement also makes sense. I’m planning improvements in this area for the next beta, which I’m aiming to make available in the next few days.

For context, I published the first beta once the feature was stable enough in my own testing for you to start trying it. It was an opportunity to refine it together through feedback, rather than the finished interface I would want for a stable release.

3. Planned Return and dashboard cards

I now use One-off return in my own daily setup, and I’m already wondering how I managed without it! I haven’t personally come across another system with quite the same workflow. Have you used something similar elsewhere? Just curious.

The next beta will also bring quite a few visual improvements across Overview, the Planned Return tab and the dashboard cards. There will be clearer room-by-room preparation information, estimated start points on the timeline and contextual explanations of the different states. Upcoming events will also account for an active return. I hope that makes it much easier to understand what Velair is planning and doing.

And there’s nothing to apologise for regarding the cards’ loading speed. If they were already smooth and still are, that is useful feedback too :slight_smile:

Hi @CristianGonzalezFern,

Thanks again for the response! To follow up on your questions and points:

1. Setup UX & Browser Confirmations

  • Browser Warnings / Confirmations: To clarify what felt tedious during schedule configuration/migration: whenever editing or linking schedules, browser-level popups keep appearing to warn about overwriting existing plans. This happens even when a day’s schedule is completely empty, and having to click through these native dialogs constantly makes the mouse navigation quite heavy.

  • Day Grouping: I’m really glad to hear multi-day configuration is coming in the next beta, that will already remove a huge chunk of repetitive actions!

2. Modes vs. Profiles

  • Direct Profile vs. Mode for Absence: In my specific setup, I use a 1:1 relationship between profiles and modes (e.g., I created Off, Frost protection, and Away, while managing other variations manually with profiles). Because of this 1:1 mapping, having to create both a Profile AND a Mode adds an extra layer of complexity for me. That said, I’m not bothered by creating a Mode since Away can naturally be seen as a global house state. Selecting a Profile directly for absence handling would definitely simplify the setup for users who don’t need complex multi-profile modes!

3. Planned Return & Away Workflow

  • Similar Workflows: You asked if I had seen a similar workflow elsewhere: yes! The Away mode combined with heating anticipation is actually a native core feature of Netatmo, which I’ve been using for years. This combo (on-demand absence + smart return anticipation) is precisely the fundamental feature set I look for in a heating system, and having it so nicely integrated into Velair (especially via HA service calls) is awesome.

  • Visual Improvements: Looking forward to the clearer timeline estimates and room-by-room preparation status in the next beta!

Thanks again for your hard work and responsiveness!

Hi @GuiPoM,

Velair 1.9.0-beta.2 is now available, with several changes shaped by your feedback. Thanks for clarifying the confirmation-dialog problem and for the Netatmo example—it helped me understand the workflow you were referring to.

The main changes relevant to your setup are:

  • Grouped day editing: Default and Profile schedules now support Individual days, Weekdays / Weekend and All days. When grouped days contain different schedules, you can compare them and choose which one to use before editing the group together.
  • Applying templates: there is now a Select → Review → Apply workflow. You can choose the destination, linking method and room/day combinations together, then review the changes before applying them. Day headers select whole columns, including on mobile.
  • Empty-day confirmations: linking an hours template or restoring Own schedule no longer asks for replacement confirmation when the day’s timeline has no blocks. Confirmations remain for operations that would replace existing content or discard unsaved changes.
  • Schedule-saving performance: I’ve removed redundant validation requests and reduced repeated schedule/event calculations during saves. This reduces the requests and processing needed to save a change, while keeping backend validation.
  • More flexible Modes and Profiles: a household Base can now coexist with independent room Exceptions. For example, you can keep a Mode as the base while one room follows another Profile, without creating another Mode for that combination. New automation actions can change individual rooms and restore their inheritance from the base.
  • Clearer active setup: the panel and Active setup card distinguish Base and Exceptions, show which rooms follow each Profile, and include an expandable household distribution summary. Profile lists also identify whether a Profile is being used as part of the base, as an exception, or both.
  • Away configuration: occupancy, the absence-confirmation delay, Away Mode and return Mode are now grouped in the first settings section, before the optional weekly arrival schedule.
  • Preparation feedback: Overview, the Planned Return tab and dashboard cards now show room-by-room preparation states and estimated start points. Legend entries include the room name and estimated start time on the same line, with expandable overflow. Upcoming events also account for an active return.

The timeline’s progress represents elapsed time between departure and arrival; the room markers show estimated preparation start times. It doesn’t represent a measured heating-progress curve.

One point remains unchanged: Planned Return still uses Modes for its Away and return selections. Selecting a Profile directly in those fields isn’t included in beta.2.

The French guides for Planned Return and Profiles have also been updated.

If you try this beta, I’d be interested to hear whether the grouped editing and template workflow reduce the setup work, how saving feels on your installation, and whether the return summary now gives you the preparation information you were missing.

Hi @CristianGonzalezFern,

Here is some fresh feedback after testing the latest updates:

1. Multi-day editing & Linked Presets Multi-day editing is a massive improvement! It makes setting up and migrating schedules so much faster and smoother. Coupled with linked presets, the workflow feels just right, flexible for fine-tuning while fast for bulk setup.

2. Navigation UX in Anticipation Tab Inside the Anticipation tab, having the sub-sections (Adaptive Comfort vs Planned Return) styled as large clickable cards can be slightly confusing. Since their configurations are independent, standard sub-tabs or a segmented control would feel much more natural ergonomically.

3. Planned Return & Departure Trigger The timeline visualization for Planned Return once active is excellent and very intuitive!

However, before departure, the state remains stuck on “Waiting for everyone to leave”. For users who want to trigger or schedule away mode before physically stepping out, having an optional “Force/Apply Away mode immediately” checkbox (or allowing a manual absence override) would make the return feature immediately active without breaking automatic presence detection for others.
In my own case, I would love to only use the planned returned part, not the away part. So set away manually, but velair set back the proper mode when the occupation sources are switched to presence at home, in case we are back earlier, for example. THere is no anticipation, but heating system is automatically switch on in confort.

4. Learning State Transparency The learning status card (Atteints, Partiels, Invalides) is great, but it lacks feedback when nothing is happening (e.g., during cooling transitions or when temperature deltas are too small). It would be extremely helpful to have a small contextual status text or tooltip explaining why the learning isn’t progressing (e.g., “Waiting for a heating transition” or “Last cycle discarded: temperature gap too small”), preventing users from feeling like the system is stuck.
I have no anticipation for two weeks even if I am heating my house. Not too much, but enought maybe to be informed that this is seen by the system, but not useful, or something like that. Because I am confused with it not working and having a bug.

There is also still something to make for my own use cases easier to configure, this is same model, different temperatures:


Here I do not care about the value of the temperature itself. I care about its key: confort, eco, … the value will be reused when used in a profil, if you see what I mean.

There I could create a profil and say for this one, confort is this entry in the climate preset. But I think this is not the way you designed it and I am not sure it fits what you have in mind. But doing so I can, for the same schedule, just make the set of temperatures change by providing different climate presets.

Thanks again for your hard work and responsiveness!

Thanks for testing beta.2 and for the detailed feedback. It’s good to hear that grouped editing and linked presets make setup easier, and that the Planned Return timeline is clearer.

Your explanation also helps me understand the remaining needs: controlling Away manually while keeping automatic return detection, and reusing Comfort/Eco/Night time slots with different preset assignments per Profile. The navigation and learning-status suggestions are useful too.

I’d like to investigate the two weeks without anticipation rather than assume the temperature differences have simply been too small. Could you share the following for one affected room?

  • A screenshot of its Adaptive Preconditioning settings and current prediction, with Calculation details expanded if available.
  • One recent transition where you expected anticipation: the scheduled time, target temperature and approximate room temperature beforehand.
  • The relevant Diagnostics entries around that transition, including when heating actually started if you know.

That should give me a concrete case to compare with Velair’s prediction and learning decisions. Please remove any private details before sharing in case you want.

Even if the system is correctly skipping preparation or rejecting observations, your uncertainty shows that the current feedback isn’t explaining what is happening clearly enough.

Hi @CristianGonzalezFern,

Good news: right after my previous message, the first learning cycle was validated (Atteints: 1/5)! As expected, heating demand is just starting to ramp up with colder weather, so I won’t bother you with full debug logs for now as real cycles are starting to flow in naturally.

However, I have an interesting architecture use case that might be worth considering for Velair:

My Setup:

  • Living Room (Master): Thermostat + TRV. This room directly controls/triggers the boiler.

  • Kitchen, Bedroom, Office (Sub-zones): Individual Matter TRVs. They regulate local room temperature, but cannot trigger the boiler on their own.

The Challenge with Anticipation:

  • In my previous ecosystem (Netatmo), sub-zones could request heat from the boiler. With Matter/Tado X, they can’t.

  • I still need to enable anticipation on these sub-zones so their valves open in advance. Otherwise, when the living room turns the boiler on, the other rooms stay closed at Eco setpoint and miss the heating window.

  • However, an anticipation request from a sub-zone alone won’t start the heating if the Living Room isn’t demanding heat.

Idea / Suggestion:

It could be very useful to have an option in room settings to declare whether a Climate entity can trigger heat demand or is a dependent zone. Dependent zones could then align their preconditioning/opening with active heating cycles from the master zone, preventing false/failed learning cycles when the boiler is off.

Thanks again for your support!

Thanks for the update! Good to hear that the first learning cycle has been validated.

To better understand your boiler setup: is there a separate entity in Home Assistant that can turn the boiler on, or can it only be started through the living-room thermostat?

Also, can you see whether the boiler is actually running in Home Assistant? If so, which entity or attribute shows that?

Those details would help me assess your suggestion, particularly how Velair could tell when heat is available to the other rooms.

Hi @CristianGonzalezFern,

I ran a full check on my Home Assistant entities regarding the boiler setup:

Boiler Control Entity:

  • No separate entity exists. There is no switch, binary sensor, or dedicated climate entity for the boiler in HA.

  • The system runs 5 tado° entities via the Matter integration (climate.smart_thermostat_x for the main wired thermostat in the living room, plus 4 TRVs).

  • The boiler is triggered strictly by the physical dry-contact relay of the living room thermostat.

Boiler State / HVAC Action Feedback:

  • HA cannot see if the boiler/burner is actually running.

  • Matter climate entities do not expose the hvac_action attribute (heating / idle is unavailable).

  • The only available attributes are current_temperature and temperature.

This confirms that sub-zones cannot independently detect if the boiler is firing, making a “dependent zone” / Master-Slave logic in Velair, triggering sub-zone TRVs when the Master zone demands heat, even more valuable for setups using Matter climate entities!

I do not know if tado is planning to add one day this valuable information, maybe I can ask but I have no direct contact with the dev team.