{
"device": {
"device_id": "CS-A1",
"firmware_version": "1.4.1-cloud"
},
"health": {
"last_error": null,
"time_source": "RTC",
"time_synced": true,
"wake_reason": "scheduled",
"radar_status": "online",
"rtc_detected": true,
"wifi_rssi_dbm": -33,
"storage_status": "ready",
"uptime_seconds": 2,
"battery_percent": 72,
"battery_voltage": 3.906,
"free_heap_bytes": 108800,
"storage_backend": "sd",
"storage_free_bytes": 1971863552,
"radar_online_percent": 100.0
},
"upload": {
"mode": "every_hour",
"sequence": 23,
"scheduled_time": "22:00",
"configured_times": [
"00:00",
"01:00",
"02:00",
"03:00",
"04:00",
"05:00",
"06:00",
"07:00",
"08:00",
"09:00",
"10:00",
"11:00",
"12:00",
"13:00",
"14:00",
"15:00",
"16:00",
"17:00",
"18:00",
"19:00",
"20:00",
"21:00",
"22:00",
"23:00"
]
},
"reports": [
{
"date": "2026-08-09",
"hourly": [
{
"complete": true,
"period_end": "2026-08-09T01:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 14,
"period_start": "2026-08-09T00:00:00",
"pir_triggers": 12,
"coverage_percent": 11.0,
"observed_seconds": 396,
"average_crowd_score": 17.4,
"highest_crowd_score": 57.0,
"radar_online_percent": 100.0,
"elevated_observations": 2,
"occupied_observations": 6,
"average_battery_percent": 77.4
},
{
"complete": true,
"period_end": "2026-08-09T02:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 13,
"period_start": "2026-08-09T01:00:00",
"pir_triggers": 0,
"coverage_percent": 7.2,
"observed_seconds": 261,
"average_crowd_score": 5.6,
"highest_crowd_score": 22.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 2,
"average_battery_percent": 78.6
},
{
"complete": true,
"period_end": "2026-08-09T03:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 13,
"period_start": "2026-08-09T02:00:00",
"pir_triggers": 0,
"coverage_percent": 5.9,
"observed_seconds": 214,
"average_crowd_score": 0.0,
"highest_crowd_score": 0.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 0,
"average_battery_percent": 78.5
},
{
"complete": true,
"period_end": "2026-08-09T04:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 12,
"period_start": "2026-08-09T03:00:00",
"pir_triggers": 1,
"coverage_percent": 7.8,
"observed_seconds": 280,
"average_crowd_score": 11.3,
"highest_crowd_score": 54.0,
"radar_online_percent": 100.0,
"elevated_observations": 1,
"occupied_observations": 2,
"average_battery_percent": 78.5
},
{
"complete": true,
"period_end": "2026-08-09T05:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 14,
"period_start": "2026-08-09T04:00:00",
"pir_triggers": 0,
"coverage_percent": 7.3,
"observed_seconds": 262,
"average_crowd_score": 4.2,
"highest_crowd_score": 22.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 1,
"average_battery_percent": 78.4
},
{
"complete": true,
"period_end": "2026-08-09T06:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 13,
"period_start": "2026-08-09T05:00:00",
"pir_triggers": 2,
"coverage_percent": 8.8,
"observed_seconds": 318,
"average_crowd_score": 10.0,
"highest_crowd_score": 27.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 4,
"average_battery_percent": 78.1
},
{
"complete": true,
"period_end": "2026-08-09T07:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 14,
"period_start": "2026-08-09T06:00:00",
"pir_triggers": 7,
"coverage_percent": 9.5,
"observed_seconds": 342,
"average_crowd_score": 11.1,
"highest_crowd_score": 57.0,
"radar_online_percent": 100.0,
"elevated_observations": 1,
"occupied_observations": 4,
"average_battery_percent": 77.7
},
{
"complete": true,
"period_end": "2026-08-09T08:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 13,
"period_start": "2026-08-09T07:00:00",
"pir_triggers": 0,
"coverage_percent": 5.9,
"observed_seconds": 214,
"average_crowd_score": 0.0,
"highest_crowd_score": 0.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 0,
"average_battery_percent": 77.5
},
{
"complete": true,
"period_end": "2026-08-09T09:00:00",
"crowd_level": "empty",
"data_status": "valid",
"observations": 12,
"period_start": "2026-08-09T08:00:00",
"pir_triggers": 0,
"coverage_percent": 7.8,
"observed_seconds": 280,
"average_crowd_score": 9.4,
"highest_crowd_score": 27.0,
"radar_online_percent": 100.0,
"elevated_observations": 0,
"occupied_observations": 2,
"average_battery_percent": 74.8
},
{
"complete": true,
"period_end": "2026-08-09T10:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 14,
"period_start": "2026-08-09T09:00:00",
"pir_triggers": 6,
"coverage_percent": 9.5,
"observed_seconds": 341,
"average_crowd_score": 12.9,
"highest_crowd_score": 50.0,
"radar_online_percent": 100.0,
"elevated_observations": 1,
"occupied_observations": 4,
"average_battery_percent": 76.6
},
{
"complete": true,
"period_end": "2026-08-09T11:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 15,
"period_start": "2026-08-09T10:00:00",
"pir_triggers": 7,
"coverage_percent": 15.1,
"observed_seconds": 544,
"average_crowd_score": 21.6,
"highest_crowd_score": 56.0,
"radar_online_percent": 100.0,
"elevated_observations": 3,
"occupied_observations": 8,
"average_battery_percent": 76.5
},
{
"complete": true,
"period_end": "2026-08-09T12:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 16,
"period_start": "2026-08-09T11:00:00",
"pir_triggers": 40,
"coverage_percent": 17.8,
"observed_seconds": 641,
"average_crowd_score": 27.1,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 4,
"occupied_observations": 11,
"average_battery_percent": 74.1
},
{
"complete": true,
"period_end": "2026-08-09T13:00:00",
"crowd_level": "medium",
"data_status": "valid",
"observations": 18,
"period_start": "2026-08-09T12:00:00",
"pir_triggers": 31,
"coverage_percent": 24.9,
"observed_seconds": 895,
"average_crowd_score": 38.1,
"highest_crowd_score": 77.0,
"radar_online_percent": 100.0,
"elevated_observations": 13,
"occupied_observations": 16,
"average_battery_percent": 74.3
},
{
"complete": true,
"period_end": "2026-08-09T14:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 19,
"period_start": "2026-08-09T13:00:00",
"pir_triggers": 77,
"coverage_percent": 28.7,
"observed_seconds": 1033,
"average_crowd_score": 29.7,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 6,
"occupied_observations": 18,
"average_battery_percent": 74.0
},
{
"complete": true,
"period_end": "2026-08-09T15:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 17,
"period_start": "2026-08-09T14:00:00",
"pir_triggers": 40,
"coverage_percent": 21.5,
"observed_seconds": 773,
"average_crowd_score": 28.4,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 5,
"occupied_observations": 15,
"average_battery_percent": 72.9
},
{
"complete": true,
"period_end": "2026-08-09T16:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 18,
"period_start": "2026-08-09T15:00:00",
"pir_triggers": 74,
"coverage_percent": 23.6,
"observed_seconds": 849,
"average_crowd_score": 26.4,
"highest_crowd_score": 59.0,
"radar_online_percent": 100.0,
"elevated_observations": 3,
"occupied_observations": 14,
"average_battery_percent": 74.5
},
{
"complete": true,
"period_end": "2026-08-09T17:00:00",
"crowd_level": "medium",
"data_status": "valid",
"observations": 18,
"period_start": "2026-08-09T16:00:00",
"pir_triggers": 87,
"coverage_percent": 25.6,
"observed_seconds": 923,
"average_crowd_score": 35.1,
"highest_crowd_score": 59.0,
"radar_online_percent": 100.0,
"elevated_observations": 8,
"occupied_observations": 17,
"average_battery_percent": 73.0
},
{
"complete": true,
"period_end": "2026-08-09T18:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 19,
"period_start": "2026-08-09T17:00:00",
"pir_triggers": 90,
"coverage_percent": 29.1,
"observed_seconds": 1046,
"average_crowd_score": 34.0,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 11,
"occupied_observations": 19,
"average_battery_percent": 72.8
},
{
"complete": true,
"period_end": "2026-08-09T19:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 22,
"period_start": "2026-08-09T18:00:00",
"pir_triggers": 115,
"coverage_percent": 34.4,
"observed_seconds": 1239,
"average_crowd_score": 30.9,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 6,
"occupied_observations": 22,
"average_battery_percent": 72.5
},
{
"complete": true,
"period_end": "2026-08-09T20:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 19,
"period_start": "2026-08-09T19:00:00",
"pir_triggers": 99,
"coverage_percent": 28.6,
"observed_seconds": 1030,
"average_crowd_score": 29.8,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 7,
"occupied_observations": 19,
"average_battery_percent": 72.0
},
{
"complete": true,
"period_end": "2026-08-09T21:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 13,
"period_start": "2026-08-09T20:00:00",
"pir_triggers": 12,
"coverage_percent": 8.3,
"observed_seconds": 299,
"average_crowd_score": 12.5,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 1,
"occupied_observations": 4,
"average_battery_percent": 69.5
},
{
"complete": true,
"period_end": "2026-08-09T22:00:00",
"crowd_level": "low",
"data_status": "valid",
"observations": 17,
"period_start": "2026-08-09T21:00:00",
"pir_triggers": 68,
"coverage_percent": 21.9,
"observed_seconds": 788,
"average_crowd_score": 25.7,
"highest_crowd_score": 58.0,
"radar_online_percent": 100.0,
"elevated_observations": 1,
"occupied_observations": 12,
"average_battery_percent": 72.4
}
],
"status": "partial",
"summary": {
"peak_hour": "12:00-13:00",
"observations": 343,
"quietest_hour": "02:00-03:00",
"dominant_level": "low",
"coverage_percent": 16.4,
"observed_seconds": 12968,
"level_distribution": {
"low": 229,
"high": 0,
"peak": 0,
"empty": 78,
"medium": 36
},
"average_crowd_score": 25.1,
"highest_crowd_score": 77.0,
"elevated_observations": 73,
"occupied_observations": 200
},
"revision": 22,
"report_id": "CS-A1-2026-08-09",
"period_end": "2026-08-09T22:00:00",
"period_start": "2026-08-09T00:00:00"
}
],
"sync_id": "CS-A1-20260809-S23-1320",
"generated_at": "2026-08-09T22:01:19\u002B05:30",
"message_type": "device_sync",
"command_results": [],
"reported_config": {
"area_size": "medium",
"power_mode": "smart",
"sensitivity": "medium",
"config_version": 8,
"pir_wake_enabled": true,
"pir_cooldown_seconds": 60,
"active_window_seconds": 45,
"maximum_window_seconds": 120,
"backup_interval_seconds": 300,
"empty_confirmation_seconds": 8
},
"observation_batch": null
}