<
From version < 148.1 >
edited by Dilisi S
on 2025/03/09 18:24
To version < 139.1 >
edited by Dilisi S
on 2025/03/09 03:35
>
Change comment: Uploaded new attachment "dashboard-2.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -384,7 +384,6 @@
384 384  
385 385  == 5.1 How does it work? ==
386 386  
387 -
388 388  We use the Mosquitto MQTT client to simulate MQTT messages, acting as a virtual device. First, install the Mosquitto client on your computer from [[this link>>url:https://mosquitto.org/download/]]. The Mosquitto client publishes messages to the MQTT broker (HiveMQ) on a specified MQTT topic. ThingsBoard subscribes to these messages using the same topic.
389 389  
390 390  The Mosquitto client publishes messages on the topic v1/devices/[device_name]/telemetry. The [device_name]placeholder can be replaced with any device name, for example, 'S31B-NB'. Then, the MQTT topic would be v1/devices/S31B-NB/telemetry.
... ... @@ -398,12 +398,12 @@
398 398  For example, if you send two MQTT messages with different device names in the topic:
399 399  
400 400  1. v1/devices/**S31B-NB**/telemetry
401 -1. v1/devices/**LDS25-NB**/telemetry
400 +1. v1/devices/**S31B-CB**/telemetry
402 402  
403 -ThingsBoard will create two devices named **S31B-NB** and **LDS25-NB** in the **//Devices//** section.
402 +ThingsBoard will create two devices named **S31B-NB** and **S31B-CB** in the **//Devices//** section.
404 404  
405 405  
406 -The MQTT payload format is as follows, which is common for all ~-~-NB and ~-~-CB series devices:
405 +The MQTT payload format is as follows, for example:
407 407  
408 408  {{code language="none"}}
409 409  {"temperature":10.4, "humidity":85}
... ... @@ -416,124 +416,7 @@
416 416  On the terminal, issue the following MQTT command which simulates the device S31B-NB. The message payload contains the fields temperature and humidity, which hold the values 10.4 and 85, respectively. This payload is also (technically) known as telemetry.
417 417  
418 418  {{code language="none"}}
419 -mosquitto_pub -d -q 1 -h 011731f7928541588a6cdfbbedfc63f4.s1.eu.hivemq.cloud -p 8883 -t "tb/mqtt-integration-tutorial/sensors/S31B-NB/telemetry" -u "pradeeka" -P "Kalpani123@" -m '{"temperature":10.4, "humidity":85}'
418 +mosquitto_pub -d -q 1 -h 011731f7928541588a6cdfbbedfc63f4.s1.eu.hivemq.cloud -p 8883 -t "tb/mqtt-integration-tutorial/sensors/SN-001/telemetry" -u "pradeeka" -P "Kalpani123@" -m '{"temperature":10.4, "humidity":85}'
420 420  {{/code}}
421 421  
422 -If the integration was performed without errors, the status of the integration changes to 'Active' after the first telemetry transmission.
423 -
424 -
425 -[[image:integration-active.png]]
426 -
427 -
428 -Also, a new device named **S31B-NB** will appear under **//Entities -> Devices -> All//**. This means the first MQTT message triggers ThingsBoard to provision a device named **S31B-NB**.
429 -
430 -
431 -[[image:device-provision-1.png]]
432 -
433 -
434 -Click on the device S31B-NB on the devices list to see its details.
435 -
436 -Then go to the **Latest telemetry** tab.
437 -
438 -You can see the fields temperature and humidity with the values you previously sent using the MQTT message.
439 -
440 -
441 -[[image:telemetry-1.png]]
442 -
443 -
444 -Now, change the values of the fields and send the MQTT message again. For example, set temperature to 20 and humidity to 70. Observe how the values update in //Latest Telemetry//.
445 -
446 -
447 -[[image:telemetry-2.png]]
448 -
449 -
450 -Let's provision the second device named **LDS25-NB **with initial telemetry. Use the following MQTT message.
451 -
452 -
453 -{{code language="none"}}
454 -mosquitto_pub -d -q 1 -h 011731f7928541588a6cdfbbedfc63f4.s1.eu.hivemq.cloud -p 8883 -t "tb/mqtt-integration-tutorial/sensors/LDS25-NB/telemetry" -u "pradeeka" -P "Kalpani123@" -m '{"temperature":11, "humidity":87}'
455 -{{/code}}
456 -
457 -Now, refresh the **Devices** page, and you will see the second device, **LDS25-NB**, which was recently provisioned.
458 -
459 -
460 -[[image:device-provision-2.png]]
461 -
462 -
463 -= 6. Creating a Dashboard =
464 -
465 -ThingsBoard **Dashboards** provide a powerful way to visualize and monitor real-time and historical data from connected devices. They allow users to create interactive, customizable panels displaying telemetry data, device status, and other key metrics. With a variety of widgets, including charts, maps, and tables, dashboards help users gain insights, track trends, and manage IoT deployments efficiently.
466 -
467 -
468 -This section guides you on how to create a dashboard to display temperature and humidity data from the device on a time-series chart. You may also use other widgets in ThingsBoard to display data according to your requirements.
469 -
470 -
471 -In **ThingsBoard**, from the left navigation menu, click **Dashboards**. Then, click the **+** button and select **Create new dashboard** from the dropdown menu.
472 -
473 -
474 -[[image:dashboard-1.png]]
475 -
476 -
477 -In the **Title** text box, enter **NB/CB Test Dashboard** as the title of the dashboard.
478 -
479 -Click on the **Add** button.
480 -
481 -
482 -[[image:dashboard-2.png||height="526" width="500"]]
483 -
484 -
485 -Click on the **Add widget / Add new widget** button.
486 -
487 -
488 -[[image:dashboard-3.png]]
489 -
490 -
491 -In the **Select widgets bundle** window, click **Charts**.
492 -
493 -
494 -[[image:dashboard-4.png||height="537" width="700"]]
495 -
496 -
497 -
498 -In the **Charts: select widget** window, click **Time series chart**.
499 -
500 -
501 -[[image:dashboard-5.png||height="525" width="700"]]
502 -
503 -
504 -Configure the **Time series chart** widget as follows:
505 -
506 -* Datasource - select S31B-NB device you provisioned.
507 -* Series:
508 -** **temperature** - you can see this key by default.
509 -** **humidity** - Click **Add series** button to add the **humidity** and then type **%** as its unit.
510 -* Click on the **Add** button.
511 -
512 -[[image:timeseries-1.png||height="491" width="700"]]
513 -
514 -
515 -= 7. Configure NB-IoT Sensor =
516 -
517 -
518 -Now, let's experiment with sending data to ThingsBoard using a real NB-IoT device. For example, we will use the **S31B-NB**.
519 -
520 -First, configure the NB-IoT device with the necessary MQTT settings using AT commands. Below is a list of AT commands you can use.
521 -
522 -
523 -**AT Commands**
524 -
525 -* **AT+PRO=3,3  **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3.
526 -
527 -* **AT+SUBTOPIC=<device name>**  Eg.
528 -
529 -* **AT+PUBTOPIC=<device name>**
530 -
531 -* **AT+CLIENT=<device name> or User Defined**
532 -
533 -* **AT+UNAME=<device name> or User Defined**
534 -
535 -* **AT+PWD=<device name> or User Defined**
536 -
537 -Test Uplink by click the button for 1 second
538 -
539 -
421 +If the integration was performed without errors, after the transmission of the first telemetry, a new device with the name “S31B-NB” will appear in the Devices → All. Also, you can verify the input and output data, respectively, before and after conversion in Data converters → UDP Uplink Converter NB/CB → Events.
dashboard-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -141.3 KB
Content
dashboard-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -803.7 KB
Content
dashboard-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -476.1 KB
Content
timeseries-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -179.1 KB
Content
timeseries-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -174.2 KB
Content
timeseries-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -159.0 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0