Tech Specs
Last updated
Last updated
This documentation portal is currently undergoing updates to align with the IoTeX 2.0 Whitepaper release. Information provided here may be incomplete, or out-of-date. Please use this portal for preliminary reference only, and check out the official IoTeX 2.0 Whitepaper for updated information.
.2024 | IoTeX
Pebble is a battery-powered, cellular-based, multi-sensor development board designed by IoTeX and Nordic Semiconductor, combining tamper-proof hardware and tamper-proof software to generate verifiable data.
Pebble is equipped with high-quality GPS, climate, motion, and light sensors. Data can be easily streamed in real-time to an MQTT endpoint for use in Cloud or blockchain-based applications.
Pebble utilizes a secure element (nRF9160) to cryptographically sign all data, providing unparalleled verifiability and traceability for asset tracking, supply chain, and other applications.
Pebble is powered by a 64 MHz Arm® Cortex®-M33, 1 MB Flash and 256 KB RAM, with automated power and clock management, Arm TrustZone, and Arm CryptoCell 310
Pebble combines an environmental sensor (temperature, relative humidity, barometric pressure, altitude, and volatile organic compounds - VOCs), a motion sensor (3-axis gyroscope, 3-axis accelerometer), and an ambient light sensor. It's also equipped with cellular network connectivity and integrated GPS supporting precise, long range tracking of asset data using established cellular infrastructure.
Sensor | Details |
Relative humidity Barometric pressure Ambient temperature Air quality (VOC) | |
3-axis gyroscope 3-axis accelerometer | |
External GPS TD1030 | Position accuracy: 3m Speed accuracy: 0.1 m/s Data frequency: 1 hz to 10 Hz |
45,000,000:1 Dynamic Range Operation to 60,000 lux in Sunlight Very High Sensitivity Package UV Rejection Filter | |
Buzzer Mallory Sonalert AST7525MATRQ | Frequency: 2700 Hz Sound Pressure Level (dB/min): 85 at 10cm |
Pebble includes a Multimode LTE-M/NB-IoT modem for cellular communication. To have your Pebble connected to the Internet you will need an IoT-enabled** SIM card that supports either NB-IoT or LTE standards.
JavaScript Object Notation (JSON) is utilized to represent the sensor data collected by a Pebble as well as the corresponding ECDSA digital signature. Pebble utilizes ECDSA over the elliptic curve sepc256r1
to sign the collected sensor data (i.e., the message field in the Pebble data format)
Supported data types include Number, String and Array defined as follows:
Data Type | Data Size | Data Range |
Array | 16-bit | -32768 ~ +32768 |
Number | 64-bit | -1.79E+308 ~ +1.79E+308 |
String | null-terminated string |
An example of a JSON object containing a data point collected by the Pebble is shown below, it consists of a sensor data object named "message", and a digital signature data object named "signature":
The message object includes the following sensor data:
Sensor Data | Data Type | Description |
| Number | Signal-to-noise ratio of NB-IoT/LET-M |
| Number | Voltage of battery |
| Number | gps latitude |
| Number | gps longitude |
| Number | Air quality (indoor) |
| Number | Environmental temperature |
| Number | Air pressure |
| Number | Environmental humidity |
| Number | Ambient Light |
| Array | Angular velocity around the X-axis, Y-axis and Z-axis |
| Array | Acceleration along the X-axis, Y-axis and Z-axis |
| String | Timestamp of sensor data sampling |
| Number | A random number generated by the onboard random number generator |
| Number | Modulus of the RSA keys (only provided in specific applications where on-chain data encryption is involved) |
| Number | Public exponent of the RSA keys (only provided in specific applications where on-chain data encryption is involved) |
The signature data object contains the following signature data:
Digital Signature | Data Type | Description |
| Number | r value of an ECDSA signature |
| Number | s value of an ECDSA signature |
Pebble includes an RGB led to show the status of the Pebble, the table below shows all the possible led states and the respective meaning:
LED Color (Blink Rate) | GPS Signal | Charging | NB-IoT/LTE Connection | Flashing the Firmware |
Blue (fast) | ||||
Blue (slow) | ✓ | |||
Red (steady) + Purple (fast) | ✓ | |||
Red (steady) + Purple (slow) | ✓ | ✓ | ||
Cyan (fast) | ✓ | |||
Cyan (slow) | ✓ | ✓ | ||
Red (steady) + White (fast) | ✓ | ✓ | ||
Red (steady) + White (slow) | ✓ | ✓ | ✓ | |
Red (fast) | ✓ |
Note that the led will blink at least twice in 1 second when in fast mode, and once in 5 seconds when in slow mode.