NB-IoT Device Development Kit is built on top of TuyaOS for low-power NB-IoT device development. It comes with carrier connection stacks (LwM2M and China Mobile OneNET) and a variety of libraries.
Overview
NB-IoT Device Development Kit includes a host of features and standard APIs to help you develop easily, including device pairing, upstream and downstream communication, production test, authorization, OTA updates, and file download. You do not need to take care of feature implementation for different chip platforms. Just working on the standard APIs, you can connect your products to the Tuya Developer Platform and make them IoT-enabled.
Features
- Easy platform integration: Adaptive integration with multiple carrier platforms. The device can automatically connect to the target platform according to the inserted SIM card, such as China Telecom AEP and Chine Mobile OneNET. You can also set the preferred platform to connect.
- Complete power saving options: PSM, DRX, eDRX, and user-defined mode.
- Data exchange: Simple data transmission and reception interface.
- File download: Download files from the server.
- OTA update: Deploy incremental firmware update.
- Various peripherals: GPIO, UART, ADC, SPI, and I2C.
Resource requirements
NB-IoT Device Development Kit requires 1,700 KB ROM and 250 KB RAM. The memory footprint of a development kit depends on the chip platform for use.
Capability map
Device management
| Capability |
Description |
| Initialization |
After a device is powered on and started, it calls a range of APIs to initialize the hardware environment, TuyaOS software, and applications. On application initialization, you need to provide callback functions as needed to handle internal events including status changes, device controls, and firmware updates. |
| Reset |
A device is restored to the settings that the device had before it was paired so that it can be activated again. A device can be reset with a local operation or mobile app operation. |
| Authorization |
Authorization is the process of writing the device ID assigned by Tuya to the non-volatile memory on the device for the purpose of authentication. Authorization is performed with a dedicated tool. |
Pairing and activation
After connecting to the base station, the device will be paired and activated automatically.
Device control
| Capability |
Description |
| Data point (DP) model and device control protocol |
The TuyaOS device model description, which is used to control a physical device. |
Basic services
| Capability |
Description |
| Secure storage |
Encrypted key-value store as well as file-based data storage in plain text. |
| Logging service |
Local logs that record device operations. Exceptions can be recorded, sorted, and reported to the cloud. |
| Timer queue |
Software timers. |
| Job queue |
Job queues used to process asynchronous low-priority tasks on which blocking might occur. |
| Connection management |
Manage NB-IoT connections such as LwM2M and China Mobile OneNET. |
| Task management |
Manage tasks. |
Device driver
| Capability |
Description |
| GPIO |
GPIO driver |
| ADC |
ADC driver |
| I2C |
I2C driver |
| UART |
UART driver |
| SPI |
SPI driver |
Power management
| Capability |
Description |
| Low power |
Manage power consumption with PSM, DRX, and eDRX modes. |
Scheduled task
| Capability |
Description |
| Local schedule |
The scheduled task is downloaded to the device with a timer created accordingly. The device runs the task after the timer expires. |
| Calendar-based schedule |
One of the types of local schedules, allowing users to schedule tasks with a recurrence pattern. For example, repeat weekly, repeat on odd or even days, or repeat every x day(s) or hour(s). |
OTA update
| Capability |
Description |
| Silent update |
The device checks for and installs firmware updates automatically. |
| Update notification/forced update |
The mobile app notifies the device of available firmware updates. |
| Subordinate firmware update |
Update firmware and files on the device. |
Network
| Capability |
Description |
| LwM2M |
LwM2M library. |
| China Mobile OneNET |
Chine Mobile OneNET library. |
| mbedTLS |
Mbed TLS library. |
Support and help
If you have any problems with TuyaOS development, you can post your questions in the Tuya Developer Forum.