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