Changes for page General Manual for -CB , -CS models
Last modified by Mengting Qiu on 2025/03/08 11:35
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,356 +1,393 @@ 1 - 1 +~(% class="wikigeneratedid" id="HTableofContents:" %) 2 +~*~*Table of Contents:~*~* 2 2 4 +~{~{toc/}} 3 3 4 -(% class="wikigeneratedid" id="HTableofContents:" %) 5 -**Table of Contents:** 6 6 7 -{{toc/}} 8 8 9 -= 1. The use of this guideline = 10 10 11 - Thisconfigure instruction is for Dragino NB-IoT models with -CB or -CS suffix, for example DDS75-CB. Thesemodelsusethe same NB-IoTModule **[[BG95-M2>>https://www.dropbox.com/sh/3ilyaswz4odgaru/AADR86cAgL9UGlmLuEH-UZgla?st=x1ry6v5j&dl=0]]**and has the same software structure. The have the same configureinstruction todifferent IoT servers. Use can follow theinstruction hereto see how to configure to connect to those servers.9 +~= 1. The use of this guideline = 12 12 13 13 14 - =2.Attach Network=12 +This configure instruction is for Dragino NB-IoT models with -NB or -NS suffix, for example DDS75-NB. These models use the same NB-IoT Module ~*~*~[~[BC660K-GL>>https:~/~/www.quectel.com/product/lpwa-bc660k-gl-nb2]]~*~* and has the same software structure. The have the same configure instruction to different IoT servers. Use can follow the instruction here to see how to configure to connect to those servers. 15 15 16 -== 2.1 General Configure to attach network == 17 17 18 - Toattacheend nodes toNB-IoT or LTE-M Network,You need to:15 +~= 2. Attach Network = 19 19 20 -1. Get a NB-IoT or LTE-M SIM card from Service Provider. (Not the same as the SIM card we use in mobile phone) 21 -1. Power Off End Node ( See below for the power off/on position) 22 -1. Insert the SIM card to Sensor. ( See below for direction) 23 -1. Power On End Node 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>), example AT+APN=iot.1nce.net 17 +~== 2.1 General Configure to attach network == 25 25 26 -[[image:image-20240208102804-1.png||height="286" width="696"]] 27 27 28 - [[image:image-20230808205045-1.png||height="293"width="438"]]20 +To attache NB-IoT sensors to NB-IoT Network, You need to: 29 29 30 -After doing above, the end nodes should be able to attach to NB-IoT network . 22 +~1. Get a NB-IoT SIM card from Service Provider. (Not the same as the SIM card we use in mobile phone) 23 +~1. Power Off End Node ( See below for the power off/on position) 24 +~1. Insert the SIM card to Sensor. ( See below for direction) 25 +~1. Power On End Node 26 +~1. ~[~[Configure APN>>http:~/~/wiki.dragino.com/xwiki/bin/view/Main/How%20to%20configure%20APN%20in%20the%20node/]] in the sensor (AT+APN=<APN>), example AT+APN=iot.1nce.net 31 31 32 - The -CB and -CSmodels support (% style="color:blue" %)**LTE Cat NB2and LTE-M (CAT-M1)**(%%), withbelowfrequency band: multiple frequency bands of28 +~[~[image~:image-20240208102804-1.png||height="286" width="696"]] 33 33 34 -~ -~-(% style="color:blue" %)** CAT-NB2: B1/B2/B3/B4/B5/B8/B12/B13/B18/B19/B20/B25/B28/B66/B71/B85**(%%).30 +~[~[image~:image-20230808205045-1.png||height="293" width="438"]] 35 35 36 - ~-~-(%style="color:blue"%)**CAT-M1:B1/B2/B3/B4/B5/B8/B12/B13/B18/B19/B20/B25/B26/B27/B28/B66/B85**(%%).32 +After doing above, the NB-IoT Sensors should be able to attach to NB-IoT network . 37 37 38 -Make sure you use a the NB-IoT or LTE-MSIM card.34 +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. 39 39 40 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width: 1134px" %)41 -|(% 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:4 06px" %)**NB-IoT Coverage**|(% style="background-color:#4f81bd; color:white; width:351px" %)**LTE-MCoverage**|(% style="background-color:#4f81bd; color:white; width:120px" %)**Comments**42 -|(% style="width:117px" %)**[[1NCE>>https://1nce.com]]**|(% style="width:151px" %)iot.1nce.net|(% style="width:4 06px" %)(((43 -**[[Coverage Reference Link>>https://1nce.com/en-ap/1nce-connect]]** 36 +~(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:878px" %) 37 +~|~(% 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~*~* 38 +~|~(% style="width:117px" %)~*~*~[~[1NCE>>https:~/~/1nce.com]]~*~*|~(% style="width:151px" %)iot.1nce.net|~(% style="width:474px" %)~(~(~( 39 +~*~*~[~[Coverage Reference Link>>https:~/~/1nce.com/en-ap/1nce-connect]]~*~* 44 44 45 -Austria, Belgium, Bulgaria, China, Croatia, Czech Republic, Denmark, Estonia, Finland, Germany, Great Britain, Greece, Hungary, Ireland,Italy, Latvia, Malta, Netherlands, Norway, Portugal, Puerto Rico, Russia, Slovak,Republic, Slovenia, Spain, Sweden, Switzerland, Taiwan, USA, US Virgin Islands 46 -)))|(% style="width:351px" %)((( 47 -Argentina, Austria, Australia, Belgium, Canada, Denmark,Estonia, Finland, France, Germany, Great Britain, Hungary, Ireland, Japan,Jersey, Korea, Repiblic of, Latvia, Luxembourg, Mexico, Netherlands, New Zealand, Norway, Poland, Puerto Rico, Romania, Spain, Sweden, Switzerland,Taiwan, USA, US Virgin Islands. 48 -)))|(% style="width:120px" %)UK: Band20 49 -|(% style="width:117px" %)China Mobile|(% style="width:151px" %)No need configure|(% style="width:406px" %)China Mainland, HongKong|(% style="width:351px" %) |(% style="width:120px" %) 50 -|(% style="width:117px" %)China Telecom|(% style="width:151px" %)ctnb|(% style="width:406px" %)China Mainland|(% style="width:351px" %) |(% style="width:120px" %) 41 +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, UK, US Virgin Islands 42 +~)~)~)|~(% style="width:135px" %)UK: Band20 43 +~|~(% style="width:117px" %)China Mobile|~(% style="width:151px" %)No need configure|~(% style="width:474px" %)China Mainland, HongKong|~(% style="width:135px" %) 44 +~|~(% style="width:117px" %)China Telecom|~(% style="width:151px" %)ctnb|~(% style="width:474px" %)China Mainland|~(% style="width:135px" %) 51 51 52 -(% class="wikigeneratedid" %) 53 -== == 46 +~== 2.2 Speed Up Network Attach time == 54 54 55 -== 2.2 Speed Up Network Attach time == 56 56 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**.49 +BC660K-GL supports multi bands ~(% style="color:blue" %)~*~*B1/B2/B3/B4/B5/B8/B12/B13/B14/B17/B18/B19/B20/B25/B28/B66/B70/B85. ~*~*~(%%) 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~*~*. User can lock the band to specify band for its operator to make this faster. 58 58 51 +~(% style="color:#037691" %)~*~*AT+QBAND? ~*~*~(%%) ~~/~~/ Check what is the current used frequency band 52 +~(% style="color:#037691" %)~*~*AT+QBAND=1,4 ~*~*~(%%) ~~/~~/ Set to use 1 frequency band. Band4 53 +~(% style="color:#037691" %)~*~*Europe General~*~*~(%%) ~*~*AT+QBAND=2,8,20 ~*~* ~~/~~/ Set to use 2 frequency bands. Band 8 and Band 20 54 +~(% style="color:#037691" %)~*~*Global General~*~*~(%%) : ~*~*AT+QBAND=10,8,20,28,2,4,12,13,66,85,5~*~* 59 59 60 -Attache to 1NCE card for Australia use: 56 +~(% style="color:#037691" %)~*~*Verizon~*~*~(%%)~*~* ~*~* AT+QBAND=1,13 57 +~(% style="color:#037691" %)~*~*AT&T~*~*~(%%) AT+QBAND=3,12,4,2 58 +~(% style="color:#037691" %)~*~*Telstra~*~*~(%%) AT+QBAND=1,28 59 +~(% style="color:#037691" %)~*~*Softband~*~*~(%%) AT+QBAND=2,3,8 61 61 62 -* AT+COPS=1,2,"50501",8 63 -* AT+QCFG="band",0,0x8000000,0x8000000,1 61 +After connection is successful, user can use ~(% style="color:#037691" %)~*~*AT+QENG=0 ~*~*~(%%) to check which band is actually in used. 64 64 65 65 66 - After connectionis successful, user can use(% style="color:#037691"%)**AT+QENG="servingcell"**(%%)tocheckwhichband istuallyinused.64 +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/]]~*~* 67 67 68 -AT+QENG="servingcell" 69 -+QENG: "servingcell","NOCONN","eMTC","FD 70 -D",505,01,90D2C0B,258,9410,28,5,5,901A,-112,-17,-80,10,27 71 71 67 +~= 3. Configure to connect to different servers = 72 72 73 - Seebandsused for different provider:** [[NB-IoT Deployment , Bands, Operatorlist>>http://wiki.dragino.com/xwiki/bin/view/Main/NB-IoT%20Deployment%20%2C%20Bands%2C%20Operator%20list/]]**69 +~== 3.1 General UDP Connection == 74 74 75 -= 3. Configure to connect to different servers = 76 76 77 - == 3.1 GeneralUDPConnection ==72 +The NB-IoT Sensor can send packet to server use UDP protocol. 78 78 79 -The NB-IoT Sensor can send packet to server use UDP protocol. 80 80 81 -=== 3.1.1 75 +~=== 3.1.1 Simulate UDP Connection by PC tool === 82 82 83 -We can use PC tool to simulate UDP connection to make sure server works ok. 84 84 85 - [[image:image-20230802112413-1.png||height="468" width="1024"]]78 +We can use PC tool to simulate UDP connection to make sure server works ok. 86 86 87 - ===3.1.2ConfigureNB-IoT Sensor===80 +~[~[image~:image-20230802112413-1.png||height="468" width="1024"]] 88 88 89 -==== 3.1.2.1 AT Commands ==== 90 90 91 - (% style="color:blue" %)**AT Commands:**83 +~=== 3.1.2 Configure NB-IoT Sensor === 92 92 93 - * (% style="color:#037691" %)**AT+PRO=2,0**(%%) ~/~/ Set touse UDP protocol to uplink ,PayloadTypeselectHex payload85 +~==== 3.1.2.1 AT Commands ==== 94 94 95 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5601** (%%) ~/~/ Set UDP server address and port 96 96 97 - [[image:image-20230802112413-2.png]]88 +~(% style="color:blue" %)~*~*AT Commands:~*~* 98 98 99 - ====3.1.2.2UplinkExample====90 +~* ~(% style="color:#037691" %)~*~*AT+PRO=2,0~*~* ~(%%) ~~/~~/ Set to use UDP protocol to uplink ,Payload Type select Hex payload 100 100 101 - [[image:image-20230802112413-3.png]]92 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=120.24.4.116,5601~*~* ~(%%) ~~/~~/ Set UDP server address and port 102 102 103 - == 3.2 General MQTT Connection==94 +~[~[image~:image-20230802112413-2.png]] 104 104 105 -The NB-IoT Sensor can send packet to server use MQTT protocol. 106 106 107 - Belowarethe commands.97 +~==== 3.1.2.2 Uplink Example ==== 108 108 109 -(% style="color:blue" %)**AT Commands:** 110 110 111 - * (% style="color:#037691" %)**AT+PRO=3,0** (%%) ~/~/ Set to use MQTTprotocol to uplink, Payload Type select Hex payload.100 +~[~[image~:image-20230802112413-3.png]] 112 112 113 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,1883** (%%) ~/~/ Set MQTT server address and port 114 114 115 - *(%style="color:#037691" %)**AT+CLIENT=CLIENT**(%%) ~/~/ Setup the CLIENTofMQTT103 +~== 3.2 General MQTT Connection == 116 116 117 -* (% style="color:#037691" %)**AT+UNAME=UNAME** (%%) ~/~/ Set the username of MQTT 118 118 119 - * (% style="color:#037691" %)**AT+PWD=PWD**(%%) ~/~/ Sethe password ofMQTT106 +The NB-IoT Sensor can send packet to server use MQTT protocol. 120 120 121 - * (% style="color:#037691" %)**AT+PUBTOPIC=NSE01_PUB**(%%) ~/~/ Setthesending topicf MQTT108 +Below are the commands. 122 122 123 - *(% style="color:#037691" %)**AT+SUBTOPIC=NSE01_SUB**(%%) ~/~/ Set the subscriptiontopic of MQTT110 +~(% style="color:blue" %)~*~*AT Commands:~*~* 124 124 125 - [[image:image-20230802112413-4.png]]112 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0~*~* ~(%%) ~~/~~/ Set to use MQTT protocol to uplink, Payload Type select Hex payload. 126 126 127 - [[image:image-20230802112413-5.png||height="530" width="987"]]114 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=120.24.4.116,1883~*~* ~(%%) ~~/~~/ Set MQTT server address and port 128 128 129 -(% style="color: red" %)**Notice: MQTTprotocolhas a much higher power consumption compare with UDP/CoAPprotocol. Please checkthe power analyze documentand adjust theuplink period to a suitable interval.**116 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=CLIENT~*~* ~(%%) ~~/~~/ Set up the CLIENT of MQTT 130 130 131 - ==3.3[[ThingSpeak>>url:https://thingspeak.com/]] (viaMQTT) ==118 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=UNAME~*~* ~(%%) ~~/~~/ Set the username of MQTT 132 132 133 - ===3.3.1Get MQTTCredentials===120 +~* ~(% style="color:#037691" %)~*~*AT+PWD=PWD~*~* ~(%%) ~~/~~/ Set the password of MQTT 134 134 135 - [[ThingSpeak>>url:https://thingspeak.com/]] connectionuses MQTTonnection.Soweneedto getMQTT Credentials first. YouneedtoointMQTTDevices to ThingSpeak Channel as well.122 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=NSE01_PUB~*~* ~(%%) ~~/~~/ Set the sending topic of MQTT 136 136 137 - [[image:image-20230802112413-6.png||height="336" width="925"]]124 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=NSE01_SUB~*~* ~(%%) ~~/~~/ Set the subscription topic of MQTT 138 138 139 -[[image:image-20230802112413- 7.png]]126 +~[~[image~:image-20230802112413-4.png]] 140 140 141 - ===3.3.2 SimulatewithMQTT.fx===128 +~[~[image~:image-20230802112413-5.png||height="530" width="987"]] 142 142 143 - ====3.3.2.1 EstablishMQTTConnection====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.~*~* 144 144 145 -After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 146 146 147 -[[i mage:image-20230802112413-8.png]]133 +~== 3.3 ~[~[ThingSpeak>>url:https:~/~/thingspeak.com/]] (via MQTT) == 148 148 149 - * (% style="color:#037691" %)**BrokerAddress:**(%%) mqtt3.thingspeak.com135 +~=== 3.3.1 Get MQTT Credentials === 150 150 151 -* (% style="color:#037691" %)**Broker Port:**(%%) 1883 152 152 153 - * (%style="color:#037691" %)**ClientID:**(%%) <YourThingSpeakMQTTClientID>138 +~[~[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. 154 154 155 - * (% style="color:#037691" %)**User Name:**(%%) <Your ThingSpeakMQTT User Name>140 +~[~[image~:image-20230802112413-6.png||height="336" width="925"]] 156 156 157 - * (% style="color:#037691" %)**Password:**(%%) <Your ThingSpeak MQTT Password>142 +~[~[image~:image-20230802112413-7.png]] 158 158 159 -==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 160 160 161 - [[image:image-20230802112413-9.png]]145 +~=== 3.3.2 Simulate with MQTT.fx === 162 162 163 - [[image:image-20230802112413-10.png]]147 +~==== 3.3.2.1 Establish MQTT Connection ==== 164 164 165 -(% style="color:blue" %)**In MQTT.fx, we can publish below info:** 166 166 167 - * (% style="color:#037691" %)**Topic:**(%%) channels/YOUR_CHANNEL_ID/publish150 +After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 168 168 169 - * (% style="color:#037691" %)**Payload:**(%%) field1=63&field2=67&status=MQTTPUBLISH152 +~[~[image~:image-20230802112413-8.png]] 170 170 171 - Where63and 67 arethe valuetobe published tofield1 & field2.154 +~* ~(% style="color:#037691" %)~*~*Broker Address:~*~*~(%%) mqtt3.thingspeak.com 172 172 173 -(% style="color: blue" %)**Result:156 +~* ~(% style="color:#037691" %)~*~*Broker Port:~*~*~(%%) 1883 174 174 175 - [[image:image-20230802112413-11.png||height="539" width="901"]]158 +~* ~(% style="color:#037691" %)~*~*Client ID:~*~*~(%%) <Your ThingSpeak MQTT ClientID> 176 176 177 - ===3.3.3ConfigureNB-IoTnsorfor connection ===160 +~* ~(% style="color:#037691" %)~*~*User Name:~*~*~(%%) <Your ThingSpeak MQTT User Name> 178 178 179 - ====3.3.3.1AT Commands:====162 +~* ~(% style="color:#037691" %)~*~*Password:~*~*~(%%) <Your ThingSpeak MQTT Password> 180 180 181 - Inthe NB-IoT, we can runbelow commands so to publishchannelslike MQTT.fx164 +~==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 182 182 183 -* (% style="color:blue" %)**AT+PRO=3,1** (%%) ~/~/ Set to use ThingSpeak Server and Related Payload 184 184 185 - * (% style="color:blue" %)**AT+CLIENT=<Your ThingSpeak MQTT ClientID>**167 +~[~[image~:image-20230802112413-9.png]] 186 186 187 - * (% style="color:blue" %)**AT+UNAME=<Your ThingSpeak MQTT User Name>**169 +~[~[image~:image-20230802112413-10.png]] 188 188 189 -* (% style="color:blue" %)**AT+PWD=<Your ThingSpeak MQTT Password>** 190 190 191 - *(% style="color:blue" %)**AT+PUBTOPIC=<YOUR_CHANNEL_ID>**172 +~(% style="color:blue" %)~*~*In MQTT.fx, we can publish below info:~*~* 192 192 193 -* (% style="color: blue" %)**AT+SUBTOPIC=<YOUR_CHANNEL_ID>**174 +~* ~(% style="color:#037691" %)~*~*Topic:~*~*~(%%) channels/YOUR_CHANNEL_ID/publish 194 194 195 - ====3.3.3.2UplinkExamples====176 +~* ~(% style="color:#037691" %)~*~*Payload:~*~*~(%%) field1=63&field2=67&status=MQTTPUBLISH 196 196 197 - [[image:image-20230816201942-1.png]]178 +Where 63 and 67 are the value to be published to field1 & field2. 198 198 199 -For SE01-NB 200 200 201 - ForDDS20-NB181 +~(% style="color:blue" %)~*~*Result: ~*~* 202 202 203 - For DDS45-NB183 +~[~[image~:image-20230802112413-11.png||height="539" width="901"]] 204 204 205 -For DDS75-NB 206 206 207 - ForMDS120-NB186 +~=== 3.3.3 Configure NB-IoT Sensor for connection === 208 208 209 - ForSPH01-NB188 +~==== 3.3.3.1 AT Commands: ==== 210 210 211 -For NLM01-NB 212 212 213 - ForNMDS200-NB191 +In the NB-IoT, we can run below commands so to publish the channels like MQTT.fx 214 214 215 - ForCPN01-NB193 +~* ~(% style="color:blue" %)~*~*AT+PRO=3,1~*~* ~(%%) ~~/~~/ Set to use ThingSpeak Server and Related Payload 216 216 217 - ForDS03A-NB195 +~* ~(% style="color:blue" %)~*~*AT+CLIENT=<Your ThingSpeak MQTT ClientID>~*~* 218 218 219 - For SN50V3-NB197 +~* ~(% style="color:blue" %)~*~*AT+UNAME=<Your ThingSpeak MQTT User Name>~*~* 220 220 221 - ====3.3.3.3Map fieldso sensorvalue ====199 +~* ~(% style="color:blue" %)~*~*AT+PWD=<Your ThingSpeak MQTT Password>~*~* 222 222 223 - WhenNB-IoTsensor uploadto ThingSpeak. The payload already specify which fileds related towhich sensorvalue.Use need to create fileds inChannels Settings. with name so to see the value correctly.201 +~* ~(% style="color:blue" %)~*~*AT+PUBTOPIC=<YOUR_CHANNEL_ID>~*~* 224 224 225 - [[image:image-20230802112413-12.png||height="504"width="1011"]]203 +~* ~(% style="color:blue" %)~*~*AT+SUBTOPIC=<YOUR_CHANNEL_ID>~*~* 226 226 227 - [[image:image-20230802112413-13.png||height="331"width="978"]]205 +~==== 3.3.3.2 Uplink Examples ==== 228 228 229 -Below is the NB-IoT Product Table show the mapping. 230 230 231 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1424px" %) 232 -|(% 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 233 -|(% 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" %) 234 -|(% 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" %) 235 -|(% 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" %) 236 -|(% 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" %) 237 -|(% 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" %) 238 -|(% 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" %) 239 -|(% 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" %) 240 -|(% 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" %) 241 -|(% 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" %) 242 -|(% 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" %) 243 -|(% 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 244 -|(% 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" %) 245 -|(% 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" %) 246 -|(% 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" %) 247 -|(% 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" %) 248 -|(% 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" %) 249 -|(% 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" %) 208 +~[~[image~:image-20230816201942-1.png]] 250 250 251 - == 3.4 [[Datacake>>https://datacake.co/]] ==210 +For SE01-NB 252 252 253 -(% class="wikigeneratedid" %) 254 -Dragino NB-IoT sensors has its template in **[[Datacake>>https://datacake.co/]]** Platform. There are two version for NB Sensor, 212 +For DDS20-NB 255 255 256 -(% class="wikigeneratedid" %) 257 -As example for S31B-NB. there are two versions: **S31B-NB-1D and S31B-NB-GE.** 214 +For DDS45-NB 258 258 259 - * (% 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.216 +For DDS75-NB 260 260 261 - * (% 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.218 +For NMDS120-NB 262 262 263 - === 3.4.1Fordevice Already has template ===220 +For SPH01-NB 264 264 265 - ==== 3.4.1.1 Create Device ====222 +For NLM01-NB 266 266 267 - (% style="color:blue" %)**AddDevice**(%%) in DataCake.224 +For NMDS200-NB 268 268 269 - [[image:image-20230808162301-1.png||height="453" width="952"]]226 +For CPN01-NB 270 270 271 - [[image:image-20230808162342-2.png||height="541" width="952"]]228 +For DS03A-NB 272 272 273 - (% style="color:blue" %)**Choose the correct model**(%%) from template.230 +For SN50V3-NB 274 274 275 -[[image:image-20230808162421-3.png]] 276 276 277 - (% style="color:blue"%)**Fill Device ID**(%%).The deviceID needsbefilled inwith IMEI, and a prefix of(%style="color:blue"%)** 'f' **(%%)needs to be added.233 +~==== 3.3.3.3 Map fields to sensor value ==== 278 278 279 -[[image:image-20230808163612-7.png||height="549" width="952"]] 280 280 281 - [[image:image-20230808163035-5.png]]236 +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. 282 282 283 -[[image:image-20230808163049-6.png||height="544" width="926"]] 284 284 285 - === 3.4.2 For Devicealready registeredin DataCakebefore shipped==239 +~[~[image~:image-20230802112413-12.png||height="504" width="1011"]] 286 286 287 - ====3.4.2.1ScanQR Code toget thedeviceinfo====241 +~[~[image~:image-20230802112413-13.png||height="331" width="978"]] 288 288 243 + 244 +Below is the NB-IoT Product Table show the mapping. 245 + 246 +~(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1424px" %) 247 +~|~(% 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 248 +~|~(% 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" %) 249 +~|~(% 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" %) 250 +~|~(% 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" %) 251 +~|~(% 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" %) 252 +~|~(% 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" %) 253 +~|~(% 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" %) 254 +~|~(% 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" %) 255 +~|~(% 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" %) 256 +~|~(% 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" %) 257 +~|~(% 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" %) 258 +~|~(% 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 259 +~|~(% 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" %) 260 +~|~(% 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" %) 261 +~|~(% 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" %) 262 +~|~(% 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" %) 263 +~|~(% 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" %) 264 +~|~(% 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" %) 265 + 266 +~== 3.4 ~[~[Datacake>>https:~/~/datacake.co/]] == 267 + 268 + 269 +~(% class="wikigeneratedid" %) 270 +Dragino NB-IoT sensors has its template in ~*~*~[~[Datacake>>https:~/~/datacake.co/]]~*~* Platform. There are two version for NB Sensor, 271 + 272 + 273 +~(% class="wikigeneratedid" %) 274 +As example for S31B-NB. there are two versions: ~*~*S31B-NB-1D and S31B-NB-GE.~*~* 275 + 276 +~* ~(% 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. 277 + 278 +~* ~(% 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. 279 + 280 +~=== 3.4.1 For device Already has template === 281 + 282 +~==== 3.4.1.1 Create Device ==== 283 + 284 +~(% style="color:blue" %)~*~*Add Device~*~*~(%%) in DataCake. 285 + 286 +~[~[image~:image-20230808162301-1.png||height="453" width="952"]] 287 + 288 + 289 +~[~[image~:image-20230808162342-2.png||height="541" width="952"]] 290 + 291 + 292 +~(% style="color:blue" %)~*~*Choose the correct model~*~*~(%%) from template. 293 + 294 +~[~[image~:image-20230808162421-3.png]] 295 + 296 + 297 +~(% 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. 298 + 299 +~[~[image~:image-20230808163612-7.png||height="549" width="952"]] 300 + 301 +~[~[image~:image-20230808163035-5.png]] 302 + 303 +~[~[image~:image-20230808163049-6.png||height="544" width="926"]] 304 + 305 + 306 +~=== 3.4.2 For Device already registered in DataCake before shipped === 307 + 308 +~==== 3.4.2.1 Scan QR Code to get the device info ==== 309 + 310 + 289 289 Users can use their phones or computers to scan QR codes to obtain device data information. 290 290 291 -[[image:image-20230808170051-8.png||height="255" width="259"]] 313 +~[~[image~:image-20230808170051-8.png||height="255" width="259"]] 292 292 293 -[[image:image-20230808170548-9.png]] 315 +~[~[image~:image-20230808170548-9.png]] 294 294 295 -==== 3.4.2.2 Claim Device to User Account ==== 296 296 318 +~==== 3.4.2.2 Claim Device to User Account ==== 319 + 320 + 297 297 By Default, the device is registered in Dragino's DataCake Account. User can Claim it to his account. 298 298 299 -=== 3.4.3 Manual Add Decoder in DataCake ( don't use the template in DataCake) === 300 300 301 - **Step1:Add a device**324 +~=== 3.4.3 Manual Add Decoder in DataCake ( don't use the template in DataCake) === 302 302 303 -[[image:image-20240129170024-1.png||height="330" width="900"]] 304 304 305 -**Step 2:Choose yourdevicetype,pleaseselectdragino NB-IOT device**327 +~*~*Step1: Add a device~*~* 306 306 307 -[[image:image-202401291702 16-2.png||height="534" width="643"]]329 +~[~[image~:image-20240129170024-1.png||height="330" width="900"]] 308 308 309 -**Step3: Choose to create a new device** 310 310 311 - [[image:image-20240129170539-3.png||height="459"width="646"]]332 +~*~*Step2: Choose your device type,please select dragino NB-IOT device~*~* 312 312 313 - **Step4:Fill inthedeviceID of your NB device**334 +~[~[image~:image-20240129170216-2.png||height="534" width="643"]] 314 314 315 -[[image:image-20240202111546-1.png||height="378" width="651"]] 316 316 317 -**Step 5:Pleaseselectyourdevice plan according to your needsand completethe creationof the device**337 +~*~*Step3: Choose to create a new device~*~* 318 318 319 -[[image:image-2024012917 1236-6.png||height="450" width="648"]]339 +~[~[image~:image-20240129170539-3.png||height="459" width="646"]] 320 320 321 -**Step6: Please add the decoder at the payload decoder of the device configuration.** 322 322 323 -** Decoderlocation:**[[dragino-end-node-decoder/Datacake-Dragino_NBat main · dragino/dragino-end-node-decoder(github.com)>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/Datacake-Dragino_NB]]342 +~*~*Step4: Fill in the device ID of your NB device~*~* 324 324 325 -[[image:image-20240 129172056-7.png||height="457" width="816"]]344 +~[~[image~:image-20240202111546-1.png||height="378" width="651"]] 326 326 327 -[[image:image-20240129173116-9.png||height="499" width="814"]] 328 328 329 -**Step 7:Addthe outputofthe decoderasa field**347 +~*~*Step5: Please select your device plan according to your needs and complete the creation of the device~*~* 330 330 331 -[[image:image-2024012917 3541-10.png||height="592" width="968"]]349 +~[~[image~:image-20240129171236-6.png||height="450" width="648"]] 332 332 333 -**Step8: Customize the dashboard and use fields as parameters of the dashboard** 334 334 335 - [[image:image-20240129174518-11.png||height="147"width="1042"]]352 +~*~*Step6: Please add the decoder at the payload decoder of the device configuration.~*~* 336 336 337 -[[ image:image-20240129174657-12.png||height="538" width="916"]]354 +~*~*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]] 338 338 339 -[[image:image-2024012917 4840-13.png||height="536" width="750"]]356 +~[~[image~:image-20240129172056-7.png||height="457" width="816"]] 340 340 341 - === 3.4.4 For device havenot configured to connect to DataCake===358 +~[~[image~:image-20240129173116-9.png||height="499" width="814"]] 342 342 343 -(% class="lead" %) 360 + 361 +~*~*Step7: Add the output of the decoder as a field~*~* 362 + 363 +~[~[image~:image-20240129173541-10.png||height="592" width="968"]] 364 + 365 + 366 +~*~*Step8: Customize the dashboard and use fields as parameters of the dashboard~*~* 367 + 368 +~[~[image~:image-20240129174518-11.png||height="147" width="1042"]] 369 + 370 +~[~[image~:image-20240129174657-12.png||height="538" width="916"]] 371 + 372 +~[~[image~:image-20240129174840-13.png||height="536" width="750"]] 373 + 374 + 375 +~=== 3.4.4 For device have not configured to connect to DataCake === 376 + 377 + 378 +~(% class="lead" %) 344 344 Use AT command for connecting to DataCake 345 345 346 -(% style="color:blue" %)**AT+PRO=2,0** 381 +~(% style="color:blue" %)~*~*AT+PRO=2,0~*~* 347 347 348 -(% style="color:blue" %)**AT+SERVADDR=67.207.76.90,4445** 383 +~(% style="color:blue" %)~*~*AT+SERVADDR=67.207.76.90,4445~*~* 349 349 350 -== 3.5 Node-Red (via MQTT) == 351 351 352 -== =3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]]===386 +~== 3.5 Node-Red (via MQTT) == 353 353 388 +~=== 3.5.1 Configure ~[~[Node-Red>>http:~/~/wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 389 + 390 + 354 354 Take S31-NB UDP protocol as an example. 355 355 356 356 Dragino provides input flow examples for the sensors. ... ... @@ -357,329 +357,420 @@ 357 357 358 358 User can download the required JSON file through Dragino Node-RED input flow template. 359 359 360 -Download sample JSON file link: 397 +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]] 361 361 362 362 We can directly import the template. 363 363 364 364 The templates for S31-NB and NB95S31B are the same. 365 365 366 -[[image:image-20230809173127-4.png]] 367 367 404 +~[~[image~:image-20230809173127-4.png]] 405 + 406 + 368 368 Please select the NB95S31B template. 369 369 370 -[[image:image-20230809173310-5.png||height="558" width="926"]] 409 +~[~[image~:image-20230809173310-5.png||height="558" width="926"]] 371 371 372 -[[image:image-20230809173438-6.png]] 411 +~[~[image~:image-20230809173438-6.png]] 373 373 374 -[[image:image-20230809173800-7.png]] 413 +~[~[image~:image-20230809173800-7.png]] 375 375 415 + 376 376 Successfully imported template. 377 377 378 -[[image:image-20230809173835-8.png||height="515" width="860"]] 418 +~[~[image~:image-20230809173835-8.png||height="515" width="860"]] 379 379 420 + 380 380 Users can set UDP port. 381 381 382 -[[image:image-20230809174053-9.png]] 423 +~[~[image~:image-20230809174053-9.png]] 383 383 384 -=== 3.5.2 Simulate Connection === 385 385 426 +~=== 3.5.2 Simulate Connection === 427 + 428 + 386 386 We have completed the configuration of UDP. We can try sending packets to node red. 387 387 388 -[[image:image-20230810083934-1.png]] 431 +~[~[image~:image-20230810083934-1.png]] 389 389 390 -[[image:image-20230810084048-2.png||height="535" width="1052"]] 433 +~[~[image~:image-20230810084048-2.png||height="535" width="1052"]] 391 391 392 -=== 3.5.3 Configure NB-IoT Sensors === 393 393 394 -* (% style="color:#037691" %)**AT+PRO=3,0 or 3,5 ** (%%) **~/~/ hex format or json format** 395 -* (% style="color:#037691" %)**AT+SUBTOPIC=<device name>or User Defined** 396 -* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>or User Defined** 397 -* (% style="color:#037691" %)**AT+CLIENT=<device name> or User Defined** 398 -* (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 399 -* (% style="color:#037691" %)**AT+PWD=“Your device token”** 436 +~=== 3.5.3 Configure NB-IoT Sensors === 400 400 401 -== 3.6 ThingsBoard.Cloud (via MQTT) == 402 402 403 -=== 3.6.1 Configure ThingsBoard === 439 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0 or 3,5 ~*~* ~(%%) ~*~*~~/~~/ hex format or json format~*~* 440 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=<device name>or User Defined~*~* 441 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=<device name>or User Defined~*~* 442 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=<device name> or User Defined~*~* 443 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 444 +~* ~(% style="color:#037691" %)~*~*AT+PWD=“Your device token”~*~* 404 404 405 -== ==3.6.1.1Create Device====446 +~== 3.6 ThingsBoard.Cloud (via MQTT) == 406 406 407 - Createa New Device in[[ThingsBoard>>url:https://thingsboard.cloud/]].Record Device Name which is used for MQTT connection.448 +~=== 3.6.1 Configure ThingsBoard === 408 408 409 - [[image:image-20230802112413-32.png||height="583" width="1066"]]450 +~==== 3.6.1.1 Create Device ==== 410 410 411 -==== 3.6.1.2 Create Uplink & Downlink Converter ==== 412 412 413 - (% style="color:blue"%)**UplinkConverter**453 +Create a New Device in ~[~[ThingsBoard>>url:https:~/~/thingsboard.cloud/]]. Record Device Name which is used for MQTT connection. 414 414 415 - The purpose of the decoder function is to parsetheincoming data and metadata to a format that ThingsBoard can consume.deviceName and deviceType are required, while attributesand telemetry are optional. Attributes andelemetry are flat key-value objects. Nested objects are not supported.455 +~[~[image~:image-20230802112413-32.png||height="583" width="1066"]] 416 416 417 -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. 418 418 419 - [[image:image-20230802112413-33.png||height="597"width="1061"]]458 +~==== 3.6.1.2 Create Uplink & Downlink Converter ==== 420 420 421 -(% style="color:blue" %)**Downlink Converter** 422 422 423 - TheDownlinkconvertertransformingoutgoing RPC message and then the Integration sends it to external MQTT broke461 +~(% style="color:blue" %)~*~*Uplink Converter~*~* 424 424 425 - [[image:image-20230802112413-34.png||height="598" width="1063"]]463 +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. 426 426 427 -(% style="color: red" %)**Note: Ourdevicepayload is alreadyhumandabledata. Therefore,usersdo notneedo writedecoders.Simply createydefault.**465 +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. 428 428 429 - ====3.6.1.3MQTT IntegrationSetup====467 +~[~[image~:image-20230802112413-33.png||height="597" width="1061"]] 430 430 431 -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**; 432 432 433 - [[image:image-20230802112413-35.png||height="597"width="1062"]]470 +~(% style="color:blue" %)~*~*Downlink Converter~*~* 434 434 435 - *Thextstepsstodtherecently created uplink anddownlink converters;472 +The Downlink converter transforming outgoing RPC message and then the Integration sends it to external MQTT broke 436 436 437 -[[image:image-20230802112413-3 6.png||height="598" width="1062"]]474 +~[~[image~:image-20230802112413-34.png||height="598" width="1063"]] 438 438 439 - [[image:image-20230802112413-37.png||height="598"width="1064"]]476 +~(% style="color:red" %)~*~*Note: Our device payload is already human readable data. Therefore, users do not need to write decoders. Simply create by default.~*~* 440 440 441 -(% style="color:blue" %)**Add a topic filter:** 442 442 479 +~==== 3.6.1.3 MQTT Integration Setup ==== 480 + 481 + 482 +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~*~*; 483 + 484 +~[~[image~:image-20230802112413-35.png||height="597" width="1062"]] 485 + 486 + 487 +~* The next steps is to add the recently created uplink and downlink converters; 488 + 489 +~[~[image~:image-20230802112413-36.png||height="598" width="1062"]] 490 + 491 +~[~[image~:image-20230802112413-37.png||height="598" width="1064"]] 492 + 493 + 494 +~(% style="color:blue" %)~*~*Add a topic filter:~*~* 495 + 443 443 Consistent with the theme of the node setting. 444 444 445 -You 498 +You can also select an MQTT QoS level. We use MQTT QoS level 0 (At most once) by default; 446 446 447 -[[image:image-20230802112413-38.png||height="598" width="1064"]] 500 +~[~[image~:image-20230802112413-38.png||height="598" width="1064"]] 448 448 449 -=== 3.6.2 Simulate with MQTT.fx === 450 450 451 - [[image:image-20230802112413-39.png]]503 +~=== 3.6.2 Simulate with MQTT.fx === 452 452 453 -[[image:image-20230802112413-40.png||height="525" width="980"]] 454 454 455 - === 3.6.3 ConfigureNB-IoT Sensor ===506 +~[~[image~:image-20230802112413-39.png]] 456 456 457 - (% style="color:blue" %)**AT Commands**508 +~[~[image~:image-20230802112413-40.png||height="525" width="980"]] 458 458 459 -* (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. 460 460 461 - * (% style="color:#037691"%)**AT+SUBTOPIC=<devicename>**511 +~=== 3.6.3 Configure NB-IoT Sensor === 462 462 463 -* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>** 464 464 465 - *(% style="color:#037691" %)**AT+CLIENT=<device name>or User Defined**514 +~(% style="color:blue" %)~*~*AT Commands~*~* 466 466 467 -* (% style="color:#037691" %)**AT+ UNAME=<deviceme>orUserDefined**516 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,3 ~*~*~(%%)~*~* ~*~*~~/~~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. 468 468 469 -* (% style="color:#037691" %)**AT+P WD=<deviceor User Defined**518 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=<device name>~*~* 470 470 471 - TestUplinkbyclick thebutton forsecond520 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=<device name>~*~* 472 472 473 - [[image:image-20230802112413-41.png||height="496"width="828"]]522 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=<device name> or User Defined~*~* 474 474 475 - [[image:image-20230802112413-42.png]]524 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 476 476 477 - [[image:image-20230802112413-43.png||height="407"width="825"]]526 +~* ~(% style="color:#037691" %)~*~*AT+PWD=<device name> or User Defined~*~* 478 478 479 - == 3.7 [[Tago.io>>url:https://admin.tago.io/]] (via MQTT) ==528 +Test Uplink by click the button for 1 second 480 480 481 - === 3.7.1 Createdevice& GetCredentials===530 +~[~[image~:image-20230802112413-41.png||height="496" width="828"]] 482 482 483 - We use MQTT Connection to send data to[[Tago.io>>url:https://admin.tago.io/]]. Weneed to Create Deviceand Get MQTT Credentials first.532 +~[~[image~:image-20230802112413-42.png]] 484 484 485 -[[image:image-20230802112413-4 4.png]]534 +~[~[image~:image-20230802112413-43.png||height="407" width="825"]] 486 486 487 -[[image:image-20230802112413-45.png]] 488 488 489 - Gotothe Device section and create a device. Then, gotothesectionokensand copy your device-token.537 +~== 3.7 ~[~[Tago.io>>url:https:~/~/admin.tago.io/]] (via MQTT) == 490 490 491 - [[image:image-20230802112413-46.png]]539 +~=== 3.7.1 Create device & Get Credentials === 492 492 493 -The device needs to enable the TLS mode and set the (% style="color:blue" %)**AT+TLSMOD=1,0**(%%) command. 494 494 495 - (% style="color:blue" %)**On theConnectionProfilewindow, sethe followingformation:**542 +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. 496 496 497 - * (% style="color:#037691" %)**Profile Name:“Any name”**544 +~[~[image~:image-20230802112413-44.png]] 498 498 499 - * (% style="color:#037691" %)**Broker Address: mqtt.tago.io**546 +~[~[image~:image-20230802112413-45.png]] 500 500 501 -* (% style="color:#037691" %)**Broker Port: 8883** 502 502 503 - * (% style="color:#037691" %)**ClientID: “Any value”**549 +Go to the Device section and create a device. Then, go to the section tokens and copy your device-token. 504 504 505 - (% style="color:blue" %)**On the section User credentials, set the following information:**551 +~[~[image~:image-20230802112413-46.png]] 506 506 507 -* (% style="color:#037691" %)**User Name: “Any value”** (%%) **~/~/ Tago validates your user by the token only** 508 508 509 - *(% style="color:#037691" %)**Password: “Your device token”**554 +The device needs to enable the TLS mode and set the ~(% style="color:blue" %)~*~*AT+TLSMOD=1,0~*~*~(%%) command. 510 510 511 - *(% style="color:#037691" %)**PUBTOPIC: “Any value”**556 +~(% style="color:blue" %)~*~*On the Connection Profile window, set the following information:~*~* 512 512 513 -* (% style="color:#037691" %)** SUBTOPIC:value”**558 +~* ~(% style="color:#037691" %)~*~*Profile Name: “Any name”~*~* 514 514 515 -(% style="color: blue" %)**AT command:**560 +~* ~(% style="color:#037691" %)~*~*Broker Address: mqtt.tago.io~*~* 516 516 517 -* (% style="color:#037691" %)** AT+PRO=3,0 or3,5 ** (%%) **~/~/ hex formatorjson format**562 +~* ~(% style="color:#037691" %)~*~*Broker Port: 8883~*~* 518 518 519 -* (% style="color:#037691" %)** AT+SUBTOPIC=<deviceame>or UserDefined**564 +~* ~(% style="color:#037691" %)~*~*Client ID: “Any value”~*~* 520 520 521 - *(% style="color:#037691" %)**AT+PUBTOPIC=<deviceme>or User Defined**566 +~(% style="color:blue" %)~*~*On the section User credentials, set the following information:~*~* 522 522 523 -* (% style="color:#037691" %)** AT+CLIENT=<devicename>orUserDefined**568 +~* ~(% style="color:#037691" %)~*~*User Name: “Any value”~*~* ~(%%) ~*~*~~/~~/ Tago validates your user by the token only~*~* 524 524 525 -* (% style="color:#037691" %)** AT+UNAME=<devicename>or User Defined**570 +~* ~(% style="color:#037691" %)~*~*Password: “Your device token”~*~* 526 526 527 -* (% style="color:#037691" %)** AT+PWD=“Your device token”**572 +~* ~(% style="color:#037691" %)~*~*PUBTOPIC: “Any value”~*~* 528 528 529 - ===3.7.2Simulatewith MQTT.fx ===574 +~* ~(% style="color:#037691" %)~*~*SUBTOPIC: “Any value”~*~* 530 530 531 - [[image:image-20230802112413-52.png]]576 +~(% style="color:blue" %)~*~*AT command:~*~* 532 532 533 - [[image:image-20230808105300-2.png||height="553"width="1026"]]578 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0 or 3,5 ~*~* ~(%%) ~*~*~~/~~/ hex format or json format~*~* 534 534 535 - Userscan run the(% style="color:blue" %)**AT+PRO=3,5**(%%)command,and thepayloadwill beconvertedto**JSON format**.580 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=<device name>or User Defined~*~* 536 536 537 - [[image:image-20230808105217-1.png||height="556"width="1031"]]582 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=<device name>or User Defined~*~* 538 538 539 - [[image:image-20230808105329-3.png]]584 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=<device name> or User Defined~*~* 540 540 541 - ===3.7.3tago data===586 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 542 542 543 - [[image:image-20230802112413-50.png||height="242"width="1037"]]588 +~* ~(% style="color:#037691" %)~*~*AT+PWD=“Your device token”~*~* 544 544 545 - [[image:image-20230802112413-51.png||height="184"width="696"]]590 +~=== 3.7.2 Simulate with MQTT.fx === 546 546 547 -== 3.8 TCP Connection == 548 548 549 - (% style="color:blue" %)**AT command:**593 +~[~[image~:image-20230802112413-52.png]] 550 550 551 -* (% style="color:#037691" %)**AT+PRO=4,0 ** (%%) ~/~/ Set to use TCP protocol to uplink(HEX format) 552 552 553 - * (% style="color:#037691" %)**AT+PRO=4,1 ** (%%) ~/~/ Setto use TCP protocol to uplink(JSON format)596 +~[~[image~:image-20230808105300-2.png||height="553" width="1026"]] 554 554 555 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5600 ** (%%) ~/~/ to set TCP server address and port 556 556 557 -(% style="color:blue" %)** Sensor Console Output when Uplink:**599 +Users can run the ~(% style="color:blue" %)~*~*AT+PRO=3,5~*~*~(%%) command, and the payload will be converted to ~*~*JSON format~*~*. 558 558 559 -[[image:image-2023080 7233631-1.png]]601 +~[~[image~:image-20230808105217-1.png||height="556" width="1031"]] 560 560 561 - (% style="color:blue" %)**See resultin TCP Server:**603 +~[~[image~:image-20230808105329-3.png]] 562 562 563 -[[image:image-20230807233631-2.png]] 564 564 565 -== 3. 9 AWS Connection==606 +~=== 3.7.3 tago data === 566 566 567 -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]] 568 568 569 - =4.MQTT/UDP/TCP downlink=609 +~[~[image~:image-20230802112413-50.png||height="242" width="1037"]] 570 570 571 - ==4.1MQTT (via MQTT.fx)==611 +~[~[image~:image-20230802112413-51.png||height="184" width="696"]] 572 572 573 -Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx//.// 574 574 575 - **1.**Configurenode MQTT connection(via MQTT.fx):614 +~== 3.8 TCP Connection == 576 576 577 -(% style="color:blue" %)**AT command:** 578 578 579 - *(% style="color:#037691" %)**AT+PRO=3,0or 3,5 ** (%%)~/~/ hex format or json format617 +~(% style="color:blue" %)~*~*AT command:~*~* 580 580 581 -* (% style="color:#037691" %)**AT+ SUBTOPIC=UserDefined**619 +~* ~(% style="color:#037691" %)~*~*AT+PRO=4,0 ~*~* ~(%%) ~~/~~/ Set to use TCP protocol to uplink(HEX format) 582 582 583 -* (% style="color:#037691" %)**AT+P UBTOPIC=UserDefined**621 +~* ~(% style="color:#037691" %)~*~*AT+PRO=4,1 ~*~* ~(%%) ~~/~~/ Set to use TCP protocol to uplink(JSON format) 584 584 585 -* (% style="color:#037691" %)**AT+ UNAME=<devicename>orUserDefined**623 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=120.24.4.116,5600 ~*~* ~(%%) ~~/~~/ to set TCP server address and port 586 586 587 - *(% style="color:#037691" %)**AT+PWD=<devicename>orUserDefined**625 +~(% style="color:blue" %)~*~*Sensor Console Output when Uplink:~*~* 588 588 589 - * (% style="color:#037691" %)**AT+SERVADDR=8.217.91.207,1883 ** (%%) ~/~/ to set MQTT server address andport627 +~[~[image~:image-20230807233631-1.png]] 590 590 591 -(% 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.** 592 592 593 - [[image:image-20240417180145-2.png||height="434"width="587"]][[width="584">>width="584"]]630 +~(% style="color:blue" %)~*~*See result in TCP Server:~*~* 594 594 595 - **2. **When the node uplink packets, we can observe the data in MQTT.fx.632 +~[~[image~:image-20230807233631-2.png]] 596 596 597 -[[image:image-20240418144337-1.png||height="709" width="802"]] 598 598 599 - **3.**The downlink command can besuccessfully sentonly when the downlink port is open.635 +~== 3.9 AWS Connection == 600 600 637 + 638 +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]] 639 + 640 + 641 + 642 +~= 4. MQTT/UDP/TCP downlink = 643 + 644 +~== 4.1 MQTT (via MQTT.fx) == 645 + 646 +Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx~/~/.~/~/ 647 + 648 +~*~*1.~*~* Configure node MQTT connection (via MQTT.fx): 649 + 650 +~(% style="color:blue" %)~*~*AT command:~*~* 651 + 652 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0 or 3,5 ~*~* ~(%%)~~/~~/ hex format or json format 653 + 654 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=User Defined~*~* 655 + 656 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=User Defined~*~* 657 + 658 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 659 + 660 +~* ~(% style="color:#037691" %)~*~*AT+PWD=<device name> or User Defined~*~* 661 + 662 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=8.217.91.207,1883 ~*~* ~(%%) ~~/~~/ to set MQTT server address and port 663 + 664 +~(% 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.~*~* 665 + 666 +~[~[image~:image-20240417180145-2.png||height="434" width="587"]]~[~[image:image-20240417180737-3.png||height="431" width="584"]] 667 + 668 + 669 +~*~*2. ~*~*When the node uplink packets, we can observe the data in MQTT.fx. 670 + 671 +~[~[image~:image-20240418144337-1.png||height="709" width="802"]] 672 + 673 +~*~*3. ~*~*The downlink command can be successfully sent only when the downlink port is open. 674 + 601 601 The downlink port is opened for about 3 seconds after uplink packets are sent. 602 602 603 - 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. 677 + 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. 604 604 605 -[[image:image-20240418150435-3.png||height="582" width="659"]] 679 +~[~[image~:image-20240418150435-3.png||height="582" width="659"]] 606 606 607 -[[image:image-20240418150932-4.png||height="492" width="1061"]] 681 +~[~[image~:image-20240418150932-4.png||height="492" width="1061"]] 608 608 609 -(% 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.** 683 +~(% 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.~*~* 610 610 611 -= 5. FAQ = 612 612 613 -== 5.1 What is the usage of Multi Sampling and One Uplink? == 614 614 687 + 688 +~= 5. FAQ = 689 + 690 +~== 5.1 What is the usage of Multi Sampling and One Uplink? == 691 + 692 + 615 615 The NB series has the feature for Multi Sampling and one uplink. See one of them 616 616 617 -[[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]] 695 +~[~[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]] 618 618 619 619 User can use this feature for below purpose: 620 620 621 -1. **Reduce power consumption**. The NB-IoT transmit power is much more higher than the sensor sampling power. To save battery life, we can sampling often and send in one uplink. 622 -1. Give more sampling data points. 623 -1. Increase reliable in transmission. For example. If user set 624 -1*. **AT+TR=1800** 625 -1*. **AT+NOUD=24** 626 -1*. **AT+TDC=7200** 627 -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. 699 +~1. ~*~*Reduce power consumption~*~*. The NB-IoT transmit power is much more higher than the sensor sampling power. To save battery life, we can sampling often and send in one uplink. 700 +~1. Give more sampling data points. 701 +~1. Increase reliable in transmission. For example. If user set 702 +~1*. ~*~*AT+TR=1800~*~* ~~/~~/ The unit is seconds, and the default is to record data once every 1800 seconds (30 minutes, the minimum can be set to 180 seconds) 703 +~1*. ~*~*AT+NOUD=24~*~* ~~/~~/ The device uploads 24 sets of recorded data by default. Up to 32 sets of record data can be uploaded. 704 +~1*. ~*~*AT+TDC=7200~*~* ~~/~~/ Uplink every 2 hours. 705 +~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. 628 628 629 -== 5.2 Why the uplink JSON format is not standard? == 707 +~== 5.2 Why the uplink JSON format is not standard? == 630 630 709 + 631 631 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. 632 632 633 633 The firmware version released after 2024, Mar will use change back to use Json format. Detail please check changelog. 634 634 635 -[[image:image-20240229233154-1.png]] 714 +~[~[image~:image-20240229233154-1.png]] 636 636 637 -= 6. Trouble Shooting: = 638 638 639 -= =6.1Checklist fordebuging NetworkConnectionissue. Signal Strenght:99issue.==717 +~= 6. Trouble Shooting: = 640 640 719 +~== 6.1 Checklist for debuging Network Connection issue. Signal Strenght:99 issue. == 720 + 721 + 641 641 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. 642 642 643 -If end device successfully attached NB-IoT Network, User can normally see the signal strengh as below (between 0~~31) 724 +If end device successfully attached NB-IoT Network, User can normally see the signal strengh as below (between 0~~~~31) 644 644 645 -[[image:image-20240207002003-1.png]] 726 +~[~[image~:image-20240207002003-1.png]] 646 646 728 + 647 647 If fail to attach network, it will shows signal 99. as below: 648 648 649 -[[image:image-20240207002129-2.png]] 731 +~[~[image~:image-20240207002129-2.png]] 650 650 651 -(% class="lead" %) 733 + 734 +~(% class="lead" %) 652 652 When see this issue, below are the checklist: 653 653 654 -* Does your SIM card support NB-IoT network? If SIM card doesn't not specify support NB-IoT clearly, normally it doesn't support. You need to confirm with your operator. 655 -* Do you configure the correct APN? [[Check here for APN settings>>http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.1GeneralConfiguretoattachnetwork]]. 656 -* Do you lock the frequency band? This is the most case we see. [[Explain and Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.2SpeedUpNetworkAttachtime]]. 657 -* Check if the device is attached to Carrier network but reject. (need to check with operator). 658 -* Check if the antenna is connected firmly. 737 +~* Does your SIM card support NB-IoT network? If SIM card doesn't not specify support NB-IoT clearly, normally it doesn't support. You need to confirm with your operator. 738 +~* Do you configure the correct APN? ~[~[Check here for APN settings>>http:~/~/wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.1GeneralConfiguretoattachnetwork]]. 739 +~* Do you lock the frequency band? This is the most case we see. ~[~[Explain and Instruction>>http:~/~/wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.2SpeedUpNetworkAttachtime]]. 740 +~* Check if the device is attached to Carrier network but reject. (need to check with operator). 741 +~* Check if the antenna is connected firmly. 659 659 660 -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. 743 +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. 661 661 662 662 663 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a"%)6.4 Whysometimethe ATCommandsslowinreponse?(%%)==746 +~== 6.2 Issue: "NBIOT did not respond" == 664 664 748 + 749 +~(% class="box errormessage" %) 750 +~(~(~( 751 +11:24:22.397 [44596]NBIOT did not respond. 752 +11:24:24.315 [46530]NBIOT did not respond. 753 +11:24:26.256 [48464]NBIOT did not respond. 754 +11:24:28.196 [50398]NBIOT did not respond. 755 +11:24:30.115 [52332]NBIOT did not respond. 756 +11:24:32.127 [54266]NBIOT did not respond. 757 +11:24:32.127 [54299]Restart the module... 758 +11:24:39.181 [61332]No response when shutting down 759 +~)~)~) 760 + 761 +This issue might due to initiate issue for NB-IoT module. In this case, please try: 762 + 763 +1) Open Enclosure 764 + 765 +2) Power off device by pull out the power on Jumper 766 + 767 +3) Power on device by connect back the power jumper. 768 + 769 +4) push reset button. 770 + 771 +~[~[image~:image-20240208001740-1.png]] 772 + 773 + 774 +~== 6.3 Issue: "Failed to readI MSI number" == 775 + 776 + 777 +~(% class="box errormessage" %) 778 +~(~(~( 779 +[18170]Failed to read IMSI:1umber. 780 +[20109]Failed to read IMSI numoer. 781 +[22048]Failed to read IMSI number. 782 +[29842lRestart the module... 783 +~)~)~) 784 + 785 +Make sure that the SIM card is insert in correct direction and device is power off/on during insert. Here is reference link: ~[~[Insert SIM Card>>||anchor="H2.1GeneralConfiguretoattachnetwork"]]. 786 + 787 + 788 +~== ~(% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.4 Why sometime the AT Command is slow in reponse?~(%%) == 789 + 790 + 665 665 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. 666 666 667 -[[image:image-20240226111928-1.png]] 793 +~[~[image~:image-20240226111928-1.png]] 668 668 669 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.5 What is the Downlink Command by the NB device?(%%) == 670 670 671 -(% data-sider-select-id="bb6e9353-0c3f-473c-938d-4b416c9a03e6" %) 672 -=== UDP: === 796 +~== ~(% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.5 What is the Downlink Command by the NB device?~(%%) == 673 673 674 -(% data-sider-select-id="14a4790e-7faa-4508-a4dd-7605a53f1cb3" %) 798 +~(% data-sider-select-id="bb6e9353-0c3f-473c-938d-4b416c9a03e6" %) 799 +~=== UDP: === 800 + 801 +~(% data-sider-select-id="14a4790e-7faa-4508-a4dd-7605a53f1cb3" %) 675 675 Its downlink command is the same as the AT command, but brackets are required. 676 676 Example: 677 677 678 678 {AT+TDC=300} 679 679 680 -(% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 681 -=== MQTT: === 682 682 808 +~(% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 809 +~=== MQTT: === 810 + 683 683 Json: 684 684 685 685 The Json format in MQTT mode needs to be configured with all commands. ... ... @@ -716,7 +716,6 @@ 716 716 The supported commands are consistent with LoRaWAN's hex commands. 717 717 Please refer to the following link to obtain the hex format: 718 718 719 -[[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/]] 847 +~[~[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/]] 720 720 721 721 722 -