Tutorial 5 — blinds and shutters
Part 2 — Tutorials. Continues the project from Tutorial 4.
What you will build
Two buttons that drive a blind properly:
Short press on ▲
slats tilt up a step
Long press on ▲
blind runs all the way up
Short press on ▼
slats tilt down a step
Long press on ▼
blind runs all the way down
Either button while moving
stops it
How blinds work in iNELS3
A blind actuator such as the JA3-02B/DC gives you two digital outputs — one for up, one for down — and it is interlocked internally so both can never be driven at once.
There is no "blind" function type. You control a blind with the digital functions you already know. The only trick is how long you energise the output:
Short — under a second
slats tilt a little
Long — enough to cover full travel
the blind runs from end to end
That is why the default project ships with exactly two shutter functions:
SHUTTER_PULL_UP/DOWN
Digital_Impulse_ON
1 minute
SHUTTER_TILT_UP/DOWN
Digital_Impulse_ON
0.8 seconds
One name for both directions, because the direction comes from which output you wire it to, not from the function.
The one-minute impulse is a maximum, not a duration. The actuator stops itself at the end stop; the impulse simply guarantees the output stays energised long enough to get there. If your blinds take longer than a minute of travel, make a longer version.
Step 1 — Add the blind actuator
Project ribbon tab → Device manager.
Select
Internal-Master/BUS1→ New unit → JA3-02BDC → OK.Set its Address to match the hardware and Description to
Living room blind.Close and save.
Then place and assign the outputs:
Design workspace tab → Controls ribbon tab → drag two output icons onto the plan.
Click the first → Connect → double-click the JA3-02B/DC output 1 → name it
Blind up.Click the second → Connect → output 2 → name it
Blind down.Drag two more button icons and connect them to two spare GSB3-40 buttons. Name them
Blind up buttonandBlind down button.
Check for yellow dots, then save.
Step 2 — Tilt on a short press
Function workspace tab → Functions ribbon tab → Add connection.
Drag from
Blind up button→Blind up.Drag from
Blind down button→Blind down.Switch Add connection off.
Wire manager → select the first wire → name it
Blind tilt up→ +:Action:
Short downUser function:
SHUTTER_TILT_UP/DOWN
Select the second → name it
Blind tilt down→ +:Action:
Short downUser function:
SHUTTER_TILT_UP/DOWN
Close, save, upload.
Short-press either button and the slats move a step. The same function on both wires moves the blind in opposite directions, because each wire drives a different output.
Step 3 — Full travel on a long press
Add a second action to each of the same two wires:
Wire manager →
Blind tilt up→ +:Action:
Long downUser function:
SHUTTER_PULL_UP/DOWN
Blind tilt down→ +:Action:
Long downUser function:
SHUTTER_PULL_UP/DOWN
Close, save, upload.
Hold a button and the blind runs to its end stop. Tap it and the slats tilt. Rename the wires to Blind up and Blind down — they do both jobs now.
Step 4 — Stop while moving
Pressing a button mid-travel should stop the blind. This is where the impulse functions need help.
Recall from Tutorial 2 that Digital_Impulse_ON does nothing if the output is already on. So pressing the up button while the blind is already running up does not stop it — it is ignored.
Add an explicit stop:
Wire manager →
Blind up→ +:Action:
Short upUser function:
DIGITAL_OFF
Do the same on
Blind down.Save, upload.
Short up fires on release, immediately after the Short down that started the tilt — so a tap gives you tilt-then-stop, and a press during travel cuts the output. Many installers wire the opposite button as the stop instead; both work.
Step 5 — Custom travel times
One minute rarely matches your blinds. Measure the real full travel, add a couple of seconds, and build your own:
Function manager → +
Name:
SHUTTER_PULL_25SFunction type:
DigitalSelect function:
Digital_Impulse_ONDigital delay (s):
00:00:00Digital impulse time (s):
00:00:25
✓, then swap it onto both
Long downactions.
Do the same for tilt if 0.8 s moves the slats too far — 00:00:00.4 is a common alternative.
Name by duration, not by room.
SHUTTER_PULL_25Sworks on every blind of that type in the building.LIVING_ROOM_BLINDworks on exactly one, and tells you nothing.
Step 6 — All blinds together
Same pattern as Tutorial 4:
Managers → Group manager → Add
Unicate name:
ALL_BLINDS_UP, TypeDigital→ ✓
Add a second:
ALL_BLINDS_DOWN,Digital→ ✓Groups workspace tab → drag out two group icons, assign them, then click each blue and add every blind's up output to the first, every down output to the second.
Wire a button to each group with
GroupDigital_Impulse_ONand your travel time.
Two groups, not one — up and down are separate outputs and must stay separate.
Never put up and down outputs in the same group. Energising both at once is exactly what the actuator's interlock exists to prevent, and a group function would try to do it on every command.
Going further: astronomical control
For blinds that close at sunset by themselves, add the Astronomical-Module as a slave in the Device manager. It gives you sunrise and sunset as actors, calculated from the date and the site's location.
Wire sunset → ALL_BLINDS_DOWN group and the building shades itself, all year, with no schedule to maintain. Covered in Tutorial 7.
What you learned
Blinds use digital functions — the impulse time is what distinguishes tilt from full travel
Direction comes from which output the wire drives, not from the function
Digital_Impulse_ONignores a press while the output is already on — add an explicit stopMeasure real travel time and build your own impulse functions
Up and down groups stay separate, always
Try this before moving on
Time your blinds and build
SHUTTER_PULL_<n>Sto match.Add a "shade the house" long press to the hallway button using both blind groups.
Add the blinds to your
Eveningscene from Tutorial 4.