<
From version < 148.1 >
edited by Dilisi S
on 2025/03/09 18:24
To version < 128.1 >
edited by Dilisi S
on 2025/03/08 22:01
>
Change comment: Uploaded new attachment "thingsboard-6.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -40,30 +40,11 @@
40 40  [[image:thingsboard-2.png]]
41 41  
42 42  
43 -You can sign up with your **Google**, **GitHub**, **Facebook**, or **Apple** account. If not you can create an account with providing your **name**, **email address** and a **password**.
43 +You can sign up with your Google, GitHub, Facebook, or Apple account. If not you can create an account with providing your name, email address and a password.
44 44  
45 -Click on the **Sign up** button.
46 -
47 47  [[image:thingsboard-3.png||height="651" width="500"]]
48 48  
49 49  
50 -You will be navigated to the following page.
51 -
52 -[[image:thingsboard-5.png||height="109" width="500"]]
53 -
54 -
55 -simultaneously, you will receive an email to confirm your email address. Click on the **Activate Your Account** button.
56 -
57 -
58 -[[image:thingsboard-4.png||height="249" width="500"]]
59 -
60 -
61 -Now losing to the account using your credentials:
62 -
63 -
64 -[[image:thingsboard-6.png||height="244" width="500"]]
65 -
66 -
67 67  == 2.2 HiveMQ Cloud ==
68 68  
69 69  
... ... @@ -379,161 +379,13 @@
379 379  [[image:new-integration-pending.png]]
380 380  
381 381  
382 -= 5. Verifying the receipt of data from virtual devices =
363 += 5. Verifying the receipt of data from the device =
383 383  
384 384  
385 -== 5.1 How does it work? ==
366 +On the terminal, issue the following MQTT command which simulates the device S31B-NB.
386 386  
387 -
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 -
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.
391 -
392 -On the ThingsBoard side, we configure the MQTT topic subscription as v1/devices/+/telemetry. The + wildcard represents any device name and allows ThingsBoard to automatically create (provision) a device with that name, such as S31B-NB, for example.
393 -
394 -
395 -**The new device is created the first time the MQTT topic is received. For subsequent MQTT topics with the same device name, no duplicate devices will be created.**
396 -
397 -
398 -For example, if you send two MQTT messages with different device names in the topic:
399 -
400 -1. v1/devices/**S31B-NB**/telemetry
401 -1. v1/devices/**LDS25-NB**/telemetry
402 -
403 -ThingsBoard will create two devices named **S31B-NB** and **LDS25-NB** in the **//Devices//** section.
404 -
405 -
406 -The MQTT payload format is as follows, which is common for all ~-~-NB and ~-~-CB series devices:
407 -
408 408  {{code language="none"}}
409 -{"temperature":10.4, "humidity":85}
369 +mosquitto_pub -d -q 1 -h mqtt.eu.thingsboard.cloud -p 1883 -t v1/devices/S31B-NB/telemetry -u "24vk3w9h7sqdld1me5eh" -m "{temperature:20}"
410 410  {{/code}}
411 411  
412 -
413 -== 5.2 Sending messages ==
414 -
415 -
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 -
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}'
420 -{{/code}}
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 -
372 +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-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -271.1 KB
Content
dashboard-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -112.2 KB
Content
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
device-provision-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -265.7 KB
Content
device-provision-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -213.9 KB
Content
integration-active.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -64.2 KB
Content
telemetry-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -191.9 KB
Content
telemetry-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.pradeeka
Size
... ... @@ -1,1 +1,0 @@
1 -185.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