Blinking text slows HMI button response: test it right

6 min read · Published November 11, 2026

Blinking static text adds a repaint every second, and on a loaded HMI screen that can turn a momentary button into what looks like a toggle: the command bit stays ON after release. Run ten press-and-release cycles with the blink off, then ten with it on, and compare how long the bit stays ON after release. If only the blink-on run hangs, disable the blink, bring the panel's programming software and firmware current, and retest before switching it back on.

Blinking static text can slow every button on an HMI screen, and a momentary button then behaves like a toggle: you press, the command bit turns ON, and it stays ON seconds after you let go. The blink loads the panel with repaints, and one controlled test settles which condition is at fault before you touch anything. Run ten press-and-release cycles with the blink off, then ten with it on, and time how long the command bit stays ON after each release. If the bit clears inside 0.5 s with the blink off and hangs for seconds with it on, disable the blink on that screen and bring the panel's programming software and firmware current. Here are the symptoms, the test, the numbers, and the decision at each result.

Symptoms and what each one points to

Match what you see against this list before changing a setting:

  • Buttons respond a second or more late, and the lag started when blinking text was added to the screen. Points to repaint load from the blink.
  • A momentary button's command bit stays ON after release, or the machine repeats the action. Points to a release write that lands late while the panel is busy repainting.
  • PLC logic that resets the bit makes the machine behave, but the screen still feels slow. Points to a masked fault: the reset hides the stuck command and leaves the load in place.
  • Buttons lag with the blink off. Points to the number of objects with live values on the screen.
  • Buttons lag even on a nearly empty screen. Points to the communications path.

For the wider case of a button that answers seconds late, why an HMI button response delay runs several seconds covers the other causes and the order to check them.

Why blinking text loads the panel

Blinking text is a repaint on a timer: the panel redraws that object on a fixed period for as long as the screen is shown. Set 1 s on and 1 s off and the panel repaints it once per second, 3,600 times an hour, whether or not anyone touches the screen.

A momentary button needs two writes per press: one to set the command bit ON at press and one to clear it at release, the same command-bit path described in make an HMI button turn on a PLC output through a command bit. Ten presses therefore mean 20 writes, a number the blink dwarfs. When the panel is busy repainting, the release write lands late. Whether the panel delays it or misses it, the PLC sees the same thing, a command that will not clear, and from the operator's side the momentary button reads as a toggle.

  1. Pick a button whose command cannot start motion, or run the test with the machine in a safe state, because a command that stays ON for seconds can repeat an action.
  2. Open a watch on the PLC address the button writes so you can see the bit change.
  3. Blink off. Press and release 10 times at a normal pace, about one press every 2 s. Time release-to-clear on each cycle and write down the longest.
  4. Blink on. Same 10 presses, same screen, nothing else changed. Record the longest release-to-clear again.
  5. Compare against this decision line: with the blink off, the bit should clear within 0.5 s of release. A deliberate press-and-release takes about 0.2 s, so 0.5 s leaves the panel margin. If blink-on holds the bit past 2 s while blink-off cleared inside 0.5 s, the blink is the cause.

Change one condition at a time so each result means something.

Example: one screen, two runs, one decision

A packing-line screen carries one static text line set to blink at 1 s on and 1 s off, plus four momentary buttons. The test button is the reject-station Start.

Load arithmetic first. One repaint per second is 3,600 repaints per hour. The ten press cycles in the test take 20 writes, so the blink line alone does 180 times the write activity of the whole test (3,600 ÷ 20 = 180).

Run 1, blink off: longest release-to-clear across the ten presses is 0.15 s. Prompt, inside the 0.5 s line.

Run 2, blink on: the bit is still ON 3.0 s after release, 20 times the blink-off figure (3.0 ÷ 0.15 = 20). The operator sees a button that holds.

Decision: the blink is the cause. Leave it off on this screen and take the update path below. Do not add reset logic to the PLC; it hides the symptom while the load stays.

