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