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 (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. David1 +XWiki.Edwin - Content
-
... ... @@ -1,484 +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-20240602220856-1.png]] 27 27 20 +To attache NB-IoT sensors to NB-IoT Network, You need to: 28 28 29 -放一张如何插卡图片。 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 30 30 28 +~[~[image~:image-20240208102804-1.png||height="286" width="696"]] 31 31 32 - After doingbove, the end nodes should beable to attachoNB-IoT network .30 +~[~[image~:image-20230808205045-1.png||height="293" width="438"]] 33 33 34 - The-CBand-CSmodelssupport(%style="color:blue"%)**LTECat NB2 and LTE-M (CAT-M1)**(%%),with belowfrequencyband: multiple frequency bands of32 +After doing above, the NB-IoT Sensors should be able to attach to NB-IoT network . 35 35 36 - ~-~-(% style="color:blue" %)**CAT-NB2: B1/B2/B3/B4/B5/B8/B12/B13/B18/B19/B20/B25/B28/B66/B71/B8534 +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. 37 37 38 -~-~-(% style="color:blue" %)** CAT-M1: B1/B2/B3/B4/B5/B8/B12/B13/B18/B19/B20/B25/B26/B27/B28/B66/B85 **(%%). 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]]~*~* 39 39 40 -Make sure you use a the NB-IoT or LTE-M SIM card. 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" %) 41 41 42 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1134px" %) 43 -|(% 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:406px" %)**NB-IoT Coverage**|(% style="background-color:#4f81bd; color:white; width:351px" %)**LTE-M Coverage**|(% style="background-color:#4f81bd; color:white; width:120px" %)**Comments** 44 -|(% style="width:117px" %)**[[1NCE>>https://1nce.com]]**|(% style="width:151px" %)iot.1nce.net|(% style="width:406px" %)((( 45 -**[[Coverage Reference Link>>https://1nce.com/en-ap/1nce-connect]]** 46 +~== 2.2 Speed Up Network Attach time == 46 46 47 -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 48 -)))|(% style="width:351px" %)((( 49 -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. 50 -)))|(% style="width:120px" %)UK: Band20 51 -|(% style="width:117px" %)China Mobile|(% style="width:151px" %)No need configure|(% style="width:406px" %)China Mainland, HongKong|(% style="width:351px" %) |(% style="width:120px" %) 52 -|(% style="width:117px" %)China Telecom|(% style="width:151px" %)ctnb|(% style="width:406px" %)China Mainland|(% style="width:351px" %) |(% style="width:120px" %) 53 53 54 -= =2.2SpeedUpNetworkAttach time==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. 55 55 56 -**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**. 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~*~* 57 57 58 -**Note:**Before using the NB module command, users need to power on the NB module. Run the AT+QSW command to turn on and off the NB module.Remember to shut down after using the NB module command, otherwise it will consume power. 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 59 59 60 -At tache to1NCEcardfor Australiause:61 +After connection is successful, user can use ~(% style="color:#037691" %)~*~*AT+QENG=0 ~*~*~(%%) to check which band is actually in used. 61 61 62 -* AT+COPS=1,2,"50501",8 63 -* AT+QCFG="band",0,0x8000000,0x8000000,1 64 64 65 - 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/]]~*~* 66 66 67 -AT+QENG="servingcell" 68 -+QENG: "servingcell","NOCONN","eMTC","FD 69 -D",505,01,90D2C0B,258,9410,28,5,5,901A,-112,-17,-80,10,27 70 70 67 +~= 3. Configure to connect to different servers = 71 71 72 - 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 == 73 73 74 -=== **1.Configure Frequency Band** === 75 75 76 - AT+QCFG="band"[,<GSM_bandval>,<eMTC_bandval>,<NB-IoT_bandval>[,<effect>]]72 +The NB-IoT Sensor can send packet to server use UDP protocol. 77 77 78 -<GSM_bandval>: 79 79 80 -0 No change 81 -0x1 EGSM900 82 -0x2 DCS1800 83 -0x4 GSM850 84 -0x8 PCS1900 85 -0xF All of the supported bands above 75 +~=== 3.1.1 Simulate UDP Connection by PC tool === 86 86 87 -<eMTC_bandval>: 88 88 89 -0 No change 90 -0x1 LTE B1 91 -0x2 LTE B2 92 -0x4 LTE B3 93 -0x8 LTE B4 94 -0x10 LTE B5 95 -0x80 LTE B8 96 -0x800 LTE B12 97 -0x1000 LTE B13 98 -0x20000 LTE B18 99 -0x40000 LTE B19 100 -0x80000 LTE B20 101 -0x1000000 LTE B25 102 -0x2000000 LTE B26 103 -0x4000000 LTE B27 104 -0x8000000 LTE B28 105 -0x40000000 LTE B31 106 -0x20000000000000000 LTE B66 107 -0x800000000000000000 LTE B72 108 -0x1000000000000000000 LTE B73 109 -0x1000000000000000000000 LTE B85 78 +We can use PC tool to simulate UDP connection to make sure server works ok. 110 110 111 - <NB-IoT_bandval>:80 +~[~[image~:image-20230802112413-1.png||height="468" width="1024"]] 112 112 113 -0 No change 114 -0x1 LTE B1 115 -0x2 LTE B2 116 -0x4 LTE B3 117 -0x8 LTE B4 118 -0x10 LTE B5 119 -0x80 LTE B8 120 -0x800 LTE B12 121 -0x1000 LTE B13 122 -0x20000 LTE B18 123 -0x40000 LTE B19 124 -0x80000 LTE B20 125 -0x1000000 LTE B25 126 -0x8000000 LTE B28 127 -0x40000000 LTE B31 128 -0x20000000000000000 LTE B66 129 129 130 -0x400000000000000000 LTE B71 131 -0x800000000000000000 LTE B72 132 -0x1000000000000000000 LTE B73 133 -0x1000000000000000000000 LTE B85 83 +~=== 3.1.2 Configure NB-IoT Sensor === 134 134 135 - Forexample, setting the LTE-M network frequency bandto 3.85 +~==== 3.1.2.1 AT Commands ==== 136 136 137 -AT+QCFG="band",0xF,0x4,0,1 138 138 139 - Whensearching for allbands, the value of this commandisset to:88 +~(% style="color:blue" %)~*~*AT Commands:~*~* 140 140 141 - AT+QCFG="band",0xF,0x100002000000000f0e189f,0x10004200000000090e189f,190 +~* ~(% style="color:#037691" %)~*~*AT+PRO=2,0~*~* ~(%%) ~~/~~/ Set to use UDP protocol to uplink ,Payload Type select Hex payload 142 142 92 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=120.24.4.116,5601~*~* ~(%%) ~~/~~/ Set UDP server address and port 143 143 144 - === **2.Configuresearch network sequence** ===94 +~[~[image~:image-20230802112413-2.png]] 145 145 146 -AT+QCFG="nwscanseq",<scanseq>,1 147 147 148 - <scanseq>:97 +~==== 3.1.2.2 Uplink Example ==== 149 149 150 -00 Automatic (eMTC → NB-IoT → GSM) 151 -01 GSM 152 -02 eMTC 153 -03 NB-IoT 154 154 155 - AT+QCFG="nwscanseq",02,1~/~/Priority search foreMTC100 +~[~[image~:image-20230802112413-3.png]] 156 156 157 -=== **3.Configure Network Category to be Searched for under LTE RAT** === 158 158 159 - AT+QCFG="iotopmode",mode,1103 +~== 3.2 General MQTT Connection == 160 160 161 -0 eMTC 162 -1 NB-IoT 163 -2 eMTC and NB-IoT 164 164 165 - === **4.ATcommandt frequency band and networkcategory** ===106 +The NB-IoT Sensor can send packet to server use MQTT protocol. 166 166 167 - AT+QBAND=0x100002000000000f0e189f,0x10004200000000090e189f~/~/<eMTC_bandval>,<NB-IoT_bandval>108 +Below are the commands. 168 168 169 - AT+IOTMOD=0~/~/0eMTC 1 NB-IoT 2eMTCNB-IoT110 +~(% style="color:blue" %)~*~*AT Commands:~*~* 170 170 171 -* *Example112 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0~*~* ~(%%) ~~/~~/ Set to use MQTT protocol to uplink, Payload Type select Hex payload. 172 172 173 - Takingtheusef1ncecards in**theUnitedStates** asexample.114 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=120.24.4.116,1883~*~* ~(%%) ~~/~~/ Set MQTT server address and port 174 174 175 -AT+ APN=iot.1nce.net~/~/setAPN116 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=CLIENT~*~* ~(%%) ~~/~~/ Set up the CLIENT of MQTT 176 176 177 -AT+ QBAND=0x100180A,0~/~/eMTC :Setfrequency band B2,B4,B12,B13,B25NB-IoT:No change118 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=UNAME~*~* ~(%%) ~~/~~/ Set the username of MQTT 178 178 179 -AT+ IOTMOD=0MTCNetwork120 +~* ~(% style="color:#037691" %)~*~*AT+PWD=PWD~*~* ~(%%) ~~/~~/ Set the password of MQTT 180 180 181 -* *Settingtheabovecommandsin theUnitedStateswillgreatly reducethenetworksearchtimeofthe NB module.**122 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=NSE01_PUB~*~* ~(%%) ~~/~~/ Set the sending topic of MQTT 182 182 124 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=NSE01_SUB~*~* ~(%%) ~~/~~/ Set the subscription topic of MQTT 183 183 184 - = 3. Configureto connect to different servers =126 +~[~[image~:image-20230802112413-4.png]] 185 185 186 - ==3.1General UDP Connection==128 +~[~[image~:image-20230802112413-5.png||height="530" width="987"]] 187 187 188 - The NB-IoT SensoranendpacketrverUDPprotocol.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.~*~* 189 189 190 -=== 3.1.1 Simulate UDP Connection by PC tool === 191 191 192 - WecanusePC toolosimulate UDP connection tomakesure server works ok.133 +~== 3.3 ~[~[ThingSpeak>>url:https:~/~/thingspeak.com/]] (via MQTT) == 193 193 194 - [[image:image-20230802112413-1.png||height="468" width="1024"]]135 +~=== 3.3.1 Get MQTT Credentials === 195 195 196 -=== 3.1.2 Configure NB-IoT Sensor === 197 197 198 - ==== 3.1.2.1 ATmmands====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. 199 199 200 - (% style="color:blue" %)**AT Commands:**140 +~[~[image~:image-20230802112413-6.png||height="336" width="925"]] 201 201 202 - * (% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/ Set to use UDPprotocol to uplink ,Payload Type select Hex payload142 +~[~[image~:image-20230802112413-7.png]] 203 203 204 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5601** (%%) ~/~/ Set UDP server address and port 205 205 206 - [[image:image-20230802112413-2.png]]145 +~=== 3.3.2 Simulate with MQTT.fx === 207 207 208 -==== 3. 1.2.2 UplinkExample ====147 +~==== 3.3.2.1 Establish MQTT Connection ==== 209 209 210 -[[image:image-20230802112413-3.png]] 211 211 212 - == 3.2 GeneralCOAPction==150 +After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 213 213 214 - The NB-IoT Sensor can send packet to server use COAP protocol.152 +~[~[image~:image-20230802112413-8.png]] 215 215 216 - Belowaremands.154 +~* ~(% style="color:#037691" %)~*~*Broker Address:~*~*~(%%) mqtt3.thingspeak.com 217 217 218 -(% style="color: blue" %)**AT Commands:**156 +~* ~(% style="color:#037691" %)~*~*Broker Port:~*~*~(%%) 1883 219 219 220 -* (% style="color:#037691" %)** AT+PRO=1,0**~/~/ Set tose COAP protocol to uplink, Payload TypeselectHex payload.158 +~* ~(% style="color:#037691" %)~*~*Client ID:~*~*~(%%) <Your ThingSpeak MQTT ClientID> 221 221 222 -* (% style="color:#037691" %)** AT+SERVADDR=120.24.4.116,5683**~/~/Set COAPserveraddress and port160 +~* ~(% style="color:#037691" %)~*~*User Name:~*~*~(%%) <Your ThingSpeak MQTT User Name> 223 223 224 -* (% style="color:#037691" %)**AT+URI1=11,"I"** (%%) ~/~/ Configure CoAP Message Options 225 -* (% style="color:#037691" %)**AT+URI2=11,"aaa05e26-4d6d-f01b-660e-1d8de4a3bfe1"** (%%) ~/~/ Configure CoAP Message Options 162 +~* ~(% style="color:#037691" %)~*~*Password:~*~*~(%%) <Your ThingSpeak MQTT Password> 226 226 227 -=== 3.2. 1 UplinkExample ===164 +~==== 3.3.2.2 Publish Data to ThingSpeak Channel ==== 228 228 229 229 167 +~[~[image~:image-20230802112413-9.png]] 230 230 231 - == 3.2 General MQTT Connection==169 +~[~[image~:image-20230802112413-10.png]] 232 232 233 -The NB-IoT Sensor can send packet to server use MQTT protocol. 234 234 235 - Below aretheommands.172 +~(% style="color:blue" %)~*~*In MQTT.fx, we can publish below info:~*~* 236 236 237 -(% style="color: blue" %)**ATCommands:**174 +~* ~(% style="color:#037691" %)~*~*Topic:~*~*~(%%) channels/YOUR_CHANNEL_ID/publish 238 238 239 -* (% style="color:#037691" %)** AT+PRO=3,0**~/~/ SetouseMQTTprotocol to uplink,Payload Type selectHex payload.176 +~* ~(% style="color:#037691" %)~*~*Payload:~*~*~(%%) field1=63&field2=67&status=MQTTPUBLISH 240 240 241 - * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,1883**(%%) ~/~/ SetMQTT serveraddress andport178 +Where 63 and 67 are the value to be published to field1 & field2. 242 242 243 -* (% style="color:#037691" %)**AT+CLIENT=CLIENT** (%%) ~/~/ Set up the CLIENT of MQTT 244 244 245 - *(% style="color:#037691" %)**AT+UNAME=UNAME** (%%)~/~/ Setthe username of MQTT181 +~(% style="color:blue" %)~*~*Result: ~*~* 246 246 247 - * (% style="color:#037691" %)**AT+PWD=PWD** (%%) ~/~/ Setthe passwordof MQTT183 +~[~[image~:image-20230802112413-11.png||height="539" width="901"]] 248 248 249 -* (% style="color:#037691" %)**AT+PUBTOPIC=NSE01_PUB** (%%) ~/~/ Set the sending topic of MQTT 250 250 251 - * (% style="color:#037691"%)**AT+SUBTOPIC=NSE01_SUB**(%%) ~/~/Set thesubscriptionopicofMQTT186 +~=== 3.3.3 Configure NB-IoT Sensor for connection === 252 252 253 - [[image:image-20230802112413-4.png]]188 +~==== 3.3.3.1 AT Commands: ==== 254 254 255 -[[image:image-20230802112413-5.png||height="530" width="987"]] 256 256 257 - (% style="color:red" %)**Notice: MQTT protocol has a much higher powerconsumption compare with UDP/CoAP protocol. Please checkthepower analyze documentand adjust the uplink period to asuitableinterval.**191 +In the NB-IoT, we can run below commands so to publish the channels like MQTT.fx 258 258 259 -= =3.3[[ThingSpeak>>url:https://thingspeak.com/]] (viaMQTT) ==193 +~* ~(% style="color:blue" %)~*~*AT+PRO=3,1~*~* ~(%%) ~~/~~/ Set to use ThingSpeak Server and Related Payload 260 260 261 - ===3.3.1Get MQTTredentials ===195 +~* ~(% style="color:blue" %)~*~*AT+CLIENT=<Your ThingSpeak MQTT ClientID>~*~* 262 262 263 - [[ThingSpeak>>url:https://thingspeak.com/]] connectionusesMQTT Connection. So we need to getMQTT Credentials first.Youneed to point MQTT Devices to ThingSpeakChannelas well.197 +~* ~(% style="color:blue" %)~*~*AT+UNAME=<Your ThingSpeak MQTT User Name>~*~* 264 264 265 - [[image:image-20230802112413-6.png||height="336"width="925"]]199 +~* ~(% style="color:blue" %)~*~*AT+PWD=<Your ThingSpeak MQTT Password>~*~* 266 266 267 - [[image:image-20230802112413-7.png]]201 +~* ~(% style="color:blue" %)~*~*AT+PUBTOPIC=<YOUR_CHANNEL_ID>~*~* 268 268 269 - ===3.3.2Simulatewith MQTT.fx===203 +~* ~(% style="color:blue" %)~*~*AT+SUBTOPIC=<YOUR_CHANNEL_ID>~*~* 270 270 271 -==== 3.3. 2.1EstablishMQTT Connection====205 +~==== 3.3.3.2 Uplink Examples ==== 272 272 273 -After we got MQTT Credentials, we can first simulate with PC tool MQTT.fx tool to see if the Credentials and settings are fine. 274 274 275 -[[image:image-202308 02112413-8.png]]208 +~[~[image~:image-20230816201942-1.png]] 276 276 277 - * (% style="color:#037691" %)**Broker Address:**(%%) mqtt3.thingspeak.com210 +For SE01-NB 278 278 279 - * (% style="color:#037691" %)**Broker Port:**(%%) 1883212 +For DDS20-NB 280 280 281 - * (% style="color:#037691" %)**Client ID:**(%%) <Your ThingSpeak MQTT ClientID>214 +For DDS45-NB 282 282 283 - * (% style="color:#037691" %)**UserName:**(%%) <Your ThingSpeak MQTT User Name>216 +For DDS75-NB 284 284 285 - * (% style="color:#037691" %)**Password:**(%%) <Your ThingSpeakMQTT Password>218 +For NMDS120-NB 286 286 287 - ==== 3.3.2.2 Publish Data toThingSpeak Channel ====220 +For SPH01-NB 288 288 289 - [[image:image-20230802112413-9.png]]222 +For NLM01-NB 290 290 291 - [[image:image-20230802112413-10.png]]224 +For NMDS200-NB 292 292 293 - (% style="color:blue" %)**In MQTT.fx, we can publish below info:**226 +For CPN01-NB 294 294 295 - * (% style="color:#037691" %)**Topic:**(%%) channels/YOUR_CHANNEL_ID/publish228 +For DS03A-NB 296 296 297 - * (% style="color:#037691" %)**Payload:**(%%) field1=63&field2=67&status=MQTTPUBLISH230 +For SN50V3-NB 298 298 299 -Where 63 and 67 are the value to be published to field1 & field2. 300 300 301 - (%style="color:blue"%)**Result: **233 +~==== 3.3.3.3 Map fields to sensor value ==== 302 302 303 -[[image:image-20230802112413-11.png||height="539" width="901"]] 304 304 305 - === 3.3.3 ConfigureSensorforon===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. 306 306 307 -==== 3.3.3.1 AT Commands: ==== 308 308 309 - In the NB-IoT, we can run below commands so topublishhechannels like MQTT.fx239 +~[~[image~:image-20230802112413-12.png||height="504" width="1011"]] 310 310 311 - * (% style="color:blue" %)**AT+PRO=3,1** (%%)~/~/ Set to use ThingSpeak Server and RelatedPayload241 +~[~[image~:image-20230802112413-13.png||height="331" width="978"]] 312 312 313 -* (% style="color:blue" %)**AT+CLIENT=<Your ThingSpeak MQTT ClientID>** 314 314 315 - * (%style="color:blue" %)**AT+UNAME=<Your ThingSpeak MQTT User Name>**244 +Below is the NB-IoT Product Table show the mapping. 316 316 317 -* (% style="color:blue" %)**AT+PWD=<Your ThingSpeak MQTT Password>** 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" %) 318 318 319 - *(%style="color:blue"%)**AT+PUBTOPIC=<YOUR_CHANNEL_ID>**266 +~== 3.4 ~[~[Datacake>>https:~/~/datacake.co/]] == 320 320 321 -* (% style="color:blue" %)**AT+SUBTOPIC=<YOUR_CHANNEL_ID>** 322 322 323 -==== 3.3.3.2 Uplink Examples ==== 269 +~(% class="wikigeneratedid" %) 270 +Dragino NB-IoT sensors has its template in ~*~*~[~[Datacake>>https:~/~/datacake.co/]]~*~* Platform. There are two version for NB Sensor, 324 324 325 -[[image:image-20230816201942-1.png]] 326 326 327 -For SE01-NB 273 +~(% class="wikigeneratedid" %) 274 +As example for S31B-NB. there are two versions: ~*~*S31B-NB-1D and S31B-NB-GE.~*~* 328 328 329 - ForDDS20-NB276 +~* ~(% 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. 330 330 331 - ForDDS45-NB278 +~* ~(% 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. 332 332 333 -For DDS75-NB280 +~=== 3.4.1 For device Already has template === 334 334 335 - ForNMDS120-NB282 +~==== 3.4.1.1 Create Device ==== 336 336 337 - ForSPH01-NB284 +~(% style="color:blue" %)~*~*Add Device~*~*~(%%) in DataCake. 338 338 339 - For NLM01-NB286 +~[~[image~:image-20230808162301-1.png||height="453" width="952"]] 340 340 341 -For NMDS200-NB 342 342 343 - For CPN01-NB289 +~[~[image~:image-20230808162342-2.png||height="541" width="952"]] 344 344 345 -For DS03A-NB 346 346 347 - ForSN50V3-NB292 +~(% style="color:blue" %)~*~*Choose the correct model~*~*~(%%) from template. 348 348 349 - ====3.3.3.3 Mapfields to sensor value ====294 +~[~[image~:image-20230808162421-3.png]] 350 350 351 -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. 352 352 353 - [[image:image-20230802112413-12.png||height="504"width="1011"]]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. 354 354 355 -[[image:image-2023080 2112413-13.png||height="331" width="978"]]299 +~[~[image~:image-20230808163612-7.png||height="549" width="952"]] 356 356 357 - Belowis the NB-IoT Product Tableshow themapping.301 +~[~[image~:image-20230808163035-5.png]] 358 358 359 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1424px" %) 360 -|(% 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 361 -|(% 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" %) 362 -|(% 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" %) 363 -|(% 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" %) 364 -|(% 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" %) 365 -|(% 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" %) 366 -|(% 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" %) 367 -|(% 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" %) 368 -|(% 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" %) 369 -|(% 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" %) 370 -|(% 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" %) 371 -|(% 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 372 -|(% 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" %) 373 -|(% 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" %) 374 -|(% 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" %) 375 -|(% 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" %) 376 -|(% 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" %) 377 -|(% 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" %) 303 +~[~[image~:image-20230808163049-6.png||height="544" width="926"]] 378 378 379 -== 3.4 [[Datacake>>https://datacake.co/]] == 380 380 381 -(% class="wikigeneratedid" %) 382 -Dragino NB-IoT sensors has its template in **[[Datacake>>https://datacake.co/]]** Platform. There are two version for NB Sensor, 306 +~=== 3.4.2 For Device already registered in DataCake before shipped === 383 383 384 -(% class="wikigeneratedid" %) 385 -As example for S31B-NB. there are two versions: **S31B-NB-1D and S31B-NB-GE.** 308 +~==== 3.4.2.1 Scan QR Code to get the device info ==== 386 386 387 -* (% 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. 388 388 389 - * (%style="color:blue" %)**S31B-NB-GE**(%%): Thisversondoesn'thave pre-configureDatacakeconnection. UserneedtoentertheAT Commands toconnectto Datacake.See belowforinstruction.311 +Users can use their phones or computers to scan QR codes to obtain device data information. 390 390 391 - === 3.4.1 For device Already has template ===313 +~[~[image~:image-20230808170051-8.png||height="255" width="259"]] 392 392 393 - ==== 3.4.1.1 CreateDevice====315 +~[~[image~:image-20230808170548-9.png]] 394 394 395 -(% style="color:blue" %)**Add Device**(%%) in DataCake. 396 396 397 - [[image:image-20230808162301-1.png||height="453"width="952"]]318 +~==== 3.4.2.2 Claim Device to User Account ==== 398 398 399 -[[image:image-20230808162342-2.png||height="541" width="952"]] 400 400 401 - (% style="color:blue"%)**Choosethe correctmodel**(%%) from template.321 +By Default, the device is registered in Dragino's DataCake Account. User can Claim it to his account. 402 402 403 -[[image:image-20230808162421-3.png]] 404 404 405 - (%style="color:blue"%)**FillDeviceID**(%%).Thedevice IDneedstobefilled in withIMEI, and a prefixof(% style="color:blue"%)** 'f' **(%%)needsto beadded.324 +~=== 3.4.3 Manual Add Decoder in DataCake ( don't use the template in DataCake) === 406 406 407 -[[image:image-20230808163612-7.png||height="549" width="952"]] 408 408 409 - [[image:image-20230808163035-5.png]]327 +~*~*Step1: Add a device~*~* 410 410 411 -[[image:image-202 30808163049-6.png||height="544" width="926"]]329 +~[~[image~:image-20240129170024-1.png||height="330" width="900"]] 412 412 413 -=== 3.4.2 For Device already registered in DataCake before shipped === 414 414 415 - ==== 3.4.2.1Scan QRCodetogetthedevice info====332 +~*~*Step2: Choose your device type,please select dragino NB-IOT device~*~* 416 416 417 - Users can usetheir phones or computers to scan QR codes to obtaindevice datainformation.334 +~[~[image~:image-20240129170216-2.png||height="534" width="643"]] 418 418 419 -[[image:image-20230808170051-8.png||height="255" width="259"]] 420 420 421 - [[image:image-20230808170548-9.png]]337 +~*~*Step3: Choose to create a new device~*~* 422 422 423 - ==== 3.4.2.2 ClaimDeviceto User Account ====339 +~[~[image~:image-20240129170539-3.png||height="459" width="646"]] 424 424 425 -By Default, the device is registered in Dragino's DataCake Account. User can Claim it to his account. 426 426 427 - === 3.4.3ManualAddDecoderinDataCake( don'tusethetemplatein DataCake) ===342 +~*~*Step4: Fill in the device ID of your NB device~*~* 428 428 429 - **Step1:Addadevice**344 +~[~[image~:image-20240202111546-1.png||height="378" width="651"]] 430 430 431 -[[image:image-20240129170024-1.png||height="330" width="900"]] 432 432 433 -**Step 2:Choose your device type,pleaseselectdraginoNB-IOTdevice**347 +~*~*Step5: Please select your device plan according to your needs and complete the creation of the device~*~* 434 434 435 -[[image:image-2024012917 0216-2.png||height="534" width="643"]]349 +~[~[image~:image-20240129171236-6.png||height="450" width="648"]] 436 436 437 -**Step3: Choose to create a new device** 438 438 439 - [[image:image-20240129170539-3.png||height="459"width="646"]]352 +~*~*Step6: Please add the decoder at the payload decoder of the device configuration.~*~* 440 440 441 -** Step4:FillintheviceID ofyourNBdevice**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]] 442 442 443 -[[image:image-202402 02111546-1.png||height="378" width="651"]]356 +~[~[image~:image-20240129172056-7.png||height="457" width="816"]] 444 444 445 - **Step5: Pleaseselect your device plan accordingto your needs and complete thecreation of thedevice**358 +~[~[image~:image-20240129173116-9.png||height="499" width="814"]] 446 446 447 -[[image:image-20240129171236-6.png||height="450" width="648"]] 448 448 449 -**Step 6:Please add thedecoder at thepayloaddecoderofthedevice configuration.**361 +~*~*Step7: Add the output of the decoder as a field~*~* 450 450 451 - **Decoder location:**[[dragino-end-node-decoder/Datacake-Dragino_NB atmain · dragino/dragino-end-node-decoder (github.com)>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/Datacake-Dragino_NB]]363 +~[~[image~:image-20240129173541-10.png||height="592" width="968"]] 452 452 453 -[[image:image-20240129172056-7.png||height="457" width="816"]] 454 454 455 - [[image:image-20240129173116-9.png||height="499"width="814"]]366 +~*~*Step8: Customize the dashboard and use fields as parameters of the dashboard~*~* 456 456 457 - **Step7:Add theoutput of thedecoder as a field**368 +~[~[image~:image-20240129174518-11.png||height="147" width="1042"]] 458 458 459 -[[image:image-2024012917 3541-10.png||height="592" width="968"]]370 +~[~[image~:image-20240129174657-12.png||height="538" width="916"]] 460 460 461 - **Step8:Customizethedashboardand use fields as parameters of the dashboard**372 +~[~[image~:image-20240129174840-13.png||height="536" width="750"]] 462 462 463 -[[image:image-20240129174518-11.png||height="147" width="1042"]] 464 464 465 - [[image:image-20240129174657-12.png||height="538"width="916"]]375 +~=== 3.4.4 For device have not configured to connect to DataCake === 466 466 467 -[[image:image-20240129174840-13.png||height="536" width="750"]] 468 468 469 -=== 3.4.4 For device have not configured to connect to DataCake === 470 - 471 -(% class="lead" %) 378 +~(% class="lead" %) 472 472 Use AT command for connecting to DataCake 473 473 474 -(% style="color:blue" %)**AT+PRO=2,0** 381 +~(% style="color:blue" %)~*~*AT+PRO=2,0~*~* 475 475 476 -(% style="color:blue" %)**AT+SERVADDR=67.207.76.90,4445** 383 +~(% style="color:blue" %)~*~*AT+SERVADDR=67.207.76.90,4445~*~* 477 477 478 -== 3.5 Node-Red (via MQTT) == 479 479 480 -== =3.5.1 Configure [[Node-Red>>http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]]===386 +~== 3.5 Node-Red (via MQTT) == 481 481 388 +~=== 3.5.1 Configure ~[~[Node-Red>>http:~/~/wiki.dragino.com/xwiki/bin/view/Main/Node-RED/]] === 389 + 390 + 482 482 Take S31-NB UDP protocol as an example. 483 483 484 484 Dragino provides input flow examples for the sensors. ... ... @@ -485,347 +485,420 @@ 485 485 486 486 User can download the required JSON file through Dragino Node-RED input flow template. 487 487 488 -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]] 489 489 490 490 We can directly import the template. 491 491 492 492 The templates for S31-NB and NB95S31B are the same. 493 493 494 -[[image:image-20230809173127-4.png]] 495 495 404 +~[~[image~:image-20230809173127-4.png]] 405 + 406 + 496 496 Please select the NB95S31B template. 497 497 498 -[[image:image-20230809173310-5.png||height="558" width="926"]] 409 +~[~[image~:image-20230809173310-5.png||height="558" width="926"]] 499 499 500 -[[image:image-20230809173438-6.png]] 411 +~[~[image~:image-20230809173438-6.png]] 501 501 502 -[[image:image-20230809173800-7.png]] 413 +~[~[image~:image-20230809173800-7.png]] 503 503 415 + 504 504 Successfully imported template. 505 505 506 -[[image:image-20230809173835-8.png||height="515" width="860"]] 418 +~[~[image~:image-20230809173835-8.png||height="515" width="860"]] 507 507 420 + 508 508 Users can set UDP port. 509 509 510 -[[image:image-20230809174053-9.png]] 423 +~[~[image~:image-20230809174053-9.png]] 511 511 512 -=== 3.5.2 Simulate Connection === 513 513 426 +~=== 3.5.2 Simulate Connection === 427 + 428 + 514 514 We have completed the configuration of UDP. We can try sending packets to node red. 515 515 516 -[[image:image-20230810083934-1.png]] 431 +~[~[image~:image-20230810083934-1.png]] 517 517 518 -[[image:image-20230810084048-2.png||height="535" width="1052"]] 433 +~[~[image~:image-20230810084048-2.png||height="535" width="1052"]] 519 519 520 -=== 3.5.3 Configure NB-IoT Sensors === 521 521 522 -* (% style="color:#037691" %)**AT+PRO=3,0 or 3,5 ** (%%) **~/~/ hex format or json format** 523 -* (% style="color:#037691" %)**AT+SUBTOPIC=<device name>or User Defined** 524 -* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>or User Defined** 525 -* (% style="color:#037691" %)**AT+CLIENT=<device name> or User Defined** 526 -* (% style="color:#037691" %)**AT+UNAME=<device name> or User Defined** 527 -* (% style="color:#037691" %)**AT+PWD=“Your device token”** 436 +~=== 3.5.3 Configure NB-IoT Sensors === 528 528 529 -== 3.6 ThingsBoard.Cloud (via MQTT) == 530 530 531 -=== 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”~*~* 532 532 533 -== ==3.6.1.1Create Device====446 +~== 3.6 ThingsBoard.Cloud (via MQTT) == 534 534 535 - Createa New Device in[[ThingsBoard>>url:https://thingsboard.cloud/]].Record Device Name which is used for MQTT connection.448 +~=== 3.6.1 Configure ThingsBoard === 536 536 537 - [[image:image-20230802112413-32.png||height="583" width="1066"]]450 +~==== 3.6.1.1 Create Device ==== 538 538 539 -==== 3.6.1.2 Create Uplink & Downlink Converter ==== 540 540 541 - (% style="color:blue"%)**UplinkConverter**453 +Create a New Device in ~[~[ThingsBoard>>url:https:~/~/thingsboard.cloud/]]. Record Device Name which is used for MQTT connection. 542 542 543 - 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"]] 544 544 545 -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. 546 546 547 - [[image:image-20230802112413-33.png||height="597"width="1061"]]458 +~==== 3.6.1.2 Create Uplink & Downlink Converter ==== 548 548 549 -(% style="color:blue" %)**Downlink Converter** 550 550 551 - TheDownlinkconvertertransformingoutgoing RPC message and then the Integration sends it to external MQTT broke461 +~(% style="color:blue" %)~*~*Uplink Converter~*~* 552 552 553 - [[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. 554 554 555 -(% 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. 556 556 557 - ====3.6.1.3MQTT IntegrationSetup====467 +~[~[image~:image-20230802112413-33.png||height="597" width="1061"]] 558 558 559 -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**; 560 560 561 - [[image:image-20230802112413-35.png||height="597"width="1062"]]470 +~(% style="color:blue" %)~*~*Downlink Converter~*~* 562 562 563 - *Thextstepsstodtherecently created uplink anddownlink converters;472 +The Downlink converter transforming outgoing RPC message and then the Integration sends it to external MQTT broke 564 564 565 -[[image:image-20230802112413-3 6.png||height="598" width="1062"]]474 +~[~[image~:image-20230802112413-34.png||height="598" width="1063"]] 566 566 567 - [[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.~*~* 568 568 569 -(% style="color:blue" %)**Add a topic filter:** 570 570 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 + 571 571 Consistent with the theme of the node setting. 572 572 573 -You 498 +You can also select an MQTT QoS level. We use MQTT QoS level 0 (At most once) by default; 574 574 575 -[[image:image-20230802112413-38.png||height="598" width="1064"]] 500 +~[~[image~:image-20230802112413-38.png||height="598" width="1064"]] 576 576 577 -=== 3.6.2 Simulate with MQTT.fx === 578 578 579 - [[image:image-20230802112413-39.png]]503 +~=== 3.6.2 Simulate with MQTT.fx === 580 580 581 -[[image:image-20230802112413-40.png||height="525" width="980"]] 582 582 583 - === 3.6.3 ConfigureNB-IoT Sensor ===506 +~[~[image~:image-20230802112413-39.png]] 584 584 585 - (% style="color:blue" %)**AT Commands**508 +~[~[image~:image-20230802112413-40.png||height="525" width="980"]] 586 586 587 -* (% style="color:#037691" %)**AT+PRO=3,3 **(%%)** **~/~/ Use MQTT to connect to ThingsBoard. Payload Type set to 3. 588 588 589 - * (% style="color:#037691"%)**AT+SUBTOPIC=<devicename>**511 +~=== 3.6.3 Configure NB-IoT Sensor === 590 590 591 -* (% style="color:#037691" %)**AT+PUBTOPIC=<device name>** 592 592 593 - *(% style="color:#037691" %)**AT+CLIENT=<device name>or User Defined**514 +~(% style="color:blue" %)~*~*AT Commands~*~* 594 594 595 -* (% 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. 596 596 597 -* (% style="color:#037691" %)**AT+P WD=<deviceor User Defined**518 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=<device name>~*~* 598 598 599 - TestUplinkbyclick thebutton forsecond520 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=<device name>~*~* 600 600 601 - [[image:image-20230802112413-41.png||height="496"width="828"]]522 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=<device name> or User Defined~*~* 602 602 603 - [[image:image-20230802112413-42.png]]524 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 604 604 605 - [[image:image-20230802112413-43.png||height="407"width="825"]]526 +~* ~(% style="color:#037691" %)~*~*AT+PWD=<device name> or User Defined~*~* 606 606 607 - == 3.7 [[Tago.io>>url:https://admin.tago.io/]] (via MQTT) ==528 +Test Uplink by click the button for 1 second 608 608 609 - === 3.7.1 Createdevice& GetCredentials===530 +~[~[image~:image-20230802112413-41.png||height="496" width="828"]] 610 610 611 - 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]] 612 612 613 -[[image:image-20230802112413-4 4.png]]534 +~[~[image~:image-20230802112413-43.png||height="407" width="825"]] 614 614 615 -[[image:image-20230802112413-45.png]] 616 616 617 - 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) == 618 618 619 - [[image:image-20230802112413-46.png]]539 +~=== 3.7.1 Create device & Get Credentials === 620 620 621 -The device needs to enable the TLS mode and set the (% style="color:blue" %)**AT+TLSMOD=1,0**(%%) command. 622 622 623 - (% 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. 624 624 625 - * (% style="color:#037691" %)**Profile Name:“Any name”**544 +~[~[image~:image-20230802112413-44.png]] 626 626 627 - * (% style="color:#037691" %)**Broker Address: mqtt.tago.io**546 +~[~[image~:image-20230802112413-45.png]] 628 628 629 -* (% style="color:#037691" %)**Broker Port: 8883** 630 630 631 - * (% 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. 632 632 633 - (% style="color:blue" %)**On the section User credentials, set the following information:**551 +~[~[image~:image-20230802112413-46.png]] 634 634 635 -* (% style="color:#037691" %)**User Name: “Any value”** (%%) **~/~/ Tago validates your user by the token only** 636 636 637 - *(% 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. 638 638 639 - *(% style="color:#037691" %)**PUBTOPIC: “Any value”**556 +~(% style="color:blue" %)~*~*On the Connection Profile window, set the following information:~*~* 640 640 641 -* (% style="color:#037691" %)** SUBTOPIC:value”**558 +~* ~(% style="color:#037691" %)~*~*Profile Name: “Any name”~*~* 642 642 643 -(% style="color: blue" %)**AT command:**560 +~* ~(% style="color:#037691" %)~*~*Broker Address: mqtt.tago.io~*~* 644 644 645 -* (% style="color:#037691" %)** AT+PRO=3,0 or3,5 ** (%%) **~/~/ hex formatorjson format**562 +~* ~(% style="color:#037691" %)~*~*Broker Port: 8883~*~* 646 646 647 -* (% style="color:#037691" %)** AT+SUBTOPIC=<deviceame>or UserDefined**564 +~* ~(% style="color:#037691" %)~*~*Client ID: “Any value”~*~* 648 648 649 - *(% style="color:#037691" %)**AT+PUBTOPIC=<deviceme>or User Defined**566 +~(% style="color:blue" %)~*~*On the section User credentials, set the following information:~*~* 650 650 651 -* (% style="color:#037691" %)** AT+CLIENT=<devicename>orUserDefined**568 +~* ~(% style="color:#037691" %)~*~*User Name: “Any value”~*~* ~(%%) ~*~*~~/~~/ Tago validates your user by the token only~*~* 652 652 653 -* (% style="color:#037691" %)** AT+UNAME=<devicename>or User Defined**570 +~* ~(% style="color:#037691" %)~*~*Password: “Your device token”~*~* 654 654 655 -* (% style="color:#037691" %)** AT+PWD=“Your device token”**572 +~* ~(% style="color:#037691" %)~*~*PUBTOPIC: “Any value”~*~* 656 656 657 - ===3.7.2Simulatewith MQTT.fx ===574 +~* ~(% style="color:#037691" %)~*~*SUBTOPIC: “Any value”~*~* 658 658 659 - [[image:image-20230802112413-52.png]]576 +~(% style="color:blue" %)~*~*AT command:~*~* 660 660 661 - [[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~*~* 662 662 663 - 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~*~* 664 664 665 - [[image:image-20230808105217-1.png||height="556"width="1031"]]582 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=<device name>or User Defined~*~* 666 666 667 - [[image:image-20230808105329-3.png]]584 +~* ~(% style="color:#037691" %)~*~*AT+CLIENT=<device name> or User Defined~*~* 668 668 669 - ===3.7.3tago data===586 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 670 670 671 - [[image:image-20230802112413-50.png||height="242"width="1037"]]588 +~* ~(% style="color:#037691" %)~*~*AT+PWD=“Your device token”~*~* 672 672 673 - [[image:image-20230802112413-51.png||height="184"width="696"]]590 +~=== 3.7.2 Simulate with MQTT.fx === 674 674 675 -== 3.8 TCP Connection == 676 676 677 - (% style="color:blue" %)**AT command:**593 +~[~[image~:image-20230802112413-52.png]] 678 678 679 -* (% style="color:#037691" %)**AT+PRO=4,0 ** (%%) ~/~/ Set to use TCP protocol to uplink(HEX format) 680 680 681 - * (% 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"]] 682 682 683 -* (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5600 ** (%%) ~/~/ to set TCP server address and port 684 684 685 -(% 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~*~*. 686 686 687 -[[image:image-2023080 7233631-1.png]]601 +~[~[image~:image-20230808105217-1.png||height="556" width="1031"]] 688 688 689 - (% style="color:blue" %)**See resultin TCP Server:**603 +~[~[image~:image-20230808105329-3.png]] 690 690 691 -[[image:image-20230807233631-2.png]] 692 692 693 -== 3. 9 AWS Connection==606 +~=== 3.7.3 tago data === 694 694 695 -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]] 696 696 697 - =4.MQTT/UDP/TCP downlink=609 +~[~[image~:image-20230802112413-50.png||height="242" width="1037"]] 698 698 699 - ==4.1MQTT (via MQTT.fx)==611 +~[~[image~:image-20230802112413-51.png||height="184" width="696"]] 700 700 701 -Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx//.// 702 702 703 - **1.**Configurenode MQTT connection(via MQTT.fx):614 +~== 3.8 TCP Connection == 704 704 705 -(% style="color:blue" %)**AT command:** 706 706 707 - *(% style="color:#037691" %)**AT+PRO=3,0or 3,5 ** (%%)~/~/ hex format or json format617 +~(% style="color:blue" %)~*~*AT command:~*~* 708 708 709 -* (% style="color:#037691" %)**AT+ SUBTOPIC=UserDefined**619 +~* ~(% style="color:#037691" %)~*~*AT+PRO=4,0 ~*~* ~(%%) ~~/~~/ Set to use TCP protocol to uplink(HEX format) 710 710 711 -* (% style="color:#037691" %)**AT+P UBTOPIC=UserDefined**621 +~* ~(% style="color:#037691" %)~*~*AT+PRO=4,1 ~*~* ~(%%) ~~/~~/ Set to use TCP protocol to uplink(JSON format) 712 712 713 -* (% 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 714 714 715 - *(% style="color:#037691" %)**AT+PWD=<devicename>orUserDefined**625 +~(% style="color:blue" %)~*~*Sensor Console Output when Uplink:~*~* 716 716 717 - * (% style="color:#037691" %)**AT+SERVADDR=8.217.91.207,1883 ** (%%) ~/~/ to set MQTT server address andport627 +~[~[image~:image-20230807233631-1.png]] 718 718 719 -(% 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.** 720 720 721 - [[image:image-20240417180145-2.png||height="434"width="587"]][[width="584">>width="584"]]630 +~(% style="color:blue" %)~*~*See result in TCP Server:~*~* 722 722 723 - **2. **When the node uplink packets, we can observe the data in MQTT.fx.632 +~[~[image~:image-20230807233631-2.png]] 724 724 725 -[[image:image-20240418144337-1.png||height="709" width="802"]] 726 726 727 - **3.**The downlink command can besuccessfully sentonly when the downlink port is open.635 +~== 3.9 AWS Connection == 728 728 729 - The downlink port is opened for about 3 seconds after uplink packets are sent. 730 730 731 - Therefore,whenweseethenodeuplinkpacketsin the**Subscribe**window, weneed toimmediately switchtohe **publish** windowtopublishthe**hexformat** command.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]] 732 732 733 -[[image:image-20240418150435-3.png||height="582" width="659"]] 734 734 735 -[[image:image-20240418150932-4.png||height="492" width="1061"]] 736 736 737 - (% style="color:red"%)**Note:Userscan 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.**642 +~= 4. MQTT/UDP/TCP downlink = 738 738 739 -= 5.GPSpositioningfunction=644 +~== 4.1 MQTT (via MQTT.fx) == 740 740 741 - ===1.Turn onGPSfunction===646 +Configure MQTT connections properly and send downlink commands to configure nodes through the Publish function of MQTT.fx~/~/.~/~/ 742 742 743 -(% class="wikigeneratedid" %) 744 -AT+GPS=1 or 0 ~/~/GPS function on or off 648 +~*~*1.~*~* Configure node MQTT connection (via MQTT.fx): 745 745 650 +~(% style="color:blue" %)~*~*AT command:~*~* 746 746 747 - ===2.ExtendthetimetoturnonGNSS ===652 +~* ~(% style="color:#037691" %)~*~*AT+PRO=3,0 or 3,5 ~*~* ~(%%)~~/~~/ hex format or json format 748 748 749 - AT+GNSST=30~/~/GPSsearch forpositioninginformationfor 30 seconds654 +~* ~(% style="color:#037691" %)~*~*AT+SUBTOPIC=User Defined~*~* 750 750 656 +~* ~(% style="color:#037691" %)~*~*AT+PUBTOPIC=User Defined~*~* 751 751 752 - ===3.GetorsetGPS positioningintervalinunitsofhour===658 +~* ~(% style="color:#037691" %)~*~*AT+UNAME=<device name> or User Defined~*~* 753 753 754 - AT+GTDC=24~/~/ThedevicewillactivateGPS positioningevery24 hours660 +~* ~(% style="color:#037691" %)~*~*AT+PWD=<device name> or User Defined~*~* 755 755 662 +~* ~(% style="color:#037691" %)~*~*AT+SERVADDR=8.217.91.207,1883 ~*~* ~(%%) ~~/~~/ to set MQTT server address and port 756 756 757 -= 5.FAQ=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.~*~* 758 758 759 - ==5.1 What isthe usageof MultiSamplingand OneUplink?==666 +~[~[image~:image-20240417180145-2.png||height="434" width="587"]]~[~[image:image-20240417180737-3.png||height="431" width="584"]] 760 760 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 + 675 + The downlink port is opened for about 3 seconds after uplink packets are sent. 676 + 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. 678 + 679 +~[~[image~:image-20240418150435-3.png||height="582" width="659"]] 680 + 681 +~[~[image~:image-20240418150932-4.png||height="492" width="1061"]] 682 + 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.~*~* 684 + 685 + 686 + 687 + 688 +~= 5. FAQ = 689 + 690 +~== 5.1 What is the usage of Multi Sampling and One Uplink? == 691 + 692 + 761 761 The NB series has the feature for Multi Sampling and one uplink. See one of them 762 762 763 -[[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]] 764 764 765 765 User can use this feature for below purpose: 766 766 767 -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. 768 -1. Give more sampling data points. 769 -1. Increase reliable in transmission. For example. If user set 770 -1*. **AT+TR=1800** 771 -1*. **AT+NOUD=24** 772 -1*. **AT+TDC=7200** 773 -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. 774 774 775 -== 5.2 Why the uplink JSON format is not standard? == 707 +~== 5.2 Why the uplink JSON format is not standard? == 776 776 709 + 777 777 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. 778 778 779 779 The firmware version released after 2024, Mar will use change back to use Json format. Detail please check changelog. 780 780 781 -[[image:image-20240229233154-1.png]] 714 +~[~[image~:image-20240229233154-1.png]] 782 782 783 -= 6. Trouble Shooting: = 784 784 785 -= =6.1Checklist fordebuging NetworkConnectionissue. Signal Strenght:99issue.==717 +~= 6. Trouble Shooting: = 786 786 719 +~== 6.1 Checklist for debuging Network Connection issue. Signal Strenght:99 issue. == 720 + 721 + 787 787 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. 788 788 789 -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) 790 790 791 -[[image:image-20240207002003-1.png]] 726 +~[~[image~:image-20240207002003-1.png]] 792 792 728 + 793 793 If fail to attach network, it will shows signal 99. as below: 794 794 795 -[[image:image-20240207002129-2.png]] 731 +~[~[image~:image-20240207002129-2.png]] 796 796 797 -(% class="lead" %) 733 + 734 +~(% class="lead" %) 798 798 When see this issue, below are the checklist: 799 799 800 -* 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. 801 -* 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]]. 802 -* 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]]. 803 -* Check if the device is attached to Carrier network but reject. (need to check with operator). 804 -* 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. 805 805 806 -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. 807 807 808 808 809 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a"%)6.4 Whysometimethe ATCommandsslowinreponse?(%%)==746 +~== 6.2 Issue: "NBIOT did not respond" == 810 810 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 + 811 811 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. 812 812 813 -[[image:image-20240226111928-1.png]] 793 +~[~[image~:image-20240226111928-1.png]] 814 814 815 -== (% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.5 What is the Downlink Command by the NB device?(%%) == 816 816 817 -(% data-sider-select-id="bb6e9353-0c3f-473c-938d-4b416c9a03e6" %) 818 -=== UDP: === 796 +~== ~(% data-sider-select-id="765eceff-93b1-40ee-800b-b7b7d022ef8a" %)6.5 What is the Downlink Command by the NB device?~(%%) == 819 819 820 -(% 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" %) 821 821 Its downlink command is the same as the AT command, but brackets are required. 822 822 Example: 823 823 824 824 {AT+TDC=300} 825 825 826 -(% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 827 -=== MQTT: === 828 828 808 +~(% data-sider-select-id="90b80f1a-e924-4c8a-afc5-4429e019a657" %) 809 +~=== MQTT: === 810 + 829 829 Json: 830 830 831 831 The Json format in MQTT mode needs to be configured with all commands. ... ... @@ -862,7 +862,6 @@ 862 862 The supported commands are consistent with LoRaWAN's hex commands. 863 863 Please refer to the following link to obtain the hex format: 864 864 865 -[[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/]] 866 866 867 867 868 -
- image-20240602220856-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -250.9 KB - Content