MQTT2_Worx: No PINGRESP for last PINGREQ (at 2026-09-12 11:06:05), disconnecting

Begonnen von bertl, 12 September 2026, 12:17:34

Vorheriges Thema - Nächstes Thema

bertl

Hallo Leute,

ich bekomme seit einigen Tagen im Logfile ständig die Meldung
2026.09.12 11:16:07 2: MQTT2_Worx: No PINGRESP for last PINGREQ (at 2026-09-12 11:06:05), disconnectingobwohl anscheinend alles normal funktioniert, sprich ich bekomme Werte.
Diese Meldungen trat erst auf, als mein Internet Service Providers (EnergieAG) die IP-Adresse von einer öffentlichen-IPv4 auf eine Carrier-Grade-NAT-IPv4 umstellte.

Fragen:
  • Was genau bedeutet diese Meldung, nachdem ja alles funktioniert?
  • Muss ich bei den Attributen was umstellen / einstellen um diese Meldung im Logfile nicht mehr zu bekommen?
  • Was ist sonst noch zu beachten?

list vom MQTT2_Client
Internals:
   BUF       
   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
   ClientsKeepOrder 1
   DEF        xx
   DeviceName iot.eu-west-1.worxlandroid.com:443
   FD         36
   FUUID      66bb6dfd-f33f-3e1e-96ec-c3f94fe83e59c3d7
   NAME       MQTT2_Worx
   NR         820
   PARTIAL   
   SSL        1
   STATE      opened
   TYPE       MQTT2_CLIENT
   WBCallback
   autocreate 1
   clientId   WX/USER/<id1>/FHEM/<id2>
   devioLoglevel 4
   eventCount 598
   landroidType worx
   lastMsgTime 1789205774.34912
   mqttEndpoint iot.eu-west-1.worxlandroid.com
   nextOpenDelay 180
   nrConnects 150
   userId     <id1>
   MatchList:
     1:MQTT2_DEVICE ^.
     2:MQTT_GENERIC_BRIDGE ^.
   READINGS:
     2026-09-12 11:36:13   state           opened
     2024-10-14 11:23:49   wxid            <id2>
   sslargs:
     SSL_alpn_protocols mqtt
Attributes:
   connectFn  {use LandroidUtils;Landroid_connect($NAME,"worx",1)}
   devStateIcon {
  if( AttrVal( $name,'disable','0' ) == 1 ) {
    "<span style='color:red;font-weight:bold'>disabled</span>"
  }
  else {
    "<span style='color:blue;font-weight:bold'>".ReadingsVal( $name,'state','-' )."</span>"
  }
}
   disable    0
   disabledForIntervals 23:00-24:00 00:00-07:05
   execAfterConnect { my $h=$defs{$NAME};MQTT2_CLIENT_doPublish($h,'PRM100/<id>/commandIn','{}')}
   group      MQTT2_DEVICE,Worx
   icon       Maehroboter
   keepaliveTimeout 600
   maxFailedConnects 20
   nextOpenDelay 180
   room       Draussen,MQTT2
   sortby     02
   subscriptions PRM100/<id>/commandOut
   username   <mailadresse>
   verbose    3

