Last modified by Mengting Qiu on 2025/07/17 10:51
From version 56.1
edited by Edwin Chen
on 2023/08/06 08:30
on 2023/08/06 08:30
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 27 added, 0 removed)
- image-20230807233631-1.png
- image-20230807233631-2.png
- image-20230808105217-1.png
- image-20230808105300-2.png
- image-20230808105329-3.png
- image-20230808162301-1.png
- image-20230808162342-2.png
- image-20230808162421-3.png
- image-20230808162727-4.png
- image-20230808163035-5.png
- image-20230808163049-6.png
- image-20230808163612-7.png
- image-20230808170051-8.png
- image-20230808170548-9.png
- image-20230808205045-1.png
- image-20230809165928-1.png
- image-20230809170225-2.png
- image-20230809170532-3.png
- image-20230809173127-4.png
- image-20230809173310-5.png
- image-20230809173438-6.png
- image-20230809173800-7.png
- image-20230809173835-8.png
- image-20230809174053-9.png
- image-20230809180523-10.png
- image-20230810083934-1.png
- image-20230810084048-2.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - Content
-
... ... @@ -1,9 +1,13 @@ 1 -(% class="wikigeneratedid" %) 1 +(% class="wikigeneratedid" id="HTableofContents:" %) 2 2 **Table of Contents:** 3 3 4 4 {{toc/}} 5 5 6 6 7 + 8 + 9 + 10 + 7 7 = 1. The use of this guideline = 8 8 9 9 ... ... @@ -17,22 +17,26 @@ 17 17 18 18 1. Get a NB-IoT SIM card from Service Provider. (Not the same as the SIM card we use in mobile phone) 19 19 1. Insert the SIM card to Sensor 20 -1. [[Configure APN>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20configure%20APN%20in%20the%20node/]] in the sensor 24 +1. [[Configure APN>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20configure%20APN%20in%20the%20node/]] in the sensor (AT+APN=<APN>) 21 21 26 +[[image:image-20230808205045-1.png||height="293" width="438"]] 27 + 22 22 After doing above, the NB-IoT Sensors should be able to attach to NB-IoT network . 23 23 24 24 The -NB and -NS models support (% style="color:blue" %)**LTE Cat NB2**(%%), with below frequency band: multiple frequency bands of (% style="color:blue" %)**B1/B2/B3/B4/B5/B8/B12/B13/B14/B17/B18/B19/B20/B25/B28/B66/B70/B85**(%%) . Make sure you use a the NB-IoT SIM card. 25 25 26 26 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:878px" %) 27 -|(% style="background-color:#4f81bd; color:white; width:11 4px" %)**SIM Provider**|(% style="background-color:#4f81bd; color:white; width:154px" %)**APN**|(% style="background-color:#4f81bd; color:white; width:474px" %)**NB-IoT Coverage**|(% style="background-color:#4f81bd; color:white; width:135px" %)**Comments**28 -|(% style="width:11 4px" %)**[[1NCE>>https://1nce.com]]**|(% style="width:154px" %)iot.1nce.net|(% style="width:474px" %)(((33 +|(% style="background-color:#4f81bd; color:white; width:117px" %)**SIM Provider**|(% style="background-color:#4f81bd; color:white; width:151px" %)**AT+APN=**|(% style="background-color:#4f81bd; color:white; width:474px" %)**NB-IoT Coverage**|(% style="background-color:#4f81bd; color:white; width:135px" %)**Comments** 34 +|(% style="width:117px" %)**[[1NCE>>https://1nce.com]]**|(% style="width:151px" %)iot.1nce.net|(% style="width:474px" %)((( 29 29 **[[Coverage Reference Link>>https://1nce.com/en-ap/1nce-connect]]** 30 30 31 31 Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Finland, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Latvia, Malta, Netherlands, Norway, Puerto Rico, Russia, Slovak , Republic, Slovenia, Spain, Sweden, Switzerland, Taiwan, USA, US Virgin Islands 32 32 )))|(% style="width:135px" %) 33 -|(% style="width:11 4px" %)China Mobile|(% style="width:154px" %) |(% style="width:474px" %)China Mainland, HongKong|(% style="width:135px" %)34 -|(% style="width:11 4px" %)China Telecom|(% style="width:154px" %)39 +|(% style="width:117px" %)China Mobile|(% style="width:151px" %)No need configure|(% style="width:474px" %)China Mainland, HongKong|(% style="width:135px" %) 40 +|(% style="width:117px" %)China Telecom|(% style="width:151px" %)ctnb|(% style="width:474px" %)China Mainland|(% style="width:135px" %) 35 35 42 + 43 + 36 36 = 3. Configure to connect to different servers = 37 37 38 38 == 3.1 General UDP Connection == ... ... @@ -132,6 +132,8 @@ 132 132 133 133 * (% style="color:#037691" %)**Password:**(%%) <Your ThingSpeak MQTT Password> 134 134 143 + 144 + 135 135 ==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 136 136 137 137 ... ... @@ -173,6 +173,8 @@ 173 173 174 174 * (% style="color:blue" %)**AT+SUBTOPIC=<YOUR_CHANNEL_ID>** 175 175 186 + 187 + 176 176 ==== 3.3.3.2 Uplink Examples ==== 177 177 178 178 ... ... @@ -214,185 +214,145 @@ 214 214 215 215 Below is the NB-IoT Product Table show the mapping. 216 216 217 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1386px" %) 218 -|(% style="background-color:#4f81bd; width:124px" %) |(% style="background-color:#4f81bd; color:white; width:91px" %)Field1|(% style="background-color:#4f81bd; color:white; width:102px" %)Field2|(% style="background-color:#4f81bd; color:white; width:159px" %)Field3|(% style="background-color:#4f81bd; color:white; width:153px" %)Field4|(% style="background-color:#4f81bd; color:white; width:152px" %)Field5|(% style="background-color:#4f81bd; color:white; width:148px" %)Field6|(% style="background-color:#4f81bd; color:white; width:164px" %)Field7|(% style="background-color:#4f81bd; color:white; width:152px" %)Field8|(% style="background-color:#4f81bd; color:white; width:66px" %)Field9|(% style="background-color:#4f81bd; color:white; width:66px" %)Field10 219 -|(% style="background-color:#4f81bd; color:white; width:124px" %)S31x-NB|(% style="width:91px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:159px" %)Battery|(% style="width:153px" %)RSSI|(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 220 -|(% style="background-color:#4f81bd; color:white; width:124px" %)SE01-NB|(% style="width:91px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:159px" %)conduct|(% style="width:153px" %)dielectric_constant|(% style="width:152px" %)Battery|(% style="width:148px" %)RSSI|(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 221 -|(% style="background-color:#4f81bd; color:white; width:124px" %)DDS20-NB|(% style="width:91px" %)distance|(% style="width:102px" %)Battery|(% style="width:159px" %)RSSI|(% style="width:153px" %) |(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 222 -|(% style="background-color:#4f81bd; color:white; width:124px" %)DDS45-NB|(% style="width:91px" %)distance|(% style="width:102px" %)Battery|(% style="width:159px" %)RSSI|(% style="width:153px" %) |(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 223 -|(% style="background-color:#4f81bd; color:white; width:124px" %)DDS75-NB|(% style="width:91px" %)distance|(% style="width:102px" %)Battery|(% style="width:159px" %)RSSI|(% style="width:153px" %) |(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 224 -|(% style="background-color:#4f81bd; color:white; width:124px" %)NMDS120-NB|(% style="width:91px" %)distance|(% style="width:102px" %)Battery|(% style="width:159px" %)RSSI|(% style="width:153px" %) |(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 225 -|(% rowspan="1" style="background-color:#4f81bd; color:white; width:124px" %)SPH01-NB|(% style="width:91px" %)ph|(% style="width:102px" %)Temperature|(% style="width:159px" %)Battery|(% style="width:153px" %)RSSI|(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% colspan="1" rowspan="1" style="width:66px" %) 226 -|(% style="background-color:#4f81bd; color:white; width:124px" %)NLM01-NB|(% style="width:91px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:159px" %)Battery|(% style="width:153px" %)RSSI|(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 227 -|(% style="background-color:#4f81bd; color:white; width:124px" %)NMDS200-NB|(% style="width:91px" %)distance1|(% style="width:102px" %)distance2|(% style="width:159px" %)Battery|(% style="width:153px" %)RSSI|(% style="width:152px" %) |(% style="width:148px" %) |(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 228 -|(% style="background-color:#4f81bd; color:white; width:124px" %)CPN01-NB|(% style="width:91px" %)alarm|(% style="width:102px" %)count|(% style="width:159px" %)door open duration|(% style="width:153px" %)calc flag|(% style="width:152px" %)Battery|(% style="width:148px" %)RSSI|(% style="width:164px" %) |(% style="width:152px" %) |(% style="width:66px" %) |(% style="width:66px" %) 229 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:124px" %)DS03A-NB|(% colspan="1" rowspan="1" style="width:91px" %)level|(% colspan="1" rowspan="1" style="width:102px" %)alarm|(% colspan="1" rowspan="1" style="width:159px" %)pb14door open num|(% colspan="1" rowspan="1" style="width:153px" %)pb14 last open time|(% colspan="1" rowspan="1" style="width:152px" %)pb15 level status|(% colspan="1" rowspan="1" style="width:148px" %)pb15 alarm status|(% colspan="1" rowspan="1" style="width:164px" %)pb15 door open num|(% colspan="1" rowspan="1" style="width:152px" %)pb15 last open time|(% colspan="1" rowspan="1" style="width:66px" %)Battery|(% colspan="1" rowspan="1" style="width:66px" %)RSSI 230 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:124px" %)SN50V3-NB|(% colspan="1" rowspan="1" style="width:91px" %) |(% colspan="1" rowspan="1" style="width:102px" %) |(% colspan="1" rowspan="1" style="width:159px" %) |(% colspan="1" rowspan="1" style="width:153px" %) |(% colspan="1" rowspan="1" style="width:152px" %) |(% colspan="1" rowspan="1" style="width:148px" %) |(% colspan="1" rowspan="1" style="width:164px" %) |(% colspan="1" rowspan="1" style="width:152px" %) |(% colspan="1" rowspan="1" style="width:66px" %) |(% colspan="1" rowspan="1" style="width:66px" %) 231 -|(% colspan="1" rowspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod1|(% colspan="1" rowspan="1" style="width:91px" %)mod|(% colspan="1" rowspan="1" style="width:102px" %)Battery|(% colspan="1" rowspan="1" style="width:159px" %)RSSI|(% colspan="1" rowspan="1" style="width:153px" %)DS18B20 Temp|(% colspan="1" rowspan="1" style="width:152px" %)exit_state/input PA4|(% colspan="1" rowspan="1" style="width:148px" %)adc0|(% colspan="1" rowspan="1" style="width:164px" %)Temperature |(% colspan="1" rowspan="1" style="width:152px" %)Humidity|(% colspan="1" rowspan="1" style="width:66px" %) |(% colspan="1" rowspan="1" style="width:66px" %) 232 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod2|(% colspan="1" style="width:91px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:159px" %)RSSI|(% colspan="1" style="width:153px" %)DS18B20 Temp|(% colspan="1" style="width:152px" %)exit_state/input PA4|(% colspan="1" style="width:148px" %)adc0|(% colspan="1" style="width:164px" %)distance|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:66px" %) |(% colspan="1" style="width:66px" %) 233 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod3|(% colspan="1" style="width:91px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:159px" %)RSSI|(% colspan="1" style="width:153px" %)adc0|(% colspan="1" style="width:152px" %)exit_state/input PA4|(% colspan="1" style="width:148px" %)adc1|(% colspan="1" style="width:164px" %)Temperature|(% colspan="1" style="width:152px" %)Humidity|(% colspan="1" style="width:66px" %)adc4|(% colspan="1" style="width:66px" %) 234 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod4|(% colspan="1" style="width:91px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:159px" %)RSSI|(% colspan="1" style="width:153px" %)DS18B20 Temp|(% colspan="1" style="width:152px" %)adc0|(% colspan="1" style="width:148px" %)exit_state/input PA4|(% colspan="1" style="width:164px" %)DS18B20 Temp2|(% colspan="1" style="width:152px" %)DS18B20 Temp3|(% colspan="1" style="width:66px" %) |(% colspan="1" style="width:66px" %) 235 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod5|(% colspan="1" style="width:91px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:159px" %)RSSI|(% colspan="1" style="width:153px" %)DS18B20 Temp|(% colspan="1" style="width:152px" %)adc0|(% colspan="1" style="width:148px" %)exit_state/input PA4|(% colspan="1" style="width:164px" %)Weight|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:66px" %) |(% colspan="1" style="width:66px" %) 236 -|(% colspan="1" style="background-color:#4f81bd; color:white; width:124px" %)mod6|(% colspan="1" style="width:91px" %)mod|(% colspan="1" style="width:102px" %)Battery|(% colspan="1" style="width:159px" %)RSSI|(% colspan="1" style="width:153px" %)count|(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:148px" %) |(% colspan="1" style="width:164px" %) |(% colspan="1" style="width:152px" %) |(% colspan="1" style="width:66px" %) |(% colspan="1" style="width:66px" %) 229 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1424px" %) 230 +|(% 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:154px" %)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" %)Field10 231 +|(% style="background-color:#4f81bd; color:white; width:143px" %)S31x-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 232 +|(% style="background-color:#4f81bd; color:white; width:143px" %)SE01-NB|(% style="width:103px" %)Temperature |(% style="width:102px" %)Humidity|(% style="width:157px" %)conduct|(% style="width:154px" %)dielectric_constant|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 233 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS20-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 234 +|(% style="background-color:#4f81bd; color:white; width:143px" %)DDS45-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% 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" %)DDS75-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 236 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NMDS120-NB|(% style="width:103px" %)distance|(% style="width:102px" %)Battery|(% style="width:157px" %)RSSI|(% style="width:154px" %) |(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 237 +|(% 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:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% colspan="1" rowspan="1" style="width:69px" %) 238 +|(% style="background-color:#4f81bd; color:white; width:143px" %)NLM01-NB|(% style="width:103px" %)Humidity|(% style="width:102px" %)Temperature|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% 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" %)NMDS200-NB|(% style="width:103px" %)distance1|(% style="width:102px" %)distance2|(% style="width:157px" %)Battery|(% style="width:154px" %)RSSI|(% style="width:153px" %) |(% style="width:151px" %) |(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 240 +|(% 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:154px" %)calc flag|(% style="width:153px" %)Battery|(% style="width:151px" %)RSSI|(% style="width:160px" %) |(% style="width:152px" %) |(% style="width:67px" %) |(% style="width:69px" %) 241 +|(% 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:154px" %)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" %)RSSI 242 +|(% 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:154px" %)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" %) 243 +|(% 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:154px" %)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" %) 244 +|(% 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:154px" %)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" %) 245 +|(% 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:154px" %)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" %) 246 +|(% 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:154px" %)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" %) 247 +|(% 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:154px" %)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" %) 237 237 238 -(% class="wikigeneratedid" %) 239 -== == 240 240 241 -== 3.4 Datacake == 242 242 243 -(% class="wikigeneratedid" %) 244 -=== === 251 +== 3.4 [[Datacake>>https://datacake.co/]] == 245 245 246 -=== 3.4.1 Define Product === 247 247 254 +(% class="wikigeneratedid" %) 255 +Dragino NB-IoT sensors has its template in **[[Datacake>>https://datacake.co/]]** Platform. There are two version for NB Sensor, 248 248 249 -Firstly, we need to set the MQTT mode to datacake, and we need to run(% style="color:blue" %)** AT+PRO=3,2**(%%). This command is set to datacake. After running the command, the device automatically sets the server address, port. 250 250 251 -By chosing to add the device under a (% style="color:blue" %)**"New Product"**(%%) you are required to give a name for this product. You can name it something like (% style="color:blue" %)**"My First MQTT Product"**. 258 +(% class="wikigeneratedid" %) 259 +As example for S31B-NB. there are two versions: **S31B-NB-1D and S31B-NB-GE.** 252 252 253 - [[image:image-20230802112413-14.png||height="1095"width="1302"]]261 +* (% 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. 254 254 263 +* (% 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. 255 255 256 -=== 3.4.2 Create Device === 257 257 258 258 259 - Inthesecond step you haveto define thedevicewhich should be added to the product.267 +=== 3.4.1 Create device === 260 260 261 -[[image:image-20230802112413-15.png||height="859" width="1290"]] 262 262 263 - Enter a name here(such as "My First MQTT Device") and complete the creation of the device by clicking on the (% style="color:blue" %)**"Next"**(%%)button.270 +(% style="color:blue" %)**Add Device**(%%) in DataCake. 264 264 272 +[[image:image-20230808162301-1.png]] 265 265 266 -=== 3.4.3 Create Database Fields === 267 267 275 +[[image:image-20230808162342-2.png]] 268 268 269 -After creating the device, it is listed in the table of the fleet view. Now open the device by clicking on the entry in the list. 270 270 271 - You will then see a device view with an empty dashboard. Now, the first thing we want to do is navigate to the Device configuration. To do this, use the tab bar and click on(% style="color:blue" %)**"Configuration"**.278 +(% style="color:blue" %)**Choose the correct model**(%%) from template. 272 272 273 -[[image:image-2023080 2112413-16.png||height="495" width="1310"]]280 +[[image:image-20230808162421-3.png]] 274 274 275 -[[image:image-20230802112413-17.png||height="741" width="1303"]] 276 276 277 - Tocreatea firstdatabaseeld, please click on"AddField"**(%%)buttonas marked in thecreenshotabove.283 +(% 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. 278 278 279 - This will openanothermodal askingfor somerequired input for your first field.285 +[[image:image-20230808163612-7.png]] 280 280 281 -[[image:image-2023080 2112413-18.png||height="878" width="1305"]]287 +[[image:image-20230808163035-5.png]] 282 282 283 -[[image:image-2023080 2112413-19.png]]289 +[[image:image-20230808163049-6.png]] 284 284 285 285 286 -=== 3.4. 4Setup Broker===292 +=== 3.4.2 Scan QR code to obtain data === 287 287 288 288 289 - Thebroker isrunning on mqtt.datacake.co onports (%style="color:blue"%)**1883 and 8883**(%%). Port1883 is unsecured and shouldnot beused in productionenvironments. Port8883 usesaCA signedservercertificate.295 +Users can use their phones or computers to scan QR codes to obtain device data information. 290 290 291 - You will needan access token to loginto theDatacakeMQTT Broker.You can use your ownpersonal token or create a token explicitly forindividual devices or groups of devices.297 +[[image:image-20230808170051-8.png||height="255" width="259"]] 292 292 293 - View your Personal Access Token299 +[[image:image-20230808170548-9.png]] 294 294 295 -You can view your own token via the User-Settings-Menu. You can reach this menu by clicking on (% style="color:blue" %)**"Edit Profile"**(%%) at the end of the list using the Workspace Selector: 296 296 297 - [[image:image-20230802112413-20.png]]302 +=== 3.4.2 AT command for connecting to DataCake === 298 298 299 299 300 -(% style="color:blue" %)** MQTT Client-ID**305 +(% style="color:blue" %)**AT+PRO=2,0** 301 301 302 -The Datacake Broker manages the client IDs internally. You do not need to worry about a client ID. If your client optionally supports the specification of a client ID, please leave this 303 -specification blank. Your client then creates a randomly generated ID. 307 +(% style="color:blue" %)**AT+SERVADDR=67.207.76.90,4445** 304 304 305 -* (% style="color:blue" %)**AT+CLIENT=“Any value”** 306 306 307 - * (% style="color:blue"%)**AT+UNAME=Token**310 +== 3.5 Node-Red (via MQTT) == 308 308 309 - * (% style="color:blue" %)**AT+PWD=Token**312 +=== 3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 310 310 311 -[[image:image-20230802112413-21.png]] 312 312 315 +Take S31-NB UDP protocol as an example. 313 313 314 - === 3.4.5 Create yourfirst Subscription===317 +Dragino provides input flow examples for the sensors. 315 315 319 +User can download the required JSON file through Dragino Node-RED input flow template. 316 316 317 - (%style="color:blue" %)**Subscribe**321 +Download sample JSON file link: [[https:~~/~~/www.dropbox.com/sh/mduw85jcuwsua22/AAAvwPhg9z6dLjJhmZjqBf_ma?dl=0>>url:https://www.dropbox.com/sh/mduw85jcuwsua22/AAAvwPhg9z6dLjJhmZjqBf_ma?dl=0]] 318 318 319 - Datais published accordingtothefollowing structure:(% style="color:blue" %)**dtck~/~//**(%%)** **323 +We can directly import the template. 320 320 321 - Subscribe to topics using this structureo receivemessagesvia MQTT when readings (via APIorMQTT)arrive inthe Datacake Cloud. Messages arepublished wheneverthere ischangeto a corresponding database field.325 +The templates for S31-NB and NB95S31B are the same. 322 322 323 323 324 -[[image:image-2023080 2112413-22.png]]328 +[[image:image-20230809173127-4.png]] 325 325 326 326 327 - [[image:image-20230802112413-23.png]]331 +Please select the NB95S31B template. 328 328 333 +[[image:image-20230809173310-5.png]] 329 329 330 -[[image:image-2023080 2112413-24.png]]335 +[[image:image-20230809173438-6.png]] 331 331 337 +[[image:image-20230809173800-7.png]] 332 332 333 -(% style="color:blue" %)**example:** 334 334 335 - AT+PUBTOPIC=dtck-pub/nbmattest/936c0db6-e9a5-4353-9fdb-3f63c8bfce7e/Temperature340 +Successfully imported template. 336 336 337 -[[image:image-2023080 2112413-25.png]]342 +[[image:image-20230809173835-8.png]] 338 338 339 339 340 - === 3.4.6 Defineublish Topic===345 +Users can set UDP port. 341 341 347 +[[image:image-20230809174053-9.png]] 342 342 343 -(% style="color:blue" %)**Publish** 344 344 345 -To upload data into the Datacake Cloud and into a specific device, you publish the data to the respective topic structure. 346 - 347 -Due to the nature of MQTT, the topic prefix differs as follows: (% style="color:blue" %)**dtck-pub~/~//** 348 - 349 -(% style="color:blue" %)**example:** 350 - 351 -AT+SUBTOPIC=dtck/nbmattest/936c0db6-e9a5-4353-9fdb-3f63c8bfce7e/Temperature 352 - 353 - 354 -=== 3.4.7 upload data === 355 - 356 - 357 -[[image:image-20230802112413-26.png]] 358 - 359 -[[image:image-20230802112413-27.png]] 360 - 361 -[[image:image-20230802112413-28.png]] 362 - 363 - 364 -== 3.5 Node-Red (via MQTT) == 365 - 366 -=== 3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 367 - 368 - 369 -[[image:image-20230802112413-29.png]] 370 - 371 - 372 -[[image:image-20230802112413-30.png]] 373 - 374 - 375 375 === 3.5.2 Simulate Connection === 376 376 377 377 378 - [[image:image-20230802112413-31.png]]353 +We have completed the configuration of UDP. We can try sending packets to node red. 379 379 355 +[[image:image-20230810083934-1.png]] 380 380 357 +[[image:image-20230810084048-2.png]] 358 + 381 381 === 3.5.3 Configure NB-IoT Sensors === 382 382 383 383 384 -* (% style="color:blue" %)**AT+PRO= 3,0(hex format) or3,5(json format)**(%%)mqttServer and Payload362 +* (% style="color:blue" %)**AT+PRO=2,0(hex format) or 2,1(json format) **(%%)** **~/~/ Set to UDP Server and Payload 385 385 386 -* (% style="color:blue" %)**AT+ CLIENT=anyvalue**364 +* (% style="color:blue" %)**AT+SERVADDR=xx.xx.xx.xx,port **(%%)** **~/~/ Set Server IP and port 387 387 388 -* (% style="color:blue" %)**AT+UNAME=any value** 389 389 390 -* (% style="color:blue" %)**AT+PWD=any value** 391 391 392 -* (% style="color:blue" %)**AT+PUBTOPIC=any value** 393 - 394 -* (% style="color:blue" %)**AT+SUBTOPIC=any value** 395 - 396 396 == 3.6 ThingsBoard.Cloud (via MQTT) == 397 397 398 398 === 3.6.1 Configure ThingsBoard === ... ... @@ -400,7 +400,7 @@ 400 400 ==== 3.6.1.1 Create Device ==== 401 401 402 402 403 -Create a New Device in [[ThingsBoard>>url:https://thingsboard.cloud/]]. 375 +Create a New Device in [[ThingsBoard>>url:https://thingsboard.cloud/]]. Record Device Name which is used for MQTT connection. 404 404 405 405 [[image:image-20230802112413-32.png]] 406 406 ... ... @@ -423,7 +423,7 @@ 423 423 424 424 [[image:image-20230802112413-34.png||height="734" width="1305"]] 425 425 426 -(% style="color:red" %)**Note:Our device payload is already human readable data. Therefore, users do not need to write decoders. Simply create by default.** 398 +(% style="color:red" %)**Note: Our device payload is already human readable data. Therefore, users do not need to write decoders. Simply create by default.** 427 427 428 428 429 429 ==== 3.6.1.3 MQTT Integration Setup ==== ... ... @@ -463,21 +463,18 @@ 463 463 464 464 (% style="color:blue" %)**AT Commands** 465 465 466 -* (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. 438 +* (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. 467 467 468 -* (% style="color:#037691" %)**AT+SUBTOPIC=device name ** (%%) **~-~->只需要 Device Name 吗?对的**440 +* (% style="color:#037691" %)**AT+SUBTOPIC=<device name>** 469 469 470 -* (% style="color:#037691" %)**AT+PUBTOPIC=device name ** (%%) **~-~->只需要 Device Name 吗?对的**442 +* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>** 471 471 472 - Users do notneed to fill in theient, username, and password. But theconfiguration information of the devicerequires setting the client, username, and password, which can beentered freely.** (软件自动填充为DeviceName 吧).这边不用提示了,客户不需要输入。(大部分客户还是会自己去设置这个的,提高安全性)**444 +* (% style="color:#037691" %)**AT+CLIENT=<device name> or User Defined** 473 473 474 -(% style="color: blue" %)**CLIENT:“Anyvalue”**446 +* (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 475 475 476 -(% style="color: blue" %)**UserName:“Any value”**448 +* (% style="color:#037691" %)**AT+PWD=<device name> or User Defined** 477 477 478 -(% style="color:blue" %)**Password:“Any value”** 479 - 480 - 481 481 Test Uplink by click the button for 1 second 482 482 483 483 [[image:image-20230802112413-41.png]] ... ... @@ -504,73 +504,84 @@ 504 504 [[image:image-20230802112413-46.png]] 505 505 506 506 507 - On theConnectionProfilewindow,set thefollowing information:(这边加一个截图)**476 +The device needs to enable the TLS mode and set the (% style="color:blue" %)**AT+TLSMOD=1,0**(%%) command. 508 508 509 - *(% style="color:blue" %)**ProfileName:“Anyname”**478 +(% style="color:blue" %)**On the Connection Profile window, set the following information:** 510 510 511 -* (% style="color: blue" %)**BrokerAddress:mqtt.tago.io**480 +* (% style="color:#037691" %)**Profile Name: “Any name”** 512 512 513 -* (% style="color: blue" %)**BrokerPort:1883**482 +* (% style="color:#037691" %)**Broker Address: mqtt.tago.io** 514 514 515 -* (% style="color: blue" %)**ClientID:“Any value”**484 +* (% style="color:#037691" %)**Broker Port: 8883** 516 516 517 - Onthesection Usercredentials,setthe followinginformation:**(这边加一个截图)**486 +* (% style="color:#037691" %)**Client ID: “Any value”** 518 518 519 - *(% style="color:blue" %)**UserName:“Anyvalue”**(%%) ~/~/ Tago validatesyour userbythetoken only488 +(% style="color:blue" %)**On the section User credentials, set the following information:** 520 520 521 -* (% style="color: blue"%)**Password:“Yourdevice token”**490 +* (% style="color:#037691" %)**User Name: “Any value”** (%%) **~/~/ Tago validates your user by the token only** 522 522 523 -* (% style="color: blue" %)**PUBTOPIC: “Anyvalue”**492 +* (% style="color:#037691" %)**Password: “Your device token”** 524 524 525 -* (% style="color: blue" %)**SUBTOPIC: “Any value”**494 +* (% style="color:#037691" %)**PUBTOPIC: “Any value”** 526 526 527 - ===3.7.2SimulatewithMQTT.fx ===496 +* (% style="color:#037691" %)**SUBTOPIC: “Any value”** 528 528 498 +(% style="color:blue" %)**AT command:** 529 529 530 - [[image:image-20230802112413-47.png]]500 +* (% style="color:#037691" %)**AT+PRO=3,0 or 3,5 ** (%%) **~/~/ hex format or json format** 531 531 532 - [[image:image-20230802112413-48.png]]502 +* (% style="color:#037691" %)**AT+SUBTOPIC=<device name>or User Defined** 533 533 534 - Users can run the(% style="color:blue" %)**AT+PRO=3,5**(%%) command, and thepayload will beconvertedto**JSON format**.504 +* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>or User Defined** 535 535 506 +* (% style="color:#037691" %)**AT+CLIENT=<device name> or User Defined** 536 536 537 - [[image:image-20230802112413-49.png]]508 +* (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 538 538 510 +* (% style="color:#037691" %)**AT+PWD=“Your device token”** 539 539 540 -=== 3.7.3 tago data === 541 541 542 542 543 - [[image:image-20230802112413-50.png]]514 +=== 3.7.2 Simulate with MQTT.fx === 544 544 545 -[[image:image-20230802112413-51.png]] 546 546 517 +[[image:image-20230802112413-52.png]] 547 547 548 -=== 3.7.4 TLS mode === 549 549 520 +[[image:image-20230808105300-2.png]] 550 550 551 -Users can choose to use (% style="color:blue" %)**SSL/TLS**(%%) mode. 552 552 553 - On the SSL/TLSsection,checktheoption **EnableSSL/TLS**, andclickOK.523 +Users can run the (% style="color:blue" %)**AT+PRO=3,5**(%%) command, and the payload will be converted to **JSON format**. 554 554 555 - The device needs to enablethe TLSmodeand set the (% style="color:blue" %)**AT+TLSMOD=1,0**(%%) command.525 +[[image:image-20230808105217-1.png]] 556 556 557 - * (% style="color:blue" %)**Profile Name:“Any name”**527 +[[image:image-20230808105329-3.png]] 558 558 559 -* (% style="color:blue" %)**Broker Address: mqtt.tago.io** 560 560 561 - * (% style="color:blue"%)**BrokerPort:8883**530 +=== 3.7.3 tago data === 562 562 563 -* (% style="color:blue" %)**Client ID: “Any value”** 564 564 565 - * (% style="color:blue" %)**User Name: “Any value”** (%%) ~/~/ Tago validates your user by the tokenonly533 +[[image:image-20230802112413-50.png]] 566 566 567 - * (% style="color:blue"%)**Password: “Your devicetoken”**535 +[[image:image-20230802112413-51.png||height="184" width="696"]] 568 568 569 -* (% style="color:blue" %)**PUBTOPIC: “Any value”** 570 570 571 - * (% style="color:blue"%)**SUBTOPIC: “Any value”**538 +== 3.8 TCP Connection == 572 572 573 -[[image:image-20230802112413-52.png]] 574 574 541 +(% style="color:blue" %)**AT command:** 575 575 576 - 543 +* (% style="color:#037691" %)**AT+PRO=4,0 ** (%%) ~/~/ Set to use TCP protocol to uplink(HEX format) 544 + 545 +* (% style="color:#037691" %)**AT+PRO=4,1 ** (%%) ~/~/ Set to use TCP protocol to uplink(JSON format) 546 + 547 +* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5600 ** (%%) ~/~/ to set TCP server address and port 548 + 549 +(% style="color:blue" %)**Sensor Console Output when Uplink:** 550 + 551 +[[image:image-20230807233631-1.png]] 552 + 553 + 554 +(% style="color:blue" %)**See result in TCP Server:** 555 + 556 +[[image:image-20230807233631-2.png]]
- image-20230807233631-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.9 KB - Content
- image-20230807233631-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +9.6 KB - Content
- image-20230808105217-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +68.5 KB - Content
- image-20230808105300-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +70.1 KB - Content
- image-20230808105329-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.1 KB - Content
- image-20230808162301-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +76.9 KB - Content
- image-20230808162342-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +63.8 KB - Content
- image-20230808162421-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +59.2 KB - Content
- image-20230808162727-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.2 KB - Content
- image-20230808163035-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +71.6 KB - Content
- image-20230808163049-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +61.5 KB - Content
- image-20230808163612-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +53.4 KB - Content
- image-20230808170051-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.5 KB - Content
- image-20230808170548-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.1 KB - Content
- image-20230808205045-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +373.9 KB - Content
- image-20230809165928-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +74.4 KB - Content
- image-20230809170225-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +39.9 KB - Content
- image-20230809170532-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +38.7 KB - Content
- image-20230809173127-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.5 KB - Content
- image-20230809173310-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +51.9 KB - Content
- image-20230809173438-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +41.0 KB - Content
- image-20230809173800-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.8 KB - Content
- image-20230809173835-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +88.8 KB - Content
- image-20230809174053-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +58.0 KB - Content
- image-20230809180523-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.9 KB - Content
- image-20230810083934-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +85.1 KB - Content
- image-20230810084048-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.David - Size
-
... ... @@ -1,0 +1,1 @@ 1 +63.7 KB - Content