Work down this list, one change per test:

  • Check the button action. Open the button's configuration and confirm it is a momentary action with a write at press and a write at release. A toggle-action button holds ON on purpose, and no screen change will alter that.
  • Cut the screen down. Copy the screen, delete everything except the button and one text object, 2 objects total, and repeat the ten presses. Fast on the copy points to the object count on the full screen, especially live numeric fields that update every scan.
  • Check the path. A serial link at 19.2 kbit/s carries a fraction of what 100 Mbit/s Ethernet carries; if the panel supports both, move the panel to Ethernet and repeat the ten presses. On a serial link, a timeout right after a write command is its own fault, and fix a Modbus RTU timeout right after a write command walks through that case.

Turn the blink off on the affected static text and run ten press-and-release cycles on every button on that screen. Each command bit should clear within 0.5 s of release. That is the production configuration until the panel is updated.

Then make the correction permanent. Record the panel model, the firmware version, and the programming software version. Back up the working project before anything else. Update the programming software and the panel firmware to the maker's current releases for that exact model, and load nothing built for a different panel; a wrong-model file is refused at load, as described in HMI firmware load says not a supported file. After the update, confirm the panel talks to the PLC before running the test again; HMI panel will not communicate after a firmware update covers the case where it will not. Where this behaviour has appeared, newer programming software and panel firmware cleared it, so the update is the lasting fix. Re-enable the blink only after both test runs pass.

With the blink enabled and the screen's normal objects live, run ten press-and-release cycles on each button. Every cycle should read ON at press and OFF at release, and the PLC should need no reset from your logic. Remove any reset logic added during the fault once the panel clears its own command; a reset that fires while the panel behaves hides the next stuck command.

If the bit stays ON with the blink off, the fault sits in the button configuration or the logic, not the blink. If lag returns only with the blink on after the update, leave the blink off on that screen and keep the version record with the test numbers for the panel maker.

Decision

Read the two runs against the decision line and act:

  • Blink off clears inside 0.5 s, blink on holds past 2 s: the blink is the cause. Disable it on that screen, update the programming software and firmware, and retest with the blink on before using it again.
  • Both runs slow: the load is screen objects or the communications path. Use the 2-object copy test to tell them apart, then move to Ethernet where the panel supports it.
  • The bit stays ON in both runs: check the button's momentary action and its release write first; the blink is out of this story.
  • Fast in every run: keep the blink and move on.

Recommendation: keep blinking text off any screen with momentary buttons until the panel runs current programming software and firmware. After the update, run the ten-press test with the blink on, and re-enable the blink on that screen only when every command bit clears within 0.5 s of release for ten consecutive presses.

Questions

Does a longer blink period reduce the load by half or more?

Yes, and the arithmetic is direct. A blink of 1 s on and 1 s off repaints the text once per second, 3,600 times an hour. Stretch the period to 2 s on and 2 s off and the count halves to 1,800. The ten-press test still decides: after any change to the period, confirm the command bit clears within 0.5 s of release. If it clears, keep the blink at the slower period; if it hangs, leave the blink off on that screen.

Why does a held command bit repeat a machine action?

It depends on how the logic reads the bit. Rising-edge logic acts once, at the instant the bit turns ON, so a command held for seconds usually repeats nothing until the bit finally clears and the next press arrives. Level logic acts for as long as the bit is ON, so a command held for 3 s reads as three seconds of demand and can repeat an action the whole time. Check which style your logic uses before the test, because it tells you what a slow release will do on your machine.

What do I save before updating the panel?

The working project first: save it from the programming software and copy the file off the engineering workstation. Record three things beside it: the panel model, the firmware version shown on the panel's information screen, and the programming software version from its about screen. Take the update files only from the panel maker or its distributor, matched to that exact model. If the update goes wrong, the backup returns the screen to the state that passed the ten-press test.

Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.

Keep reading

Build your signAsk for a quote