list vom MQTT2_Device
Internals:
   FUUID      <id2>
   IODev      MQTT2_Worx
   LASTInputDev MQTT2_Worx
   MQTT2_Worx_MSGCNT 140
   MQTT2_Worx_TIME 2026-09-12 11:36:14
   MSGCNT     140
   NAME       MQTT2_Worx_M700
   NR         822
   STATE      partyMode
   TYPE       MQTT2_DEVICE
   eventCount 142
   Helper:
     DBLOG:
       batteryCharging:
         myDbLog:
           TIME       1789203714.75572
           VALUE      1
       battery_charge_cycles_total:
         myDbLog:
           TIME       1789136090.00709
           VALUE      285
       borderLength:
         myDbLog:
           TIME       1789104862.36286
           VALUE      164
       mowerErrorIndex:
         myDbLog:
           TIME       1789195819.61269
           VALUE      0
       mowerErrorTxt:
         myDbLog:
           TIME       1789195819.61269
           VALUE      No error
       mowerStatusIndex:
         myDbLog:
           TIME       1789203714.75572
           VALUE      1
       mowerStatusTxt:
         myDbLog:
           TIME       1789203714.75572
           VALUE      Home
   JSONMAP:
     cfg_modules_DF_cut moduleOLM_forbiddenArea_enabled
     cfg_modules_DF_fh moduleOLM_shortcut_enabled
     cfg_modules_US_enabled moduleACS_enabled
     cfg_rd     mowerRainDelay
     cfg_sc_m   mowerActiveIndex
     cfg_sc_p   mowerTimeCorrection
     cfg_sn     SerialNumber
     cfg_tq     torqueSetting
     dat_bt_c   batteryCharging
     dat_bt_nr  battery_charge_cycles_total
     dat_bt_p   batteryPercent
     dat_bt_t   batteryTemperature
     dat_bt_v   batteryVoltage
     dat_dmp_1  directionPitch
     dat_dmp_2  directionRoll
     dat_dmp_3  directionYaw
     dat_fw     firmware
     dat_le     mowerErrorIndex
     dat_ls     mowerStatusIndex
     dat_modules_DF_stat moduleOLM_status
     dat_modules_US_stat moduleACS_status
     dat_rsi    wifiQuality
     dat_st_b   blade_work_time_total
     dat_st_bl  borderLength
     dat_st_d   distance_covered_total
     dat_st_wt  mower_work_time_total
   READINGS:
     2026-09-10 09:35:48   IODev           MQTT2_Worx
     2026-09-12 11:36:14   SerialNumber    <SerialNumber>
     2026-09-12 11:36:13   area_mowed      0
     2024-10-14 11:35:46   attrTemplateVersion 20221101
     2026-09-12 11:36:14   batteryCharging 1
     2026-09-12 11:36:14   batteryPercent  34
     2026-09-12 11:36:14   batteryTemperature 24.5
     2026-09-12 11:36:14   batteryVoltage  18.38
     2026-09-12 11:36:13   battery_charge_cycles 285
     2026-09-12 11:36:13   battery_charge_cycles_reset 0
     2026-09-12 11:36:14   battery_charge_cycles_total 285
     2026-09-12 11:36:13   blade_height_shift 0
     2026-09-12 11:36:13   blade_work_time 51337
     2026-09-12 10:56:05   blade_work_time_day 166
     2026-09-11 23:59:00   blade_work_time_midnight 51337
     2026-09-12 11:36:13   blade_work_time_reset 0
     2026-09-12 11:36:14   blade_work_time_total 51506
     2026-09-12 11:36:14   borderLength    164
     2026-09-12 11:36:13   capabilities_1  auto_lock
     2026-09-12 11:36:13   capabilities_10 lock
     2026-09-12 11:36:13   capabilities_11 mqtt
     2026-09-12 11:36:13   capabilities_12 multi_zone_percentage
     2026-09-12 11:36:13   capabilities_13 multi_zone
     2026-09-12 11:36:13   capabilities_14 one_time_scheduler
     2026-09-12 11:36:13   capabilities_15 ota_upgrade
     2026-09-12 11:36:13   capabilities_16 pairing_smartconfig
     2026-09-12 11:36:13   capabilities_17 pause_over_border
     2026-09-12 11:36:13   capabilities_18 pause_over_wire
     2026-09-12 11:36:13   capabilities_19 rain_delay
     2026-09-12 11:36:13   capabilities_2  bluetooth_always_on
     2026-09-12 11:36:13   capabilities_20 rain_delay_start
     2026-09-12 11:36:13   capabilities_21 safe_go_home
     2026-09-12 11:36:13   capabilities_22 scheduler_two_slots
     2026-09-12 11:36:13   capabilities_23 schedule_disable
     2026-09-12 11:36:13   capabilities_24 unrestricted_mowing_time
     2026-09-12 11:36:13   capabilities_25 zone_keeper
     2026-09-12 11:36:13   capabilities_3  bluetooth_control
     2026-09-12 11:36:13   capabilities_4  bluetooth_only_pairing
     2026-09-12 11:36:13   capabilities_5  bluetooth_pairing
     2026-09-12 11:36:13   capabilities_6  border_cut
     2026-09-12 11:36:13   capabilities_7  digital_fence_settings
     2026-09-12 11:36:13   capabilities_8  display_pairing_shortcut
     2026-09-12 11:36:13   capabilities_9  follow_border
     2026-09-12 11:36:14   cfg_al_lvl      0
     2026-09-12 11:36:14   cfg_al_t        60
     2026-09-12 11:36:14   cfg_cmd         0
     2026-09-12 11:36:14   cfg_dt          12/09/2026
     2026-09-12 11:36:14   cfg_id          1
     2026-09-12 11:36:14   cfg_lg          de
     2026-09-12 11:36:14   cfg_mz_1        0
     2026-09-12 11:36:14   cfg_mz_2        0
     2026-09-12 11:36:14   cfg_mz_3        0
     2026-09-12 11:36:14   cfg_mz_4        0
     2026-09-12 11:36:14   cfg_mzk         1
     2026-09-12 11:36:14   cfg_mzv_1       0
     2026-09-12 11:36:14   cfg_mzv_10      0
     2026-09-12 11:36:14   cfg_mzv_2       0
     2026-09-12 11:36:14   cfg_mzv_3       0
     2026-09-12 11:36:14   cfg_mzv_4       0
     2026-09-12 11:36:14   cfg_mzv_5       0
     2026-09-12 11:36:14   cfg_mzv_6       0
     2026-09-12 11:36:14   cfg_mzv_7       0
     2026-09-12 11:36:14   cfg_mzv_8       0
     2026-09-12 11:36:14   cfg_mzv_9       0
     2026-09-12 11:36:14   cfg_sc_d_1_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_1_2    465
     2026-09-12 11:36:14   cfg_sc_d_1_3    0
     2026-09-12 11:36:14   cfg_sc_d_2_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_2_2    465
     2026-09-12 11:36:14   cfg_sc_d_2_3    1
     2026-09-12 11:36:14   cfg_sc_d_3_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_3_2    465
     2026-09-12 11:36:14   cfg_sc_d_3_3    0
     2026-09-12 11:36:14   cfg_sc_d_4_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_4_2    465
     2026-09-12 11:36:14   cfg_sc_d_4_3    0
     2026-09-12 11:36:14   cfg_sc_d_5_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_5_2    465
     2026-09-12 11:36:14   cfg_sc_d_5_3    0
     2026-09-12 11:36:14   cfg_sc_d_6_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_6_2    465
     2026-09-12 11:36:14   cfg_sc_d_6_3    1
     2026-09-12 11:36:14   cfg_sc_d_7_1    07:15
     2026-09-12 11:36:14   cfg_sc_d_7_2    465
     2026-09-12 11:36:14   cfg_sc_d_7_3    0
     2026-09-12 11:36:14   cfg_sc_dd_1_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_1_2   0
     2026-09-12 11:36:14   cfg_sc_dd_1_3   0
     2026-09-12 11:36:14   cfg_sc_dd_2_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_2_2   0
     2026-09-12 11:36:14   cfg_sc_dd_2_3   0
     2026-09-12 11:36:14   cfg_sc_dd_3_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_3_2   0
     2026-09-12 11:36:14   cfg_sc_dd_3_3   0
     2026-09-12 11:36:14   cfg_sc_dd_4_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_4_2   0
     2026-09-12 11:36:14   cfg_sc_dd_4_3   0
     2026-09-12 11:36:14   cfg_sc_dd_5_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_5_2   0
     2026-09-12 11:36:14   cfg_sc_dd_5_3   0
     2026-09-12 11:36:14   cfg_sc_dd_6_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_6_2   0
     2026-09-12 11:36:14   cfg_sc_dd_6_3   0
     2026-09-12 11:36:14   cfg_sc_dd_7_1   00:00
     2026-09-12 11:36:14   cfg_sc_dd_7_2   0
     2026-09-12 11:36:14   cfg_sc_dd_7_3   0
     2026-09-12 11:36:14   cfg_sc_distm    0
     2026-09-12 11:36:14   cfg_sc_ots_bc   0
     2026-09-12 11:36:14   cfg_sc_ots_wtm  0
     2026-09-12 11:36:14   cfg_tm          11:36:48
     2026-09-12 11:36:13   city_country_id 40
     2026-09-12 11:36:13   city_created_at 2018-02-15 22:31:57
     2026-09-12 11:36:13   city_id         <city_id>
     2026-09-12 11:36:13   city_latitude   <city_latitude>
     2026-09-12 11:36:13   city_longitude  <city_longitude>
     2026-09-12 11:36:13   city_name       Breitenried
     2026-09-12 11:36:13   city_updated_at 2018-02-15 22:31:57
     2026-09-12 11:36:13   created_at      2024-03-09 11:46:16
     2026-09-12 11:36:14   dat_act         1
     2026-09-12 11:36:14   dat_bt_m        0
     2026-09-12 11:36:14   dat_conn        wifi
     2026-09-12 11:36:14   dat_fwb         1
     2026-09-12 11:36:14   dat_lk          0
     2026-09-12 11:36:14   dat_lz          0
     2026-09-12 11:36:14   dat_mac         <dat_mac>
     2026-09-12 11:36:14   dat_rain_cnt    0
     2026-09-12 11:36:14   dat_rain_s      0
     2026-09-12 11:36:14   dat_tr          0
     2026-09-12 11:36:13   diagnostic      true
     2026-09-12 11:36:14   directionPitch  -0.5
     2026-09-12 11:36:14   directionRoll   2.5
     2026-09-12 11:36:14   directionYaw    44.0
     2026-09-12 11:36:13   distance_covered 888009
     2026-09-12 11:01:54   distance_covered_day 2902
     2026-09-11 23:59:00   distance_covered_midnight 888009
     2026-09-12 11:36:14   distance_covered_total 890911
     2026-09-12 11:36:14   firmware        3.36
     2026-09-12 11:36:13   firmware_auto_upgrade true
     2026-09-12 11:36:13   firmware_version 3.36.0+1
     2026-09-12 11:36:13   id              <id>
     2026-09-12 11:36:13   improvement     true
     2026-09-12 11:36:13   iot_registered  true
     2026-09-12 11:36:13   lawn_perimeter  164
     2026-09-12 11:36:13   lawn_size       539.55938720703
     2026-09-12 11:36:13   locked          false
     2026-09-12 11:36:13   mac_address     <mac_address>
     2026-09-12 11:36:14   moduleACS_enabled 1
     2026-09-12 11:36:14   moduleACS_status ok
     2026-09-12 11:36:14   moduleOLM_forbiddenArea_enabled 1
     2026-09-12 11:36:14   moduleOLM_shortcut_enabled 0
     2026-09-12 11:36:14   moduleOLM_status ok
     2026-09-12 11:36:14   mowerActiveIndex 1
     2026-09-08 10:46:12   mowerActiveTxt  Yes
     2026-09-12 11:36:14   mowerErrorIndex 0
     2026-09-12 08:50:19   mowerErrorTxt   No error
     2026-09-12 11:36:14   mowerRainDelay  60
     2026-09-12 11:36:14   mowerStatusIndex 1
     2026-09-12 11:01:54   mowerStatusTxt  Home
     2026-09-12 11:36:14   mowerTimeCorrection 0
     2026-09-12 11:36:13   mower_charging_time 0
     2026-09-12 11:36:13   mower_error_time 0
     2026-09-12 11:36:13   mower_home_time 0
     2026-09-12 11:36:13   mower_work_time 53668
     2026-09-12 11:01:54   mower_work_time_day 172
     2026-09-11 23:59:00   mower_work_time_midnight 53668
     2026-09-12 11:36:14   mower_work_time_total 53840
     2026-09-12 11:36:13   mqtt_endpoint   iot.eu-west-1.worxlandroid.com
     2026-09-12 11:36:13   mqtt_registered true
     2026-09-12 11:36:13   mqtt_topics_command_in PRM100/<id>/commandIn
     2026-09-12 11:36:13   mqtt_topics_command_out PRM100/<id>/commandOut
     2026-09-12 11:36:13   name            M700
     2026-09-12 11:36:13   online          true
     2026-09-12 11:36:13   pin_code        <pin_code>
     2026-09-12 11:36:13   product_id      <product_id>
     2026-09-12 11:36:13   professional    false
     2026-09-12 11:36:13   protocol        0
     2026-09-12 11:36:13   purchased_at    2024-07-18 00:00:00
     2026-09-12 11:36:13   push_notifications true
     2026-09-12 11:36:13   push_notifications_level warning
     2026-09-12 11:36:13   registered_at   2024-07-19 00:00:00
     2026-09-12 11:36:13   serial_number   <serial_number>
     2026-09-12 11:36:13   setup_location_latitude <setup_location_latitude>
     2026-09-12 11:36:13   setup_location_longitude <setup_location_longitude>
     2026-09-12 10:07:47   state           partyMode
     2026-09-12 11:36:13   test            false
     2026-09-12 11:36:13   time_zone       Europe/Vienna
     2026-09-12 11:36:14   torqueSetting   0
     2026-09-12 11:36:13   updated_at      2026-09-05 01:25:18
     2026-09-12 11:36:13   user_id         <user_id>
     2026-09-12 11:36:13   uuid            <uuid>
     2026-09-12 11:36:13   warranty_expires_at 2027-07-18 00:00:00
     2026-09-12 11:36:13   warranty_registered true
     2026-09-12 11:36:14   wifiQuality     -58
   helper:
