A blinking text prompt can delay every button on an HMI screen and make momentary buttons hold on like toggles. Turn the blink off first, prove the buttons with a three-run on and off test, and keep the prompt static. Change PLC logic only when the held bit survives the test.
When one blinking text prompt makes every button on a screen respond late, turn the blink off before you write a single line of PLC code. On one panel, a static text window set to blink through the text object's advanced settings delayed every button already on that screen, and the momentary buttons held on after release like toggles. With the blink off, everything returned to normal. This page shows how to restore the screen, prove the trigger with a three-run on and off test, and fix the prompt without patching logic that was never at fault.
What each symptom points to
Match what you see to one of these before you change anything:
- Buttons go late only while one text prompt blinks. The blink is the trigger. Restore the screen first, then run the on and off test below.
- A momentary button stays on after release and behaves like a toggle. The release transition is arriving late or not at all. Work through the button and the blink before the PLC.
- Buttons are late on every screen, blink on or off. The prompt is innocent and the panel itself is loaded. Start with the checks for slow HMI panel touch and screen update delays.
- One button lags while the rest respond normally. Follow that single control through its response chain, as in why an HMI button lags seconds before the graphic moves.
Write down the screen name, the text object and its blink setting, and which buttons are affected. You will need all three if the test clears the blink.
Turn the blink off first
The restore comes before the diagnosis. In the panel's project software, open the text object's properties and turn off the blink control; on this panel it sits behind the object's advanced settings. Load the project and press every button on the screen through several press and release cycles.
Change only the blink. Leave every momentary button configured as momentary, add no reset rungs, and touch no other object. If the buttons come back, you have a working line and a clean recipe for reproducing the fault. If they stay late, the blink is not the cause, and the last section of this page is where to go next.
Run the on and off blink test
The test must show the fault tracking the blink state. Change nothing but the blink between runs:
- Blink off. Press and release the worst affected button ten times. Watch the PLC tag through every cycle and note whether it clears when you lift off.
- Blink on. Repeat the same ten cycles on the same button, with the button action and the PLC logic untouched.
- Blink off again. Ten more cycles to close the loop.
The judgement rule: the held bit and the late response must appear in run 2 and in run 2 only. If the tag holds after release in the blink-on run and clears in both blink-off runs, the blink is the trigger and the fix below applies. If the tag holds in all three runs, the blink is innocent: the fault sits in the button's action or in the logic that consumes the tag.
Why a momentary button acts like a toggle
A momentary button is two transitions: the press sets the tag, the release clears it. The PLC scan is not the weak link. A small controller completes a scan in 1 to 10 ms, the range typical of vendor specifications for small PLCs, while a deliberate press and release at a normal working pace lasts about 250 ms. At a 5 ms scan, one press spans 50 scans, so the program cannot miss a pulse that arrives on time.
A tag still set after the operator's finger is off the button means the release transition itself came late or never came. Resetting the tag in code hides the missed release and leaves the real fault in place. One safety rule belongs here: IEC 60204-1, the machine electrical standard, requires an emergency stop to act through hardwired electromechanical components, with no dependence on panel software, so a momentary screen button must never carry that function. Use screen buttons for commands where a held-on state cannot hurt anyone. For how long the bit stays visible to the program, see how many PLC scans an HMI momentary button bit stays on.
Worked example: one blinking prompt and six momentary buttons
Inputs, with their sources:
- Screen: six momentary buttons and one static text prompt set to blink through its advanced settings. This is the case behind this page: with the blink enabled, every button went late and the momentary ones held on.
- PLC scan time: 5 ms, taken from the middle of the 1 to 10 ms range typical for a small controller.
- Press and release duration: 250 ms, a deliberate press at a normal working pace.
- Test plan: three conditions, ten cycles per condition, tag watched through every cycle.
Rule in words: scans per press equals press duration divided by scan time. A momentary command is only trustworthy if the program sees the release transition inside the span of the press.
Arithmetic: 250 ms ÷ 5 ms per scan = 50 scans per press and release. The test itself is 3 conditions × 10 cycles = 30 cycles, at 10 s per cycle about 300 s, five minutes with the tag displayed.
Results:
- Run 1, blink off: 10 of 10 releases clear the tag within a scan of lift-off.
- Run 2, blink on: the graphic follows the press late, and the tag is still set after several releases.
- Run 3, blink off: 10 of 10 clean again.
Decision: the held bit appears only while the prompt blinks, so the blink is the trigger. Keep the prompt static and remove the reset code added while diagnosing; no logic change is needed. If the tag had held in all three runs, the fix would belong to the button's action and its reset path instead, and the blink could stay.
The permanent fix
Leave the blink off on that panel. A prompt the operator must read before pressing works just as well static: place it next to the button, give it strong contrast, and let the layout carry the urgency. If the message is conditional, check whether your project software can flash an object only while a linked tag is out of range, or drive the flash from a script; that ties the animation to a real condition instead of a constant blink.
If animation stays anywhere else on the panel, look at the blink speed setting most packages expose: a choice of slow, medium and fast, or a numeric blink frequency. A lower speed repaints less often and cuts display work. Whatever you choose, retest with the same ten cycles after each change, one display feature at a time. When the screen is final, save, load the project to the panel, and run the whole operator sequence: read the prompt, press, release, and check the machine response on every button, including repeated presses.
When the delay survives the test
If the buttons stay late with the blink off in all three runs, stop treating the prompt as the cause. Go back to the button's configured action, the tag mapping, and the PLC logic that latches or resets the tag. Then check the panel's general condition: the checks for slow HMI panel touch and screen update delays cover screen-wide lag, and the trace in why an HMI button lags seconds before the graphic moves covers a single slow control. If the fault still points inside the panel, collect the model, project software version, screen and object names, blink setting, and the tag values through press and release for both blink states, and take all of it to the panel maker's support channel.
Recommendation: Turn the blink off, prove the original buttons with ten press and release cycles, and run the three-condition test before any PLC change. Remove reset code that was added to mask a held-on momentary bit. Keep the prompt static unless the test shows the fault does not track the blink; only then work through button logic and panel load.
If the floor also needs a separate notice board or an andon-style status screen, that is a different job from the machine's HMI; the shop-floor screens category shows what those displays are built for.
Questions
Will this happen on every panel that blinks text?
One panel is not a census. Some panels blink text for years without trouble; on the panel in this case, a single blinking object was enough to upset every button on the screen. The on and off test is what tells you which kind of panel you have, so run it before you decide whether blinking text can stay in your project library.
Is there a way to keep animation and still get fast buttons?
Some packages offer a fast display mode that reduces the redraw work per object. It deserves one trial after the on and off test has shown the blink is the trigger: enable it, retest ten cycles on every affected button, and keep it only if every release clears the tag. If the delay returns with fast display enabled, the reliable fix on that panel is a static prompt.
Why not leave the reset rung in the PLC?
Because it hides the missed release instead of fixing it. The screen can draw the button as pressed while the program has already cleared the command, so the panel and the controller disagree about the same input. The button still releases late, and the next troubleshooting session starts from logic that no longer matches what the panel actually sends.
What should I send the panel maker if I need to escalate?
The panel model, the project software version, the screen name, the text object with its blink setting, the list of buttons that went late, and the tag values through press and release for both blink states. Add the three-run test result and the exact steps that reproduce the fault. With that record, support can reproduce the behavior instead of guessing at causes.
Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.