{
  "report_type": "monthly",
  "year": 2025,
  "month": 12,
  "role": "companion",
  "days_with_data": 10,
  "summary": {
    "battery_mv": {
      "count": 13240,
      "unit": "mV",
      "mean": 4108.36,
      "min": 3912.0,
      "min_time": "2025-12-25T00:16:05",
      "max": 4454.0,
      "max_time": "2025-12-24T08:09:01"
    },
    "bat_pct": {
      "count": 13240,
      "unit": "%",
      "mean": 93.1757,
      "min": 68.4,
      "min_time": "2025-12-25T00:16:05",
      "max": 100.0,
      "max_time": "2025-12-24T08:01:49"
    },
    "contacts": {
      "count": 13240,
      "unit": "count",
      "mean": 2.9082,
      "min": 2.0,
      "min_time": "2025-12-24T07:57:01",
      "max": 3.0,
      "max_time": "2025-12-22T10:53:54"
    },
    "uptime_secs": {
      "count": 13240,
      "unit": "s",
      "mean": 227034.5951,
      "min": 3.0,
      "min_time": "2025-12-24T08:09:01",
      "max": 577246.0,
      "max_time": "2025-12-31T23:59:01"
    },
    "recv": {
      "count": 13240,
      "unit": "packets",
      "total": 60653,
      "reboot_count": 7
    },
    "sent": {
      "count": 13240,
      "unit": "packets",
      "total": 3291,
      "reboot_count": 5
    }
  },
  "daily": [
    {
      "date": "2025-12-22",
      "snapshot_count": 488,
      "metrics": {
        "battery_mv": {
          "count": 488,
          "unit": "mV",
          "mean": 4135.3504,
          "min": 4117.0,
          "min_time": "2025-12-22T20:50:01",
          "max": 4171.0,
          "max_time": "2025-12-22T15:42:11"
        },
        "bat_pct": {
          "count": 488,
          "unit": "%",
          "mean": 95.3822,
          "min": 94.0714,
          "min_time": "2025-12-22T20:50:01",
          "max": 97.9286,
          "max_time": "2025-12-22T15:42:11"
        },
        "contacts": {
          "count": 488,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-22T10:53:54",
          "max": 3.0,
          "max_time": "2025-12-22T10:53:54"
        },
        "uptime_secs": {
          "count": 488,
          "unit": "s",
          "mean": 19580.4242,
          "min": 62.0,
          "min_time": "2025-12-22T11:24:20",
          "max": 34553.0,
          "max_time": "2025-12-22T23:59:01"
        },
        "recv": {
          "count": 488,
          "unit": "packets",
          "total": 3922,
          "reboot_count": 2
        },
        "sent": {
          "count": 488,
          "unit": "packets",
          "total": 278,
          "reboot_count": 2
        }
      }
    },
    {
      "date": "2025-12-23",
      "snapshot_count": 1440,
      "metrics": {
        "battery_mv": {
          "count": 1440,
          "unit": "mV",
          "mean": 4108.9285,
          "min": 4082.0,
          "min_time": "2025-12-23T22:46:01",
          "max": 4136.0,
          "max_time": "2025-12-23T00:08:01"
        },
        "bat_pct": {
          "count": 1440,
          "unit": "%",
          "mean": 93.4949,
          "min": 91.5714,
          "min_time": "2025-12-23T22:46:01",
          "max": 95.4286,
          "max_time": "2025-12-23T00:08:01"
        },
        "contacts": {
          "count": 1440,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-23T00:00:02",
          "max": 3.0,
          "max_time": "2025-12-23T00:00:02"
        },
        "uptime_secs": {
          "count": 1440,
          "unit": "s",
          "mean": 77786.1375,
          "min": 34614.0,
          "min_time": "2025-12-23T00:00:02",
          "max": 120958.0,
          "max_time": "2025-12-23T23:59:01"
        },
        "recv": {
          "count": 1440,
          "unit": "packets",
          "total": 5825
        },
        "sent": {
          "count": 1440,
          "unit": "packets",
          "total": 393
        }
      }
    },
    {
      "date": "2025-12-24",
      "snapshot_count": 1432,
      "metrics": {
        "battery_mv": {
          "count": 1432,
          "unit": "mV",
          "mean": 4120.9078,
          "min": 3930.0,
          "min_time": "2025-12-24T20:13:01",
          "max": 4454.0,
          "max_time": "2025-12-24T08:09:01"
        },
        "bat_pct": {
          "count": 1432,
          "unit": "%",
          "mean": 92.336,
          "min": 71.6667,
          "min_time": "2025-12-24T20:13:01",
          "max": 100.0,
          "max_time": "2025-12-24T08:01:49"
        },
        "contacts": {
          "count": 1432,
          "unit": "count",
          "mean": 2.3324,
          "min": 2.0,
          "min_time": "2025-12-24T07:57:01",
          "max": 3.0,
          "max_time": "2025-12-24T00:00:01"
        },
        "uptime_secs": {
          "count": 1432,
          "unit": "s",
          "mean": 63482.8282,
          "min": 3.0,
          "min_time": "2025-12-24T08:09:01",
          "max": 149521.0,
          "max_time": "2025-12-24T07:55:01"
        },
        "recv": {
          "count": 1432,
          "unit": "packets",
          "total": 6032,
          "reboot_count": 3
        },
        "sent": {
          "count": 1432,
          "unit": "packets",
          "total": 397,
          "reboot_count": 2
        }
      }
    },
    {
      "date": "2025-12-25",
      "snapshot_count": 1240,
      "metrics": {
        "battery_mv": {
          "count": 1240,
          "unit": "mV",
          "mean": 4123.271,
          "min": 3912.0,
          "min_time": "2025-12-25T00:16:05",
          "max": 4401.0,
          "max_time": "2025-12-25T02:10:01"
        },
        "bat_pct": {
          "count": 1240,
          "unit": "%",
          "mean": 93.8716,
          "min": 68.4,
          "min_time": "2025-12-25T00:16:05",
          "max": 100.0,
          "max_time": "2025-12-25T00:00:01"
        },
        "contacts": {
          "count": 1240,
          "unit": "count",
          "mean": 2.7903,
          "min": 2.0,
          "min_time": "2025-12-25T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-25T07:40:24"
        },
        "uptime_secs": {
          "count": 1240,
          "unit": "s",
          "mean": 36500.925,
          "min": 34.0,
          "min_time": "2025-12-25T07:33:35",
          "max": 71749.0,
          "max_time": "2025-12-25T04:15:01"
        },
        "recv": {
          "count": 1240,
          "unit": "packets",
          "total": 6490,
          "reboot_count": 2
        },
        "sent": {
          "count": 1240,
          "unit": "packets",
          "total": 337,
          "reboot_count": 1
        }
      }
    },
    {
      "date": "2025-12-26",
      "snapshot_count": 1440,
      "metrics": {
        "battery_mv": {
          "count": 1440,
          "unit": "mV",
          "mean": 4104.5243,
          "min": 4076.0,
          "min_time": "2025-12-26T23:31:01",
          "max": 4127.0,
          "max_time": "2025-12-26T00:11:01"
        },
        "bat_pct": {
          "count": 1440,
          "unit": "%",
          "mean": 93.1803,
          "min": 91.1429,
          "min_time": "2025-12-26T23:31:01",
          "max": 94.7857,
          "max_time": "2025-12-26T00:11:01"
        },
        "contacts": {
          "count": 1440,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-26T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-26T00:00:01"
        },
        "uptime_secs": {
          "count": 1440,
          "unit": "s",
          "mean": 102044.8701,
          "min": 58871.0,
          "min_time": "2025-12-26T00:00:01",
          "max": 145217.0,
          "max_time": "2025-12-26T23:59:01"
        },
        "recv": {
          "count": 1440,
          "unit": "packets",
          "total": 8606
        },
        "sent": {
          "count": 1440,
          "unit": "packets",
          "total": 385
        }
      }
    },
    {
      "date": "2025-12-27",
      "snapshot_count": 1439,
      "metrics": {
        "battery_mv": {
          "count": 1439,
          "unit": "mV",
          "mean": 4083.4336,
          "min": 4062.0,
          "min_time": "2025-12-27T22:29:01",
          "max": 4107.0,
          "max_time": "2025-12-27T01:47:01"
        },
        "bat_pct": {
          "count": 1439,
          "unit": "%",
          "mean": 91.6738,
          "min": 90.1429,
          "min_time": "2025-12-27T22:29:01",
          "max": 93.3571,
          "max_time": "2025-12-27T01:47:01"
        },
        "contacts": {
          "count": 1439,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-27T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-27T00:00:01"
        },
        "uptime_secs": {
          "count": 1439,
          "unit": "s",
          "mean": 188436.3134,
          "min": 145277.0,
          "min_time": "2025-12-27T00:00:01",
          "max": 231623.0,
          "max_time": "2025-12-27T23:59:02"
        },
        "recv": {
          "count": 1439,
          "unit": "packets",
          "total": 7010
        },
        "sent": {
          "count": 1439,
          "unit": "packets",
          "total": 335
        }
      }
    },
    {
      "date": "2025-12-28",
      "snapshot_count": 1440,
      "metrics": {
        "battery_mv": {
          "count": 1440,
          "unit": "mV",
          "mean": 4123.5764,
          "min": 4062.0,
          "min_time": "2025-12-28T01:21:01",
          "max": 4177.0,
          "max_time": "2025-12-28T01:56:01"
        },
        "bat_pct": {
          "count": 1440,
          "unit": "%",
          "mean": 94.5412,
          "min": 90.1429,
          "min_time": "2025-12-28T01:21:01",
          "max": 98.3571,
          "max_time": "2025-12-28T01:56:01"
        },
        "contacts": {
          "count": 1440,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-28T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-28T00:00:01"
        },
        "uptime_secs": {
          "count": 1440,
          "unit": "s",
          "mean": 274856.0347,
          "min": 231683.0,
          "min_time": "2025-12-28T00:00:01",
          "max": 318028.0,
          "max_time": "2025-12-28T23:59:01"
        },
        "recv": {
          "count": 1440,
          "unit": "packets",
          "total": 6344
        },
        "sent": {
          "count": 1440,
          "unit": "packets",
          "total": 289
        }
      }
    },
    {
      "date": "2025-12-29",
      "snapshot_count": 1441,
      "metrics": {
        "battery_mv": {
          "count": 1441,
          "unit": "mV",
          "mean": 4099.7196,
          "min": 4076.0,
          "min_time": "2025-12-29T19:04:02",
          "max": 4126.0,
          "max_time": "2025-12-29T04:40:01"
        },
        "bat_pct": {
          "count": 1441,
          "unit": "%",
          "mean": 92.8371,
          "min": 91.1429,
          "min_time": "2025-12-29T19:04:02",
          "max": 94.7143,
          "max_time": "2025-12-29T04:40:01"
        },
        "contacts": {
          "count": 1441,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-29T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-29T00:00:01"
        },
        "uptime_secs": {
          "count": 1441,
          "unit": "s",
          "mean": 361276.7037,
          "min": 318088.0,
          "min_time": "2025-12-29T00:00:01",
          "max": 404434.0,
          "max_time": "2025-12-29T23:59:01"
        },
        "recv": {
          "count": 1441,
          "unit": "packets",
          "total": 5998
        },
        "sent": {
          "count": 1441,
          "unit": "packets",
          "total": 298
        }
      }
    },
    {
      "date": "2025-12-30",
      "snapshot_count": 1440,
      "metrics": {
        "battery_mv": {
          "count": 1440,
          "unit": "mV",
          "mean": 4080.4826,
          "min": 4062.0,
          "min_time": "2025-12-30T18:43:01",
          "max": 4104.0,
          "max_time": "2025-12-30T05:00:01"
        },
        "bat_pct": {
          "count": 1440,
          "unit": "%",
          "mean": 91.463,
          "min": 90.1429,
          "min_time": "2025-12-30T18:43:01",
          "max": 93.1429,
          "max_time": "2025-12-30T05:00:01"
        },
        "contacts": {
          "count": 1440,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-30T00:00:01",
          "max": 3.0,
          "max_time": "2025-12-30T00:00:01"
        },
        "uptime_secs": {
          "count": 1440,
          "unit": "s",
          "mean": 447667.1354,
          "min": 404494.0,
          "min_time": "2025-12-30T00:00:01",
          "max": 490840.0,
          "max_time": "2025-12-30T23:59:01"
        },
        "recv": {
          "count": 1440,
          "unit": "packets",
          "total": 5854
        },
        "sent": {
          "count": 1440,
          "unit": "packets",
          "total": 293
        }
      }
    },
    {
      "date": "2025-12-31",
      "snapshot_count": 1440,
      "metrics": {
        "battery_mv": {
          "count": 1440,
          "unit": "mV",
          "mean": 4123.3785,
          "min": 4063.0,
          "min_time": "2025-12-31T00:38:01",
          "max": 4171.0,
          "max_time": "2025-12-31T01:36:01"
        },
        "bat_pct": {
          "count": 1440,
          "unit": "%",
          "mean": 94.527,
          "min": 90.2143,
          "min_time": "2025-12-31T00:38:01",
          "max": 97.9286,
          "max_time": "2025-12-31T01:36:01"
        },
        "contacts": {
          "count": 1440,
          "unit": "count",
          "mean": 3.0,
          "min": 3.0,
          "min_time": "2025-12-31T00:00:02",
          "max": 3.0,
          "max_time": "2025-12-31T00:00:02"
        },
        "uptime_secs": {
          "count": 1440,
          "unit": "s",
          "mean": 534072.6625,
          "min": 490900.0,
          "min_time": "2025-12-31T00:00:02",
          "max": 577246.0,
          "max_time": "2025-12-31T23:59:01"
        },
        "recv": {
          "count": 1440,
          "unit": "packets",
          "total": 4572
        },
        "sent": {
          "count": 1440,
          "unit": "packets",
          "total": 286
        }
      }
    }
  ]
}