0x98xx

0x9800 - Alarm

Type: bool

Name: alarm (1)

Value

Description

0

Alarm State OFF

1

Alarm State ON

0x9801 - Priority

Type: bool

Name: priority (1)

Value

Description

0

Not prioritized

1

Prioritized

0x9802 - TX Power

Type: s8

Name: tx-power (1)

Chip

Accepted values

nRF51

-30, -20, -16, -12, -8, -4, 0, and 4 dBm

nRF52832

-40, -20, -16, -12, -8, -4, 0, and 4 dBm

nRF52840

-40, -20, -16, -12, -8, -4, 0, +2, +3, +4, +5, +6, +7 and +8 dBm

0x9803 - Long Button Press Timeout

Type: u16

Name: long-button-press-timeout (1)

Long button press timeout is in millisecond and must be in multiple of 100ms. Range is 100ms to 8000ms.

Note

Setting value lower than 300ms can make it hard to perform short button press.

0x9804 - Status and Tracking Interval in Normal Mode

Name: normal-mode-advertisement-interval (1)

Offset

Type

Description

0:1

u16

Advertisement interval is in millisecond. Range is 20ms to 10240ms.

2

u8

Denominator. Valid range: 1-255.

Denominator defines how often status and tracking propagate through network extender. For example, if denominator is 2, every second advertisement comes through. If denominator is 5, every 5th advertisement comes through.

{
  "interval": [number],
  "denominator": [number]
}

0x9805 - Status and Tracking Interval in SOS/Alarm Mode

Name: alarm-mode-advertisement-interval (1)

See 0x9804.

0x9806 - Status and Tracking Interval in Priority Mode

Name: priority-mode-advertisement-interval (1)

See 0x9804.

0x9807 - Status and Tracking Interval in Sleep Mode

Name: sleep-mode-advertisement-interval (1)

See 0x9804.

0x9808 - Inactive to Sleep Delay

Type: u16

Name: inactive-to-sleep-delay (1)

Delay in seconds from device becomes inactive in Normal mode until it enters Sleep mode.

Default Value for all devices is 60 seconds.

0x9809 - Alarm 2

Type: bool

Name: alarm-2 (3)

Value

Description

0

Alarm State OFF

1

Alarm State ON

0x9810 - Whitelist Key

Name: whitelist-key (1)

Offset

Type

Description

0:1

u16

Installation ID

2:5

u32

Group Membership Bit-mask

{
  "site": [number],
  "groups": [hex-string(8)]
}

0x9811 - Tamper Alarm

Type: bool

Name: tamper-alarm (11)

Value

Description

0

Tamper alarm not active (Pin pressed)

1

Tamper alarm active (Pin not pressed)

0x9812 - Alarm State

Type: dictionary

Name: alarm-state (16)

Key

Name

Type

JSON Property

JSON Type

Description

0

TIMESTAMP

u48

timestamp

number

Unix time when alarm was triggered. This serves as a unique ID for the alarm event. Unit: ms.

1

ALARM_ID

bytearray

alarmId

hex-string

Alarm ID. This is present when alarm has been reported and ACKed. For Skyresponse, this will be globalAlarmId.

2

CLEARED_BY

mac-address

clearedBy

hex-string

MAC address of device that cleared the alarm. Set to 0 if clearer is unknown.

3

ALARM_CODE

u32

alarmCode

number

Skyresponse Alarm Code (from skyresponse-alarm-config). Included if ALARM_CODE is present in skyresponse-alarm-config.

4

SECRET

UTF-8

secret

string

Skyresponse Secret (from skyresponse-alarm-config). Included if skyresponse-alarm-config is set.

When there is no active alarm (NO_ALARM state), alarm state will have no TIMESTAMP.

Alarm state

Keys

Optional Keys

Description

NO_ALARM

-

SECRET

No alarm. Value contains no TIMESTAMP.

ALARM

TIMESTAMP

ALARM_CODE, SECRET

Alarm has been triggered.

ALARM_ACKED

TIMESTAMP, ALARM_ID

ALARM_CODE, SECRET

Alarm has been ACKed.

ALARM_CLEARED

TIMESTAMP, ALARM_ID, CLEARED_BY

ALARM_CODE, SECRET

Alarm has been cleared (after being ACKed)

ALARM_CLEARED

TIMESTAMP, CLEARED_BY

ALARM_CODE, SECRET

Alarm has been cleared (before being ACKed)

The typical alarm state flow is like this:

NO_ALARM → ALARM → ALARM_ACKED → ALARM_CLEARED → NO_ALARM/ALARM

Alternatively, alarm can be cleared before it is ACKed (in this case, no ALARM_ID will be present):

NO_ALARM → ALARM → ALARM_CLEARED → NO_ALARM/ALARM

A new alarm can be triggered in ALARM_CLEARED state, before the clearing has been ACKed. This will have a new unique TIMESTAMP.

JSON example:

{
      "timestamp": 1779782560876,
      "alarmId": "0323770E77B0A80E20260526080235",
      "clearedBy": "CA6B8F76D440",
      "alarmCode": 121,
      "secret": "9847472103746214"
}

0x9813 - Clear Alarm State

Name: clear-alarm-state (16)

Offset

Name

Type

Description

0:5

TIMESTAMP

u48

Unix time when alarm was triggered. This serves as a unique ID for the alarm event. Unit: ms.

6

FLAGS

u8

Flags

FLAGS bit

NAME

Description

7:1

