Smart (Components) Toolkit — v1.10.7
Full Documentation: Smart (Components) Toolkit for Homey
Replace complex flow networks with powerful logic devices controlled by dynamic formulas. Make your flows cleaner, more readable, and easier to maintain.
→ Full Documentation & Interactive Tools
Circadian Light Group — now on stable
A virtual light device that adjusts brightness and color temperature for a group of real lights — automatically following a circadian rhythm. As of v1.10.7 it ships on both the stable and test channels.
What’s new in 1.10.x
- Parallel device writes (v1.10.7). Multi-device flow actions and the scheduler push to up to 5 lights at the same time instead of one-after-another. A 16-light “turn on all” goes from minute-scale to seconds.
- Last-write-wins on conflicting commands (v1.10.7). Trigger “all off” right after “all on” and the off command supersedes the in-flight on, instead of fighting it on every lamp. Each pass also verifies the on/off state afterwards and serially retries transient Z-Wave / Zigbee timeouts.
- Group-level “Turn on / off all members” actions (v1.10.7). Convenience cards that switch every enabled light in the group, respecting the current circadian dim/temperature when turning on.
- Tunable-light fix (v1.10.5). Tuneable bulbs now correctly become warmer (not cooler) towards evening.
- Pre-warm auto-detection during pairing (v1.10.2). A wizard step tests each light by briefly cycling it off, pre-setting
dim/light_temperature/light_hue/light_saturation, then turning back on to verify the value persisted. Each capability is marked ✓/✗ per device, with a re-test button available later via Repair. - Smarter candidate filter (v1.10.2). Lights registered as
socketwithvirtualClass: light(Hue/Z2M-bridged lamps) and Z-Wave dimmer modules with adimcapability are now picked up automatically. - “Turn on light at current circadian level” action (v1.10.2). Pick any member of the group from a dropdown — the action sets temperature/colour and dim, then turns the light on, in one step. Avoids the brief flash at the previous brightness for lamps that don’t support pre-warming.
Why use it?
- Bright cool light during the day, warm dim light in the evening, deep red at night to preserve melatonin and night vision.
- Works at any latitude — pick clock times, solar events, or lux-sensor thresholds per phase.
- Doesn’t turn lights on or off; it only adjusts already-on lights, so it never fights with your other automations.
Anchor modes (mix and match per phase)
| Mode | Description |
|---|---|
| Time | Fixed clock time (HH:MM). Best near the equator. |
| Solar event | Sunrise, sunset, civil/nautical/astronomical dawn/dusk, golden hour, blue hour, solar noon/midnight — with offset minutes and a polar fallback time. |
| Lux sensor | A real lux sensor crosses a configurable threshold (rising or falling). Falls back to a fixed time until the first crossing of the day. |
Light profile
- Per-phase dim and temperature with smooth interpolation between anchors.
- Red mode threshold: when the calculated temperature drops below the threshold, color-capable lights shift to red. Saturation scales with how deep below the threshold you are.
- Per-light tweaks: enable/disable, prewarm before on, allow red mode, min/max dim.
Outdoor light source
Choose how the device knows how bright it is outside:
- Astronomical (sun-elevation calculation)
- Homey lux sensor
- Open-Meteo / MET.no (radiation-based estimate)
- External value pushed from a Flow
25 new flow cards
Triggers: phase changed, red mode started/ended, paused/resumed, turned on/off, target changed, error, outdoor light requested. Plus an app-level “Solar event occurred” card with all 14 events + offset, usable from any flow.
Conditions: is in phase, red mode active, is paused, is on.
Actions: pause (sec/min/hour), pause until time, pause until solar event, resume, turn on/off/toggle, set red threshold, apply temporary state (override dim/temp/saturation/red — restored on next tick, perfect for testing or quick “moods”), force red mode (with optional duration), apply now, set outdoor lux, turn on light at current circadian level (pick any group member from dropdown), turn on / off all members (group-level convenience).
→ Read full Circadian Light Group guide
Other devices and flow cards
| Device | Purpose |
|---|---|
| Logic Device | Boolean logic with visual wizard. Combine device states into TRUE/FALSE using formulas like A AND B. |
| Logic Unit | Advanced boolean logic with multiple formulas per device. JSON configuration. |
| State Device | Scene management — capture states at setup, apply with one action. |
| State Capture Device | Dynamic state capture at runtime. Push/pop stack for temporary changes, named slots, JSON backup/restore. |
| Flow Card (no device needed) | Purpose |
|---|---|
| Conditional Gates | Simple GO/NO GO flow control without variables or devices. |
| Waiter Gates | Pause flow until a device capability reaches a target value. |
| Evaluate Expression | Range checking and value mapping with AND/OR logic. |
Quick examples
Doorbell ring → push state, change lights, restore:
WHEN: Doorbell rings
THEN: Push current state to stack
THEN: Set all lights to 100%
THEN: Wait 5 minutes
THEN: Pop state (restore previous)
Conditional Gate gating two flows:
Flow 1 — WHEN: Motion sensor triggered
THEN: Modify Conditional Gate "allow_lights" → GO
Flow 2 — WHEN: Door opened
AND: Gate "allow_lights" is GO
THEN: Turn on lights
Waiter Gate waiting for temperature:
WHEN: Button pressed
THEN: Turn on coffee machine
THEN: Wait until coffee machine temperature ≥ 90°C (timeout 5 min)
→ YES: Send notification "Coffee ready!"
→ NO: Send notification "Coffee machine timeout"
Documentation
- Getting Started Guide
- Device Types Guide
- Circadian Light Group
- State Device
- State Capture Device
- Conditional Gates
- Waiter Gates
- Flow Cards Reference
Installation and Links
- Homey App Store (v1.10.7, stable): Install Smart (Components) Toolkit
- Test channel (also v1.10.7): Install test version
- GitHub Repo: github.com/tiwas/SmartComponentsToolkit
- Online Emulator: Boolean Logic Emulator
- Formula Builder: Formula Builder
Feedback & Support
Found a bug or have a suggestion? Please report it:
- GitHub Issues: Report here
- This Forum Thread: Reply below!
Circadian Light Group feedback is especially appreciated — Z-Wave/Zigbee mesh behaviour varies a lot between setups, so real-world reports help tuning.
Support the Project
If you find Smart (Components) Toolkit useful, consider supporting its development:
Smart (Components) Toolkit — Simplify complex logic, state management and circadian lighting in your Homey flows ![]()



