Changes for page General Manual for -CB , -CS models
Last modified by Mengting Qiu on 2025/07/03 18:49
From version 7.1
edited by Edwin Chen
on 2024/06/02 22:10
on 2024/06/02 22:10
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 102 added, 0 removed)
- image-20240819102802-1.png
- image-20240819103212-2.png
- image-20240819103826-3.png
- image-20240819103909-4.png
- image-20240819104904-5.png
- image-20240819104942-6.png
- image-20240819105003-7.png
- image-20240819105418-8.png
- image-20240819112109-1.png
- image-20240819173602-1.png
- image-20240819173659-2.png
- image-20240819173706-3.png
- image-20240819173826-4.png
- image-20240819174033-5.png
- image-20240819174209-6.png
- image-20240819174314-7.png
- image-20240819174540-8.png
- image-20240819174610-9.png
- image-20240819174618-10.png
- image-20240820110003-1.png
- image-20240820110017-2.png
- image-20240820110031-3.png
- image-20240820110048-4.png
- image-20240820110103-5.png
- image-20240820110114-6.png
- image-20240820110129-7.png
- image-20240820110142-8.png
- image-20240820110218-9.png
- image-20240820110235-10.png
- image-20240820110247-11.png
- image-20240820111016-12.png
- image-20240820111101-13.png
- image-20240820111113-14.png
- image-20240820111236-15.png
- image-20240820111248-16.png
- image-20240820111259-17.png
- image-20240820111312-18.png
- image-20240820111322-19.png
- image-20240820111333-20.png
- image-20240820111353-21.png
- image-20240820111405-22.png
- image-20240820111418-23.png
- image-20240820111427-24.png
- image-20240820111438-25.png
- image-20240820111448-26.png
- image-20240820111504-27.png
- image-20240820111515-28.png
- image-20240820112210-29.png
- image-20240820112222-30.png
- image-20240820112236-31.png
- image-20240820112247-32.png
- image-20240820112302-33.png
- image-20240820112316-34.png
- image-20240820112330-35.png
- image-20240820112340-36.png
- image-20240820112351-37.png
- image-20240820112404-38.png
- image-20240820112416-39.png
- image-20240820112426-40.png
- image-20240820112516-41.png
- image-20240820112526-42.png
- image-20240820112539-43.png
- image-20240820112552-44.png
- image-20240820112604-45.png
- image-20240820112615-46.png
- image-20240820112626-47.png
- image-20240820112637-48.png
- image-20240820112647-49.png
- image-20240820112704-50.png
- image-20240820112716-51.png
- image-20240820112732-52.png
- image-20240820112758-53.png
- image-20240820112813-54.png
- image-20240820112824-55.png
- image-20240820112835-56.png
- image-20240820112848-57.png
- image-20240820112859-58.png
- image-20240820112908-59.png
- image-20240820113015-60.png
- image-20240820140935-1.png
- image-20240820141136-2.png
- image-20240820141746-1.png
- image-20240820141843-2.png
- image-20240820143316-3.png
- image-20240820143820-4.png
- image-20240820144823-5.png
- image-20240820144913-6.png
- image-20240820145133-7.png
- image-20240820145309-8.png
- image-20240827145055-4.png
- image-20240827150121-5.png
- image-20240827150705-6.png
- image-20240903094214-1.png
- image-20240903094457-2.png
- image-20240903100736-3.png
- image-20240903100832-4.png
- image-20240903102327-5.png
- image-20240903102542-6.png
- image-20240903102621-7.png
- image-20240903102641-8.png
- image-20240903104250-9.png
- image-20240903104431-10.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - Content
-
... ... @@ -51,11 +51,11 @@ 51 51 |(% style="width:117px" %)China Mobile|(% style="width:151px" %)No need configure|(% style="width:406px" %)China Mainland, HongKong|(% style="width:351px" %) |(% style="width:120px" %) 52 52 |(% style="width:117px" %)China Telecom|(% style="width:151px" %)ctnb|(% style="width:406px" %)China Mainland|(% style="width:351px" %) |(% style="width:120px" %) 53 53 54 - 55 55 == 2.2 Speed Up Network Attach time == 56 56 57 57 **BG95-M2** supports multi bands (% style="color:blue" %)**in NB-IoT and LTE-M. **(%%) It will search one by one and try to attach, this will take a lot of time and even cause attach fail and show **Signal Strenght:99**. 58 58 58 +**Note:**Before using the NB module command, users need to power on the NB module. Run the AT+QSW command to turn on and off the NB module.Remember to shut down after using the NB module command, otherwise it will consume power. 59 59 60 60 Attache to 1NCE card for Australia use: 61 61 ... ... @@ -71,8 +71,116 @@ 71 71 72 72 See bands used for different provider:** [[NB-IoT Deployment , Bands, Operator list>>http://wiki.dragino.com/xwiki/bin/view/Main/NB-IoT%20Deployment%20%2C%20Bands%2C%20Operator%20list/]]** 73 73 74 +=== **1.Configure Frequency Band** === 74 74 76 +AT+QCFG="band"[,<GSM_bandval>,<eMTC_bandval>,<NB-IoT_bandval>[,<effect>]] 75 75 78 +<GSM_bandval>: 79 + 80 +0 No change 81 +0x1 EGSM900 82 +0x2 DCS1800 83 +0x4 GSM850 84 +0x8 PCS1900 85 +0xF All of the supported bands above 86 + 87 +<eMTC_bandval>: 88 + 89 +0 No change 90 +0x1 LTE B1 91 +0x2 LTE B2 92 +0x4 LTE B3 93 +0x8 LTE B4 94 +0x10 LTE B5 95 +0x80 LTE B8 96 +0x800 LTE B12 97 +0x1000 LTE B13 98 +0x20000 LTE B18 99 +0x40000 LTE B19 100 +0x80000 LTE B20 101 +0x1000000 LTE B25 102 +0x2000000 LTE B26 103 +0x4000000 LTE B27 104 +0x8000000 LTE B28 105 +0x40000000 LTE B31 106 +0x20000000000000000 LTE B66 107 +0x800000000000000000 LTE B72 108 +0x1000000000000000000 LTE B73 109 +0x1000000000000000000000 LTE B85 110 + 111 +<NB-IoT_bandval>: 112 + 113 +0 No change 114 +0x1 LTE B1 115 +0x2 LTE B2 116 +0x4 LTE B3 117 +0x8 LTE B4 118 +0x10 LTE B5 119 +0x80 LTE B8 120 +0x800 LTE B12 121 +0x1000 LTE B13 122 +0x20000 LTE B18 123 +0x40000 LTE B19 124 +0x80000 LTE B20 125 +0x1000000 LTE B25 126 +0x8000000 LTE B28 127 +0x40000000 LTE B31 128 +0x20000000000000000 LTE B66 129 + 130 +0x400000000000000000 LTE B71 131 +0x800000000000000000 LTE B72 132 +0x1000000000000000000 LTE B73 133 +0x1000000000000000000000 LTE B85 134 + 135 +For example, setting the LTE-M network frequency band to 3. 136 + 137 +AT+QCFG="band",0xF,0x4,0,1 138 + 139 +When searching for all bands, the value of this command is set to: 140 + 141 +AT+QCFG="band",0xF,0x100002000000000f0e189f,0x10004200000000090e189f,1 142 + 143 + 144 +=== **2.Configure search network sequence** === 145 + 146 +AT+QCFG="nwscanseq",<scanseq>,1 147 + 148 +<scanseq>: 149 + 150 +00 Automatic (eMTC → NB-IoT → GSM) 151 +01 GSM 152 +02 eMTC 153 +03 NB-IoT 154 + 155 +AT+QCFG="nwscanseq",02,1 ~/~/Priority search for eMTC 156 + 157 +=== **3.Configure Network Category to be Searched for under LTE RAT** === 158 + 159 +AT+QCFG="iotopmode",mode,1 160 + 161 +0 eMTC 162 +1 NB-IoT 163 +2 eMTC and NB-IoT 164 + 165 +=== **4.AT command to set frequency band and network category** === 166 + 167 +AT+QBAND=0x100002000000000f0e189f,0x10004200000000090e189f ~/~/<eMTC_bandval>,<NB-IoT_bandval> 168 + 169 +AT+IOTMOD=0 ~/~/ 0 eMTC 1 NB-IoT 2 eMTC and NB-IoT 170 + 171 +**Example :** 172 + 173 +Taking the use of 1nce cards in **the United States** as an example. 174 + 175 +AT+APN=iot.1nce.net ~/~/set APN 176 + 177 +AT+QBAND=0x100180A,0 ~/~/ eMTC :Set frequency band B2,B4,B12,B13,B25 NB-IoT:No change 178 + 179 +AT+IOTMOD=0 ~/~/ Set eMTC Network 180 + 181 +**Setting the above commands in the United States will greatly reduce the network search time of the NB module.** 182 + 183 + 76 76 = 3. Configure to connect to different servers = 77 77 78 78 == 3.1 General UDP Connection == ... ... @@ -79,30 +79,63 @@ 79 79 80 80 The NB-IoT Sensor can send packet to server use UDP protocol. 81 81 190 + 82 82 === 3.1.1 Simulate UDP Connection by PC tool === 83 83 193 + 84 84 We can use PC tool to simulate UDP connection to make sure server works ok. 85 85 86 -[[image:image-20230802112413-1.png ||height="468" width="1024"]]196 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/WebHome/image-20230802112413-1.png?width=1024&height=468&rev=1.1||alt="image-20230802112413-1.png"]] 87 87 198 + 88 88 === 3.1.2 Configure NB-IoT Sensor === 89 89 90 90 ==== 3.1.2.1 AT Commands ==== 91 91 203 + 92 92 (% style="color:blue" %)**AT Commands:** 93 93 94 94 * (% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/ Set to use UDP protocol to uplink ,Payload Type select Hex payload 95 95 96 -* (% style="color:#037691" %)**AT+SERVADDR= 120.24.4.116,5601** (%%) ~/~/ Set UDP server address and port208 +* (% style="color:#037691" %)**AT+SERVADDR=8.217.91.207,1999** (%%) ~/~/ Set UDP server address and port 97 97 98 -[[image:image-202 30802112413-2.png]]210 +[[image:image-20240819102802-1.png]] 99 99 212 + 100 100 ==== 3.1.2.2 Uplink Example ==== 101 101 102 -[[image:image-20230802112413-3.png]] 103 103 216 +[[image:image-20240819105418-8.png||height="611" width="1287"]] 217 + 218 + 219 +== 3.2 General COAP Connection == 220 + 221 + 222 +The NB-IoT Sensor can send packet to server use COAP protocol. 223 + 224 +Below are the commands. 225 + 226 +(% style="color:blue" %)**AT Commands:** 227 + 228 +* (% style="color:#037691" %)**AT+PRO=1,0** (%%) ~/~/ Set to use COAP protocol to uplink, Payload Type select Hex payload. 229 + 230 +* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5683** (%%) ~/~/ Set COAP server address and port 231 + 232 +* (% style="color:#037691" %)**AT+URI1=11,"I"** (%%) ~/~/ Configure CoAP Message Options 233 +* (% style="color:#037691" %)**AT+URI2=11,"aaa05e26-4d6d-f01b-660e-1d8de4a3bfe1"** (%%) ~/~/ Configure CoAP Message Options 234 + 235 +[[image:image-20240819103212-2.png]] 236 + 237 + 238 +=== 3.2.1 Uplink Example === 239 + 240 + 241 +[[image:image-20240819103909-4.png||height="453" width="955"]] 242 + 243 + 104 104 == 3.2 General MQTT Connection == 105 105 246 + 106 106 The NB-IoT Sensor can send packet to server use MQTT protocol. 107 107 108 108 Below are the commands. ... ... @@ -123,29 +123,34 @@ 123 123 124 124 * (% style="color:#037691" %)**AT+SUBTOPIC=NSE01_SUB** (%%) ~/~/ Set the subscription topic of MQTT 125 125 126 -[[image:image-202 30802112413-4.png]]267 +[[image:image-20240819105003-7.png||height="613" width="458"]] 127 127 128 -[[image:image-20230802112413-5.png||height="530" width="987"]] 129 129 270 +[[image:image-20240819104942-6.png||height="702" width="974"]] 271 + 130 130 (% style="color:red" %)**Notice: MQTT protocol has a much higher power consumption compare with UDP/CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.** 131 131 274 + 132 132 == 3.3 [[ThingSpeak>>url:https://thingspeak.com/]] (via MQTT) == 133 133 134 134 === 3.3.1 Get MQTT Credentials === 135 135 279 + 136 136 [[ThingSpeak>>url:https://thingspeak.com/]] connection uses MQTT Connection. So we need to get MQTT Credentials first. You need to point MQTT Devices to ThingSpeak Channel as well. 137 137 138 -[[image:image-202 30802112413-6.png||height="336" width="925"]]282 +[[image:image-20240819173602-1.png||height="401" width="743"]] 139 139 140 -[[image:image-202 30802112413-7.png]]284 +[[image:image-20240819173706-3.png||height="595" width="597"]] 141 141 286 + 142 142 === 3.3.2 Simulate with MQTT.fx === 143 143 144 144 ==== 3.3.2.1 Establish MQTT Connection ==== 145 145 291 + 146 146 After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 147 147 148 -[[image:image-202 30802112413-8.png]]294 +[[image:image-20240819173826-4.png||height="534" width="734"]] 149 149 150 150 * (% style="color:#037691" %)**Broker Address:**(%%) mqtt3.thingspeak.com 151 151 ... ... @@ -157,12 +157,15 @@ 157 157 158 158 * (% style="color:#037691" %)**Password:**(%%) <Your ThingSpeak MQTT Password> 159 159 306 + 307 + 160 160 ==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 161 161 162 -[[image:image-20230802112413-9.png]] 163 163 164 -[[image:image-202 30802112413-10.png]]311 +[[image:image-20240819174033-5.png]] 165 165 313 +[[image:image-20240819174209-6.png]] 314 + 166 166 (% style="color:blue" %)**In MQTT.fx, we can publish below info:** 167 167 168 168 * (% style="color:#037691" %)**Topic:**(%%) channels/YOUR_CHANNEL_ID/publish ... ... @@ -173,12 +173,14 @@ 173 173 174 174 (% style="color:blue" %)**Result: ** 175 175 176 -[[image:image-202 30802112413-11.png||height="539" width="901"]]325 +[[image:image-20240819174314-7.png||height="469" width="785"]] 177 177 327 + 178 178 === 3.3.3 Configure NB-IoT Sensor for connection === 179 179 180 180 ==== 3.3.3.1 AT Commands: ==== 181 181 332 + 182 182 In the NB-IoT, we can run below commands so to publish the channels like MQTT.fx 183 183 184 184 * (% style="color:blue" %)**AT+PRO=3,1** (%%) ~/~/ Set to use ThingSpeak Server and Related Payload ... ... @@ -193,10 +193,13 @@ 193 193 194 194 * (% style="color:blue" %)**AT+SUBTOPIC=<YOUR_CHANNEL_ID>** 195 195 347 + 348 + 196 196 ==== 3.3.3.2 Uplink Examples ==== 197 197 198 -[[image:image-20230816201942-1.png]] 199 199 352 +[[image:image-20240819174540-8.png]] 353 + 200 200 For SE01-NB 201 201 202 202 For DDS20-NB ... ... @@ -219,35 +219,37 @@ 219 219 220 220 For SN50V3-NB 221 221 376 + 222 222 ==== 3.3.3.3 Map fields to sensor value ==== 223 223 379 + 224 224 When NB-IoT sensor upload to ThingSpeak. The payload already specify which fileds related to which sensor value. Use need to create fileds in Channels Settings. with name so to see the value correctly. 225 225 226 -[[image:image-202 30802112413-12.png||height="504" width="1011"]]382 +[[image:image-20240819174610-9.png]] 227 227 228 -[[image:image-202 30802112413-13.png||height="331" width="978"]]384 +[[image:image-20240819174618-10.png]] 229 229 230 230 Below is the NB-IoT Product Table show the mapping. 231 231 232 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1 424px" %)233 -|(% style="background-color:#4f81bd; width:143px" %) |(% style="background-color:#4f81bd; color:white; width:103px" %)Field1|(% style="background-color:#4f81bd; color:white; width:102px" %)Field2|(% style="background-color:#4f81bd; color:white; width:157px" %)Field3|(% style="background-color:#4f81bd; color:white; width:1 54px" %)Field4|(% style="background-color:#4f81bd; color:white; width:153px" %)Field5|(% style="background-color:#4f81bd; color:white; width:151px" %)Field6|(% style="background-color:#4f81bd; color:white; width:160px" %)Field7|(% style="background-color:#4f81bd; color:white; width:152px" %)Field8|(% style="background-color:#4f81bd; color:white; width:67px" %)Field9|(% style="background-color:#4f81bd; color:white; width:69px" %)Field10234 -|(% style="background-color:#4f81bd; color:white; width:143px" %)S31x-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)Battery|(% style="width:1 54px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)235 -|(% style="background-color:#4f81bd; color:white; width:143px" %)SE01-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)conduct|(% style="width:1 54px" %)dielectric_constant|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)236 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS20-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 54px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)237 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS45-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 54px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)238 -|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS75-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 54px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)239 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS120-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:1 54px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)240 -|(% rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SPH01-NB|(% style="width:103px" %)ph|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:1 54px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% colspan="1" rowspan="1" style="width:69px" %)241 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NLM01-NB|(% style="width:103px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:1 54px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)242 -|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS200-NB|(% style="width:103px" %)distance1|(% style="width:102px" %)distance2|(% style="width:157px" %)Battery|(% style="width:1 54px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)243 -|(% style="background-color:#4f81bd; color:white; width:143px" %)CPN01-NB|(% style="width:103px" %)alarm|(% style="width:102px" %)count|(% style="width:157px" %)door open duration|(% style="width:1 54px" %)calc flag|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %)244 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)DS03A-NB|(% colspan="1" rowspan="1" style="width:103px" %)level|(% colspan="1" rowspan="1" style="width:102px" %)alarm|(% colspan="1" rowspan="1" style="width:157px" %)pb14door open num|(% colspan="1" rowspan="1" style="width:1 54px" %)pb14 last open time|(% colspan="1" rowspan="1" style="width:153px" %)pb15 level status|(% colspan="1" rowspan="1" style="width:151px" %)pb15 alarm status|(% colspan="1" rowspan="1" style="width:160px" %)pb15 door open num|(% colspan="1" rowspan="1" style="width:152px" %)pb15 last open time|(% colspan="1" rowspan="1" style="width:67px" %)Battery|(% colspan="1" rowspan="1" style="width:69px" %)RSSI245 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod1|(% colspan="1" rowspan="1" style="width:103px" %)mod|(% colspan="1" rowspan="1" style="width:102px" %)Battery|(% colspan="1" rowspan="1" style="width:157px" %)RSSI|(% colspan="1" rowspan="1" style="width:1 54px" %)DS18B20 Temp|(% colspan="1" rowspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" rowspan="1" style="width:151px" %)adc0|(% colspan="1" rowspan="1" style="width:160px" %)Temperature |(% colspan="1" rowspan="1" style="width:152px" %)Humidity|(% colspan="1" rowspan="1" style="width:67px" %) |(% colspan="1" rowspan="1" style="width:69px" %)246 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod2|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 54px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)adc0|(% colspan="1" style="width:160px" %)distance|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %)247 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod3|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 54px" %)adc0|(% colspan="1" style="width:153px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)adc1|(% colspan="1" style="width:160px" %)Temperature|(% colspan="1" style="width:152px" %)Humidity|(% colspan="1" style="width:67px" %)adc4|(% colspan="1" style="width:69px" %)248 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod4|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 54px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)adc0|(% colspan="1" style="width:151px" %)exit_state/input PA4|(% colspan="1" style="width:160px" %)DS18B20 Temp2|(% colspan="1" style="width:152px" %)DS18B20 Temp3|(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %)249 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod5|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 54px" %)DS18B20 Temp|(% colspan="1" style="width:153px" %)adc0|(% colspan="1" style="width:151px" %)exit_state/input PA4|(% colspan="1" style="width:160px" %)Weight|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %)250 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod6|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:1 54px" %)count|(% colspan="1" style="width:153px" %) |(% colspan="1" style="width:151px" %) |(% colspan="1" style="width:160px" %) |(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:67px" %) |(% colspan="1" style="width:69px" %)388 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1353.82px" %) 389 +|(% style="background-color:#4f81bd; width:143px" %) |(% style="background-color:#4f81bd; color:white; width:103px" %)Field1|(% style="background-color:#4f81bd; color:white; width:102px" %)Field2|(% style="background-color:#4f81bd; color:white; width:157px" %)Field3|(% style="background-color:#4f81bd; color:white; width:139px" %)Field4|(% style="background-color:#4f81bd; color:white; width:141px" %)Field5|(% style="background-color:#4f81bd; color:white; width:142px" %)Field6|(% style="background-color:#4f81bd; color:white; width:151px" %)Field7|(% style="background-color:#4f81bd; color:white; width:137px" %)Field8|(% style="background-color:#4f81bd; color:white; width:69px" %)Field9|(% style="background-color:#4f81bd; color:white; width:65px" %)Field10 390 +|(% style="background-color:#4f81bd; color:white; width:143px" %)S31x-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)Battery|(% style="width:139px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 391 +|(% style="background-color:#4f81bd; color:white; width:143px" %)SE01-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)conduct|(% style="width:139px" %)dielectric_constant|(% style="width:141px" %)Battery|(% style="width:142px" %)RSSI|(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 392 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS20-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:139px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 393 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS45-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:139px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 394 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS75-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:139px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 395 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS120-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:139px" %) |(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 396 +|(% rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SPH01-NB|(% style="width:103px" %)ph|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:139px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% colspan="1" rowspan="1" style="width:65px" %) 397 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NLM01-NB|(% style="width:103px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:139px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 398 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS200-NB|(% style="width:103px" %)distance1|(% style="width:102px" %)distance2|(% style="width:157px" %)Battery|(% style="width:139px" %)RSSI|(% style="width:141px" %) |(% style="width:142px" %) |(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 399 +|(% style="background-color:#4f81bd; color:white; width:143px" %)CPN01-NB|(% style="width:103px" %)alarm|(% style="width:102px" %)count|(% style="width:157px" %)door open duration|(% style="width:139px" %)calc flag|(% style="width:141px" %)Battery|(% style="width:142px" %)RSSI|(% style="width:151px" %) |(% style="width:137px" %) |(% style="width:69px" %) |(% style="width:65px" %) 400 +|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)DS03A-NB|(% colspan="1" rowspan="1" style="width:103px" %)level|(% colspan="1" rowspan="1" style="width:102px" %)alarm|(% colspan="1" rowspan="1" style="width:157px" %)pb14door open num|(% colspan="1" rowspan="1" style="width:139px" %)pb14 last open time|(% colspan="1" rowspan="1" style="width:141px" %)pb15 level status|(% colspan="1" rowspan="1" style="width:142px" %)pb15 alarm status|(% colspan="1" rowspan="1" style="width:151px" %)pb15 door open num|(% colspan="1" rowspan="1" style="width:137px" %)pb15 last open time|(% colspan="1" rowspan="1" style="width:69px" %)Battery|(% colspan="1" rowspan="1" style="width:65px" %)RSSI 401 +|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod1|(% colspan="1" rowspan="1" style="width:103px" %)mod|(% colspan="1" rowspan="1" style="width:102px" %)Battery|(% colspan="1" rowspan="1" style="width:157px" %)RSSI|(% colspan="1" rowspan="1" style="width:139px" %)DS18B20 Temp|(% colspan="1" rowspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" rowspan="1" style="width:142px" %)adc0|(% colspan="1" rowspan="1" style="width:151px" %)Temperature |(% colspan="1" rowspan="1" style="width:137px" %)Humidity|(% colspan="1" rowspan="1" style="width:69px" %) |(% colspan="1" rowspan="1" style="width:65px" %) 402 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod2|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:139px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" style="width:142px" %)adc0|(% colspan="1" style="width:151px" %)distance|(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %) 403 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod3|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:139px" %)adc0|(% colspan="1" style="width:141px" %)exit_state/input PA4|(% colspan="1" style="width:142px" %)adc1|(% colspan="1" style="width:151px" %)Temperature|(% colspan="1" style="width:137px" %)Humidity|(% colspan="1" style="width:69px" %)adc4|(% colspan="1" style="width:65px" %) 404 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod4|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:139px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)adc0|(% colspan="1" style="width:142px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)DS18B20 Temp2|(% colspan="1" style="width:137px" %)DS18B20 Temp3|(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %) 405 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod5|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:139px" %)DS18B20 Temp|(% colspan="1" style="width:141px" %)adc0|(% colspan="1" style="width:142px" %)exit_state/input PA4|(% colspan="1" style="width:151px" %)Weight|(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %) 406 +|(% colspan="1" style="background-color:#4f81bd; color:white; width:143px" %)SN50V3-NB mod6|(% colspan="1" style="width:103px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:157px" %)RSSI|(% colspan="1" style="width:139px" %)count|(% colspan="1" style="width:141px" %) |(% colspan="1" style="width:142px" %) |(% colspan="1" style="width:151px" %) |(% colspan="1" style="width:137px" %) |(% colspan="1" style="width:69px" %) |(% colspan="1" style="width:65px" %) 251 251 252 252 == 3.4 [[Datacake>>https://datacake.co/]] == 253 253 ... ... @@ -255,92 +255,109 @@ 255 255 Dragino NB-IoT sensors has its template in **[[Datacake>>https://datacake.co/]]** Platform. There are two version for NB Sensor, 256 256 257 257 (% class="wikigeneratedid" %) 258 -As example for S31B- NB. there are two versions: **S31B-NB-1D and S31B-NB-GE.**414 +As example for S31B-CB. there are two versions: **S31B-CB-1D and S31B-CB-GE.** 259 259 260 -* (% style="color:blue" %)**S31B- NB-1D**(%%): This version have pre-configure DataCake connection. User just need to Power on this device, it will auto connect send data to DataCake Server.416 +* (% style="color:blue" %)**S31B-CB-1D**(%%): This version have pre-configure DataCake connection. User just need to Power on this device, it will auto connect send data to DataCake Server. 261 261 262 -* (% style="color:blue" %)**S31B- NB-GE**(%%): This verson doesn't have pre-configure Datacake connection. User need to enter the AT Commands to connect to Datacake. See below for instruction.418 +* (% style="color:blue" %)**S31B-CB-GE**(%%): This verson doesn't have pre-configure Datacake connection. User need to enter the AT Commands to connect to Datacake. See below for instruction. 263 263 420 + 421 + 264 264 === 3.4.1 For device Already has template === 265 265 266 266 ==== 3.4.1.1 Create Device ==== 267 267 426 + 268 268 (% style="color:blue" %)**Add Device**(%%) in DataCake. 269 269 270 -[[image:image-202 30808162301-1.png||height="453" width="952"]]429 +[[image:image-20240820110003-1.png]] 271 271 272 -[[image:image-202 30808162342-2.png||height="541" width="952"]]431 +[[image:image-20240820110017-2.png]] 273 273 274 274 (% style="color:blue" %)**Choose the correct model**(%%) from template. 275 275 276 -[[image:image-202 30808162421-3.png]]435 +[[image:image-20240820110031-3.png]] 277 277 278 278 (% style="color:blue" %)**Fill Device ID**(%%). The device ID needs to be filled in with IMEI, and a prefix of(% style="color:blue" %)** 'f' **(%%)needs to be added. 279 279 280 -[[image:image-202 30808163612-7.png||height="549" width="952"]]439 +[[image:image-20240820110048-4.png]] 281 281 282 -[[image:image-202 30808163035-5.png]]441 +[[image:image-20240820110103-5.png]] 283 283 284 -[[image:image-202 30808163049-6.png||height="544" width="926"]]443 +[[image:image-20240820110114-6.png]] 285 285 445 + 286 286 === 3.4.2 For Device already registered in DataCake before shipped === 287 287 288 288 ==== 3.4.2.1 Scan QR Code to get the device info ==== 289 289 450 + 290 290 Users can use their phones or computers to scan QR codes to obtain device data information. 291 291 292 -[[image:image-202 30808170051-8.png||height="255" width="259"]]453 +[[image:image-20240820110129-7.png]] 293 293 294 -[[image:image-202 30808170548-9.png]]455 +[[image:image-20240820110218-9.png]] 295 295 457 + 296 296 ==== 3.4.2.2 Claim Device to User Account ==== 297 297 298 298 By Default, the device is registered in Dragino's DataCake Account. User can Claim it to his account. 299 299 462 + 300 300 === 3.4.3 Manual Add Decoder in DataCake ( don't use the template in DataCake) === 301 301 465 + 302 302 **Step1: Add a device** 303 303 304 -[[image:image-20240129170024-1.png||height="330" width="900"]] 468 +[[image:image-20240820110235-10.png]][[image:image-20240129170024-1.png||height="330" width="900"]] 305 305 470 + 306 306 **Step2: Choose your device type,please select dragino NB-IOT device** 307 307 308 -[[image:image-20240 129170216-2.png||height="534" width="643"]]473 +[[image:image-20240820110247-11.png]] 309 309 475 + 310 310 **Step3: Choose to create a new device** 311 311 312 -[[image:image-20240 129170539-3.png||height="459" width="646"]]478 +[[image:image-20240820111016-12.png]] 313 313 480 + 314 314 **Step4: Fill in the device ID of your NB device** 315 315 316 -[[image:image-2024020 2111546-1.png||height="378" width="651"]]483 +[[image:image-20240820111101-13.png]] 317 317 485 + 318 318 **Step5: Please select your device plan according to your needs and complete the creation of the device** 319 319 320 -[[image:image-20240 129171236-6.png||height="450" width="648"]]488 +[[image:image-20240820111113-14.png]] 321 321 490 + 322 322 **Step6: Please add the decoder at the payload decoder of the device configuration.** 323 323 324 324 **Decoder location:**[[dragino-end-node-decoder/Datacake-Dragino_NB at main · dragino/dragino-end-node-decoder (github.com)>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/Datacake-Dragino_NB]] 325 325 326 -[[image:image-20240 129172056-7.png||height="457" width="816"]]495 +[[image:image-20240820111236-15.png]] 327 327 328 -[[image:image-20240 129173116-9.png||height="499" width="814"]]497 +[[image:image-20240820111248-16.png]] 329 329 499 + 330 330 **Step7: Add the output of the decoder as a field** 331 331 332 -[[image:image-20240 129173541-10.png||height="592" width="968"]]502 +[[image:image-20240820111259-17.png]] 333 333 504 + 334 334 **Step8: Customize the dashboard and use fields as parameters of the dashboard** 335 335 336 -[[image:image-20240 129174518-11.png||height="147" width="1042"]]507 +[[image:image-20240820111312-18.png]] 337 337 338 -[[image:image-20240 129174657-12.png||height="538" width="916"]]509 +[[image:image-20240820111322-19.png]] 339 339 340 -[[image:image-20240 129174840-13.png||height="536" width="750"]]511 +[[image:image-20240820111333-20.png]] 341 341 513 + 342 342 === 3.4.4 For device have not configured to connect to DataCake === 343 343 516 + 344 344 (% class="lead" %) 345 345 Use AT command for connecting to DataCake 346 346 ... ... @@ -348,10 +348,12 @@ 348 348 349 349 (% style="color:blue" %)**AT+SERVADDR=67.207.76.90,4445** 350 350 524 + 351 351 == 3.5 Node-Red (via MQTT) == 352 352 353 353 === 3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 354 354 529 + 355 355 Take S31-NB UDP protocol as an example. 356 356 357 357 Dragino provides input flow examples for the sensors. ... ... @@ -364,34 +364,38 @@ 364 364 365 365 The templates for S31-NB and NB95S31B are the same. 366 366 367 -[[image:image-202 30809173127-4.png]]542 +[[image:image-20240820111353-21.png]] 368 368 369 369 Please select the NB95S31B template. 370 370 371 -[[image:image-202 30809173310-5.png||height="558" width="926"]]546 +[[image:image-20240820111405-22.png]] 372 372 373 -[[image:image-202 30809173438-6.png]]548 +[[image:image-20240820111418-23.png]] 374 374 375 -[[image:image-202 30809173800-7.png]]550 +[[image:image-20240820111427-24.png]] 376 376 377 377 Successfully imported template. 378 378 379 -[[image:image-202 30809173835-8.png||height="515" width="860"]]554 +[[image:image-20240820111438-25.png]] 380 380 381 381 Users can set UDP port. 382 382 383 -[[image:image-202 30809174053-9.png]]558 +[[image:image-20240820111448-26.png]] 384 384 560 + 385 385 === 3.5.2 Simulate Connection === 386 386 563 + 387 387 We have completed the configuration of UDP. We can try sending packets to node red. 388 388 389 -[[image:image-202 30810083934-1.png]]566 +[[image:image-20240820111504-27.png]] 390 390 391 -[[image:image-202 30810084048-2.png||height="535" width="1052"]]568 +[[image:image-20240820111515-28.png]] 392 392 570 + 393 393 === 3.5.3 Configure NB-IoT Sensors === 394 394 573 + 395 395 * (% style="color:#037691" %)**AT+PRO=3,0 or 3,5 ** (%%) **~/~/ hex format or json format** 396 396 * (% style="color:#037691" %)**AT+SUBTOPIC=<device name>or User Defined** 397 397 * (% style="color:#037691" %)**AT+PUBTOPIC=<device name>or User Defined** ... ... @@ -399,6 +399,8 @@ 399 399 * (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 400 400 * (% style="color:#037691" %)**AT+PWD=“Your device token”** 401 401 581 + 582 + 402 402 == 3.6 ThingsBoard.Cloud (via MQTT) == 403 403 404 404 === 3.6.1 Configure ThingsBoard === ... ... @@ -405,12 +405,15 @@ 405 405 406 406 ==== 3.6.1.1 Create Device ==== 407 407 589 + 408 408 Create a New Device in [[ThingsBoard>>url:https://thingsboard.cloud/]]. Record Device Name which is used for MQTT connection. 409 409 410 -[[image:image-202 30802112413-32.png||height="583" width="1066"]]592 +[[image:image-20240820112210-29.png]] 411 411 594 + 412 412 ==== 3.6.1.2 Create Uplink & Downlink Converter ==== 413 413 597 + 414 414 (% style="color:blue" %)**Uplink Converter** 415 415 416 416 The purpose of the decoder function is to parse the incoming data and metadata to a format that ThingsBoard can consume. deviceName and deviceType are required, while attributes and telemetry are optional. Attributes and telemetry are flat key-value objects. Nested objects are not supported. ... ... @@ -417,27 +417,29 @@ 417 417 418 418 To create an uplink converter go to the (% style="color:blue" %)**Integrations center**(%%) -> (% style="color:blue" %)**Data converters**(%%) page and click (% style="color:blue" %)**“plus”** (%%)button. Name it (% style="color:blue" %)**“MQTT Uplink Converter”**(%%) and select type (% style="color:blue" %)"**Uplink"**(%%). Use debug mode for now. 419 419 420 -[[image:image-202 30802112413-33.png||height="597" width="1061"]]604 +[[image:image-20240820112222-30.png]] 421 421 422 422 (% style="color:blue" %)**Downlink Converter** 423 423 424 424 The Downlink converter transforming outgoing RPC message and then the Integration sends it to external MQTT broke 425 425 426 -[[image:image-202 30802112413-34.png||height="598" width="1063"]]610 +[[image:image-20240820112236-31.png]] 427 427 428 428 (% style="color:red" %)**Note: Our device payload is already human readable data. Therefore, users do not need to write decoders. Simply create by default.** 429 429 614 + 430 430 ==== 3.6.1.3 MQTT Integration Setup ==== 431 431 617 + 432 432 Go to the (% style="color:blue" %)**Integrations center**(%%) **->** (% style="color:blue" %)**Integrations page**(%%) and click **“(% style="color:blue" %)plus(%%)”** icon to add a new integration. Name it (% style="color:blue" %)**“MQTT Integration”**(%%), select type (% style="color:blue" %)**MQTT**; 433 433 434 -[[image:image-202 30802112413-35.png||height="597" width="1062"]]620 +[[image:image-20240820112247-32.png]] 435 435 436 436 * The next steps is to add the recently created uplink and downlink converters; 437 437 438 -[[image:image-202 30802112413-36.png||height="598" width="1062"]]624 +[[image:image-20240820112302-33.png]] 439 439 440 -[[image:image-202 30802112413-37.png||height="598" width="1064"]]626 +[[image:image-20240820112316-34.png]] 441 441 442 442 (% style="color:blue" %)**Add a topic filter:** 443 443 ... ... @@ -445,16 +445,19 @@ 445 445 446 446 You can also select an MQTT QoS level. We use MQTT QoS level 0 (At most once) by default; 447 447 448 -[[image:image-202 30802112413-38.png||height="598" width="1064"]]634 +[[image:image-20240820112330-35.png]] 449 449 636 + 450 450 === 3.6.2 Simulate with MQTT.fx === 451 451 452 -[[image:image-202 30802112413-39.png]]639 +[[image:image-20240820112340-36.png]] 453 453 454 -[[image:image-202 30802112413-40.png||height="525" width="980"]]641 +[[image:image-20240820112351-37.png]] 455 455 643 + 456 456 === 3.6.3 Configure NB-IoT Sensor === 457 457 646 + 458 458 (% style="color:blue" %)**AT Commands** 459 459 460 460 * (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. ... ... @@ -471,25 +471,27 @@ 471 471 472 472 Test Uplink by click the button for 1 second 473 473 474 -[[image:image-202 30802112413-41.png||height="496" width="828"]]663 +[[image:image-20240820112404-38.png]] 475 475 476 -[[image:image-202 30802112413-42.png]]665 +[[image:image-20240820112416-39.png]] 477 477 478 -[[image:image-202 30802112413-43.png||height="407" width="825"]]667 +[[image:image-20240820112426-40.png]] 479 479 669 + 480 480 == 3.7 [[Tago.io>>url:https://admin.tago.io/]] (via MQTT) == 481 481 482 482 === 3.7.1 Create device & Get Credentials === 483 483 674 + 484 484 We use MQTT Connection to send data to [[Tago.io>>url:https://admin.tago.io/]]. We need to Create Device and Get MQTT Credentials first. 485 485 486 -[[image:image-202 30802112413-44.png]]677 +[[image:image-20240820112516-41.png]] 487 487 488 -[[image:image-202 30802112413-45.png]]679 +[[image:image-20240820112526-42.png]] 489 489 490 490 Go to the Device section and create a device. Then, go to the section tokens and copy your device-token. 491 491 492 -[[image:image-202 30802112413-46.png]]683 +[[image:image-20240820112539-43.png]] 493 493 494 494 The device needs to enable the TLS mode and set the (% style="color:blue" %)**AT+TLSMOD=1,0**(%%) command. 495 495 ... ... @@ -527,26 +527,33 @@ 527 527 528 528 * (% style="color:#037691" %)**AT+PWD=“Your device token”** 529 529 721 + 722 + 530 530 === 3.7.2 Simulate with MQTT.fx === 531 531 532 -[[image:image-20230802112413-52.png]] 533 533 534 -[[image:image-202 30808105300-2.png||height="553" width="1026"]]726 +[[image:image-20240820112552-44.png]] 535 535 728 +[[image:image-20240820112604-45.png]] 729 + 536 536 Users can run the (% style="color:blue" %)**AT+PRO=3,5**(%%) command, and the payload will be converted to **JSON format**. 537 537 538 -[[image:image-202 30808105217-1.png||height="556" width="1031"]]732 +[[image:image-20240820112615-46.png]] 539 539 540 -[[image:image-202 30808105329-3.png]]734 +[[image:image-20240820112626-47.png]] 541 541 736 + 542 542 === 3.7.3 tago data === 543 543 544 -[[image:image-20230802112413-50.png||height="242" width="1037"]] 545 545 546 -[[image:image-202 30802112413-51.png||height="184" width="696"]]740 +[[image:image-20240820112637-48.png]] 547 547 742 +[[image:image-20240820112647-49.png]] 743 + 744 + 548 548 == 3.8 TCP Connection == 549 549 747 + 550 550 (% style="color:blue" %)**AT command:** 551 551 552 552 * (% style="color:#037691" %)**AT+PRO=4,0 ** (%%) ~/~/ Set to use TCP protocol to uplink(HEX format) ... ... @@ -557,20 +557,24 @@ 557 557 558 558 (% style="color:blue" %)**Sensor Console Output when Uplink:** 559 559 560 -[[image:image-202 30807233631-1.png]]758 +[[image:image-20240820112704-50.png]] 561 561 562 562 (% style="color:blue" %)**See result in TCP Server:** 563 563 564 -[[image:image-202 30807233631-2.png]]762 +[[image:image-20240820112716-51.png]] 565 565 764 + 566 566 == 3.9 AWS Connection == 567 567 767 + 568 568 Users can refer to [[Dragino NB device connection to AWS platform instructions>>http://wiki.dragino.com/xwiki/bin/view/Dragino%20NB%20device%20connection%20to%20AWS%20platform%20instructions/#H1.LogintotheplatformandfindIoTcore]] 569 569 570 -= 4. MQTT/UDP/TCP downlink = 571 571 771 += 4. COAP/UDP/MQTT/TCP downlink = 772 + 572 572 == 4.1 MQTT (via MQTT.fx) == 573 573 775 + 574 574 Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx//.// 575 575 576 576 **1.** Configure node MQTT connection (via MQTT.fx): ... ... @@ -591,12 +591,14 @@ 591 591 592 592 (% style="color:red" %)**Note: To uplink and downlink via MQTT.fx, we need set the publish topic and subscribe topic different, for example: AT+SUBTOPIC=SE01_SUB & AT+PUBTOPIC=SE01_PUB.** 593 593 594 -[[image:image-20240 417180145-2.png||height="434" width="587"]][[ width="584">> width="584"]]796 +[[image:image-20240820112732-52.png]][[image:image-20240820112758-53.png]] 595 595 798 + 596 596 **2. **When the node uplink packets, we can observe the data in MQTT.fx. 597 597 598 -[[image:image-20240 418144337-1.png||height="709" width="802"]]801 +[[image:image-20240820112813-54.png]] 599 599 803 + 600 600 **3. **The downlink command can be successfully sent only when the downlink port is open. 601 601 602 602 The downlink port is opened for about 3 seconds after uplink packets are sent. ... ... @@ -603,16 +603,66 @@ 603 603 604 604 Therefore, when we see the node uplink packets in the **Subscribe** window, we need to immediately switch to the **publish** window to publish the **hex format** command. 605 605 606 -[[image:image-20240 418150435-3.png||height="582" width="659"]]810 +[[image:image-20240820112824-55.png]] 607 607 608 -[[image:image-20240 418150932-4.png||height="492" width="1061"]]812 +[[image:image-20240820112835-56.png]] 609 609 610 610 (% style="color:red" %)**Note: Users can edit the hex command in advance. When the node uplink, directly click the publish button several times to increase the success rate of command configuration.** 611 611 816 + 817 +== 4.2 UDP (via Thingseye) == 818 + 819 + 820 +(% style="color:red" %)**Note:**(%%) The UDP service on the ThingsEye platform needs to be built by the user. (Description Link:[[UDP service building instructions>>http://www.ithingsboard.com/docs/user-guide/integrations/udp/]]) 821 + 822 +After the node is successfully connected to the platform, you need to select the corresponding node (you can refer to the node's IMEI to find it) 823 + 824 +[[image:image-20240820141843-2.png||height="546" width="821"]] 825 + 826 +After clicking Show Node Details Page, (% style="color:blue" %)**Select Properties ~-~-- select Shared Properties ~-~-- click Add Properties** 827 + 828 +[[image:image-20240820143316-3.png||height="555" width="1170"]] 829 + 830 +After clicking Add Shared Attribute, set the key to (% style="color:red" %)**value**(%%), and write the command that needs to be downlinked in the Downlink Command Input box 831 + 832 +(% style="color:red" %)**(Note: Downlinks can only be downlinked in string format, otherwise the node will not recognize the downlink command.)** 833 + 834 +[[image:image-20240820143820-4.png||height="554" width="1168"]] 835 + 836 +After the command is successfully added, the platform will send the command down on the node's next uplink. 837 + 838 +[[image:image-20240820144913-6.png||height="585" width="1232"]] 839 + 840 +[[image:image-20240820145133-7.png||height="582" width="1227"]] 841 + 842 +Upon successful issuance, the platform automatically eliminates the attributes from the queue and waits for the next addition of new attributes 843 + 844 +[[image:image-20240820145309-8.png]] 845 + 846 + 847 += 5. GPS positioning function = 848 + 849 +=== 1. Turn on GPS function === 850 + 851 +(% class="wikigeneratedid" %) 852 +AT+GPS=1 or 0 ~/~/GPS function on or off 853 + 854 + 855 +=== 2.Extend the time to turn on GNSS === 856 + 857 +AT+GNSST=30 ~/~/GPS search for positioning information for 30 seconds 858 + 859 + 860 +=== 3.Get or set GPS positioning interval in units of hour === 861 + 862 +AT+GTDC=24 ~/~/The device will activate GPS positioning every 24 hours 863 + 864 + 612 612 = 5. FAQ = 613 613 614 614 == 5.1 What is the usage of Multi Sampling and One Uplink? == 615 615 869 + 616 616 The NB series has the feature for Multi Sampling and one uplink. See one of them 617 617 618 618 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-NB_BN-IoT_Sensor_Node_User_Manual/#H2.5Multi-SamplingsandOneuplink>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-NB_BN-IoT_Sensor_Node_User_Manual/#H2.5Multi-SamplingsandOneuplink]] ... ... @@ -627,27 +627,32 @@ 627 627 1*. **AT+TDC=7200** ~/~/ Uplink every 2 hours. 628 628 1*. this will mean each uplink will actually include the 6 uplink data (24 set data which cover 12 hours). So if device doesn't lost 6 continue data. There will not data lost. 629 629 884 + 885 + 630 630 == 5.2 Why the uplink JSON format is not standard? == 631 631 888 + 632 632 The json format in uplink packet is not standard Json format. Below is the example. This is to make the payload as short as possible, due to NB-IoT transmit limition, a standard Json is not able to include 32 sets of sensors data with timestamp. 633 633 634 634 The firmware version released after 2024, Mar will use change back to use Json format. Detail please check changelog. 635 635 636 -[[image:image-202402 29233154-1.png]]893 +[[image:image-20240820112848-57.png]] 637 637 895 + 638 638 = 6. Trouble Shooting: = 639 639 640 640 == 6.1 Checklist for debuging Network Connection issue. Signal Strenght:99 issue. == 641 641 900 + 642 642 There are many different providers provide NB-IoT service in the world. They might use different band, different APN & different operator configuration. Which makes connection to NB-IoT network is complicate. 643 643 644 644 If end device successfully attached NB-IoT Network, User can normally see the signal strengh as below (between 0~~31) 645 645 646 -[[image:image-2024020 7002003-1.png]]905 +[[image:image-20240820112859-58.png]] 647 647 648 648 If fail to attach network, it will shows signal 99. as below: 649 649 650 -[[image:image-2024020 7002129-2.png]]909 +[[image:image-20240820112908-59.png]] 651 651 652 652 (% class="lead" %) 653 653 When see this issue, below are the checklist: ... ... @@ -661,14 +661,16 @@ 661 661 If you have check all above and still fail. please send console log files (as many as possible) to [[support@dragino.com>>mailto:support@dragino.com]] so we can check. 662 662 663 663 664 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6. 4Why sometime the AT Command is slow in reponse?(%%) ==923 +== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.2 Why sometime the AT Command is slow in reponse?(%%) == 665 665 925 + 666 666 When the MCU is communicating with the NB-IoT module, the MCU response of AT Command will become slower, it might takes several seconds to response. 667 667 668 -[[image:image-202402 26111928-1.png]]928 +[[image:image-20240820113015-60.png]] 669 669 670 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.5 What is the Downlink Command by the NB device?(%%) == 671 671 931 +== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.3 What is the Downlink Command by the -CB device?(%%) == 932 + 672 672 (% data-sider-select-id="bb6e9353-0c3f-473c-938d-4b416c9a03e6" %) 673 673 === UDP: === 674 674 ... ... @@ -678,6 +678,7 @@ 678 678 679 679 {AT+TDC=300} 680 680 942 + 681 681 (% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 682 682 === MQTT: === 683 683 ... ... @@ -719,5 +719,136 @@ 719 719 720 720 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]] 721 721 984 + 985 +== 6.4 What if the signal is good but the domain name resolution fails? == 986 + 987 + 988 +If the domain name resolution fails, first check whether the domain name is correct, users can use their own website domain name resolution tool to verify the domain name. 989 + 990 +[[image:image-20240827150705-6.png||height="489" width="687"]] 991 + 992 +If the domain name is correct, but the domain name cannot be resolved, the user can turn off the domain name resolution function(AT+GDNS=1) and use the domain name communication directly. 993 + 994 +* Set the DNS 995 + 996 +(% style="color:blue" %)**AT Command: AT+GDNS** 997 + 998 +**AT+GDNS=0** ~/~/ Default. Automatically resolves the domain name and uses the resolved IP to communicate. 999 + 1000 +**AT+GDNS=1 **~/~/ Disabling Domain name resolution. Use the domain name directly to communicate. 1001 + 1002 +(% style="color:red" %)**Note: For -CB products, with the exception of AT+PRO=2,5, all protocols and payload formats support direct domain communication.** 1003 + 1004 +Example: 1005 + 1006 +[[image:image-20240827150121-5.png||height="476" width="680"]][[image:image-20240827145055-4.png||height="484" width="678"]] 1007 + 1008 + 1009 +== 6.5 GPS debugging == 1010 + 1011 + 1012 +Indoor GPS signal is very weak, **outdoor** positioning is generally recommended. 1013 + 1014 +[[image:image-20240903104250-9.png||height="275" width="614"]] 1015 + 1016 + 1017 +[[image:image-20240903104431-10.png||height="291" width="621"]] 1018 + 1019 + 1020 +=== 6.5.1 GPS commands === 1021 + 1022 + 1023 +The following are three related AT commands that introduce GPS functions. 1024 + 1025 +* **Turn on/off GPS** 1026 + 1027 +(% style="color:blue" %)**AT Command: **(% style="color:#037691" %)**AT+GPS ** 1028 + 1029 +**Ex1: **AT+GPS=0 ~/~/ Turn off GPS 1030 + 1031 +**Ex2: **AT+GPS=1 ~/~/ Turn on GPS 1032 + 1033 +(% style="color:blue" %)**Downlink command:**(%%)** (% style="color:#037691" %)0x11(%%)** 1034 + 1035 +Format: Command Code (0x11) followed by 1 byte. 1036 + 1037 +Example: Downlink Payload: **11 01 **~/~/ AT+GPS=1 1038 + 1039 +* **Set GNSS open time** 1040 + 1041 +Extend the time to turn on GNSS. The automatic GPS location time is extended when the node is activated. 1042 + 1043 +(% style="color:blue" %)**AT Command: **(% style="color:#037691" %)**AT+GNSST** 1044 + 1045 +Example: AT+GNSST=30 ~/~/ Set the GPS positioning time to 30 seconds 1046 + 1047 +(% style="color:blue" %)**Downlink command:**(%%)** (% style="color:#037691" %)0x10(%%)** 1048 + 1049 +Format: Command Code (0x10) followed by 2 bytes. 1050 + 1051 +Example: Downlink Payload: **10 00 1E **~/~/ AT+GNSST=30 1052 + 1053 +* **Set GPS positioning interval** 1054 + 1055 +Feature: Set GPS positioning interval (unit: hour). 1056 + 1057 +When GPS is enabled, the node automatically locates and uplinks each time it passes **GTDC time** after activation. 1058 + 1059 +(% style="color:blue" %)**AT Command: **(% style="color:#037691" %)**AT+GTDC** 1060 + 1061 +Example: AT+GTDC=24 ~/~/ Set the GPS positioning interval to 24h. 1062 + 1063 +(% style="color:blue" %)**Downlink command:**(%%)** (% style="color:#037691" %)0x12(%%)** 1064 + 1065 +Format: Command Code (0x12) followed by 3 bytes. 1066 + 1067 +Example: 24 hours: 24(D)=0x18(H) 1068 + 1069 +Downlink Payload: **12 00 00 18 **~/~/ AT+GTDC=24 1070 + 1071 + 1072 +=== 6.5.2 GPS workflow === 1073 + 1074 + 1075 +The whole working process after the GPS function is enabled((% style="color:#037691" %)**AT+GPS=1**(%%)) is as follows: 1076 + 1077 +~1. When activate the node, the node will turn on the GNSS, if the GPS signal is good, the node will print and upload the position information with the first data packet immediately. 1078 + 1079 + If the signal is not good, it may take the whole (% style="color:#037691" %)**GNSST**(%%) time but still can not search the latitude and longitude information, at this time the node uploads the latitude and longitude all to 0. 1080 + 1081 + So if there is a failure of positioning, the user can extend the (% style="color:#037691" %)**GNSST**(%%) time appropriately. 1082 + 1083 +2. Each TDC time node is not repositioned and the positioning interval is determined by the AT+GTDC time. 1084 + 1085 + The latitude and longitude payload uplinked at each TDC time is the GPS positioning information from the previous (% style="color:#037691" %)**GTDC**(%%) time. 1086 + 1087 + Only when the node is activated or every (% style="color:#037691" %)**GTDC**(%%) time is reached, the node turns on the GNSS and we can observe the GPS search information through the serial assistant or Bluetooth tool. 1088 + 1089 + 1090 +=== 6.5.3 GPS debugging methods === 1091 + 1092 + 1093 +In summary, we can deduce the methods of debugging GPS: 1094 + 1095 +* **Check whether the GPS function is enabled.** 1096 + 1097 +[[image:image-20240903102327-5.png||height="271" width="529"]] 1098 + 1099 +* **Check whether the GPS antenna is loose**. 1100 + 1101 +If the GPS antenna is loose, the GPS signal is weak, and the positioning fails. 1102 + 1103 +[[image:image-20240903094214-1.png||height="340" width="461"]] 1104 + 1105 +* **Use the AT+GNSST command to extend the positioning time.** 1106 + 1107 +The default AT+GNSST=30, that is, the default positioning time is 30 seconds. 1108 + 1109 +If the location fails, users can extend the location time. 1110 + 1111 +[[image:image-20240903102641-8.png||height="303" width="600"]] 1112 + 1113 + 1114 + 1115 + 722 722 723 -
- image-20240819102802-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +41.5 KB - Content
- image-20240819103212-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +49.5 KB - Content
- image-20240819103826-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +122.4 KB - Content
- image-20240819103909-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +122.2 KB - Content
- image-20240819104904-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.1 KB - Content
- image-20240819104942-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.1 KB - Content
- image-20240819105003-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +48.2 KB - Content
- image-20240819105418-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +163.8 KB - Content
- image-20240819112109-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.9 KB - Content
- image-20240819173602-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.3 KB - Content
- image-20240819173659-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +44.8 KB - Content
- image-20240819173706-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +44.8 KB - Content
- image-20240819173826-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.3 KB - Content
- image-20240819174033-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +33.1 KB - Content
- image-20240819174209-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +18.9 KB - Content
- image-20240819174314-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +48.4 KB - Content
- image-20240819174540-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +99.8 KB - Content
- image-20240819174610-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +127.8 KB - Content
- image-20240819174618-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.6 KB - Content
- image-20240820110003-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +66.5 KB - Content
- image-20240820110017-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.3 KB - Content
- image-20240820110031-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +59.2 KB - Content
- image-20240820110048-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +64.0 KB - Content
- image-20240820110103-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +71.6 KB - Content
- image-20240820110114-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +77.4 KB - Content
- image-20240820110129-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +10.7 KB - Content
- image-20240820110142-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.1 KB - Content
- image-20240820110218-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +66.7 KB - Content
- image-20240820110235-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.2 KB - Content
- image-20240820110247-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +49.8 KB - Content
- image-20240820111016-12.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +65.8 KB - Content
- image-20240820111101-13.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +36.3 KB - Content
- image-20240820111113-14.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +55.7 KB - Content
- image-20240820111236-15.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.0 KB - Content
- image-20240820111248-16.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +58.4 KB - Content
- image-20240820111259-17.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +58.0 KB - Content
- image-20240820111312-18.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +13.9 KB - Content
- image-20240820111322-19.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +68.2 KB - Content
- image-20240820111333-20.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +47.0 KB - Content
- image-20240820111353-21.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.5 KB - Content
- image-20240820111405-22.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +57.6 KB - Content
- image-20240820111418-23.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +41.0 KB - Content
- image-20240820111427-24.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.8 KB - Content
- image-20240820111438-25.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +139.6 KB - Content
- image-20240820111448-26.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +58.0 KB - Content
- image-20240820111504-27.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +85.1 KB - Content
- image-20240820111515-28.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.3 KB - Content
- image-20240820112210-29.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +96.9 KB - Content
- image-20240820112222-30.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +149.6 KB - Content
- image-20240820112236-31.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +170.6 KB - Content
- image-20240820112247-32.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +105.5 KB - Content
- image-20240820112302-33.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +112.9 KB - Content
- image-20240820112316-34.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +96.4 KB - Content
- image-20240820112330-35.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +127.0 KB - Content
- image-20240820112340-36.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +24.7 KB - Content
- image-20240820112351-37.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +68.4 KB - Content
- image-20240820112404-38.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +40.2 KB - Content
- image-20240820112416-39.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +40.9 KB - Content
- image-20240820112426-40.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +101.4 KB - Content
- image-20240820112516-41.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.6 KB - Content
- image-20240820112526-42.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +128.5 KB - Content
- image-20240820112539-43.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +31.2 KB - Content
- image-20240820112552-44.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +28.4 KB - Content
- image-20240820112604-45.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +60.9 KB - Content
- image-20240820112615-46.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +60.5 KB - Content
- image-20240820112626-47.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.1 KB - Content
- image-20240820112637-48.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +53.1 KB - Content
- image-20240820112647-49.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +37.8 KB - Content
- image-20240820112704-50.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.9 KB - Content
- image-20240820112716-51.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +9.6 KB - Content
- image-20240820112732-52.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +95.3 KB - Content
- image-20240820112758-53.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.7 KB - Content
- image-20240820112813-54.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +127.7 KB - Content
- image-20240820112824-55.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +24.0 KB - Content
- image-20240820112835-56.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +70.6 KB - Content
- image-20240820112848-57.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +39.5 KB - Content
- image-20240820112859-58.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.3 KB - Content
- image-20240820112908-59.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.9 KB - Content
- image-20240820113015-60.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.0 KB - Content
- image-20240820140935-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +159.2 KB - Content
- image-20240820141136-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +107.6 KB - Content
- image-20240820141746-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +122.2 KB - Content
- image-20240820141843-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +123.2 KB - Content
- image-20240820143316-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +152.3 KB - Content
- image-20240820143820-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +161.7 KB - Content
- image-20240820144823-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +145.6 KB - Content
- image-20240820144913-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +136.4 KB - Content
- image-20240820145133-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +164.5 KB - Content
- image-20240820145309-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.6 KB - Content
- image-20240827145055-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +74.2 KB - Content
- image-20240827150121-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +86.0 KB - Content
- image-20240827150705-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +86.7 KB - Content
- image-20240903094214-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +4.5 MB - Content
- image-20240903094457-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.6 MB - Content
- image-20240903100736-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +250.8 KB - Content
- image-20240903100832-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +181.5 KB - Content
- image-20240903102327-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +26.2 KB - Content
- image-20240903102542-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +16.9 KB - Content
- image-20240903102621-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.9 KB - Content
- image-20240903102641-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.0 KB - Content
- image-20240903104250-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.9 KB - Content
- image-20240903104431-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +49.2 KB - Content