<
From version < 5.1 >
edited by Xiaoling
on 2022/06/02 11:36
To version < 18.1 >
edited by Edwin Chen
on 2022/06/02 15:24
>
Change comment: There is no comment for this version

Summary

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.Xiaoling
1 +XWiki.Edwin
Content
... ... @@ -1,25 +1,34 @@
1 -{{box cssClass="floatinginfobox" title="**Contents**"}}
1 +**Contents: **
2 +
2 2  {{toc/}}
3 -{{/box}}
4 4  
5 +
6 +
7 +
5 5  = **1. Overview** =
6 6  
10 +(((
7 7  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 +)))
8 8  
14 +(((
9 9  [[Point to Point Software for LT-22222-L>>https://github.com/dragino/LT-22222-L]].
16 +)))
10 10  
11 -== ==
12 12  
13 13  = **2. Features for this firmware** =
14 14  
21 +== **2.1  Point To Point** ==
15 15  
16 -== **2.1  Overview** ==
23 +=== **2.1.1 Overview** ===
17 17  
18 -[[image:image-20220602111219-1.png]]
19 19  
26 +[[image:image-20220602111219-1.png||height="472" width="972"]]
20 20  
21 -== **2.2. Configure** ==
22 22  
29 +=== **2.2.2 Configure** ===
30 +
31 +
23 23  (% border="1" style="background-color:#f7faff; color:black; width:500px" %)
24 24  |=**A's configuration**|=**B's configuration**
25 25  |AT+GROUPMOD=0|AT+GROUPMOD=0
... ... @@ -32,14 +32,452 @@
32 32  |AT+DI2TODO2=2 |AT+DI2TODO2=2
33 33  |AT+DI2TORO2=2|AT+DI2TORO2=2
34 34  
44 +=== **2.2.3 Serial port display** ===
35 35  
36 -== **2.3.  Serial port display** ==
37 37  
47 +(% class="wikigeneratedid" %)
38 38  [[image:image-20220602111219-2.png]]
39 39  
40 40  
51 +(% class="wikigeneratedid" %)
41 41  [[image:image-20220602111219-3.png]]
42 42  
54 +(% class="wikigeneratedid" %)
43 43  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.
44 44  
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 +(((
45 45  
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,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +287.9 KB
Content
image-20220602144747-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +36.9 KB
Content
image-20220602144747-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +21.9 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0