# Siemens Enhanced driver, slow browsing and slow update rate

**URL:** <https://forum.inductiveautomation.com/t/siemens-enhanced-driver-slow-browsing-and-slow-update-rate/114287>\
**Category:** Ignition\
**Created:** [March 3, 2026, 8:53am UTC](https://forum.inductiveautomation.com/t/siemens-enhanced-driver-slow-browsing-and-slow-update-rate/114287 "2026-03-03T08:53:22Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [March 19, 2026, 8:37pm UTC](https://forum.inductiveautomation.com/t/siemens-enhanced-driver-slow-browsing-and-slow-update-rate/114287/6 "2026-03-19T20:37:12Z")

</div>

A technique I find helpful when comms performance varies is to use a fast-changing tag in the PLC (I tend to use a GSV to retrieve WallClock currentValue, a microsecond clock) and subscribe to it in Ignition. The ladder that updates the tag should run faster than the fastest poll rate you are attempting to achieve. This yields a valueChange for every poll cycle.

Adjacent to the Ignition tag, add a memory tag of type Int8 and use a valueChange script on the OPC tag that looks something like this:

```python
    if not initialChange:
        delta = currentValue.timestamp.time - previousValue.timestamp.time
        system.tag.writeBlocking(['[.]DeltaMillis'], [delta])

```

Turn on history for the memory tag with **zero** min time between samples.

Trend the memory tag. Discrepancies between the OPC tag's group rate and the actual delivery intervals will jump right out at you.

{ .writeBlocking is only safe in this usage because the target is a memory tag. }

---

_[View the full topic](https://forum.inductiveautomation.com/t/siemens-enhanced-driver-slow-browsing-and-slow-update-rate/114287)._
