Skip to main content

Device Manager (Pebble)

As used by RockREMOTE Mini and RockBLOCK Pro.

Structure

As found in LingoMT or LingoMO.

System

Reboot Request

{
"rebootRequest": {}
}

Reboot Response

{
"rebootResponse": {
"status": true,
"errors": []
}
}

Status Request

{
"statusRequest": {}
}

Status Response

{
"statusResponse": {
"status": true,
"systemInfo": {},
"iridiumInfo": {},
"errors": []
}
}

Parameter systemInfo is a Pebble System Info JSON object. Parameter iridiumInfo is a Pebble Iridium Modem Info JSON object.

Startup Event

{
"startup": {
"status": {},
"iridiumInfo": {}
}
}

Parameter status is a Pebble System Info JSON object. Parameter iridiumInfo is a Pebble Iridium Modem Info JSON object.

Indicate Request

Requests a beep on RockBLOCK Pro or LED flash on RockREMOTE Mini.

{
"indicateRequest": {}
}

Indicate Response

{
"indicateResponse": {
"status": true,
"errors": []
}
}

Config Request

Retrieves the full configuration of the device.

{
"pebbleConfigRequest": {}
}

Config Response

{
"pebbleConfigResponse": {
"status": true,
"config": {},
"errors": []
}
}

Parameter config is a Pebble Conf JSON object.

Data Transfer

MO Transfer Request

Request to upload a file from the device (Mobile Originated).

{
"moTransferRequest": {
"file": "PEBBLE_FILE_APP_LOG",
"flow": "PEBBLE_FILE_TRANSFER_FLOW_UNSOLICITED"
}
}

File type options:

  • PEBBLE_FILE_APP_UPDATE
  • PEBBLE_FILE_BLE_UPDATE
  • PEBBLE_FILE_IRIDIUM_UPDATE
  • PEBBLE_FILE_USER_CONFIG
  • PEBBLE_FILE_USER_DEFAULT
  • PEBBLE_FILE_APP_LOG
  • PEBBLE_FILE_H7_BOOT_UPDATE
  • PEBBLE_FILE_BLE_BOOT_UPDATE

Flow options:

  • PEBBLE_FILE_TRANSFER_FLOW_UNSOLICITED
  • PEBBLE_FILE_TRANSFER_FLOW_ACKNOWLEDGE

MO Transfer Response

{
"moTransferResponse": {
"status": true,
"blockSize": 200,
"blockTotal": 5,
"payload": "RXFFQkNqZDBlWEJsTG1kdmIyZHNaM1JsZWdBZ2ZkeGhzZHM=",
"errors": []
}
}

Parameter payload contains the first block of data (Base64 encoded) if successful.

Error options:

  • MO_TRANSFER_ERROR_FILE_DOES_NOT_EXIST
  • MO_TRANSFER_ERROR_TOO_MANY_TRANSFERS_ACTIVE
  • MO_TRANSFER_ERROR_FILE_SYSTEM_ERROR

MT Transfer Request

Request to download a file to the device (Mobile Terminated).

{
"mtTransferRequest": {
"file": "PEBBLE_FILE_USER_CONFIG",
"blockSize": 200,
"blockTotal": 10,
"flow": "PEBBLE_FILE_TRANSFER_FLOW_ACKNOWLEDGE"
}
}

MT Transfer Response

{
"mtTransferResponse": {
"status": true,
"blockTotal": 10,
"errors": []
}
}

Error options:

  • MT_TRANSFER_ERROR_BLOCK_SIZE_TOO_BIG
  • MT_TRANSFER_ERROR_FILE_TOO_BIG
  • MT_TRANSFER_ERROR_FILE_TYPE_IS_UNKNOWN
  • MT_TRANSFER_ERROR_TOO_MANY_TRANSFERS_ACTIVE
  • MT_TRANSFER_ERROR_FILE_SYSTEM_ERROR
  • MT_TRANSFER_ERROR_FLOW_TYPE_NOT_SUPPORTED

Transfer Block

Used for unsolicited flow.

{
"transferBlock": {
"blockNumber": 2,
"payload": "RXFFQkNqZDBlWEJsTG1kdmIyZHNaM1JsZWdBZ2ZkeGhzZHM="
}
}

MT Transfer Block Ack Request

Used when flow is PEBBLE_FILE_TRANSFER_FLOW_ACKNOWLEDGE.

