Feature Request: Enhancements for Homey Pro Advanced Flows

Feature Request: Enhancements for Homey Pro Advanced Flows
Here are a few feature suggestions that would significantly improve the creation of complex and reliable automations in Advanced Flows.

  1. Set/Reset (SR) Flip-Flop Logic Block
    A dedicated Set/Reset (SR) logic block would be a fantastic addition to the existing AND/OR functions. This would eliminate the need for cumbersome workarounds using multiple boolean variables to simulate this essential function.
  • Problem: Currently, creating a latching or stateful logic (e.g., keeping a device on after a trigger until a specific reset condition is met) requires creating at least two separate flows and a boolean variable to manage the state. This process is complex, clutters the variable list, and can become unreliable in complex automations.
  • Solution: A native “SR Flip-Flop” block would have two inputs: Set (S) and Reset (R).
    • Sending a signal to the Set input would turn the block’s output to TRUE.
    • The output would remain TRUE until a signal is sent to the Reset input, which would turn the output to FALSE.
  • Benefit: This would dramatically simplify automation logic, reduce the number of required variables, and make flows cleaner and more robust.
  1. Variable Management with Folders
    As the number of variables grows, managing them becomes increasingly difficult. The ability to group variables into folders would be a massive improvement for organization.
  • Problem: The current flat list of variables is disorganized and hard to navigate, especially in complex setups with many devices and flows.
  • Solution: Allow users to create folders to categorize variables (e.g., by room, device type, or function like “Lighting,” “Security,” or “Heating”).
  • Benefit: This would provide a much clearer and more structured overview, making it easier to find, manage, and debug variables.
  1. Calculation and Math Functions for Numeric Variables
    A function to perform mathematical calculations directly within a flow would be incredibly powerful for creating dynamic automations.
  • Problem: Currently, any mathematical operation (like applying an offset to a sensor value or combining two numbers) cannot be done directly. This limits the possibilities for creating sophisticated, data-driven automations.
  • Solution: Introduce a “Calculate” or “Math” block that allows basic arithmetic operations (+, -, *, /) on numeric variables. For example:
    • [Sensor A Value] + 5 = Output
    • [Variable X] * [Variable Y] = Output
  • Benefit: This would enable the creation of offsets, dynamic adjustments, and complex interactions between different numerical data points, unlocking a new level of automation creativity.
1 Like

+1

I probably don’t get your point, but to me this sounds exactly the same as toggling a boolean var.
SET bool to true
SET bool to false, wich is RESET in your words;
Both states remain true forever.

Hmmmm, you mean math.js, Finkspace?

Organizing variables would be great indeed! Also the pop-up window in the web app with variables is small/narrow, so you often can’t see the full variable name/value. A permanently displayed section (like in the navigation bar), that you can toggle on/off would be more practical, in my sense.

Set/Reset (SR) Flip-Flop Logic Block: can you provide an example?

Numerical math functions are already possible, as @Peter_Kawa indicated in his post. Did you know that, in addition to numerical functions, the Better Logic Library app, also allows you to apply JavaScript functions on strings/text based variables?

Looks lik you mix up state driven architecture with the event driven that Homey uses.
There is no And / Or logic blocks in the advanced flow. The ALL and ANY may look visual like it.

Lines in AF are not high or low, not true or false…

So an AND is chaining two conditions behind each other … then the trigger continues to the output and triggers the next.

The memory you wanted in a flipflop is in a logic variable.

I think this would be limited in its usefulness without a variable to hold the state of the flip-flop. Often I find that I want to use the state in a number of flows, in that case I think a variable is the natural way to make it available to them.
If it’s just to keep a device on after a trigger, I would expect the device itself to remember the state without the need for a variable.

2 Likes

By testing a flow you lose the controle over the Flip variable.

The Flip variable is in the beginning of that flow and you make some changes further down.
Every restart of that flow change the Flip variable.

There is an app Sets that handles bit-sets, but it is not ported to SDK3 and thus not available for Homey Pro 2023.