Unable to add anymore device - mic_mismatch

Hello
I have been running a TTS on a VM (Ubuntu + docker + stack) for like 18 months without problems. But now i just can’t add anymore device. Tried 2 different models, console always show a mic_mismatch error on join request.
AppEUI and DevEUI are corrects.
Region is correct (EU868)
Lora Version is correct (1.0.3).
Device is a few meters from gateway
Several identical devices are still functionning and sending data, TTS is working fine, I just can’t add anymore.
Ubuntu has been patched, rebooted, gateway also, no effect.

Some technical details
Device: Dragino LDS02 door sensor, pretty straighforward to set up.

Docker images versions:

things@ttn:/the-things-stack$ sudo docker-compose images
         Container                      Repository              Tag       Image Id       Size
-----------------------------------------------------------------------------------------------
the-things-stack_postgres_1   postgres                         15.2     bf700010ce28   378.7 MB
the-things-stack_redis_1      redis                            7.2-rc   22a9e397686e   137.7 MB
the-things-stack_stack_1      thethingsnetwork/lorawan-stack   3.25.0   79160cdb2f60   444.8 MB

Join request:

{
  "name": "ns.up.join.cluster.attempt",
  "time": "2024-08-03T05:18:24.048235056Z",
  "identifiers": [
    {
      "device_ids": {
        "device_id": "dragino-porte-17",
        "application_ids": {
          "application_id": "egh-test"
        },
        "dev_eui": "A840419D7183F278",
        "join_eui": "A840410000000107"
      }
    }
  ],
  "data": {
    "@type": "type.googleapis.com/ttn.lorawan.v3.JoinRequest",
    "raw_payload": "AAcBAAAAQUCoePKDcZ1BQKhoBEncX/4=",
    "payload": {
      "m_hdr": {},
      "mic": "Sdxf/g==",
      "join_request_payload": {
        "join_eui": "A840410000000107",
        "dev_eui": "A840419D7183F278",
        "dev_nonce": "0468"
      }
    },
    "dev_addr": "0125C359",
    "selected_mac_version": "MAC_V1_0_3",
    "net_id": "000000",
    "downlink_settings": {
      "rx2_dr": 3
    },
    "rx_delay": 5,
    "cf_list": {
      "freq": [
        8671000,
        8673000,
        8675000,
        8677000,
        8679000
      ]
    },
    "correlation_ids": [
      "gs:conn:01J4AZEDBSB8DK1XCM5TESSGGE",
      "gs:up:host:01J4AZEDBZ2NCZVDSB0MEAAYYT",
      "gs:uplink:01J4BASE9E17BQ3W4CTKK4A987",
      "ns:uplink:01J4BASE9FFCH86FZ903DJM82K",
      "rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01J4BASE9FGA70YRWZRPMKZBW4"
    ],
    "consumed_airtime": "0.061696s"
  },
  "correlation_ids": [
    "gs:conn:01J4AZEDBSB8DK1XCM5TESSGGE",
    "gs:up:host:01J4AZEDBZ2NCZVDSB0MEAAYYT",
    "gs:uplink:01J4BASE9E17BQ3W4CTKK4A987",
    "ns:uplink:01J4BASE9FFCH86FZ903DJM82K",
    "rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01J4BASE9FGA70YRWZRPMKZBW4"
  ],
  "origin": "3bbb444e1d52",
  "visibility": {
    "rights": [
      "RIGHT_APPLICATION_TRAFFIC_READ"
    ]
  },
  "unique_id": "01J4BASE9GPMHRE4YX6ZCRV8NH"

Join Request answer:

{
  "name": "ns.up.join.cluster.fail",
  "time": "2024-08-03T05:18:24.050607453Z",
  "identifiers": [
    {
      "device_ids": {
        "device_id": "dragino-porte-17",
        "application_ids": {
          "application_id": "egh-test"
        },
        "dev_eui": "A840419D7183F278",
        "join_eui": "A840410000000107"
      }
    }
  ],
  "data": {
    "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
    "namespace": "pkg/joinserver",
    "name": "mic_mismatch",
    "message_format": "MIC mismatch",
    "correlation_id": "7fb3905801c2447c8c2b6fc78f05dbc2",
    "code": 3
  },
  "correlation_ids": [
    "gs:conn:01J4AZEDBSB8DK1XCM5TESSGGE",
    "gs:up:host:01J4AZEDBZ2NCZVDSB0MEAAYYT",
    "gs:uplink:01J4BASE9E17BQ3W4CTKK4A987",
    "ns:uplink:01J4BASE9FFCH86FZ903DJM82K",
    "rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01J4BASE9FGA70YRWZRPMKZBW4"
  ],
  "origin": "3bbb444e1d52",
  "visibility": {
    "rights": [
      "RIGHT_APPLICATION_TRAFFIC_READ"
    ]
  },
  "unique_id": "01J4BASE9J1Q46K9A12XBJV51Q"
}

Gateway:
Mikrotik LTAP, up to date (v7.15) and rebooted.

Any ideas?

How few? Read the forum for issues and resolution wrt good seperation for this Long Range technology and the Goldilocks Range of RSSI values recommended to ensure you are debugging a device operation and configuration vs battling any RF induced problems. If too close signal potentialy distorted leading to bit errors, even bleed to wrong RF channels etc. This can result in MIC check failing…

If RF environment good then next step would be to start looking at any other issues with set up …come back and let us know what you find.

Also, perhaps find out what MIC mismatch relates to - it’s NOT a restriction on the number of devices you can add to TTS - that will tell you so much more and save us on getting in to the weeds. Forum search brings this up as a frequent topic.

Thanks for your reply Jeff
Upgraded the stack to v3.30, re-created the device with triple-check each key and it joined successfully.
Case can be closed.

This is not a support desk, it is a community of volunteers answering questions, the “case” can’t be closed.