Changes for page Point to Point Communication of LT-22222-L
Last modified by Edwin Chen on 2022/11/22 09:38
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 3 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -Point to Point Communication of LT-22222-L 1 + Point to Point Communication of LT-22222-L - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - Content
-
... ... @@ -1,34 +1,25 @@ 1 -**Contents: ** 2 - 1 +{{box cssClass="floatinginfobox" title="**Contents**"}} 3 3 {{toc/}} 3 +{{/box}} 4 4 5 - 6 - 7 - 8 8 = **1. Overview** = 9 9 10 -((( 11 11 Shipped LT-22222-L is base on LoRaWAN protocol. We also develop a open source Point to Point LoRa protocol for LT-22222-L. The source code and hex file can be found at: 12 -))) 13 13 14 -((( 15 15 [[Point to Point Software for LT-22222-L>>https://github.com/dragino/LT-22222-L]]. 16 -))) 17 17 11 +== == 18 18 19 19 = **2. Features for this firmware** = 20 20 21 -== **2.1 Point To Point** == 22 22 23 -== =**2.1.1Overview** ===16 +== **2.1 Overview** == 24 24 18 +[[image:image-20220602111219-1.png]] 25 25 26 -[[image:image-20220602111219-1.png||height="472" width="972"]] 27 27 21 +== **2.2. Configure** == 28 28 29 -=== **2.2.2 Configure** === 30 - 31 - 32 32 (% border="1" style="background-color:#f7faff; color:black; width:500px" %) 33 33 |=**A's configuration**|=**B's configuration** 34 34 |AT+GROUPMOD=0|AT+GROUPMOD=0 ... ... @@ -41,452 +41,14 @@ 41 41 |AT+DI2TODO2=2 |AT+DI2TODO2=2 42 42 |AT+DI2TORO2=2|AT+DI2TORO2=2 43 43 44 -=== **2.2.3 Serial port display** === 45 45 36 +== **2.3. Serial port display** == 46 46 47 -(% class="wikigeneratedid" %) 48 48 [[image:image-20220602111219-2.png]] 49 49 50 50 51 -(% class="wikigeneratedid" %) 52 52 [[image:image-20220602111219-3.png]] 53 53 54 -(% class="wikigeneratedid" %) 55 55 If the sender does not get the ACK reply from the receiver, it will retransmit up to 4 times, each interval is 6 seconds, and the UplinkCounter of the retransmission will not increase. 56 56 57 - 58 -== **2.2 Point To Mult-Point ** == 59 - 60 -=== **2.2.1 Overview** === 61 - 62 - 63 -[[image:1654152390874-192.png]] 64 - 65 - 66 -=== **2.2.2 Configure** === 67 - 68 - 69 -(% style="color:#4f81bd" %)**Configuration of the TX group:** 70 - 71 -AT+GROUPMOD=0,2 72 - 73 -AT+TXCHS=868700000 74 - 75 -AT+RXCHS=869000000 76 - 77 -AT+TRIG1=2,50 78 - 79 -AT+TRIG2=2,50 80 - 81 -AT+DI1TODO1=1 82 - 83 -AT+DI1TORO1=1 84 - 85 -AT+DI2TODO2=1 86 - 87 -AT+DI2TORO2=1 88 - 89 - 90 -(% style="color:#4f81bd" %)**Configuration for RX group number 1:** 91 - 92 -AT+GROUPMOD=1,1 93 - 94 -AT+TXCHS=869000000 95 - 96 -AT+RXCHS=868700000 97 - 98 - 99 -(% style="color:#4f81bd" %)**Configuration for RX group number 2:** 100 - 101 -AT+GROUPMOD=1,2 102 - 103 -AT+TXCHS=869000000 104 - 105 -AT+RXCHS=868700000 106 - 107 - 108 -=== **2.2.3 Serial port display** === 109 - 110 - 111 -[[image:image-20220602144747-1.png]] 112 - 113 - 114 -[[image:image-20220602144747-2.png]] 115 - 116 -((( 117 -If the TX group does not receive all the ACK replies from the RX group, it will retransmit up to 4 times, each time interval is 30 seconds, and the retransmission UplinkCounter will not increase. 118 -))) 119 - 120 - 121 -== **2.3 AT command** == 122 - 123 - 124 -((( 125 -(% style="color:#037691" %)**ATZ** (%%)**: ** Trig a reset of the MCU 126 -))) 127 - 128 -((( 129 -(% style="color:#037691" %)**AT+FDR** (%%)**:** Reset Parameters to Factory Default, Keys Reserve 130 -))) 131 - 132 -((( 133 -(% style="color:#037691" %)**AT+FCU** (%%)**:** Get or Set the Frame Counter Uplink 134 -))) 135 - 136 -((( 137 -(% style="color:#037691" %)**AT+FCD** (%%)**:** Get or Set the Frame Counter Downlink 138 -))) 139 - 140 -((( 141 -(% style="color:#037691" %)**AT+TXP** (%%)**:** Get or Set the transmit power, the maximum is 20dBm (default is 14dBm) 142 -))) 143 - 144 -((( 145 -(% style="color:#037691" %)**AT+SYNC** (%%)**:** Get or Set the Sync word [1:0x34,0:0x12] (default is 1) 146 -))) 147 - 148 -((( 149 -(% style="color:#037691" %)**AT+PMB** (%%)**: **Get or Set the preamble (default:8) 150 -))) 151 - 152 -((( 153 -(% style="color:#037691" %)**AT+TXCHS **(%%)**:** Get or Set the transmit frequency of TX (default:868700000) 154 -))) 155 - 156 -((( 157 -(% style="color:#037691" %)**AT+TXSF **(%%)**:** Get or Set the spreading factor of TX (7 to 12) (default:12) 158 -))) 159 - 160 -((( 161 -(% style="color:#037691" %)**AT+RXCHS **(%%)**:** Get or Set the transmit frequency of RX (default:869000000) 162 -))) 163 - 164 -((( 165 -(% style="color:#037691" %)**AT+RXSF **(%%)**:** Get or Set the spreading factor of RX (7 to 12) (default:12) 166 -))) 167 - 168 -((( 169 -(% style="color:#037691" %)**AT+BW **(%%)**: **Get or Set the bandwidth [0:125khz,1:250khz,2:500khz] (default:0) 170 -))) 171 - 172 -((( 173 -(% style="color:#037691" %)**AT+CR **(%%)**: **Get or Set the coding rate [1: 4/5, 2: 4/6, 3: 4/7, 4: 4/8] (default:1) 174 -))) 175 - 176 -((( 177 -(% style="color:#037691" %)**AT+TDC **(%%)**:** Get or set the application data transmission interval in ms(default 10 minutes) 178 -))) 179 - 180 -((( 181 -(% style="color:#037691" %)**AT+VER **(%%)**:** Get firmware version number 182 -))) 183 - 184 -((( 185 -(% style="color:#037691" %)**AT+SEND **(%%)**: **Set Custom sent hex data 186 -))) 187 - 188 -((( 189 -(% style="color:#037691" %)**AT+GROUPMOD **(%%)**: **Set or Get the grouping mode of the device (default: 0) 190 -))) 191 - 192 -((( 193 -((( 194 -(% style="color:#037691" %)**AT+GROUPID **(%%)**: **Set or Get the password for matching between TX group and RX group, which can be composed of numbers or characters (default: 12345678) 195 -))) 196 -))) 197 - 198 -((( 199 -(% style="color:#037691" %)**AT+TRIG1 **(%%)**:** Set or Get the DI1 pin interrupt trigger mode (default 0,0) 200 -))) 201 - 202 -((( 203 -(% style="color:#037691" %)**AT+TRIG2 **(%%)**: **Set or Get the DI2 pin interrupt trigger mode (default 0,0) 204 -))) 205 - 206 -((( 207 -(% style="color:#037691" %)**AT+DI1TODO1 **(%%)**: **Set or get the mode in which DI1 maps to DO1 (default 0) 208 -))) 209 - 210 -((( 211 -(% style="color:#037691" %)**AT+DI1TORO1 **(%%)**: **Set or get the mode in which DI1 maps to RO1(default 0) 212 -))) 213 - 214 -((( 215 -(% style="color:#037691" %)**AT+DI2TODO2 **(%%)**:** Set or get the mode in which DI2 maps to DO2(default 0) 216 -))) 217 - 218 -((( 219 -(% style="color:#037691" %)**AT+DI2TORO2 **(%%)**: **Set or get the mode in which DI2 maps to RO2(default 0) 220 -))) 221 - 222 -((( 223 223 224 -))) 225 - 226 -((( 227 - 228 -))) 229 - 230 -((( 231 -(% style="color:#4f81bd" %)**Example 1:** 232 -))) 233 - 234 -((( 235 -**AT+SEND=01020304 **will send a payload of 01020304 236 -))) 237 - 238 -((( 239 - 240 -))) 241 - 242 -((( 243 -(% style="color:#4f81bd" %)**Example 2: ** 244 -))) 245 - 246 -((( 247 -**AT+TRIGx=a **Trigger directly without triggering time 248 -))) 249 - 250 -((( 251 -**AT+TRIGx=a,b** 252 -))) 253 - 254 -((( 255 -a=0: falling edge; 256 -))) 257 - 258 -((( 259 -a=1: rising edge; 260 -))) 261 - 262 -((( 263 -a=2: falling edge or rising edge; 264 -))) 265 - 266 -((( 267 -b: triggering time in milliseconds. 268 -))) 269 - 270 -((( 271 -AT+TRIGx=2,50 Falling edge or rising edge trigger, and the trigger time exceeds 50ms. 272 -))) 273 - 274 -((( 275 - 276 -))) 277 - 278 -((( 279 -(% style="color:#4f81bd" %)**Example 3: ** 280 -))) 281 - 282 -((( 283 -**AT+DI1TODO1= maps value** 284 -))) 285 - 286 -((( 287 -**AT+DI1TORO1= maps value** 288 -))) 289 - 290 -((( 291 -**AT+DI2TODO2= maps value** 292 -))) 293 - 294 -((( 295 -**AT+DI2TORO2= maps value** 296 -))) 297 - 298 -((( 299 - 300 -))) 301 - 302 -(% border="1" style="background-color:#f7faff; color:black; width:706px" %) 303 -|=(% style="width: 102px;" %)((( 304 -Maps value 305 -)))|=(% style="width: 331px;" %)((( 306 -DIx to DOx 307 -)))|=(% style="width: 268px;" %)((( 308 -DIx to ROx 309 -))) 310 -|(% style="width:102px" %)((( 311 -0 312 -)))|(% style="width:331px" %)((( 313 -No Action 314 -)))|(% style="width:268px" %)((( 315 -No Action 316 -))) 317 -|(% style="width:102px" %)((( 318 -1 319 -)))|(% style="width:331px" %)((( 320 -If DIx is high, control DOx to output low level, If DIx is low, control DOx to output high level 321 -)))|(% style="width:268px" %)((( 322 -((( 323 -If DIx is high, control ROx to close, 324 -))) 325 - 326 -((( 327 -if DIx is low, control ROx to open 328 -))) 329 -))) 330 -|(% style="width:102px" %)((( 331 -2 332 -)))|(% style="width:331px" %)((( 333 -If DIx is high, control DOx to output high level, If DIx is low, control DOx to output low level 334 -)))|(% style="width:268px" %)((( 335 -((( 336 -If DIx is high, control ROx to open, 337 -))) 338 - 339 -((( 340 -if DIx is low, control ROx to close 341 -))) 342 -))) 343 -|(% style="width:102px" %)((( 344 -3 345 -)))|(% style="width:331px" %)((( 346 -DOx state flip 347 -)))|(% style="width:268px" %)((( 348 -ROx state flip 349 -))) 350 - 351 -((( 352 -(% style="color:#4f81bd" %)**Example 4: ** 353 -))) 354 - 355 -((( 356 -**AT+GROUPMOD=0** Set to point to point mode 357 -))) 358 - 359 -((( 360 -**AT+GROUPMOD=0,aa** Set the TX group that controls the number of aa (The maximum value of aa is 8) 361 -))) 362 - 363 -((( 364 -((( 365 -**AT+GROUPMOD=1,bb** Set to the RX group controlled by the TX group, numbered bb(The maximum value of aa is 8) 366 -))) 367 -))) 368 - 369 -((( 370 -**AT+GROUPMOD=0,2** Set to control the TX group of the two RX groups 371 -))) 372 - 373 -((( 374 -**AT+GROUPMOD=1,1** Set the RX group numbered 1 375 -))) 376 - 377 -((( 378 -**AT+GROUPMOD=1,2** Set the RX group numbered 2 379 -))) 380 - 381 - 382 -== **2.4 Data Format** == 383 - 384 -((( 385 -8 bytes of GROUPID + 9 bytes of payload + 4 bytes of checksum 386 -))) 387 - 388 -((( 389 - 390 -))) 391 - 392 -((( 393 -(% style="color:#4f81bd" %)**Payload:** 394 -))) 395 - 396 -(% border="1" style="background-color:#f7faff; color:black; width:938px" %) 397 -|=(% style="width: 123px;" %)((( 398 -**Size (bytes)** 399 -)))|=(% style="width: 107px;" %)((( 400 -1 401 -)))|=(% style="width: 107px;" %)((( 402 -1 403 -)))|=(% style="width: 107px;" %)((( 404 -1 405 -)))|=(% style="width: 107px;" %)((( 406 -1 407 -)))|=(% style="width: 107px;" %)((( 408 -1 409 -)))|=(% style="width: 107px;" %)((( 410 -1 411 -)))|=(% style="width: 107px;" %)((( 412 -1 413 -)))|=(% style="width: 107px;" %)((( 414 -1 415 -)))|=(% style="width: 107px;" %)((( 416 -1 417 -))) 418 -|(% style="width:123px" %)((( 419 -**Value** 420 -)))|(% style="width:38px" %)((( 421 -address 422 -)))|(% style="width:70px" %)((( 423 -request 424 -)))|(% style="width:52px" %)((( 425 -ACK 426 -)))|(% style="width:127px" %)((( 427 -((( 428 -DI1& 429 -))) 430 - 431 -((( 432 -DI1 level 433 -))) 434 -)))|(% style="width:101px" %)((( 435 -DI1TODO1 436 -)))|(% style="width:91px" %)((( 437 -DI1TORO1 438 -)))|(% style="width:111px" %)((( 439 -((( 440 -DI2& 441 -))) 442 - 443 -((( 444 -DI2 level 445 -))) 446 -)))|(% style="width:105px" %)((( 447 -DI2TODO2 448 -)))|(% style="width:106px" %)((( 449 -DI2TORO2 450 -))) 451 - 452 -((( 453 -(% style="color:#037691" %)**The first byte**(%%)**:** 00 is the broadcast address, 01-08 is the RX group number. 454 -))) 455 - 456 -((( 457 -(% style="color:#037691" %)**The second byte**(%%)**:** send mapping request when not 0, not request when it is 0. 458 -))) 459 - 460 -((( 461 -(% style="color:#037691" %)**The third byte**(%%)**:** ACK returned to the sender after the mapping is completed. 462 -))) 463 - 464 -((( 465 -((( 466 -(% style="color:#037691" %)**The fourth byte**(%%)**:** the high four bits are 1 to represent DI1, and the low four bits are the level of DI1 when the interrupt is triggered. 467 -))) 468 -))) 469 - 470 -((( 471 -(% style="color:#037691" %)**The Fifth byte**(%%)**: **DI1TODO1 when the interrupt is triggered, 0 when the interrupt is not triggered. 472 -))) 473 - 474 -((( 475 -(% style="color:#037691" %)**The Sixth byte**(%%)**:** 0 does not trigger interrupt when DI1TORO1 interrupt is triggered. 476 -))) 477 - 478 -((( 479 -((( 480 -(% style="color:#037691" %)**The seventh byte**(%%)**:** the high four bits are 2 to represent DI2, and the low four bits are the level of DI2 when the interrupt is triggered. 481 -))) 482 -))) 483 - 484 -((( 485 -(% style="color:#037691" %)**The 8th byte**(%%)**: **DI2TODO2 when the interrupt is triggered, 0 when the interrupt is not triggered. 486 -))) 487 - 488 -((( 489 -(% style="color:#037691" %)**The 9th byte**(%%)**:** DI2TORO2 when an interrupt is triggered, 0 when an interrupt is not triggered. 490 -))) 491 - 492 -
- 1654152390874-192.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -287.9 KB - Content
- image-20220602144747-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -36.9 KB - Content
- image-20220602144747-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.9 KB - Content