-

Reserved, set to 0

0

SET_CLEARED_BY

Set CLEARED_BY to connected device MAC address. If not set, CLEARED_BY is set to 0 (unknown clearer).

Clear alarm. This will transition alarm state from ALARM/ALARM_ACKED to ALARM_CLEARED. Two state transitions are possible:

  • ALARM → ALARM_CLEARED

  • ALARM_ACKED → ALARM_CLEARED

TIMESTAMP must match the current alarm.

After a successful clear, alarm-state reports with CLEARED_BY.

ERROR_CODE

Description

Not Applicable (38)

Alarm is not in ALARM or ALARM_ACKED state.

Alarm Timestamp mismatch (19)

Timestamp does not match

JSON example:

{
  "timestamp": 1779782560876,
  "setClearedBy": false
}

0x9814 - Skyresponse Alarm Config

Type: dictionary

Name: skyresponse-alarm-config (16)

Skyresponse alarm configuration in device.

Key

Name

Type

Optional

Description

0

SECRET

UTF-8

No

Transmitter Secret. The secret is called “PIN” in the GUI and “access code” in the Alarm application.

1

ALARM_CODE

u32

Yes

Alarm Code

The transmitter secret must be 5-30 characters and cannot contain the following chars: “ ‘ & < >.

To generate a random 16-char secret, set SECRET to “r16”. The secret can then be read back and copied into Transmitter details -> PIN in Skyresponse Admin. This is the recommended way to ensure a high level of security.

The following alarm codes are supported:

ALARM_CODE

Description

101

Panic alarm, mobile

102

Panic alarm, fixed

121

Attention alarm, mobile

122

Attention alarm, fixed

125

Door bell

163

Geofence - Person out-of-bounds (No positioning monitoring)

301

Personal emergency, mobile (Social Care Alarm Mobile)

302

Personal emergency, fixed (Social Care Alarm Fixed)

When no ALARM_CODE is specified or an unsupported code is used, 301 - Personal emergency, mobile (displayed as Social Care Alarm Mobile) will be used.

JSON example:

{
  "secret": "9847472103746214",
  "alarmCode": 301
}

0x9815 - Ack Alarm State

Type: dictionary

Name: ack-alarm-state (16)

Key

Name

Type

Description

0

TIMESTAMP

u48

Unix time when alarm was triggered. Unit: ms.

1

ALARM_ID

bytearray

Alarm ID.

Ack ALARM state. This will transition state from ALARM to ALARM_ACKED. TIMESTAMP must match current alarm-state TIMESTAMP.

ERROR_CODE

Description

Not Applicable (38)

Alarm is not in ALARM state

Alarm Timestamp mismatch (19)

In ALARM state, but timestamp does not match

JSON example:

{
  "timestamp": 1779782560876,
  "alarmId": "0323770E77B0A80E20260526080235"
}

0x9816 - Ack Alarm Cleared State

Name: ack-alarm-cleared-state (16)

Offset

Name

Type

Description

0:5

TIMESTAMP

u48

Unix time when alarm was triggered. This serves as a unique ID for the alarm event. Unit: ms.

Ack ALARM_CLEARED state. TIMESTAMP must match current alarm-state TIMESTAMP. This will switch alarm-state to NO_ALARM.

ERROR_CODE

Description

Not Applicable (38)

Alarm is not in ALARM_CLEARED state

Alarm Timestamp mismatch (19)

Timestamp does not match

JSON example:

{
  "timestamp": 1779782560876
}

0x9817 - Skyresponse Config

Type: json-object

Name: skyresponse-config (16)

Skyresponse configuration. When Skyresponse is not to be used, set to NULL or keep enabled false.

JSON Property

Type

Optional

Default Value

Description

enabled

boolean

No

-

Enable/disable

mode

string

Yes

null

Mode. Used for testing purposes. Allowed values: “sandbox”, “simulation”.

The following alarm codes are supported:

JSON example:

{
  "enabled": true
}

0x9820 - Text Message

Name: text-message (1)

When this property is written, the text message is added to the message queue.

User will be notified about the new message and value of 0x9821 will be set to 1.

Note

0-bytes in ascii text data are not allowed.

Offset

Type

Description

0:n

u8

ASCII text message

0x9821 - Unread Text Message

Type: bool

Name: unread-message (1)

Value

Description

0

No unread message

1

Unread message

0x9830 - Battery Alarm State

Type: dictionary

Name: battery-alarm-state (18)

Battery alarm is triggered when the battery level is low. It works like 0x9812 - Alarm State, but is less urgent.

The following alarm codes are used:

ALARM_CODE

Description

956

Low battery alarm

957

Battery end of life (Battery Drained)

See 0x9812 - Alarm State.

0x9831 - Clear Battery Alarm State

Name: clear-battery-alarm-state (18)

See 0x9813 - Clear Alarm State.

0x9832 - Ack Battery Alarm State

Type: dictionary

Name: ack-battery-alarm-state (18)

See 0x9815 - Ack Alarm State.

0x9833 - Ack Battery Alarm Cleared State

Name: ack-battery-alarm-cleared-state (18)

See 0x9816 - Ack Alarm Cleared State.

0x9860 - Button Panel State

Type: u8

Name: button-panel-state (1)

Current Button Panel State.

Write to reset button panel state.

0x9861 - Button Panel State Request

Type: u8

Name: button-panel-state-request (1)

New button panel state requested by device.

Write this property to confirm requested state.