Attributes:
   IODev      MQTT2_Worx
   alias      Maehroboter
   devStateIcon {
  if( ReadingsVal( 'MQTT2_Worx','state','-' ) eq 'disconnected' ) {
    "<span style='color:red;font-weight:bold'>".ReadingsVal( 'MQTT2_Worx','state','-' )."</span>"
  }
  else {
    "<span style='color:orange'>Aktiv: ".ReadingsVal( $name,'mowerActiveTxt','-' )."</span>"
    ."<span style='color:magenta;padding-left:1em'>Status: ".ReadingsVal( $name,'mowerStatusTxt','-' )."</span>"
    ."<span style='color:blue;padding-left:1em'>Firmware: ".ReadingsVal( $name,'firmware_version','-' )."</span>"
    ."<span style='color:black;padding-left:1em;font-weight:bold'>(".ReadingsTimestamp( $name,'cfg_tm','Invalid-Time' ).")</span>"
    ."<span style='padding-left:10em'></span>"
    ."<br/>"
    ."<span style='color:black'>Tag:</span>"
    ."<span style='color:grey;padding-left:1em'>Entfernung: ".formatiere_zahl( ReadingsNum( $name,'distance_covered_day',0 ) )." m</span>"
    ."<span style='color:olive;padding-left:1em'>Maehzeit: ".formatiere_zahl( ReadingsNum( $name,'mower_work_time_day',0 ) )." min.</span>"
    ."<span style='color:saddlebrown;padding-left:1em'>Messerzeit: ".formatiere_zahl( ReadingsNum( $name,'blade_work_time_day',0 ) )." min.</span>"
    ."<br/>"
    ."<span style='color:darkcyan'>Batterie: ".formatiere_zahl( ReadingsNum( $name,'batteryPercent',0 ) )."% "
    .formatiere_zahl( ReadingsNum( $name,'batteryTemperature',0 ) )."°C "
    .formatiere_zahl( ReadingsNum( $name,'batteryVoltage',0 ) )."V </span>"
    ."<span style='color:red;padding-left:1em'>Fehler: ".ReadingsVal( $name,'mowerErrorTxt','-' )." </span>"
    .( ( ReadingsNum( $name,'dat_rain_cnt',0 ) > 0 )?(
         "<span style='color:limegreen;padding-left:2em'>Regenverzoegerung: ".formatiere_zahl( ReadingsNum( $name,'dat_rain_cnt',0 ) )." min.</span>"
       ):(
         "<span style='padding-left:2em'></span>"
       )
    )
    ."<span style='padding-left:8em'></span>"
  }
}
   devicetopic PRM100/<id>
   event-on-change-reading (batteryCharging|battery_charge_|blade_work_time_reset|borderLength|cfg_|dat_|diagnostic|direction|firmware|lawn_|locked|module|mowerActive|mowerError|mowerRain|mowerStatus|mowerTime|pin_code|push_|torqueSetting).*,batteryPercent:1,batteryTemperature:1,batteryVoltage:1,blade_work_.*:5,distance_.*:5,mower_work_.*:5
   event-on-update-reading cfg_tm
   group      Worx
   icon       Maehroboter
   jsonMap    cfg_modules_DF_cut:moduleOLM_forbiddenArea_enabled
