Best way to alert on missing IoT Wireless frames

0

I'm trying to diagnose when Wireless Gateway's fail to receive LoRa frames. I'm looking specifically at the FCnt of device uplinks and noticing some missing numbers. I understand this could be for a variety of reasons, but I'd like to set up some kind of metrics/alerts for when and how often it happens.

I had thought of tracking FCnt by device in DynamoDB, but it would be even nicer if there was a way to do so on the Device object itself inside IoT without managing a separate service.

Could use some recommendations...

{
  "WirelessDeviceId": "<<redacted>>",
  "PayloadData": "<<redacted>>",
  "WirelessMetadata": {
    "LoRaWAN": {
      "ADR": "false",
      "Bandwidth": 125,
      "ClassB": "false",
      "CodeRate": "4/5",
      "DataRate": "3",
      "DevAddr": "<<redacted>>",
      "DevEui": "<<redacted>>",
      "FCnt": 8953,
      "FOptLen": 0,
      "FPort": 2,
      "Frequency": "904900000",
      "Gateways": [
        {
          "GatewayEui": "<<redacted>>",
          "Rssi": -47,
          "Snr": 13.25
        }
      ],
      "MIC": "f4f98a6b",
      "MType": "UnconfirmedDataUp",
      "Major": "LoRaWANR1",
      "Modulation": "LORA",
      "PolarizationInversion": "false",
      "SpreadingFactor": 7,
      "Timestamp": "2022-07-07T02:06:53Z"
    }
  }
1개 답변
1

Hi. One approach is to use AWS IoT Shadows. You could have a shadow per wireless device. From the decoder Lambda, you could also update the shadow. You could store last FCnt, timestamp of last received message from a device, last sensor value etc. The Lambda could check if the new FCnt value is in sequence, and trigger some kind of notification. If you have the last received timestamp in the shadow, you could use fleet indexing and fleet metrics to monitor the freshness of your fleet at large. By having last known sensor values, the shadow will be useful for more than device health. And you may also be interested in Fleet Hub. Please be aware of shadow limits in case you have a large fleet and/or your devices are sending very frequently.

Another approach could be to use AWS IoT Events.

profile pictureAWS
전문가
Greg_B
답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인