Zwave switch receivedTS not updated following test_network

I have an automation which runs daily that checks if any zwave device has not been heard from for a week. It does this by looking at the receivedTS value. I noticed that while my battery powered devices wake up and update the receivedTS value, my wall powered zwave smart plugs do not ever update their receivedTS value. To remedy this, I set up another automation to run a nightly (3 am) zwave test_network. My understanding is that this test_network sends NOPs to all the zwave devices and should force an update of receivedTS, but this has not worked. The receivedTS of all my smart plugs is still old. The sentTS of the smart plugs all have a time a few seconds after 3am so the test_network service call is doing something.

Does anyone know what the expected behavior should be? Or if they have a way of checking if a zwave device is alive. I have my code below:

In automations.yaml:

- alias: Nightly Zwave test
  trigger:
    - platform: time
      at: '03:00:00'
  action:
    - service: zwave.test_network

In binary_sensors.yaml:

    some_zwave_device_is_missing:
      friendly_name: Some Z-wave device is missing
      entity_id: sensor.date
      value_template: > 
        {% set ns = namespace(flag = false) %}
        {% for state in states.zwave %}
        {%-set time_receivedTS = as_timestamp(strptime(state.attributes.receivedTS 
           | string | truncate(19,True,'',0),'%Y-%m-%d %H:%M:%S:%f'))%}
        {%-set time_now = as_timestamp(now())%}
        {% if (time_now-time_receivedTS)/60/60/24 >= 7 %}
        {% set ns.flag = true %}
        {% endif %}
        {% endfor %}
        {{ ns.flag }}

In alerts.yaml:

zwave_device_missing_alert:
  name: Z-wave device missing alert
  message: >
    The following Z-wave devices have not reported (are missing):
    {% for state in states.zwave %}
    {%-set time_receivedTS = as_timestamp(strptime(state.attributes.receivedTS 
          | string | truncate(19,True,'',0),'%Y-%m-%d %H:%M:%S:%f'))%}
    {%-set time_now = as_timestamp(now())%}
    {% if (time_now-time_receivedTS)/60/60/24 >= 7 %}
    {{ state.attributes.friendly_name }}
    {% endif %}
    {% endfor %}
  done_message: All Z-wave devices are reporting (none missing)
  entity_id: binary_sensor.some_zwave_device_is_missing
  state: 'on'
  repeat:
    - 10080
  can_acknowledge: true
  skip_first: false
  notifiers:
    - email_to_user1