cfg_modules_DF_fh:moduleOLM_shortcut_enabled
cfg_modules_US_enabled:moduleACS_enabled
cfg_rd:mowerRainDelay
cfg_sc_m:mowerActiveIndex
cfg_sc_p:mowerTimeCorrection
cfg_sn:SerialNumber
cfg_tq:torqueSetting
dat_bt_c:batteryCharging
dat_bt_nr:battery_charge_cycles_total
dat_bt_p:batteryPercent
dat_bt_t:batteryTemperature
dat_bt_v:batteryVoltage
dat_dmp_1:directionPitch
dat_dmp_2:directionRoll
dat_dmp_3:directionYaw
dat_fw:firmware
dat_le:mowerErrorIndex
dat_ls:mowerStatusIndex
dat_modules_DF_stat:moduleOLM_status
dat_modules_US_stat:moduleACS_status
dat_rsi:wifiQuality
dat_st_b:blade_work_time_total
dat_st_bl:borderLength
dat_st_d:distance_covered_total
dat_st_wt:mower_work_time_total
   model      worx_landroid_mower
   readingList $DEVICETOPIC/commandOut:.* { json2nameValue($EVENT,'',$JSONMAP) }
   room       Draussen
   setList    moduleACS:on,off { my %hash = ('on' => 1, 'off' => 0);qq($DEVICETOPIC/commandIn {"modules":{"US":{"enabled":$hash{$EVTPART1}}}})}
  moduleOLM_forbiddenArea:on,off { my %hash = ('on' => 1, 'off' => 0);qq($DEVICETOPIC/commandIn {"modules":{"DF":{"cut":$hash{$EVTPART1}}}})}
  moduleOLM_shortcut:on,off { my %hash = ('on' => 1, 'off' => 0);qq($DEVICETOPIC/commandIn {"modules":{"DF":{"fh":$hash{$EVTPART1}}}})}
  mowerGoHome:noArg $DEVICETOPIC/commandIn {"cmd":3}
  mowerStart:noArg $DEVICETOPIC/commandIn {"cmd":1}
  mowerStartBorderCut:noArg $DEVICETOPIC/commandIn {"sc":{"ots":{"bc":1,"wtm":0}}}
  mowerStartOneTime:slider,10,10,720 $DEVICETOPIC/commandIn {"sc":{"ots":{"bc":0,"wtm":$EVTPART1}}}
  mowerStop:noArg $DEVICETOPIC/commandIn {"cmd":2}
  mowerTimeCorrection:slider,-100,1,100 $DEVICETOPIC/commandIn {"sc":{"p":$EVTPART1}}
  partyMode:on,off { my %hash = ( 'on' => 2, 'off' => 1);qq($DEVICETOPIC/commandIn {"sc":{"m":$hash{$EVTPART1}}})}
  partyTime:slider,0,10,2880 $DEVICETOPIC/commandIn {"sc":{"distm":$EVTPART1}}
  rainDelay:slider,0,30,1440 $DEVICETOPIC/commandIn {"rd":$EVTPART1}
  torqueSetting:slider,-50,1,50 $DEVICETOPIC/commandIn {"tq":$EVTPART1}
  x_raw_payload:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //g;qq($DEVICETOPIC/commandIn $payload)}
   sortby     01
   userReadings mowerActiveTxt:mowerActiveIndex:.* {
  my %activeState = (
    0 => "No",
    1 => "Yes",
    2 => "Party"
  );
  $activeState{ ReadingsNum( $name,'mowerActiveIndex',0 ) }
},
mowerStatusTxt:mowerStatusIndex:.* {
  my %stateCodes = (
     0 => "Idle",
     1 => "Home",
     2 => "Start sequence",
     3 => "Leaving home",
     4 => "Follow wire",
     5 => "Searching home",
     6 => "Searching wire",
     7 => "Mowing",
     8 => "Lifted",
     9 => "Trapped",
    10 => "Blade blocked",
    11 => "Debug",
    12 => "Remote control",
    30 => "Going home",
    31 => "Zone Training",
    32 => "Edge cutting",
    33 => "Searching zone",
    34 => "Pause"
  );
  $stateCodes{ ReadingsNum( $name,'mowerStatusIndex',0 ) }
},
mowerErrorTxt:mowerErrorIndex:.* {
  my %errorCodes = (
     0 => "No error",
     1 => "Trapped",
     2 => "Lifted",
     3 => "Wire missing",
     4 => "Outside wire",
     5 => "Raining",
     6 => "Close door to mow",
     7 => "Close door to go home",
     8 => "Blade motor blocked",
     9 => "Wheel motor blocked",
    10 => "Trapped timeout",
    11 => "Upside down",
    12 => "Battery low",
    13 => "Reverse wire",
    14 => "Charge error",
    15 => "Timeout finding home",
    16 => "Mower locked",
    17 => "Battery temp out of range"
  );
  $errorCodes{ ReadingsNum( $name,'mowerErrorIndex',0 ) }
},
distance_covered_day:(distance_covered_total|distance_covered_midnight):.* {
  ReadingsNum( $name,'distance_covered_total',0 ) - ReadingsNum( $name,'distance_covered_midnight',0 );
},
mower_work_time_day:(mower_work_time_total|mower_work_time_midnight):.* {
  ReadingsNum( $name,'mower_work_time_total',0 ) - ReadingsNum( $name,'mower_work_time_midnight',0 );
},
blade_work_time_day:(blade_work_time_total|blade_work_time_midnight):.* {
  ReadingsNum( $name,'blade_work_time_total',0 ) - ReadingsNum( $name,'blade_work_time_midnight',0 );
}

Danke für eure Hilfe, Robert

Guybrush

da wirst du wohl nicht drum herumkommen die Verbindung zu iot.eu-west-1.worxlandroid.com zu überwachen. Das ist aber für MQTT grundsätzlich unschädlich, wenn dort die Verbindungen verloren gehen bzw neu aufgebaut werden müssen. Dafür ist MQTT ja da, dass Nachrichten asynchron kommuniziert werden können. Bei dir wird vermutlich die Verbindung durch was auch immer geschlossen und wieder neu aufgebaut. Wenn das häufig passiert, reicht es für den ersten schritt einen dauerping von deinem rechner auf die adresse laufen zu lassen und zu beobachten, ob das da genauso blockiert wird bzw ein Paket verloren geht. Könnte für geringes Packetloss auf deiner Leitung sprechen.