Uplink Messages

Messages sent by Haltian ENTRYWAY to the cloud — people counting, battery, diagnostics, and system info

Overview

This page documents the Wirepas CBOR messages transmitted by the sensor over the mesh network. These are the raw on-wire messages — field names and structure differ from the Haltian IoT JSON API exposed to end users (e.g., CBOR in/out fields map to entries/exits in the Haltian IoT API). For the Haltian IoT API format, see Operation — Data Transmission.

Haltian ENTRYWAY transmits CBOR-encoded messages over Wirepas endpoint 21/21. The gateway adds header fields (tsmTs, tsmGw) and forwards messages to the cloud.

Each message is identified by tsmId (message structure ID — shared across sensor types that use the same format). Each example below is shown in both JSON (decoded CBOR) and CBOR (numeric indexes as transmitted on the wire).

For CBOR encoding/decoding details, see CBOR-JSON Conversion Reference. For configuration commands sent to the sensor, see Downlink Messages.

Wirepas endpoint: 21/21 MQTT topic: haltian-iot/wirepas/gw-event/received_data/{gateway-id}/sink1/{network-id}/21/21


People Counting Report (tsmId 13103)

The primary application message. Reports entry/exit counts accumulated since the last report.

JSON PropertyCBOR IndexDescription
tsmId1Message ID: 13103
tsmEv2Event type: 10 (timed), 11 (startup)
tsmTs3UTC timestamp in seconds (added by gateway)
tsmTuid4Device unique identifier
tsmGw5Gateway identifier (added by gateway)
tsmSeqSequence counter
in1210People entered since last report
out1211People exited since last report
averaging288Array of 3 PIR signal averages (diagnostic)
errorCountArray of 3 PIR error counts (diagnostic)

Reporting Behavior

ConditionTiming
First movement detectedImmediate report
Continued activityEvery measurement interval (default 30s)
No movementEvery idle reporting interval (default 1 hour)

Example

{
  "tsmId": 13103,
  "tsmEv": 10,
  "tsmTs": 1755064655,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "tsmSeq": 5657,
  "in": 1,
  "out": 0,
  "averaging": [94, 89, 101],
  "errorCount": [3, 3, 3]
}
{1: 13103, 2: 10, 3: 1755064655, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495",
 1210: 1, 1211: 0, 288: [94, 89, 101]}

Interpretation: Device XXCN01TSC20205507 reports 1 person entered and 0 exited since the last report. PIR signal averages [94, 89, 101] indicate all three PIR sensors are functioning normally.


System Info (tsmId 1100)

Sent once on device boot-up. Contains firmware version and device model.

JSON PropertyCBOR IndexDescription
tsmId1Message ID: 1100
tsmEv2Event type: 11 (startup)
swVersion70Firmware version string
modelCode71Device model code (e.g., XXCN01)
psnProduction serial number

Example

{
  "tsmId": 1100,
  "tsmEv": 11,
  "tsmTs": 1755060000,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "swVersion": "3.2.1",
  "modelCode": "XXCN01",
  "psn": "TSC20205507"
}
{1: 1100, 2: 11, 3: 1755060000, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495",
 70: "3.2.1", 71: "XXCN01"}

Battery Level (tsmId 1110)

Reported every 6 hours (21600 seconds). Monitors remaining battery capacity.

JSON PropertyCBOR IndexMultiplierDescription
tsmId1Message ID: 1110
tsmEv2Event type: 10 (timed)
batl2110^1Battery level percentage

Example

{
  "tsmId": 1110,
  "tsmEv": 10,
  "tsmTs": 1755081600,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "batl": 92
}
{1: 1110, 2: 10, 3: 1755081600, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495",
 21: 920}

Network Diagnostics (tsmId 1202)

Reported every 12 hours (43200 seconds). Provides mesh network connectivity metrics.

JSON PropertyCBOR IndexDescription
tsmId1Message ID: 1202
tsmEv2Event type: 10 (timed)
tuid62Device identifier
rssi61Received signal strength
rssiDbm65Signal strength in dBm

Example

{
  "tsmId": 1202,
  "tsmEv": 10,
  "tsmTs": 1755103200,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "tuid": "XXCN01TSC20205507",
  "rssi": -62,
  "rssiDbm": -62
}
{1: 1202, 2: 10, 3: 1755103200, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495",
 62: "XXCN01TSC20205507", 61: -62, 65: -62}

Firmware Binary Info (tsmId 1312)

Sent once on boot alongside System Info. Reports firmware binary details.

Example

{
  "tsmId": 1312,
  "tsmEv": 11,
  "tsmTs": 1755060000,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "binaryType": 1,
  "binaryVersion": "3.2.1"
}
{1: 1312, 2: 11, 3: 1755060000, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495"}

Error Event (tsmId 1403)

Sent when an error condition occurs. Use errorType and errorCause to diagnose issues.

Example

{
  "tsmId": 1403,
  "tsmEv": 29,
  "tsmTs": 1755064700,
  "tsmTuid": "XXCN01TSC20205507",
  "tsmGw": "TSGW06EWK31903495",
  "errorType": 1,
  "errorCause": 3
}
{1: 1403, 2: 29, 3: 1755064700, 4: "XXCN01TSC20205507", 5: "TSGW06EWK31903495"}

Event Types Reference

All tsmEv values used by ENTRYWAY uplink messages:

tsmEvNameDescription
10TimedPeriodic report at configured interval
11StartupDevice boot-up / power-on
29ErrorCritical error report
34Timed diagnosticsPeriodic diagnostic event
CBOR IndexJSON PropertyCategory
1tsmIdHeader
2tsmEvHeader
3tsmTsHeader
4tsmTuidHeader
5tsmGwHeader
21batlSystem (multiplier 10^1)
61rssiNetwork
62tuidNetwork
65rssiDbmNetwork
70swVersionSystem
71modelCodeSystem
288averagingDiagnostic
1210inPeople counting
1211outPeople counting