Modem

Modem service #

Service namespace: modem

Configuration #

Config json schema available on api/v1/device/<dev_id>/service/modem/config/schema:

curl -H "X-API-Key: <api key>" \
    https://api.nr.iotready.no/api/v1/device/<dev_id>/service/modem/config/schema
Field Type Description
interval int Interval in seconds between scheduled connection
uestats bool Enable/disable reporting of uestats message

Read config with status:

curl -H "X-IOTREADY-CONFIG-NEXT-GEN: true" -H "X-API-Key: <api key>" \
    https://api.nr.iotready.no/api/v1/device/<dev_id>/service/modem/config

Configure interval to 1 hour:

curl -H "X-API-Key: <api key>" -X PUT -d '{"interval":3600}' \
    https://api.nr.iotready.no/api/v1/device/<dev_id>/service/modem/config/value

Messages #

UEStats #

Message name: uestats

Field Type Description
time timestamp UTC time when message was generated
dt int Elapsed modem active time in seconds
dts int Elapsed modem attach time in seconds, how long it took to get attach
dns bool A DNS lookup was performed
rssi int RSSI
qual int Signal quality 0 -> 7 and 99 (lower is better, 99 indicate that signal quality is unknown)
signal_power float NB-IoT signal power expressed in dBm
tot_power float Total power within receive bandwidth expressed in dBm
tx_power float TX power expressed in dBm
tx_time int Elapsed TX time expressed in milliseconds
rx_time int Elapsed RX time expressed in milliseconds
cell_id int Cell ID
ecl int Coverage enhancement status, (lower is better, 99 indicate unknown coverage enhancement)
snr int SNR
earfcn int EARFCN (channel)
pci int Physical Cell ID
rsrq int RSRQ, see 9.1.7 RSRQ Measurement Report Mapping in ETSI TS 136 133 V12.5.0 (2014-11)
temp float Temperature
error string array Errors. Possible values: ATTACH_FAILED, DETACH_FAILED, TX_FAILED, RX_FAILED, DNS_FAILED. See errors for details

Read message:

curl -H "X-API-Key: <api key>" \
    https://api.nr.iotready.no/api/v1/device/<dev_id>/service/modem/message/uestats

Errors #

The uestats message is reported for every communication to cloud. Even unsuccessful ones, and those have the error field populated.

Error Description
ATTACH_FAILED Failed to connect to cellular network. Can be network errors or outside network coverage
DETACH_FAILED Failed to disconnect from cellular network. Can be network errors
TX_FAILED Failed to transmit data. Can be network errors or outside network coverage
RX_FAILED No response from cloud. Can be network errors or cloud error
DNS_FAILED DNS lookup failed. Can be network errors or outside network coverage

Typically the error rate is a few percent, and higher for bad network coverage.