{
"mtTransferBlockWithAcknowledgeRequest": {
"blockNumber": 1,
"payload": "RXFFQkNqZDBlWEJsTG1kdmIyZHNaM1JsZWdBZ2ZkeGhzZHM="
}
}

MT Transfer Block Ack Response

{
"mtTransferBlockWithAcknowledgeResponse": {
"status": true,
"blockNumber": 1,
"errors": []
}
}

Error options:

  • MT_TRANSFER_BLOCK_WITH_ACKNOWLEDGE_ERROR_WRITE_FAILED
  • MT_TRANSFER_BLOCK_WITH_ACKNOWLEDGE_ERROR_NOT_ACTIVE

Network

LAN Request

{
"lanRequest": {}
}

LAN Response

{
"lanResponse": {
"status": true,
"lan": {},
"errors": []
}
}

Parameter lan is a Pebble LAN JSON object.

Error options:

  • LAN_ERROR_FEATURE_NOT_SUPPORTED

Update LAN Request

{
"updateLanRequest": {
"lan": {}
}
}

Parameter lan is a Pebble LAN JSON object.

Update LAN Response

{
"updateLanResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_LAN_ERROR_INVALID_ADDRESS
  • UPDATE_LAN_ERROR_INVALID_NETMASK
  • UPDATE_LAN_ERROR_INVALID_GATEWAY
  • UPDATE_LAN_ERROR_INVALID_DNS1
  • UPDATE_LAN_ERROR_INVALID_DNS2
  • UPDATE_LAN_ERROR_INVALID_DHCP_RANGE
  • UPDATE_LAN_ERROR_INVALID_DHCP_LEASE
  • UPDATE_LAN_ERROR_INVALID_HTTP_PORT
  • UPDATE_LAN_ERROR_FEATURE_NOT_SUPPORTED

Firewall Request

{
"firewallRequest": {}
}

Firewall Response

{
"firewallResponse": {
"status": true,
"firewall": {},
"errors": []
}
}

Parameter firewall is a Pebble Firewall JSON object.

Error options:

  • FIREWALL_ERROR_FEATURE_NOT_SUPPORTED

Update Firewall Request

{
"updateFirewallRequest": {
"firewall": {}
}
}

Parameter firewall is a Pebble Firewall JSON object.

Update Firewall Response

{
"updateFirewallResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_FIREWALL_ERROR_OUTBOUND_TOO_MANY_ICMP_RULES
  • UPDATE_FIREWALL_ERROR_OUTBOUND_TOO_MANY_UDP_RULES
  • UPDATE_FIREWALL_ERROR_OUTBOUND_TOO_MANY_TCP_RULES
  • UPDATE_FIREWALL_ERROR_OUTBOUND_INVALID_IP_ADDRESS
  • UPDATE_FIREWALL_ERROR_OUTBOUND_INVALID_CIDR
  • UPDATE_FIREWALL_ERROR_OUTBOUND_INVALID_PORT_RANGE
  • UPDATE_FIREWALL_ERROR_INBOUND_TOO_MANY_UDP_RULES
  • UPDATE_FIREWALL_ERROR_INBOUND_TOO_MANY_TCP_RULES
  • UPDATE_FIREWALL_ERROR_INBOUND_INVALID_IP_ADDRESS
  • UPDATE_FIREWALL_ERROR_INBOUND_INVALID_INVALID_WAN_PORT
  • UPDATE_FIREWALL_ERROR_INBOUND_INVALID_INVALID_LAN_PORT
  • UPDATE_FIREWALL_ERROR_FEATURE_NOT_SUPPORTED

Connectivity

Serial Request

{
"serialRequest": {}
}

Serial Response

{
"serialResponse": {
"status": true,
"serial": {},
"errors": []
}
}

Parameter serial is a Pebble Serial JSON object.

Update Serial Request

{
"updateSerialRequest": {
"serial": {}
}
}

Parameter serial is a Pebble Serial JSON object.

Update Serial Response

{
"updateSerialResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_SERIAL_ERROR_INVALID_MODE
  • UPDATE_SERIAL_ERROR_INVALID_BAUD
  • UPDATE_SERIAL_ERROR_INVALID_PARITY
  • UPDATE_SERIAL_ERROR_INVALID_DATA_BITS
  • UPDATE_SERIAL_ERROR_INVALID_STOP_BITS
  • UPDATE_SERIAL_ERROR_INVALID_APPLICATION_MODE

BLE Request

{
"bleRequest": {}
}

BLE Response

{
"bleResponse": {
"status": true,
"ble": {},
"errors": []
}
}

Parameter ble is a Pebble BLE JSON object.

Update BLE Request

{
"updateBleRequest": {
"ble": {}
}
}

Parameter ble is a Pebble BLE JSON object.

Update BLE Response

{
"updateBleResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_BLE_ERROR_CONNECTION_TIMEOUT_TOO_SMALL
  • UPDATE_BLE_ERROR_CONNECTION_TIMEOUT_TOO_BIG

Location

Location Request

{
"locationRequest": {}
}

Location Response

{
"locationResponse": {
"status": true,
"gnssFix": {},
"apntFix": {},
"errors": []
}
}

Parameter gnssFix is a Pebble GNSS Fix JSON object. Parameter apntFix is a Pebble APNT Fix JSON object.

Error options:

  • LOCATION_ERROR_NO_INFO_AVAILABLE

GNSS Fix Request (Legacy)

{
"gnssFixRequest": {}
}

GNSS Fix Response (Legacy)

{
"gnssFixResponse": {
"status": true,
"fix": {},
"errors": []
}
}

Parameter fix is a Pebble GNSS Fix JSON object.

Error options:

  • GNSS_FIX_NO_FIX_AVAILABLE

GNSS Config Request

{
"gnssRequest": {}
}

GNSS Config Response

{
"gnssResponse": {
"status": true,
"gnss": {},
"errors": []
}
}

Parameter gnss is a Pebble GNSS Config JSON object.

Update GNSS Config Request

{
"updateGnssRequest": {
"gnss": {}
}
}

Parameter gnss is a Pebble GNSS Config JSON object.

Update GNSS Config Response

{
"updateGnssResponse": {
"status": true,
"errors": []
}
}

APNT Info Request

{
"apntInfoRequest": {}
}

APNT Info Response

{
"apntInfoResponse": {
"status": true,
"info": {
"serial": "APNT12345",
"firmware": "1.0.0",
"keyStart": "2024-01-01",
"keyEnd": "2025-01-01"
},
"errors": []
}
}

Error options:

  • APNT_INFO_ERROR_NO_INFO_AVAILABLE
  • APNT_INFO_ERROR_FEATURE_NOT_SUPPORTED

Update APNT Key Request

{
"updateApntKeyRequest": {
"apntKey": {
"serial": "APNT12345",
"key": "XYZ123..."
}
}
}

Update APNT Key Response

{
"updateApntKeyResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_APNT_KEY_ERROR_FEATURE_NOT_SUPPORTED
  • UPDATE_APNT_KEY_ERROR_APNT_SERIAL_NOT_MATCHING

Reset APNT Key Request

{
"resetApntKeyRequest": {}
}

Reset APNT Key Response

{
"resetApntKeyResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_APNT_KEY_ERROR_FEATURE_NOT_SUPPORTED

SVI Request

{
"sviRequest": {}
}

SVI Response

{
"sviResponse": {
"status": true,
"svi": {},
"errors": []
}
}

Parameter svi is a Pebble SVI JSON object.

Update SVI Request

{
"updateSviRequest": {
"svi": {}
}
}

Parameter svi is a Pebble SVI JSON object.

Update SVI Response

{
"updateSviResponse": {
"status": true,
"errors": []
}
}

Chart Request

{
"chartRequest": {}
}

Chart Response

{
"chartResponse": {
"status": true,
"chart": {},
"errors": []
}
}

Parameter chart is a Pebble Chart JSON object.

Update Chart Request

{
"updateChartRequest": {
"chart": {}
}
}

Parameter chart is a Pebble Chart JSON object.

Update Chart Response

{
"updateChartResponse": {
"status": true,
"errors": []
}
}

IO and Sensors

Sensors Request

{
"sensorsRequest": {}
}

Sensors Response

{
"sensorsResponse": {
"status": true,
"sensors": {},
"errors": []
}
}

Parameter sensors is a Pebble Sensors JSON object.

Update Sensors Request

{
"updateSensorsRequest": {
"sensors": {}
}
}

Parameter sensors is a Pebble Sensors JSON object.

Update Sensors Response

{
"updateSensorsResponse": {
"status": true,
"errors": []
}
}

IO Config Request

{
"ioRequest": {}
}

IO Config Response

{
"ioResponse": {
"status": true,
"io": {},
"errors": []
}
}

Parameter io is a Pebble IO JSON object.

Error options:

  • IO_ERROR_IO_NOT_SUPPORTED

Update IO Config Request

{
"updateIoRequest": {
"io": {}
}
}

Parameter io is a Pebble IO JSON object.

Update IO Config Response

{
"updateIoResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_IO_ERROR_INVALID_TYPE

IO Value Request

{
"ioValueRequest": {
"getAll": false,
"channels": [1, 2]
}
}

IO Value Response

{
"ioValueResponse": {
"status": true,
"timestamp": 167888888,
"values": [
{
"channel": 1,
"mode": "PEBBLE_IO_MODE_INPUT",
"value": 3.3
}
],
"errors": []
}
}

Value modes can be found in Pebble IO Channel Mode. The values parameter uses oneof stateValue, returning either state or value/count depending on the channel mode.

Update IO Value Request

{
"updateIoValueRequest": {
"channels": [
{
"channel": 2,
"state": "PEBBLE_IO_VALUE_HIGH"
}
]
}
}

The request uses oneof stateValue.

Update IO Value Response

{
"updateIoValueResponse": {
"status": true,
"errors": []
}
}

Error options:

  • PEBBLE_UPDATE_IO_VALUE_UPDATE_NOT_OUTPUT

System Peripherals

IMT Request

{
"imtRequest": {}
}

IMT Response

{
"imtResponse": {
"status": true,
"imt": {},
"errors": []
}
}

Parameter imt is a Pebble IMT JSON object.

Update IMT Request

{
"updateImtRequest": {
"imt": {}
}
}

Parameter imt is a Pebble IMT JSON object.

Update IMT Response

{
"updateImtResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_IMT_ERROR_INVALID_DEFAULT_TOPIC
  • UPDATE_IMT_ERROR_INVALID_DEFAULT_TTL

Sleep Request

{
"sleepRequest": {}
}

Sleep Response

{
"sleepResponse": {
"status": true,
"sleep": {},
"errors": []
}
}

Parameter sleep is a Pebble Sleep JSON object.

Update Sleep Request

{
"updateSleepRequest": {
"sleep": {}
}
}

Parameter sleep is a Pebble Sleep JSON object.

Update Sleep Response

{
"updateSleepResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_SLEEP_ERROR_INVALID_MODE

LEDs Request

{
"ledsRequest": {}
}

LEDs Response

{
"ledsResponse": {
"status": true,
"leds": {},
"errors": []
}
}

Parameter leds is a Pebble LEDs JSON object.

Update LEDs Request

{
"updateLedsRequest": {
"leds": {}
}
}

Parameter leds is a Pebble LEDs JSON object.

Update LEDs Response

{
"updateLedsResponse": {
"status": true,
"errors": []
}
}

Buzzer Request

{
"buzzerRequest": {}
}

Buzzer Response

{
"buzzerResponse": {
"status": true,
"buzzer": {},
"errors": []
}
}

Parameter buzzer is a Pebble Buzzer JSON object.

Error options:

  • BUZZER_ERROR_FEATURE_NOT_SUPPORTED

Update Buzzer Request

{
"updateBuzzerRequest": {
"buzzer": {}
}
}

Parameter buzzer is a Pebble Buzzer JSON object.

Update Buzzer Response

{
"updateBuzzerResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_BUZZER_FEATURE_NOT_SUPPORTED

USB Request

{
"pebbleUsbRequest": {}
}

USB Response

{
"pebbleUsbResponse": {
"status": true,
"usb": {},
"errors": []
}
}

Parameter usb is a Pebble USB JSON object.

Error options:

  • USB_ERROR_FEATURE_NOT_SUPPORTED

Update USB Request

{
"pebbleUpdateUsbRequest": {
"usb": {}
}
}

Parameter usb is a Pebble USB JSON object.

Update USB Response

{
"pebbleUpdateUsbResponse": {
"status": true,
"errors": []
}
}

Error options:

  • UPDATE_USB_ERROR_FEATURE_NOT_SUPPORTED

Shared JSON Structures

Pebble System Info

{
"serial": "12345",
"fwMain": {
"type": "FIRMWARE_MAIN",
"version": "1.0.0",
"isUpdatable": true,
"updateInProgress": false
},
"uptime": 3600,
"time": 1678900000,
"fwIridium": {},
"productType": "PRODUCT_TYPE_ROCK_BLOCK_PRO",
"fwBle": {},
"pcbTemperature": 25,
"mcuTemperature": 30,
"freeHeap": 10240,
"lastResetCause": "RESET_CAUSE_POWER_ON_POWER_DOWN_RESET",
"fwBootloader": {}
}

Product Type options:

  • PRODUCT_TYPE_UNKNOWN
  • PRODUCT_TYPE_MINI_OEM
  • PRODUCT_TYPE_MINI
  • PRODUCT_TYPE_ROCK_BLOCK_PRO_OEM
  • PRODUCT_TYPE_ROCK_BLOCK_PRO
  • PRODUCT_TYPE_ROCK_BLOCK_PRO_APNT
  • PRODUCT_TYPE_ROCK_BLOCK_PRO_OEM_APNT

Reset Cause options:

  • RESET_CAUSE_UNKNOWN
  • RESET_CAUSE_LOW_POWER_RESET
  • RESET_CAUSE_INDEPENDENT_WATCHDOG_RESET
  • RESET_CAUSE_SOFTWARE_RESET
  • RESET_CAUSE_POWER_ON_POWER_DOWN_RESET
  • RESET_CAUSE_EXTERNAL_RESET_PIN_RESET
  • RESET_CAUSE_BROWNOUT_RESET

Pebble Iridium Modem Info

{
"imei": "300000000000000",
"serial": "12345",
"iccid": "8988000000000000000",
"model": "9603",
"signalBars": 5,
"signalStrength": -100,
"messagingProvisioned": true,
"dataProvisioned": false,
"pppUp": false,
"pppPacketsSent": 0,
"pppPacketsReceived": 0
}

Pebble Conf

{
"lan": {},
"serial": {},
"ble": {},
"gnss": {},
"sensors": {},
"io": {},
"imt": {},
"sleep": {},
"firewall": {},
"leds": {},
"buzzer": {},
"usb": {},
"svi": {},
"chart": {}
}

Includes all configuration objects listed below.

Pebble LAN

{
"enabled": true,
"address": "192.168.0.100",
"netmask": "255.255.255.0",
"gateway": "192.168.0.1",
"dns1": "8.8.8.8",
"dns2": "8.8.4.4",
"tftpEnabled": false,
"dhcpEnabled": true,
"dhcpStart": "192.168.0.101",
"dhcpEnd": "192.168.0.150",
"dhcpLease": 86400,
"sntpEnabled": true,
"httpPort": 80,
"smtpEnabled": false
}

Pebble Serial

{
"enabled": true,
"mode": "PEBBLE_SERIAL_MODE_RS232",
"baud": 19200,
"parity": "PEBBLE_SERIAL_PARITY_NONE",
"dataBits": "PEBBLE_SERIAL_DATA_BITS_8",
"stopBits": "PEBBLE_SERIAL_STOP_BITS_1",
"applicationMode": "PEBBLE_SERIAL_APPLICATION_MODE_AT_CMD"
}

Mode options:

  • PEBBLE_SERIAL_MODE_RS232
  • PEBBLE_SERIAL_MODE_RS4XX_HALF_DUPLEX
  • PEBBLE_SERIAL_MODE_RS4XX_FULL_DUPLEX
  • PEBBLE_SERIAL_MODE_RF_TEST
  • PEBBLE_SERIAL_MODE_9603_EMU

App Mode options:

  • PEBBLE_SERIAL_APPLICATION_MODE_AT_CMD
  • PEBBLE_SERIAL_APPLICATION_MODE_GNSS_NMEA
  • PEBBLE_SERIAL_APPLICATION_MODE_TCP_SERIAL
  • PEBBLE_SERIAL_APPLICATION_MODE_SERIAL_RELAY

Pebble BLE

{
"enabled": true,
"connectionTimeout": 300
}

Pebble GNSS Config

{
"enabled": true,
"nmeaForwardEnabled": false,
"reportInterval": 60,
"apntMode": "PEBBLE_APNT_MODE_2600_DYNAMIC",
"apntSensitivity": "PEBBLE_APNT_SENSITIVITY_HIGH",
"apntPower": "PEBBLE_APNT_POWER_FAST",
"customVtc": 1.0,
"customHtc": 1.0,
"customVss": 1.0,
"customHss": 1.0,
"nmeaSentences": {
"GNGGA": true,
"GNRMC": true
},
"apntKalmanFilter": "PEBBLE_APNT_KALMAN_FILTER_MARITIME",
"apntFilterPosition": true
}

APNT Mode options:

  • PEBBLE_APNT_MODE_2600_STATIC
  • PEBBLE_APNT_MODE_2600_DYNAMIC
  • PEBBLE_APNT_MODE_2600_AUTO

Pebble Sensors

{
"enabled": true
}

Pebble IO

{
"type": "PEBBLE_IO_TYPE_UNIVERSAL",
"channel": [
{
"channel": 1,
"type": "PEBBLE_IO_CHANNEL_TYPE_INTERNAL",
"channelSettingsInternal": {
"mode": "PEBBLE_IO_MODE_INPUT",
"filter": "PEBBLE_IO_CHANNEL_FILTER_LOW",
"ioLevel": 1.5,
"hysteresis": 0.1,
"reportPeriod": 0
}
}
]
}

IO Type options:

  • PEBBLE_IO_TYPE_NONE
  • PEBBLE_IO_TYPE_DIGITAL
  • PEBBLE_IO_TYPE_UNIVERSAL

Channel Mode options:

  • PEBBLE_IO_MODE_INPUT
  • PEBBLE_IO_MODE_OUTPUT
  • PEBBLE_IO_MODE_INT_RISING
  • PEBBLE_IO_MODE_INT_FALLING
  • PEBBLE_IO_MODE_INT_CHANGE
  • PEBBLE_IO_MODE_VOLTAGE_IN
  • PEBBLE_IO_MODE_CURRENT_IN
  • PEBBLE_IO_MODE_OUTPUT_CONFIRMED
  • PEBBLE_IO_MODE_OUTPUT_ONE_SHOT
  • PEBBLE_IO_MODE_OUTPUT_PWM
  • PEBBLE_IO_MODE_COUNTER_RISING
  • PEBBLE_IO_MODE_COUNTER_FALLING
  • PEBBLE_IO_MODE_COUNTER_CHANGE

Pebble IMT

{
"defaultTopic": 244,
"defaultTTL": 604800,
"startupEventEnabled": true,
"serialRelayTopic": 245
}

Pebble Sleep

{
"mode": "PEBBLE_SLEEP_MODE_NONE"
}

Mode options:

  • PEBBLE_SLEEP_MODE_NONE
  • PEBBLE_SLEEP_MODE_A
  • PEBBLE_SLEEP_MODE_B

Pebble Firewall

{
"outboundRules": [
{
"transport": "PEBBLE_TRANSPORT_TCP",
"ip": "8.8.8.8",
"cidr": 32,
"portStart": 80,
"portEnd": 80
}
],
"inboundRules": [
{
"transport": "PEBBLE_TRANSPORT_UDP",
"ip": "192.168.0.101",
"wanPort": 5000,
"lanPort": 5000
}
]
}

Transport options:

  • PEBBLE_TRANSPORT_ICMP
  • PEBBLE_TRANSPORT_UDP
  • PEBBLE_TRANSPORT_TCP

Pebble LEDs

{
"enabled": true
}

Pebble Buzzer

{
"enabled": true
}

Pebble USB

{
"enabled": true
}

Pebble SVI

{
"reportDuration": 60,
"reportTopic": 250,
"reportInterval": 10
}

Pebble Chart

{
"epeScale": 1.0,
"positionCompareTimer": 30,
"utcDifferenceLimit": 5,
"utcDifferenceTimer": 30,
"positionValidityTimer": 30,
"errorCircle": true,
"errorLimitCircle": true
}

Pebble GNSS Fix

{
"time": 1678900000,
"lat": 50.8,
"lon": -1.1,
"alt": 10,
"cog": 180.0,
"sog": 0.0,
"hdop": 1.0,
"numSats": 8
}

Pebble APNT Fix

{
"time": 1678900000,
"lat": 50.8,
"lon": -1.1,
"alt": 10,
"cog": 180.0,
"sog": 0.0,
"hdop": 1.0,
"numSats": 8,
"bursts": 10,
"processedBursts": 5,
"epe": "20m"
}