Version 165.1 by Dilisi S on 2024/11/06 22:47

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20220523163353-1.jpeg||height="604" width="500"]]
3
4
5
6
7
8
9
10 **Table of Contents:**
11
12 {{toc/}}
13
14
15
16
17
18
19
20 = 1. Introduction =
21
22 == 1.1 What is the LT-22222-L I/O Controller? ==
23
24 (((
25 (((
26 The Dragino (% style="color:blue" %)**LT-22222-L I/O Controller**(%%) is an advanced LoRaWAN device designed to provide seamless wireless long-range connectivity with various I/O options, including analog current and voltage inputs, digital inputs and outputs, and relay outputs.
27
28 The LT-22222-L I/O Controller simplifies and enhances I/O monitoring and controlling. It is ideal for professional applications in wireless sensor networks, including irrigation systems, smart metering, smart cities, building automation, and more. These controllers are designed for easy, cost-effective deployment using LoRa wireless technology.
29 )))
30 )))
31
32 (((
33 With the LT-22222-L I/O Controller, users can transmit data over ultra-long distances with low power consumption using LoRa, a spread-spectrum modulation technique derived from chirp spread spectrum (CSS) technology that operates on license-free ISM bands.
34 )))
35
36 > The LT Series I/O Controllers are designed for easy, low-cost installation on LoRaWAN networks.
37
38 (((
39 You can connect the LT-22222-L I/O Controller to a LoRaWAN network service provider in several ways:
40
41 * If there is public LoRaWAN network coverage in the area where you plan to install the device (e.g., The Things Network), you can select a network and register the LT-22222-L I/O controller with it.
42 * If there is no public LoRaWAN coverage in your area, you can set up a LoRaWAN gateway, or multiple gateways, and connect them to a LoRaWAN network server to create adequate coverage. Then, register the LT-22222-L I/O controller with this network.
43 * Setup your own private LoRaWAN network.
44
45 > You can use a LoRaWAN gateway, such as the Dragino LG308, to expand or create LoRaWAN coverage in your area.
46 )))
47
48 (((
49 [[image:1653295757274-912.png]]
50
51
52 )))
53
54 == 1.2 Specifications ==
55
56 (% style="color:#037691" %)**Hardware System:**
57
58 * STM32L072xxxx MCU
59 * SX1276/78 Wireless Chip 
60 * Power Consumption:
61 ** Idle: 4mA@12v
62 ** 20dB Transmit: 34mA@12v
63 * Operating Temperature: -40 ~~ 85 Degrees, No Dew
64
65 (% style="color:#037691" %)**Interface for Model: LT22222-L:**
66
67 * 2 x Digital dual direction Input (Detect High/Low signal, Max: 50v, or 220v with optional external resistor)
68 * 2 x Digital Output (NPN output. Max pull-up voltage 36V,450mA)
69 * 2 x Relay Output (5A@250VAC / 30VDC)
70 * 2 x 0~~20mA Analog Input (res:0.01mA)
71 * 2 x 0~~30V Analog Input (res:0.01v)
72 * Power Input 7~~ 24V DC. 
73
74 (% style="color:#037691" %)**LoRa Spec:**
75
76 * Frequency Range:
77 ** Band 1 (HF): 862 ~~ 1020 Mhz
78 ** Band 2 (LF): 410 ~~ 528 Mhz
79 * 168 dB maximum link budget.
80 * +20 dBm - 100 mW constant RF output vs.
81 * +14 dBm high-efficiency PA.
82 * Programmable bit rate up to 300 kbps.
83 * High sensitivity: down to -148 dBm.
84 * Bullet-proof front end: IIP3 = -12.5 dBm.
85 * Excellent blocking immunity.
86 * Low RX current of 10.3 mA, 200 nA register retention.
87 * Fully integrated synthesizer with a resolution of 61 Hz.
88 * FSK, GFSK, MSK, GMSK, LoRaTM and OOK modulation.
89 * Built-in bit synchronizer for clock recovery.
90 * Preamble detection.
91 * 127 dB Dynamic Range RSSI.
92 * Automatic RF Sense and CAD with ultra-fast AFC.
93 * Packet engine up to 256 bytes with CRC.
94
95 == 1.3 Features ==
96
97 * LoRaWAN Class A & Class C protocol
98 * Optional Customized LoRa Protocol
99 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/RU864/IN865/MA869
100 * AT Commands to change parameters
101 * Remotely configure parameters via LoRaWAN Downlink
102 * Firmware upgradable via program port
103 * Counting
104
105 == 1.4 Applications ==
106
107 * Smart Buildings & Home Automation
108 * Logistics and Supply Chain Management
109 * Smart Metering
110 * Smart Agriculture
111 * Smart Cities
112 * Smart Factory
113
114 == 1.5 Hardware Variants ==
115
116
117 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
118 |(% style="background-color:#4f81bd; color:white; width:103px" %)**Model**|(% style="background-color:#4f81bd; color:white; width:131px" %)**Photo**|(% style="background-color:#4f81bd; color:white; width:266px" %)**Description**
119 |(% style="width:103px" %)**LT22222-L**|(% style="width:131px" %)(((
120 (% style="text-align:center" %)
121 [[image:image-20230424115112-1.png||height="106" width="58"]]
122 )))|(% style="width:334px" %)(((
123 * 2 x Digital Input (Bi-direction)
124 * 2 x Digital Output
125 * 2 x Relay Output (5A@250VAC / 30VDC)
126 * 2 x 0~~20mA Analog Input (res:0.01mA)
127 * 2 x 0~~30V Analog Input (res:0.01v)
128 * 1 x Counting Port
129 )))
130
131 = 2. Assembling the Device =
132
133 == 2.1 What is included in the package? ==
134
135 The package includes the following items:
136
137 * 1 x LT-22222-L I/O Controller
138 * 1 x LoRaWAN antenna matched to the frequency of the LT-22222-L
139 * 1 x bracket for wall mounting
140 * 1 x programming cable
141
142 Attach the LoRaWAN antenna to the antenna connector, ANT,** **located on the top right side of the device, next to the upper terminal block. Secure the antenna by tightening it clockwise.
143
144 == 2.2 Terminals ==
145
146 Upper screw terminal block (from left to right):
147
148 (% style="width:634px" %)
149 |=(% style="width: 295px;" %)Terminal|=(% style="width: 338px;" %)Function
150 |(% style="width:295px" %)GND|(% style="width:338px" %)Ground
151 |(% style="width:295px" %)VIN|(% style="width:338px" %)Input Voltage
152 |(% style="width:295px" %)AVI2|(% style="width:338px" %)Analog Voltage Input Terminal 2
153 |(% style="width:295px" %)AVI1|(% style="width:338px" %)Analog Voltage Input Terminal 1
154 |(% style="width:295px" %)ACI2|(% style="width:338px" %)Analog Current Input Terminal 2
155 |(% style="width:295px" %)ACI1|(% style="width:338px" %)Analog Current Input Terminal 1
156
157 Lower screw terminal block (from left to right):
158
159 (% style="width:633px" %)
160 |=(% style="width: 296px;" %)Terminal|=(% style="width: 334px;" %)Function
161 |(% style="width:296px" %)RO1-2|(% style="width:334px" %)Relay Output 1
162 |(% style="width:296px" %)RO1-1|(% style="width:334px" %)Relay Output 1
163 |(% style="width:296px" %)RO2-2|(% style="width:334px" %)Relay Output 2
164 |(% style="width:296px" %)RO2-1|(% style="width:334px" %)Relay Output 2
165 |(% style="width:296px" %)DI2+|(% style="width:334px" %)Digital Input 2
166 |(% style="width:296px" %)DI2-|(% style="width:334px" %)Digital Input 2
167 |(% style="width:296px" %)DI1+|(% style="width:334px" %)Digital Input 1
168 |(% style="width:296px" %)DI1-|(% style="width:334px" %)Digital Input 1
169 |(% style="width:296px" %)DO2|(% style="width:334px" %)Digital Output 2
170 |(% style="width:296px" %)DO1|(% style="width:334px" %)Digital Output 1
171
172 == 2.3 Powering the LT-22222-L ==
173
174 The LT-22222-L I/O Controller can be powered by a 7–24V DC power source. Connect the power supply’s positive wire to the VIN and the negative wire to the GND screw terminals. The power indicator (PWR) LED will turn on when the device is properly powered.
175
176
177 [[image:1653297104069-180.png]]
178
179
180 = 3. Operation Mode =
181
182 == 3.1 How does it work? ==
183
184 By default, the LT-22222-L is configured to operate in LoRaWAN Class C mode. It supports OTAA (Over-the-Air Activation), the most secure method for activating a device with a LoRaWAN network server. The LT-22222-L comes with device registration information that allows you to register it with a LoRaWAN network, enabling the device to perform OTAA activation with the network server upon initial power-up and after any subsequent reboots.
185
186 For LT-22222-L, the LED will show the Join status: After powering on, the TX LED will fast-blink 5 times which means the LT-22222-L will enter the working mode and start to JOIN the LoRaWAN network. The TX LED will be on for 5 seconds after joining the network. When there is a message from the server, the RX LED will be on for 1 second. 
187
188 In case you can't set the root key and other identifiers in the network server and must use them from the server, you can use [[AT Commands>>||anchor="H4.UseATCommand"]] to configure them on the device.
189
190 == 3.2 Registering with a LoRaWAN network server ==
191
192 The diagram below shows how the LT-22222-L connects to a typical LoRaWAN network.
193
194 [[image:image-20220523172350-1.png||height="266" width="864"]]
195
196 === 3.2.1 Prerequisites ===
197
198 Make sure you have the device registration information such as DevEUI, AppEUI, and AppKey with you. The registration information can be found on a sticker that can be found inside the package. Please keep the **registration information** sticker in a safe place for future reference.
199
200 [[image:image-20230425173427-2.png||height="246" width="530"]]
201
202 The following subsections explain how to register the LT-22222-L with different LoRaWAN network server providers.
203
204 === 3.2.2 The Things Stack Sandbox (TTSS) ===
205
206 * Log in to your [[The Things Stack Sandbox>>https://eu1.cloud.thethings.network]] account.
207 * Create an application if you do not have one yet.
208 * Register LT-22222-L with that application. Two registration options are available:
209
210 ==== Using the LoRaWAN Device Repository: ====
211
212 * Go to your application and click on the **Register end device** button.
213 * On the **Register end device** page:
214 ** Select the option **Select the end device in the LoRaWAN Device Repository**.
215 ** Choose the **End device brand**, **Model**, **Hardware version**, **Firmware version**, and **Profile (Region)**.
216 ** Select the **Frequency plan** that matches your device.
217
218 [[image:lt-22222-l-dev-repo-reg-p1.png||height="625" width="1000"]]
219
220 *
221 ** Enter the **AppEUI** in the **JoinEUI** field and click the **Confirm** button.
222 ** Enter the **DevEUI** in the **DevEUI** field.
223 ** Enter the **AppKey** in the **AppKey** field.
224 ** In the **End device ID** field, enter a unique name within this application for your LT-22222-N.
225 ** Under **After registration**, select the **View registered end device** option.
226
227 [[image:lt-22222-l-dev-repo-reg-p2.png||height="625" width="1000"]]
228
229 ==== Entering device information manually: ====
230
231 * On the **Register end device** page:
232 ** Select the **Enter end device specifies manually** option as the input method.
233 ** Select the **Frequency plan** that matches your device.
234 ** Select the **LoRaWAN version**.
235 ** Select the **Regional Parameters version**.
236 ** Click **Show advanced activation, LoRaWAN class and cluster settings** link to expand the section.
237 ** Select **Over the air activation (OTAA)** option under the **Activation mode**
238 ** Select **Class C (Continuous)** from the **Additional LoRaWAN class capabilities**.
239
240 [[image:lt-22222-l-manually-p1.png||height="625" width="1000"]]
241
242
243 * Enter **AppEUI** in the **JoinEUI** field and click the **Confirm** button.
244 * Enter **DevEUI** in the **DevEUI** field.
245 * Enter **AppKey** in the **AppKey** field.
246 * In the **End device ID** field, enter a unique name within this application for your LT-22222-N.
247 * Under **After registration**, select the **View registered end device** option.
248
249 [[image:lt-22222-l-manually-p2.png||height="625" width="1000"]]
250
251
252 ==== Joining ====
253
254 Click on **Live Data** in the left navigation. Then, power on the device, and it will join The Things Stack Sandbox. You can see the join request, join accept, followed by uplink messages form the device showing in the Live Data panel.
255
256 [[image:1653298044601-602.png||height="405" width="709"]]
257
258
259 == 3.3 Uplink Payload formats ==
260
261
262 The LT-22222-L has 5 working modes. It also has an interrupt/trigger mode for different types of applications that can be used together with any working mode as an additional feature. The default mode is MOD1 and you can switch between these modes using AT commands.
263
264 * (% style="color:blue" %)**MOD1**(%%): (default mode/factory set): 2 x ACI + 2AVI + DI + DO + RO
265
266 * (% style="color:blue" %)**MOD2**(%%): Double DI Counting + DO + RO
267
268 * (% style="color:blue" %)**MOD3**(%%): Single DI Counting + 2 x ACI + DO + RO
269
270 * (% style="color:blue" %)**MOD4**(%%): Single DI Counting + 1 x Voltage Counting + DO + RO
271
272 * (% style="color:blue" %)**MOD5**(%%): Single DI Counting + 2 x AVI + 1 x ACI + DO + RO
273
274 * (% style="color:blue" %)**ADDMOD6**(%%): Trigger Mode, Optional, used together with MOD1 ~~ MOD5
275
276 === 3.3.1 AT+MOD~=1, 2ACI+2AVI ===
277
278
279 (((
280 The uplink payload is 11 bytes long. Uplink packets are sent over LoRaWAN FPort=2. By default, one uplink is sent every 10 minutes. (% style="display:none" wfd-invisible="true" %)
281
282 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
283 |(% style="background-color:#4f81bd; color:white" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**
284 |Value|(((
285 AVI1 voltage
286 )))|(((
287 AVI2 voltage
288 )))|(((
289 ACI1 Current
290 )))|(((
291 ACI2 Current
292 )))|DIDORO*|(((
293 Reserve
294 )))|MOD
295 )))
296
297 (((
298 (% style="color:#4f81bd" %)*** DIDORO**(%%) is a combination of RO1, RO2, DI3, DI2, DI1, DO3, DO2 and DO1, for a total of 1 byte, as shown below.
299
300 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
301 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
302 |RO1|RO2|--DI3--|DI2|DI1|--DO3--|DO2|DO1
303 )))
304
305 * RO is for the relay. ROx=1: closed, ROx=0 always open.
306 * DI is for digital input. DIx=1: high or floating, DIx=0: low.
307 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
308
309 (% style="color:red" %)**Note: DI3 and DO3 bits are not valid for LT-22222-L**
310
311 For example, if the payload is: [[image:image-20220523175847-2.png]]
312
313
314 **The interface values can be calculated as follows:  **
315
316 AVI1 channel voltage is 0x04AB/1000=1195(DEC)/1000=1.195V
317
318 AVI2 channel voltage is 0x04AC/1000=1.196V
319
320 ACI1 channel current is 0x1310/1000=4.880mA
321
322 ACI2 channel current is 0x1300/1000=4.864mA
323
324 The last byte 0xAA= **10101010**(b) means,
325
326 * [1] The RO1 relay channel is CLOSED, and the RO1 LED is ON.
327 * [0] The RO2 relay channel is OPEN, and the RO2 LED is OFF.
328 * [1] DI3 - not used for LT-22222-L.
329 * [0] DI2 channel input is LOW, and the DI2 LED is OFF.
330 * [1] DI1 channel input state:
331 ** DI1 is FLOATING when no sensor is connected between DI1+ and DI1-.
332 ** DI1 is HIGH when a sensor is connected between DI1- and DI1+ and the sensor is ACTIVE.
333 ** DI1 LED is ON in both cases.
334 * [0] DO3 - not used for LT-22222-L.
335 * [1] DO2 channel output is LOW, and the DO2 LED is ON.
336 * [0] DO1 channel output state:
337 ** DO1 is FLOATING when there is no load between DO1 and V+.
338 ** DO1 is HIGH when there is a load between DO1 and V+.
339 ** DO1 LED is OFF in both cases.
340
341 === 3.3.2 AT+MOD~=2, (Double DI Counting) ===
342
343
344 (((
345 **For LT-22222-L**: In this mode, the **DI1 and DI2** are used as counting pins.
346 )))
347
348 (((
349 The uplink payload is 11 bytes long.
350
351 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
352 |(% style="background-color:#4f81bd; color:white" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white" %)**4**|(% style="background-color:#4f81bd; color:white" %)**4**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**
353 |Value|COUNT1|COUNT2 |DIDORO*|(((
354 Reserve
355 )))|MOD
356 )))
357
358 (((
359 (% style="color:#4f81bd" %)***DIDORO**(%%) is a combination of RO1, RO2, DO3, DO2 and DO1, for a total of 1 byte, as shown below.
360
361 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
362 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
363 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
364
365 * RO is for the relay. ROx=1: closed, ROx=0 always open.
366 )))
367
368 * FIRST: Indicates that this is the first packet after joining the network.
369 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
370
371 (((
372 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L**
373
374
375 )))
376
377 (((
378 **To activate this mode, run the following AT commands:**
379 )))
380
381 (((
382 (% class="box infomessage" %)
383 (((
384 **AT+MOD=2**
385
386 **ATZ**
387 )))
388 )))
389
390 (((
391
392
393 (% style="color:#4f81bd" %)**AT Commands for counting:**
394 )))
395
396 (((
397 **For LT22222-L:**
398
399 (% style="color:blue" %)**AT+TRIG1=0,100**(%%)** (sets the DI1 port to trigger on a LOW level. The valid signal duration is 100ms) **
400
401 (% style="color:blue" %)**AT+TRIG1=1,100**(%%)** (sets the DI1 port to trigger on a HIGH level. The valid signal duration is 100ms) **
402
403 (% style="color:blue" %)**AT+TRIG2=0,100**(%%)** (sets the DI2 port to trigger on a LOW level. The valid signal duration is 100ms) **
404
405 (% style="color:blue" %)**AT+TRIG2=1,100**(%%)** (sets the DI2 port to trigger on a HIGH level. The valid signal duration is 100ms) **
406
407 (% style="color:blue" %)**AT+SETCNT=1,60**(%%)** (sets the COUNT1 value to 60)**
408
409 (% style="color:blue" %)**AT+SETCNT=2,60 **(%%)**(sets the COUNT2 value to 60)**
410 )))
411
412
413 === 3.3.3 AT+MOD~=3, Single DI Counting + 2 x ACI ===
414
415
416 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
417
418 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
419 |(% style="background-color:#4f81bd; color:white" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white" %)**4**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**
420 |Value|COUNT1|(((
421 ACI1 Current
422 )))|(((
423 ACI2 Current
424 )))|DIDORO*|Reserve|MOD
425
426 (((
427 (% style="color:#4f81bd" %)***DIDORO**(%%) is a combination of RO1, RO2, DI3, DI2, DI1, DO3, DO2 and DO1, for a total of 1 byte, as shown below.
428
429 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
430 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
431 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
432 )))
433
434 * RO is for the relay. ROx=1: closed, ROx=0 always open.
435 * FIRST: Indicates that this is the first packet after joining the network.
436 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
437
438 (((
439 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
440 )))
441
442
443 (((
444 **To activate this mode, run the following AT commands:**
445 )))
446
447 (((
448 (% class="box infomessage" %)
449 (((
450 **AT+MOD=3**
451
452 **ATZ**
453 )))
454 )))
455
456 (((
457 AT Commands for counting:
458
459 The AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
460 )))
461
462
463 === 3.3.4 AT+MOD~=4, Single DI Counting + 1 x Voltage Counting ===
464
465
466 (((
467 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
468 )))
469
470 (((
471 The AVI1 is also used for counting. It monitors the voltage and checks it every **60 seconds**. If the voltage is higher or lower than VOLMAX mV, the AVI1 count increases by 1, allowing AVI1 counting to be used to measure a machine's working hours.
472
473 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
474 |(% style="background-color:#4f81bd; color:white" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white" %)**4**|(% style="background-color:#4f81bd; color:white" %)**4**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**
475 |Value|COUNT1|AVI1 Counting|DIDORO*|(((
476 Reserve
477 )))|MOD
478 )))
479
480 (((
481 (% style="color:#4f81bd" %)**DIDORO **(%%)is a combination of RO1, RO2, DI3, DI2, DI1, DO3, DO2 and DO1, for a total of 1 byte, as shown below.
482
483 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
484 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
485 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
486 )))
487
488 * RO is for the relay. ROx=1: closed, ROx=0 always open.
489 * FIRST: Indicates that this is the first packet after joining the network.
490 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
491
492 (((
493 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
494
495
496 )))
497
498 (((
499 **To activate this mode, run the following AT commands:**
500 )))
501
502 (((
503 (% class="box infomessage" %)
504 (((
505 **AT+MOD=4**
506
507 **ATZ**
508 )))
509 )))
510
511 (((
512 Other AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
513 )))
514
515 (((
516 **In addition to that, below are the commands for AVI1 Counting:**
517
518 (% style="color:blue" %)**AT+SETCNT=3,60**(%%)**  (Sets AVI Count to 60)**
519
520 (% style="color:blue" %)**AT+VOLMAX=20000**(%%)**  (If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1)**
521
522 (% style="color:blue" %)**AT+VOLMAX=20000,0**(%%)**  (If AVI1 voltage lower than VOLMAX (20000mV =20v), counter increase 1)**
523
524 (% style="color:blue" %)**AT+VOLMAX=20000,1**(%%)**  (If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1)**
525 )))
526
527
528 === 3.3.5 AT+MOD~=5, Single DI Counting + 2 x AVI + 1 x ACI ===
529
530
531 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
532
533 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
534 |(% style="background-color:#4f81bd; color:white" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**2**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**|(% style="background-color:#4f81bd; color:white" %)**1**
535 |Value|(((
536 AVI1 voltage
537 )))|(((
538 AVI2 voltage
539 )))|(((
540 ACI1 Current
541 )))|COUNT1|DIDORO*|(((
542 Reserve
543 )))|MOD
544
545 (((
546 (% style="color:#4f81bd" %)**DIDORO**(%%) is a combination of RO1, RO2, DI3, DI2, DI1, DO3, DO2 and DO1, for a total of 1 byte, as shown below.
547
548 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
549 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
550 |RO1|RO2|FIRST|Reserve|Reserve|DO3|DO2|DO1
551 )))
552
553 * RO is for the relay. ROx=1: closed, ROx=0 always open.
554 * FIRST: Indicates that this is the first packet after joining the network.
555 * (((
556 DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
557 )))
558
559 (((
560 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
561 )))
562
563 (((
564 **To activate this mode, run the following AT commands:**
565 )))
566
567 (((
568 (% class="box infomessage" %)
569 (((
570 **AT+MOD=5**
571
572 **ATZ**
573 )))
574 )))
575
576 (((
577 Other AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
578 )))
579
580
581 === 3.3.6 AT+ADDMOD~=6. (Trigger Mode, Optional) ===
582
583
584 (% style="color:#4f81bd" %)**This mode is optional and intended for trigger purposes. It can operate together with other modes.**
585
586 For example, if you configured the following commands:
587
588 * **AT+MOD=1 ** **~-~->**  The normal working mode
589 * **AT+ADDMOD6=1**   **~-~->**  Enable trigger mode
590
591 The LT-22222-L will continuously monitor AV1, AV2, AC1, and AC2 every 5 seconds. LT will send uplink packets in two cases:
592
593 1. Periodically uplink (Based on TDC time). The payload is the same as in normal mode (MOD=1 for the commands above). These are (% style="color:#4f81bd" %)**unconfirmed**(%%) uplinks.
594 1. Trigger uplink when the trigger condition is met. LT will send two packets in this case. The first uplink uses the payload specified in trigger mode (MOD=6). The second packet uses the normal mode payload (MOD=1 as set above). Both are (% style="color:#4f81bd" %)**CONFIRMED uplinks.**
595
596 (% style="color:#037691" %)**AT Command to set Trigger Condition**:
597
598 (% style="color:#4f81bd" %)**Trigger based on voltage**:
599
600 Format: AT+AVLIM=<AV1_LIMIT_LOW>,< AV1_LIMIT_HIGH>,<AV2_LIMIT_LOW>,< AV2_LIMIT_HIGH>
601
602
603 **Example:**
604
605 AT+AVLIM=3000,6000,0,2000   (triggers an uplink if AVI1 voltage is lower than 3V or higher than 6V, or if AV2 voltage is higher than 2V)
606
607 AT+AVLIM=5000,0,0,0   (triggers an uplink if AVI1 voltage lower than 5V. Use 0 for parameters that are not in use)
608
609
610 (% style="color:#4f81bd" %)**Trigger based on current**:
611
612 Format: AT+ACLIM=<AC1_LIMIT_LOW>,< AC1_LIMIT_HIGH>,<AC2_LIMIT_LOW>,< AC2_LIMIT_HIGH>
613
614
615 **Example:**
616
617 AT+ACLIM=10000,15000,0,0   (triggers an uplink if ACI1 voltage is lower than 10mA or higher than 15mA)
618
619
620 (% style="color:#4f81bd" %)**Trigger based on DI status**:
621
622 DI status triggers Flag.
623
624 Format: AT+DTRI=<DI1_TIRGGER_FlAG>,< DI2_TIRGGER_FlAG >
625
626
627 **Example:**
628
629 AT+ DTRI =1,0   (Enable DI1 trigger / disable DI2 trigger)
630
631
632 (% style="color:#037691" %)**LoRaWAN Downlink Commands for Setting the Trigger Conditions:**
633
634 Type Code: 0xAA. Downlink command same as AT Command **AT+AVLIM, AT+ACLIM**
635
636 Format: AA xx yy1 yy1 yy2 yy2 yy3 yy3 yy4 yy4
637
638 AA: Type Code for this downlink Command:
639
640 xx: **0**: Limit for AV1 and AV2; **1**: limit for AC1 and AC2; **2**: DI1and DI2 trigger enable/disable.
641
642 yy1 yy1: AC1 or AV1 LOW limit or DI1/DI2 trigger status.
643
644 yy2 yy2: AC1 or AV1 HIGH limit.
645
646 yy3 yy3: AC2 or AV2 LOW limit.
647
648 Yy4 yy4: AC2 or AV2 HIGH limit.
649
650
651 **Example 1**: AA 00 13 88 00 00 00 00 00 00
652
653 Same as AT+AVLIM=5000,0,0,0 (triggers an uplink if AVI1 voltage is lower than 5V. Use 0s for parameters that are not in use)
654
655
656 **Example 2**: AA 02 01 00
657
658 Same as AT+ DTRI =1,0 (Enable DI1 trigger / disable DI2 trigger)
659
660
661 (% style="color:#4f81bd" %)**Trigger Settings Payload Explanation:**
662
663 MOD6 Payload: total of 11 bytes
664
665 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
666 |(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:69px" %)**1**|(% style="background-color:#4f81bd; color:white; width:69px" %)**1**|(% style="background-color:#4f81bd; color:white; width:109px" %)**1**|(% style="background-color:#4f81bd; color:white; width:49px" %)**6**|(% style="background-color:#4f81bd; color:white; width:109px" %)**1**|(% style="background-color:#4f81bd; color:white; width:50px" %)**1**
667 |Value|(((
668 TRI_A FLAG
669 )))|(((
670 TRI_A Status
671 )))|(((
672 TRI_DI FLAG+STA
673 )))|Reserve|Enable/Disable MOD6|(((
674 MOD(6)
675 )))
676
677 (% style="color:#4f81bd" %)**TRI FLAG1**(%%) is a combination to show if the trigger is set for this part. Totally 1 byte as below
678
679 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
680 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
681 |(((
682 AV1_LOW
683 )))|(((
684 AV1_HIGH
685 )))|(((
686 AV2_LOW
687 )))|(((
688 AV2_HIGH
689 )))|(((
690 AC1_LOW
691 )))|(((
692 AC1_HIGH
693 )))|(((
694 AC2_LOW
695 )))|(((
696 AC2_HIGH
697 )))
698
699 * Each bit shows if the corresponding trigger has been configured.
700
701 **Example:**
702
703 10100000: Means the system has configure to use the trigger: AV1_LOW and AV2_LOW
704
705
706 (% style="color:#4f81bd" %)**TRI Status1**(%%) is a combination to show which condition is trigger. Totally 1 byte as below
707
708 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
709 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
710 |(((
711 AV1_LOW
712 )))|(((
713 AV1_HIGH
714 )))|(((
715 AV2_LOW
716 )))|(((
717 AV2_HIGH
718 )))|(((
719 AC1_LOW
720 )))|(((
721 AC1_HIGH
722 )))|(((
723 AC2_LOW
724 )))|(((
725 AC2_HIGH
726 )))
727
728 * Each bit shows which status has been triggered on this uplink.
729
730 **Example:**
731
732 10000000: Means this uplink is triggered by AV1_LOW. That means the voltage is too low.
733
734
735 (% style="color:#4f81bd" %)**TRI_DI FLAG+STA **(%%)is a combination to show which condition is trigger. Totally 1byte as below
736
737 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
738 |**bit7**|**bit6**|**bit5**|**bit4**|**bit3**|**bit2**|**bit1**|**bit0**
739 |N/A|N/A|N/A|N/A|DI2_STATUS|DI2_FLAG|DI1_STATUS|DI1_FLAG
740
741 * Each bits shows which status has been triggered on this uplink.
742
743 **Example:**
744
745 00000111: Means both DI1 and DI2 trigger are enabled and this packet is trigger by DI1.
746
747 00000101: Means both DI1 and DI2 trigger are enabled.
748
749
750 (% style="color:#4f81bd" %)**Enable/Disable MOD6 **(%%): 0x01: MOD6 is enable. 0x00: MOD6 is disable.
751
752 Downlink command to poll MOD6 status:
753
754 **AB 06**
755
756 When device got this command, it will send the MOD6 payload.
757
758
759 === 3.3.7 Payload Decoder ===
760
761 (((
762
763
764 **Decoder for TTN/loraserver/ChirpStack**:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
765 )))
766
767
768 == 3.4 ​Configure LT via AT or Downlink ==
769
770
771 (((
772 User can configure LT I/O Controller via AT Commands or LoRaWAN Downlink Commands
773 )))
774
775 (((
776 (((
777 There are two kinds of Commands:
778 )))
779 )))
780
781 * (% style="color:blue" %)**Common Commands**(%%): They should be available for each sensor, such as: change uplink interval, reset device. For firmware v1.5.4, user can find what common commands it supports: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
782
783 * (% style="color:blue" %)**Sensor Related Commands**(%%): These commands are special designed for LT-22222-L.  User can see these commands below:
784
785 === 3.4.1 Common Commands ===
786
787
788 (((
789 They should be available for each of Dragino Sensors, such as: change uplink interval, reset device. For firmware v1.5.4, user can find what common commands it supports: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
790 )))
791
792
793 === 3.4.2 Sensor related commands ===
794
795 ==== 3.4.2.1 Set Transmit Interval ====
796
797
798 Sets the uplink interval of the device.
799
800 * (% style="color:#037691" %)**AT command:**
801
802 (% style="color:blue" %)**AT+TDC=N**
803
804 where N is the time in milliseconds.
805
806 **Example: **AT+TDC=30000. This will set the uplink interval to 30 seconds
807
808
809 * (% style="color:#037691" %)**Downlink payload (prefix 0x01):**
810
811 (% style="color:blue" %)**0x01 aa bb cc  **(%%)** ~/~/ Same as AT+TDC=0x(aa bb cc)**
812
813
814
815 ==== 3.4.2.2 Set the Work Mode (AT+MOD) ====
816
817
818 Sets the work mode.
819
820 * (% style="color:#037691" %)**AT command:**(%%) (% style="color:blue" %)**AT+MOD=N  **
821
822 Where N is the work mode.
823
824 **Example**: AT+MOD=2. This will set the work mode to Double DI counting mode.
825
826
827 * (% style="color:#037691" %)**Downlink payload (prefix 0x0A):**
828
829 (% style="color:blue" %)**0x0A aa  **(%%)** ** ~/~/ Same as AT+MOD=aa
830
831
832
833 ==== 3.4.2.3 Poll an uplink ====
834
835
836 Asks the device to send an uplink.
837
838 * (% style="color:#037691" %)**AT command:**(%%) There is no AT Command to poll uplink
839
840 * (% style="color:#037691" %)**Downlink payload (prefix 0x08):**
841
842 (% style="color:blue" %)**0x08 FF  **(%%)** **~/~/ Poll an uplink
843
844 **Example**: 0x08FF, ask device to send an Uplink
845
846
847
848 ==== 3.4.2.4 Enable/Disable Trigger Mode ====
849
850
851 Enable or disable the trigger mode (see also [[ADDMOD6>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]).
852
853 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+ADDMOD6=1 or 0**
854
855 (% style="color:red" %)**1:** (%%)Enable the trigger mode
856
857 (% style="color:red" %)**0: **(%%)Disable the trigger mode
858
859
860 * (% style="color:#037691" %)**Downlink Payload (prefix 0x0A 06):**
861
862 (% style="color:blue" %)**0x0A 06 aa    **(%%) ~/~/ Same as AT+ADDMOD6=aa
863
864
865
866 ==== 3.4.2.5 Poll trigger settings ====
867
868
869 Polls the trigger settings
870
871 * (% style="color:#037691" %)**AT Command:**
872
873 There is no AT Command for this feature.
874
875 * (% style="color:#037691" %)**Downlink Payload (prefix 0x AB 06):**
876
877 (% style="color:blue" %)**0xAB 06  ** (%%) ~/~/ Poll the trigger settings. Device will uplink trigger settings once receive this command
878
879
880
881 ==== 3.4.2.6 Enable / Disable DI1/DI2/DI3 as trigger ====
882
883
884 Enable or Disable DI1/DI2/DI2 as trigger,
885
886 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**Format: AT+DTRI=<DI1_TIRGGER_FlAG>,< DI2_TIRGGER_FlAG >**
887
888 **Example:** AT+ DTRI =1,0 (Enable DI1 trigger / disable DI2 trigger)
889
890
891 * (% style="color:#037691" %)**Downlink Payload (prefix 0xAA 02):**
892
893 (% style="color:blue" %)**0xAA 02 aa bb   ** (%%) ~/~/ Same as AT+DTRI=aa,bb
894
895
896
897 ==== 3.4.2.7 Trigger1 – Set DI1 or DI3 as trigger ====
898
899
900 Set DI1 or DI3(for LT-33222-L) trigger.
901
902 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+TRIG1=a,b**
903
904 (% style="color:red" %)**a :** (%%)Interrupt mode. 0: falling edge; 1: rising edge, 2: falling and raising edge(for MOD=1).
905
906 (% style="color:red" %)**b :** (%%)delay timing.
907
908 **Example:** AT+TRIG1=1,100(set DI1 port to trigger on high level, valid signal is 100ms )
909
910
911 * (% style="color:#037691" %)**Downlink Payload (prefix 0x09 01 ):**
912
913 (% style="color:blue" %)**0x09 01 aa bb cc    ** (%%) ~/~/ same as AT+TRIG1=aa,0x(bb cc)
914
915
916
917 ==== 3.4.2.8 Trigger2 – Set DI2 as trigger ====
918
919
920 Sets DI2 trigger.
921
922 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+TRIG2=a,b**
923
924 (% style="color:red" %)**a :** (%%)Interrupt mode. 0: falling edge; 1: rising edge, 2: falling and raising edge (for MOD=1).
925
926 (% style="color:red" %)**b :** (%%)delay timing.
927
928 **Example:** AT+TRIG2=0,100 (set DI1 port to trigger on low level, valid signal is 100ms )
929
930
931 * (% style="color:#037691" %)**Downlink Payload (prefix 0x09 02 ):**
932
933 (% style="color:blue" %)**0x09 02 aa bb cc   ** (%%)~/~/ same as AT+TRIG2=aa,0x(bb cc)
934
935
936
937 ==== 3.4.2.9 Trigger – Set AC (current) as trigger ====
938
939
940 Set current trigger , base on AC port. See [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
941
942 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+ACLIM**
943
944 * (% style="color:#037691" %)**Downlink Payload (prefix 0xAA 01 )**
945
946 (% style="color:blue" %)**0x AA 01 aa bb cc dd ee ff gg hh        ** (%%) ~/~/ same as AT+ACLIM See [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
947
948
949
950 ==== 3.4.2.10 Trigger – Set AV (voltage) as trigger ====
951
952
953 Set current trigger , base on AV port. See [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
954
955 * (% style="color:#037691" %)**AT Command**(%%): (% style="color:blue" %)**AT+AVLIM    **(%%)** See [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]**
956
957 * (% style="color:#037691" %)**Downlink Payload (prefix 0xAA 00 )**
958
959 (% style="color:blue" %)**0x AA 00 aa bb cc dd ee ff gg hh    ** (%%) ~/~/ same as AT+AVLIM See [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
960
961
962
963 ==== 3.4.2.11 Trigger – Set minimum interval ====
964
965
966 Sets AV and AC trigger minimum interval. Device won't response to the second trigger within this set time after the first trigger.
967
968 * (% style="color:#037691" %)**AT Command**(%%): (% style="color:blue" %)**AT+ATDC=5        ** ~/~/ (%%)Device won't response the second trigger within 5 minute after the first trigger.
969
970 * (% style="color:#037691" %)**Downlink Payload (prefix 0xAC )**
971
972 (% style="color:blue" %)**0x AC aa bb   **(%%) ~/~/ same as AT+ATDC=0x(aa bb)   . Unit (min)
973
974 (((
975 (% style="color:red" %)**Note: ATDC setting must be more than 5min**
976 )))
977
978
979
980 ==== 3.4.2.12 DO ~-~- Control Digital Output DO1/DO2/DO3 ====
981
982
983 * (% style="color:#037691" %)**AT Command**
984
985 There is no AT Command to control Digital Output
986
987
988 * (% style="color:#037691" %)**Downlink Payload (prefix 0x02)**
989
990 (% style="color:blue" %)**0x02 aa bb cc     ** (%%)~/~/ Set DO1/DO2/DO3 output
991
992 (((
993 If payload = 0x02010001, while there is load between V+ and DOx, it means set DO1 to low, DO2 to high and DO3 to low.
994 )))
995
996 (((
997 01: Low,  00: High ,  11: No action
998
999 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1000 |(% style="background-color:#4f81bd; color:white" %)**Downlink Code**|(% style="background-color:#4f81bd; color:white" %)**DO1**|(% style="background-color:#4f81bd; color:white" %)**DO2**|(% style="background-color:#4f81bd; color:white" %)**DO3**
1001 |02  01  00  11|Low|High|No Action
1002 |02  00  11  01|High|No Action|Low
1003 |02  11  01  00|No Action|Low|High
1004 )))
1005
1006 (((
1007 (% style="color:red" %)**Note: For LT-22222-L, there is no DO3, the last byte can use any value.**
1008 )))
1009
1010 (((
1011 (% style="color:red" %)**Device will upload a packet if downlink code executes successfully.**
1012 )))
1013
1014
1015
1016 ==== 3.4.2.13 DO ~-~- Control Digital Output DO1/DO2/DO3 with time control ====
1017
1018
1019 * (% style="color:#037691" %)**AT Command**
1020
1021 There is no AT Command to control Digital Output
1022
1023
1024 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA9)**
1025
1026 (% style="color:blue" %)**0xA9 aa bb cc     **(%%) ~/~/ Set DO1/DO2/DO3 output with time control
1027
1028
1029 This is to control the digital output time of DO pin. Include four bytes:
1030
1031 (% style="color:#4f81bd" %)**First Byte**(%%)**:** Type code (0xA9)
1032
1033 (% style="color:#4f81bd" %)**Second Byte**(%%): Inverter Mode
1034
1035 01: DO pins will change back to original state after timeout.
1036
1037 00: DO pins will change to an inverter state after timeout 
1038
1039
1040 (% style="color:#4f81bd" %)**Third Byte**(%%): Control Method and Ports status:
1041
1042 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1043 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1044 |0x01|DO1 set to low
1045 |0x00|DO1 set to high
1046 |0x11|DO1 NO Action
1047
1048 (% style="color:#4f81bd" %)**Fourth Byte**(%%): Control Method and Ports status:
1049
1050 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1051 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1052 |0x01|DO2 set to low
1053 |0x00|DO2 set to high
1054 |0x11|DO2 NO Action
1055
1056 (% style="color:#4f81bd" %)**Fifth Byte**(%%): Control Method and Ports status:
1057
1058 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1059 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1060 |0x01|DO3 set to low
1061 |0x00|DO3 set to high
1062 |0x11|DO3 NO Action
1063
1064 (% style="color:#4f81bd" %)**Sixth and Seventh and Eighth and Ninth Byte**:(%%) Latching time. Unit: ms
1065
1066
1067 (% style="color:red" %)**Note: **
1068
1069 Since Firmware v1.6.0, the latch time support 4 bytes and 2 bytes
1070
1071 Before Firmwre v1.6.0 the latch time only suport 2 bytes.
1072
1073 (% style="color:red" %)**Device will upload a packet if downlink code executes successfully.**
1074
1075
1076 **Example payload:**
1077
1078 **~1. A9 01 01 01 01 07 D0**
1079
1080 DO1 pin & DO2 pin & DO3 pin will be set to Low, last 2 seconds, then change back to original state.
1081
1082 **2. A9 01 00 01 11 07 D0**
1083
1084 DO1 pin set high, DO2 pin set low, DO3 pin no action, last 2 seconds, then change back to original state.
1085
1086 **3. A9 00 00 00 00 07 D0**
1087
1088 DO1 pin & DO2 pin & DO3 pin will be set to high, last 2 seconds, then both change to low.
1089
1090 **4. A9 00 11 01 00 07 D0**
1091
1092 DO1 pin no action, DO2 pin set low, DO3 pin set high, last 2 seconds, then DO1 pin no action, DO2 pin set high, DO3 pin set low
1093
1094
1095
1096 ==== 3.4.2.14 Relay ~-~- Control Relay Output RO1/RO2 ====
1097
1098
1099 * (% style="color:#037691" %)**AT Command:**
1100
1101 There is no AT Command to control Relay Output
1102
1103
1104 * (% style="color:#037691" %)**Downlink Payload (prefix 0x03):**
1105
1106 (% style="color:blue" %)**0x03 aa bb     ** (%%)~/~/ Set RO1/RO2 output
1107
1108
1109 (((
1110 If payload = 0x030100, it means set RO1 to close and RO2 to open.
1111 )))
1112
1113 (((
1114 00: Closed ,  01: Open , 11: No action
1115
1116 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:320px" %)
1117 |(% style="background-color:#4f81bd; color:white" %)**Downlink Code**|(% style="background-color:#4f81bd; color:white" %)**RO1**|(% style="background-color:#4f81bd; color:white" %)**RO2**
1118 |03  00  11|Open|No Action
1119 |03  01  11|Close|No Action
1120 |03  11  00|No Action|Open
1121 |03  11  01|No Action|Close
1122 |03  00  00|Open|Open
1123 |03  01  01|Close|Close
1124 |03  01  00|Close|Open
1125 |03  00  01|Open|Close
1126 )))
1127
1128 (% style="color:red" %)**Device will upload a packet if downlink code executes successfully.**
1129
1130
1131
1132 ==== 3.4.2.15 Relay ~-~- Control Relay Output RO1/RO2 with time control ====
1133
1134
1135 * (% style="color:#037691" %)**AT Command:**
1136
1137 There is no AT Command to control Relay Output
1138
1139
1140 * (% style="color:#037691" %)**Downlink Payload (prefix 0x05):**
1141
1142 (% style="color:blue" %)**0x05 aa bb cc dd     ** (%%)~/~/ Set RO1/RO2 relay with time control
1143
1144
1145 This is to control the relay output time of relay. Include four bytes:
1146
1147 (% style="color:#4f81bd" %)**First Byte **(%%)**:** Type code (0x05)
1148
1149 (% style="color:#4f81bd" %)**Second Byte(aa)**(%%): Inverter Mode
1150
1151 01: Relays will change back to original state after timeout.
1152
1153 00: Relays will change to an inverter state after timeout
1154
1155
1156 (% style="color:#4f81bd" %)**Third Byte(bb)**(%%): Control Method and Ports status:
1157
1158 [[image:image-20221008095908-1.png||height="364" width="564"]]
1159
1160
1161 (% style="color:#4f81bd" %)**Fourth/Fifth/Sixth/Seventh Bytes(cc)**(%%): Latching time. Unit: ms
1162
1163
1164 (% style="color:red" %)**Note:**
1165
1166 Since Firmware v1.6.0, the latch time support 4 bytes and 2 bytes
1167
1168 Before Firmwre v1.6.0 the latch time only suport 2 bytes.
1169
1170
1171 (% style="color:red" %)**Device will upload a packet if downlink code executes successfully.**
1172
1173
1174 **Example payload:**
1175
1176 **~1. 05 01 11 07 D0**
1177
1178 Relay1 and Relay 2 will be set to NC , last 2 seconds, then change back to original state.
1179
1180 **2. 05 01 10 07 D0**
1181
1182 Relay1 will change to NC, Relay2 will change to NO, last 2 seconds, then both change back to original state.
1183
1184 **3. 05 00 01 07 D0**
1185
1186 Relay1 will change to NO, Relay2 will change to NC, last 2 seconds, then relay change to NC,Relay2 change to NO.
1187
1188 **4. 05 00 00 07 D0**
1189
1190 Relay 1 & relay2 will change to NO, last 2 seconds, then both change to NC.
1191
1192
1193
1194 ==== 3.4.2.16 Counting ~-~- Voltage threshold counting ====
1195
1196
1197 When voltage exceed the threshold, count. Feature see [[MOD4>>||anchor="H3.3.4AT2BMOD3D42CSingleDICounting2B1xVoltageCounting"]]
1198
1199 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+VOLMAX   ** (%%)~/~/ See [[MOD4>>||anchor="H3.3.4AT2BMOD3D42CSingleDICounting2B1xVoltageCounting"]]
1200
1201 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA5):**
1202
1203 (% style="color:blue" %)**0xA5 aa bb cc   ** (%%)~/~/ Same as AT+VOLMAX=(aa bb),cc
1204
1205
1206
1207 ==== 3.4.2.17 Counting ~-~- Pre-configure the Count Number ====
1208
1209
1210 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+SETCNT=aa,(bb cc dd ee) **
1211
1212 (% style="color:red" %)**aa:**(%%) 1: Set count1; 2: Set count2; 3: Set AV1 count
1213
1214 (% style="color:red" %)**bb cc dd ee: **(%%)number to be set
1215
1216
1217 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA8):**
1218
1219 (% style="color:blue" %)**0x A8 aa bb cc dd ee     ** (%%)~/~/ same as AT+SETCNT=aa,(bb cc dd ee)
1220
1221
1222
1223 ==== 3.4.2.18 Counting ~-~- Clear Counting ====
1224
1225
1226 Clear counting for counting mode
1227
1228 * (% style="color:#037691" %)**AT Command:**(%%) (% style="color:blue" %)**AT+CLRCOUNT         **(%%) ~/~/ clear all counting
1229
1230 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA6):**
1231
1232 (% style="color:blue" %)**0x A6 01    ** (%%)~/~/ clear all counting
1233
1234
1235
1236 ==== 3.4.2.19 Counting ~-~- Change counting mode to save time ====
1237
1238
1239 * (% style="color:#037691" %)**AT Command:**
1240
1241 (% style="color:blue" %)**AT+COUTIME=60  **(%%)~/~/ Set save time to 60 seconds. Device will save the counting result in internal flash every 60 seconds. (min value: 30)
1242
1243
1244 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA7):**
1245
1246 (% style="color:blue" %)**0x A7 aa bb cc     ** (%%)~/~/ same as AT+COUTIME =aa bb cc,
1247
1248 (((
1249 range: aa bb cc:0 to 16777215,  (unit:second)
1250 )))
1251
1252
1253
1254 ==== 3.4.2.20 Reset save RO DO state ====
1255
1256
1257 * (% style="color:#037691" %)**AT Command:**
1258
1259 (% style="color:blue" %)**AT+RODORESET=1    **(%%)~/~/ RODO will close when the device joining the network. (default)
1260
1261 (% style="color:blue" %)**AT+RODORESET=0    **(%%)~/~/ After the device is reset, the previously saved RODO state (only MOD2 to MOD5) is read, and its state is not changed when it is reconnected to the network.
1262
1263
1264 * (% style="color:#037691" %)**Downlink Payload (prefix 0xAD):**
1265
1266 (% style="color:blue" %)**0x AD aa      ** (%%)~/~/ same as AT+RODORET =aa
1267
1268
1269
1270 ==== 3.4.2.21 Encrypted payload ====
1271
1272
1273 * (% style="color:#037691" %)**AT Command:**
1274
1275 (% style="color:blue" %)**AT+DECRYPT=1  ** (%%)~/~/ The payload is uploaded without encryption
1276
1277 (% style="color:blue" %)**AT+DECRYPT=0    **(%%)~/~/  Encrypt when uploading payload (default)
1278
1279
1280
1281 ==== 3.4.2.22 Get sensor value ====
1282
1283
1284 * (% style="color:#037691" %)**AT Command:**
1285
1286 (% style="color:blue" %)**AT+GETSENSORVALUE=0    **(%%)~/~/ The serial port gets the reading of the current sensor
1287
1288 (% style="color:blue" %)**AT+GETSENSORVALUE=1    **(%%)~/~/ The serial port gets the current sensor reading and uploads it.
1289
1290
1291
1292 ==== 3.4.2.23 Resets the downlink packet count ====
1293
1294
1295 * (% style="color:#037691" %)**AT Command:**
1296
1297 (% style="color:blue" %)**AT+DISFCNTCHECK=0   **(%%)~/~/ When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node will no longer receive downlink packets (default)
1298
1299 (% style="color:blue" %)**AT+DISFCNTCHECK=1   **(%%)~/~/ When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node resets the downlink packet count and keeps it consistent with the server downlink packet count.
1300
1301
1302
1303 ==== 3.4.2.24 When the limit bytes are exceeded, upload in batches ====
1304
1305
1306 * (% style="color:#037691" %)**AT Command:**
1307
1308 (% style="color:blue" %)**AT+DISMACANS=0**   (%%) ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of 11 bytes (DR0 of US915, DR2 of AS923, DR2 of AU195), the node will send a packet with a payload of 00 and a port of 4. (default)
1309
1310 (% style="color:blue" %)**AT+DISMACANS=1**  (%%) ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of the DR, the node will ignore the MACANS and not reply, and only upload the payload part.
1311
1312
1313 * (% style="color:#037691" %)**Downlink Payload **(%%)**:**
1314
1315 (% style="color:blue" %)**0x21 00 01 ** (%%) ~/~/ Set  the DISMACANS=1
1316
1317
1318
1319 ==== 3.4.2.25 Copy downlink to uplink ====
1320
1321
1322 * (% style="color:#037691" %)**AT Command**(%%)**:**
1323
1324 (% style="color:blue" %)**AT+RPL=5**   (%%) ~/~/ After receiving the package from the server, it will immediately upload the content of the package to the server, the port number is 100.
1325
1326 Example:**aa xx xx xx xx**         ~/~/ aa indicates whether the configuration has changed, 00 is yes, 01 is no; xx xx xx xx are the bytes sent.
1327
1328
1329 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173747-6.png?width=1124&height=165&rev=1.1||alt="image-20220823173747-6.png"]]
1330
1331 For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77.
1332
1333
1334
1335 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173833-7.png?width=1124&height=149&rev=1.1||alt="image-20220823173833-7.png"]]
1336
1337 For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned.
1338
1339
1340
1341 ==== 3.4.2.26 Query version number and frequency band 、TDC ====
1342
1343
1344 * (((
1345 (% style="color:#037691" %)**Downlink Payload**(%%)**:**
1346
1347 (% style="color:blue" %)**26 01  ** (%%) ~/~/  Downlink 26 01 can query device upload frequency, frequency band, software version number, TDC time.
1348
1349
1350 )))
1351
1352 **Example:**
1353
1354 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173929-8.png?width=1205&height=76&rev=1.1||alt="image-20220823173929-8.png"]]
1355
1356
1357 == 3.5 Integrating with ThingsEye.io ==
1358
1359 If you are using one of The Things Stack plans, you can integrate ThingsEye.io with your application. Once integrated, ThingsEye.io works as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic.
1360
1361 === 3.5.1 Configuring The Things Stack Sandbox ===
1362
1363 * Go to your Application and select MQTT under Integrations.
1364 * In the Connection credentials section, under Username, The Thins Stack displays an auto-generated username. You can use it or provide a new one.
1365 * For the Password, click the Generate new API key button to generate a password. You can see it by clicking on the eye button.
1366
1367 [[image:tts-mqtt-integration.png||height="625" width="1000"]]
1368
1369 === 3.5.2 Configuring ThingsEye.io ===
1370
1371 * Login to your thingsEye.io account.
1372 * Under the Integrations center, click Integrations.
1373 * Click the Add integration button (the button with the + symbol).
1374
1375 [[image:thingseye-io-step-1.png||height="625" width="1000"]]
1376
1377
1378 On the Add integration page configure the following:
1379
1380 Basic settings:
1381
1382 * Select The Things Stack Community from the Integration type list.
1383 * Enter a suitable name for your integration in the Name box or keep the default name.
1384 * Click the Next button.
1385
1386 [[image:thingseye-io-step-2.png||height="625" width="1000"]]
1387
1388 Uplink Data converter:
1389
1390 * Click the Create New button if it is not selected by default.
1391 * Click the JavaScript button.
1392 * Paste the uplink decoder function into the text area (first, delete the default code). The demo decoder function can be found here.
1393 * Click the Next button.
1394
1395 [[image:thingseye-io-step-3.png||height="625" width="1000"]]
1396
1397 Downlink Data converter (this is an optional step):
1398
1399 * Click the Create new button if it is not selected by default.
1400 * Click the JavaScript button.
1401 * Paste the downlink decoder function into the text area (first, delete the default code). The demo decoder function can be found here.
1402 * Click the Next button.
1403
1404 [[image:thingseye-io-step-4.png||height="625" width="1000"]]
1405
1406 Connection:
1407
1408 * Choose Region from the Host type.
1409 * Enter the cluster of your The Things Stack in the Region textbox.
1410 * Enter the Username and Password in the Credentials section. Use the same username and password you created with the MQTT page of The Things Stack.
1411 * Click Check connection to test the connection. If the connection is successful, you can see the message saying Connected.
1412 * Click the Add button.
1413
1414 [[image:thingseye-io-step-5.png||height="625" width="1000"]]
1415
1416
1417 Your integration is added to the integrations list and it will display on the Integrations page.
1418
1419 [[image:thingseye-io-step-6.png||height="625" width="1000"]]
1420
1421
1422 == 3.6 Interface Details ==
1423
1424 === 3.6.1 Digital Input Port: DI1/DI2 /DI3 ( For LT-33222-L, low active ) ===
1425
1426
1427 Support NPN-type sensor
1428
1429 [[image:1653356991268-289.png]]
1430
1431
1432 === 3.6.2 Digital Input Ports: DI1/DI2 ( For LT-22222-L) ===
1433
1434
1435 (((
1436 The DI ports of the LT-22222-L can support **NPN**, **PNP**, or **dry contact** output sensors.
1437 )))
1438
1439 (((
1440 (((
1441 The part of the internal circuit of the LT-22222-L shown below includes the NEC2501 photocoupler. The active current from NEC2501 pin 1 to pin 2 is 1 mA, with a maximum allowable current of 50 mA. When active current flows from NEC2501 pin 1 to pin 2, the DI becomes active HIGH and the DI LED status changes.
1442
1443
1444 )))
1445 )))
1446
1447 [[image:1653357170703-587.png]]
1448
1449 (((
1450 (((
1451 (% style="color:#000000; font-family:Arial,sans-serif; font-size:11pt; font-style:normal; font-variant-alternates:normal; font-variant-east-asian:normal; font-variant-ligatures:normal; font-variant-numeric:normal; font-variant-position:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)When connecting a device to the DI port, both DI1+ and DI1- must be connected.
1452 )))
1453 )))
1454
1455 (((
1456
1457 )))
1458
1459 (((
1460 (% style="color:#0000ff" %)**Example 1**(%%): Connecting to a low-active sensor.
1461 )))
1462
1463 (((
1464 This type of sensor outputs a low (GND) signal when active.
1465 )))
1466
1467 * (((
1468 Connect the sensor's output to DI1-
1469 )))
1470 * (((
1471 Connect the sensor's VCC to DI1+.
1472 )))
1473
1474 (((
1475 When the sensor is active, the current between NEC2501 pin 1 and pin 2 will be:
1476 )))
1477
1478 (((
1479 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1**+** / 1K.**
1480 )))
1481
1482 (((
1483 For example, if** DI1+ **= **12V**, the resulting current is [[image:1653968155772-850.png||height="23" width="19"]]= 12mA. Therefore, the LT-22222-L will be able to detect this active signal.
1484 )))
1485
1486 (((
1487
1488 )))
1489
1490 (((
1491 (% style="color:#0000ff" %)**Example 2**(%%): Connecting to a high-active sensor.
1492 )))
1493
1494 (((
1495 This type of sensor outputs a high signal (e.g., 24V) when active.
1496 )))
1497
1498 * (((
1499 Connect the sensor's output to DI1+
1500 )))
1501 * (((
1502 Connect the sensor's GND DI1-.
1503 )))
1504
1505 (((
1506 When the sensor is active, the current between NEC2501 pin1 and pin2 will be:
1507 )))
1508
1509 (((
1510 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1+ / 1K.**
1511 )))
1512
1513 (((
1514 If **DI1+ = 24V**, the resulting current[[image:1653968155772-850.png||height="23" width="19"]] is 24mA, Therefore, the LT-22222-L will detect this high-active signal.
1515 )))
1516
1517 (((
1518
1519 )))
1520
1521 (((
1522 (% style="color:#0000ff" %)**Example 3**(%%): Connecting to a 220V high-active sensor.
1523 )))
1524
1525 (((
1526 Assume that you want to monitor an active signal higher than 220V without damaging the photocoupler  
1527 )))
1528
1529 * (((
1530 Connect the sensor's output to DI1+ with a 50K resistor in series.
1531 )))
1532 * (((
1533 Connect the sensor's GND DI1-.
1534 )))
1535
1536 (((
1537 When the sensor is active, the current between NEC2501 pin1 and pin2 will be:
1538 )))
1539
1540 (((
1541 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1+ / 51K.**
1542 )))
1543
1544 (((
1545 If the sensor output is 220V, then [[image:1653968155772-850.png||height="23" width="19"]](% id="cke_bm_243359S" style="display:none" wfd-invisible="true" %)[[image:image-20220524095628-8.png]](%%) = DI1+ / 51K  = 4.3mA. Therefore, the LT-22222-L will be able to safely detect this high-active signal.
1546 )))
1547
1548
1549 (% style="color:blue" %)**Example4**(%%): Connecting to Dry Contact sensor
1550
1551 From the DI port circuit above, you can see that activating the photocoupler requires a voltage difference between the DI+ and DI- ports. However, the Dry Contact sensor is a passive component and cannot provide this voltage difference.
1552
1553 To detect a Dry Contact, you can supply a power source to one pin of the Dry Contact. Below is a reference circuit diagram.
1554
1555 [[image:image-20230616235145-1.png]]
1556
1557 (% style="color:blue" %)**Example5**(%%): Connecting to an Open Collector
1558
1559 [[image:image-20240219115718-1.png]]
1560
1561
1562 === 3.6.3 Digital Output Ports: DO1/DO2 /DO3 ===
1563
1564
1565 (% style="color:blue" %)**NPN output**(%%): GND or Float. The maximum voltage that can be applied to the output pin is 36V.
1566
1567 (% style="color:red" %)**Note: The DO pins will float when the device is powered off.**
1568
1569 [[image:1653357531600-905.png]]
1570
1571
1572 === 3.6.4 Analog Input Interfaces ===
1573
1574
1575 The analog input interface is shown below. The LT-22222-L will measure the IN2 voltage to calculate the current passing through the load. The formula is:
1576
1577
1578 (% style="color:blue" %)**AC2 = (IN2 voltage )/12**
1579
1580 [[image:1653357592296-182.png]]
1581
1582 Example: Connecting a 4~~20mA sensor
1583
1584 We will use the wind speed sensor as an example for reference only.
1585
1586
1587 (% style="color:blue" %)**Specifications of the wind speed sensor:**
1588
1589 (% style="color:red" %)**Red:  12~~24V**
1590
1591 (% style="color:#ffc000" %)**Yellow:  4~~20mA**
1592
1593 **Black:  GND**
1594
1595 **Connection diagram:**
1596
1597 [[image:1653357640609-758.png]]
1598
1599 [[image:1653357648330-671.png||height="155" width="733"]]
1600
1601
1602 Example: Connecting to a regulated power supply to measure voltage
1603
1604 [[image:image-20230608101532-1.png||height="606" width="447"]]
1605
1606 [[image:image-20230608101608-2.jpeg||height="379" width="284"]]
1607
1608 [[image:image-20230608101722-3.png||height="102" width="1139"]]
1609
1610
1611 (% style="color:blue; font-weight:bold" %)**Specifications of the regulated power supply**(% style="color:blue" %)**:**
1612
1613 (% style="color:red" %)**Red:  12~~24v**
1614
1615 **Black:  GND**
1616
1617
1618 === 3.6.5 Relay Output ===
1619
1620
1621 (((
1622 The LT-22222-L has two relay interfaces, RO1 and RO2, each using two pins of the screw terminal (ROx-1 and ROx-2 where x is the port number, 1 or 2). You can connect a device's power line in series with one of the relay interfaces (e.g., RO1-1 and RO1-2 screw terminals). See the example below:
1623
1624 **Note**: The ROx pins will be in the Open (NO) state when the LT-22222-L is powered off.
1625 )))
1626
1627 [[image:image-20220524100215-9.png]]
1628
1629
1630 [[image:image-20220524100215-10.png||height="382" width="723"]]
1631
1632
1633 == 3.7 LEDs Indicators ==
1634
1635
1636 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1637 |(% style="background-color:#4f81bd; color:white; width:50px" %)**LEDs**|(% style="background-color:#4f81bd; color:white; width:460px" %)**Feature**
1638 |**PWR**|Always on if there is power
1639 |**TX**|(((
1640 (((
1641 Device boot: TX blinks 5 times.
1642 )))
1643
1644 (((
1645 Successful join network: TX ON for 5 seconds.
1646 )))
1647
1648 (((
1649 Transmit a LoRa packet: TX blinks once
1650 )))
1651 )))
1652 |**RX**|RX blinks once when receiving a packet.
1653 |**DO1**|For LT-22222-L: ON when DO1 is low, OFF when DO1 is high
1654 |**DO2**|For LT-22222-L: ON when DO2 is low, OFF when DO2 is high
1655 |**DI1**|(((
1656 For LT-22222-L: ON when DI1 is high, OFF when DI1 is low
1657 )))
1658 |**DI2**|(((
1659 For LT-22222-L: ON when DI2 is high, OFF when DI2 is low
1660 )))
1661 |**RO1**|For LT-22222-L: ON when RO1 is closed, OFF when RO1 is open
1662 |**RO2**|For LT-22222-L: ON when RO2 is closed, OFF when RO2 is open
1663
1664 = 4. Using AT Command =
1665
1666 == 4.1 Connecting the LT-22222-L to a computer ==
1667
1668
1669 (((
1670 The LT-22222-L supports programming using AT Commands. You can use a USB-to-TTL adapter along with a 3.5mm Program Cable to connect the LT-22222-L to a computer, as shown below.
1671 )))
1672
1673 [[image:1653358238933-385.png]]
1674
1675
1676 (((
1677 On the PC, the user needs to set the (% style="color:#4f81bd" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) to a baud rate of (% style="color:green" %)**9600**(%%) to access to access serial console of LT-22222-L. The AT commands are disabled by default, and a password (default:(% style="color:green" %)**123456**)(%%) must be entered to active them, as shown below:
1678 )))
1679
1680 [[image:1653358355238-883.png]]
1681
1682
1683 (((
1684 You can find more details in the [[AT Command Manual>>url:http://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/]]
1685 )))
1686
1687 (((
1688 The following table lists all the AT commands related to the LT-22222-L, except for those used for switching between modes.
1689
1690 AT+<CMD>?        : Help on <CMD>
1691 )))
1692
1693 (((
1694 AT+<CMD>         : Run <CMD>
1695 )))
1696
1697 (((
1698 AT+<CMD>=<value> : Set the value
1699 )))
1700
1701 (((
1702 AT+<CMD>=?       :  Get the value
1703 )))
1704
1705 (((
1706 ATZ: Trig a reset of the MCU
1707 )))
1708
1709 (((
1710 AT+FDR: Reset Parameters to Factory Default, Keys Reserve 
1711 )))
1712
1713 (((
1714 AT+DEUI: Get or Set the Device EUI
1715 )))
1716
1717 (((
1718 AT+DADDR: Get or Set the Device Address
1719 )))
1720
1721 (((
1722 AT+APPKEY: Get or Set the Application Key
1723 )))
1724
1725 (((
1726 AT+NWKSKEY: Get or Set the Network Session Key
1727 )))
1728
1729 (((
1730 AT+APPSKEY:  Get or Set the Application Session Key
1731 )))
1732
1733 (((
1734 AT+APPEUI:  Get or Set the Application EUI
1735 )))
1736
1737 (((
1738 AT+ADR: Get or Set the Adaptive Data Rate setting. (0: off, 1: on)
1739 )))
1740
1741 (((
1742 AT+TXP: Get or Set the Transmit Power (0-5, MAX:0, MIN:5, according to LoRaWAN Spec)
1743 )))
1744
1745 (((
1746 AT+DR:  Get or Set the Data Rate. (0-7 corresponding to DR_X)  
1747 )))
1748
1749 (((
1750 AT+DCS: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing
1751 )))
1752
1753 (((
1754 AT+PNM: Get or Set the public network mode. (0: off, 1: on)
1755 )))
1756
1757 (((
1758 AT+RX2FQ: Get or Set the Rx2 window frequency
1759 )))
1760
1761 (((
1762 AT+RX2DR: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X)
1763 )))
1764
1765 (((
1766 AT+RX1DL: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms
1767 )))
1768
1769 (((
1770 AT+RX2DL: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms
1771 )))
1772
1773 (((
1774 AT+JN1DL: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms
1775 )))
1776
1777 (((
1778 AT+JN2DL: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms
1779 )))
1780
1781 (((
1782 AT+NJM:  Get or Set the Network Join Mode. (0: ABP, 1: OTAA)
1783 )))
1784
1785 (((
1786 AT+NWKID: Get or Set the Network ID
1787 )))
1788
1789 (((
1790 AT+FCU: Get or Set the Frame Counter Uplink
1791 )))
1792
1793 (((
1794 AT+FCD: Get or Set the Frame Counter Downlink
1795 )))
1796
1797 (((
1798 AT+CLASS: Get or Set the Device Class
1799 )))
1800
1801 (((
1802 AT+JOIN: Join network
1803 )))
1804
1805 (((
1806 AT+NJS: Get OTAA Join Status
1807 )))
1808
1809 (((
1810 AT+SENDB: Send hexadecimal data along with the application port
1811 )))
1812
1813 (((
1814 AT+SEND: Send text data along with the application port
1815 )))
1816
1817 (((
1818 AT+RECVB: Print last received data in binary format (with hexadecimal values)
1819 )))
1820
1821 (((
1822 AT+RECV: Print last received data in raw format
1823 )))
1824
1825 (((
1826 AT+VER:  Get current image version and Frequency Band
1827 )))
1828
1829 (((
1830 AT+CFM: Get or Set the confirmation mode (0-1)
1831 )))
1832
1833 (((
1834 AT+CFS:  Get confirmation status of the last AT+SEND (0-1)
1835 )))
1836
1837 (((
1838 AT+SNR: Get the SNR of the last received packet
1839 )))
1840
1841 (((
1842 AT+RSSI: Get the RSSI of the last received packet
1843 )))
1844
1845 (((
1846 AT+TDC: Get or set the application data transmission interval in ms
1847 )))
1848
1849 (((
1850 AT+PORT: Get or set the application port
1851 )))
1852
1853 (((
1854 AT+DISAT: Disable AT commands
1855 )))
1856
1857 (((
1858 AT+PWORD: Set password, max 9 digits
1859 )))
1860
1861 (((
1862 AT+CHS: Get or Set Frequency (Unit: Hz) for Single Channel Mode
1863 )))
1864
1865 (((
1866 AT+CHE: Get or Set eight channels mode, Only for US915, AU915, CN470
1867 )))
1868
1869 (((
1870 AT+CFG: Print all settings
1871 )))
1872
1873
1874 == 4.2 Common AT Command Sequence ==
1875
1876 === 4.2.1 Multi-channel ABP mode (Use with SX1301/LG308) ===
1877
1878 (((
1879
1880
1881 (((
1882 (% style="color:blue" %)**If device has not joined network yet:**
1883 )))
1884 )))
1885
1886 (((
1887 (% style="background-color:#dcdcdc" %)**123456**
1888 )))
1889
1890 (((
1891 (% style="background-color:#dcdcdc" %)**AT+FDR**
1892 )))
1893
1894 (((
1895 (% style="background-color:#dcdcdc" %)**123456**
1896 )))
1897
1898 (((
1899 (% style="background-color:#dcdcdc" %)**AT+NJM=0**
1900 )))
1901
1902 (((
1903 (% style="background-color:#dcdcdc" %)**ATZ**
1904 )))
1905
1906
1907 (((
1908 (% style="color:blue" %)**If device already joined network:**
1909 )))
1910
1911 (((
1912 (% style="background-color:#dcdcdc" %)**AT+NJM=0**
1913 )))
1914
1915 (((
1916 (% style="background-color:#dcdcdc" %)**ATZ**
1917 )))
1918
1919
1920 === 4.2.2 Single-channel ABP mode (Use with LG01/LG02) ===
1921
1922 (((
1923
1924
1925 (((
1926 (% style="background-color:#dcdcdc" %)**123456**(%%)  ~/~/ Enter Password to have AT access.
1927 )))
1928 )))
1929
1930 (((
1931 (% style="background-color:#dcdcdc" %)** AT+FDR**(%%)  ~/~/ Reset Parameters to Factory Default, Keys Reserve
1932 )))
1933
1934 (((
1935 (% style="background-color:#dcdcdc" %)** 123456**(%%)  ~/~/ Enter Password to have AT access.
1936 )))
1937
1938 (((
1939 (% style="background-color:#dcdcdc" %)** AT+CLASS=C**(%%)  ~/~/ Set to work in CLASS C
1940 )))
1941
1942 (((
1943 (% style="background-color:#dcdcdc" %)** AT+NJM=0**(%%)  ~/~/ Set to ABP mode
1944 )))
1945
1946 (((
1947 (% style="background-color:#dcdcdc" %) **AT+ADR=0**(%%)  ~/~/ Set the Adaptive Data Rate Off
1948 )))
1949
1950 (((
1951 (% style="background-color:#dcdcdc" %)** AT+DR=5**(%%)  ~/~/ Set Data Rate
1952 )))
1953
1954 (((
1955 (% style="background-color:#dcdcdc" %)** AT+TDC=60000**(%%)  ~/~/ Set transmit interval to 60 seconds
1956 )))
1957
1958 (((
1959 (% style="background-color:#dcdcdc" %)** AT+CHS=868400000**(%%)  ~/~/ Set transmit frequency to 868.4Mhz
1960 )))
1961
1962 (((
1963 (% style="background-color:#dcdcdc" %)** AT+RX2FQ=868400000**(%%)  ~/~/ Set RX2Frequency to 868.4Mhz (according to the result from server)
1964 )))
1965
1966 (((
1967 (% style="background-color:#dcdcdc" %)** AT+RX2DR=5**(%%)** ** ~/~/ Set RX2DR to match the downlink DR from server. see below
1968 )))
1969
1970 (((
1971 (% style="background-color:#dcdcdc" %)** AT+DADDR=26 01 1A F1** (%%) ~/~/ Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1972 )))
1973
1974 (((
1975 (% style="background-color:#dcdcdc" %)** ATZ**         (%%) ~/~/ Reset MCU
1976
1977
1978 )))
1979
1980 (((
1981 (% style="color:red" %)**Note:**
1982 )))
1983
1984 (((
1985 **~1. Make sure the device is set to ABP mode in the IoT Server.**
1986
1987 **2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.**
1988
1989 **3. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?
1990 dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.**
1991
1992 **4. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5.**
1993 )))
1994
1995 (((
1996 [[image:1653359097980-169.png||height="188" width="729"]]
1997 )))
1998
1999
2000 === 4.2.3 Change to Class A ===
2001
2002
2003 (((
2004 (% style="color:blue" %)**If sensor JOINED:**
2005
2006 (% style="background-color:#dcdcdc" %)**AT+CLASS=A**
2007
2008 (% style="background-color:#dcdcdc" %)**ATZ**
2009 )))
2010
2011
2012 = 5. Case Study =
2013
2014 == 5.1 Counting how many objects pass through the flow Line ==
2015
2016
2017 Reference Link: [[How to set up to setup counting for objects passing through the flow line>>How to set up to count objects pass in flow line]]?
2018
2019
2020 = 6. FAQ =
2021
2022 == 6.1 How to upgrade the image? ==
2023
2024
2025 The LT-22222-L I/O Controller is shipped with a 3.5mm cable, which is used to upload an image to LT in order to:
2026
2027 * Support new features.
2028 * Fix bugs.
2029 * Change LoRaWAN bands.
2030
2031 Below is the hardware connection setup for uploading an image to the LT:
2032
2033 [[image:1653359603330-121.png]]
2034
2035
2036 (((
2037 (% style="color:#0000ff" %)**Step 1**(%%)**:** Download the F[[lash Loader>>url:https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html]].
2038 (% style="color:#0000ff" %)**Step 2**(%%)**:** Download the [[LT Image files>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACrbrDN0AqLHbBat0ViWx5Da/LT-22222-L/Firmware?dl=0&subfolder_nav_tracking=1]].
2039 (% style="color:#0000ff" %)**Step 3**(%%)**:** Open the Flash Loader and choose the correct COM port to update.
2040
2041
2042 (((
2043 (% style="color:blue" %)**For LT-22222-L**(%%):
2044 Hold down the PRO button, then momentarily press the RST reset button. The (% style="color:red" %)**DO1 LED**(%%) will change from OFF to ON. When the (% style="color:red" %)**DO1 LED**(%%) is ON, it indicates that the device is in download mode.
2045 )))
2046
2047
2048 )))
2049
2050 [[image:image-20220524103407-12.png]]
2051
2052
2053 [[image:image-20220524103429-13.png]]
2054
2055
2056 [[image:image-20220524104033-15.png]]
2057
2058
2059 (% style="color:red" %)**Note**(%%): If you have lost the programming cable, you can make one from a 3.5mm cable. The pin mapping is as follows:
2060
2061 [[image:1653360054704-518.png||height="186" width="745"]]
2062
2063
2064 (((
2065 (((
2066 == 6.2 How to change the LoRa Frequency Bands/Region? ==
2067
2068
2069 )))
2070 )))
2071
2072 (((
2073 You can follow the introductions on [[how to upgrade image>>||anchor="H5.1Howtoupgradetheimage3F"]]. When downloading, select the required image file.
2074 )))
2075
2076 (((
2077
2078
2079 == 6.3 How to set up LT to work with a Single Channel Gateway, such as LG01/LG02? ==
2080
2081
2082 )))
2083
2084 (((
2085 (((
2086 In this case, you need to set the LT-33222-L to work in ABP mode and transmit on only one frequency.
2087 )))
2088 )))
2089
2090 (((
2091 (((
2092 Assume you have an LG02 working on the frequency 868400000. Below are the steps.
2093
2094
2095 )))
2096 )))
2097
2098 (((
2099 (% style="color:#0000ff" %)**Step 1**(%%):  Log in to The Things Stack SANDBOX, create an ABP device in the application, and input the Network Session key (NwkSKey), App session key (AppSKey) of the device.
2100
2101
2102 )))
2103
2104 (((
2105 [[image:1653360231087-571.png||height="401" width="727"]]
2106
2107
2108 )))
2109
2110 (((
2111 (% style="color:red" %)**Note: user just need to make sure above three keys match, User can change either in TTN or Device to make then match. In TTN, NETSKEY and APPSKEY can be configured by user in setting page, but Device Addr is generated by TTN.**
2112 )))
2113
2114
2115
2116 (((
2117 (% style="color:blue" %)**Step2**(%%)**:  **Run AT Command to make LT work in Single frequency & ABP mode. Below is the AT commands:
2118
2119
2120 )))
2121
2122 (((
2123 (% style="background-color:#dcdcdc" %)**123456** (%%) :  Enter Password to have AT access.
2124
2125 (% style="background-color:#dcdcdc" %)**AT+FDR**(%%)  :  Reset Parameters to Factory Default, Keys Reserve
2126
2127 (% style="background-color:#dcdcdc" %)**AT+NJM=0** (%%) :  Set to ABP mode
2128
2129 (% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%) :  Set the Adaptive Data Rate Off
2130
2131 (% style="background-color:#dcdcdc" %)**AT+DR=5** (%%) :  Set Data Rate (Set AT+DR=3 for 915 band)
2132
2133 (% style="background-color:#dcdcdc" %)**AT+TDC=60000 **(%%) :  Set transmit interval to 60 seconds
2134
2135 (% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) : Set transmit frequency to 868.4Mhz
2136
2137 (% style="background-color:#dcdcdc" %)**AT+DADDR=26 01 1A F1**(%%)  :  Set Device Address to 26 01 1A F1
2138
2139 (% style="background-color:#dcdcdc" %)**ATZ**        (%%) :  Reset MCU
2140 )))
2141
2142
2143 (((
2144 As shown in below:
2145 )))
2146
2147 [[image:1653360498588-932.png||height="485" width="726"]]
2148
2149
2150 == 6.4 How to change the uplink interval? ==
2151
2152
2153 Please see this link: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/]]
2154
2155
2156 == 6.5 Can I see the counting event in Serial? ==
2157
2158
2159 (((
2160 User can run AT+DEBUG command to see the counting event in serial. If firmware too old and doesn't support AT+DEBUG. User can update to latest firmware first.
2161
2162
2163 == 6.6 Can I use point-to-point communication with LT-22222-L? ==
2164
2165
2166 Yes, please refer [[Point to Point Communication>>doc:Main. Point to Point Communication of LT-22222-L.WebHome]]. this is [[firmware>>https://github.com/dragino/LT-22222-L/releases]].
2167
2168
2169 )))
2170
2171 (((
2172 == 6.7 Why does the relay output become the default and open relay after the lt22222 is powered off? ==
2173
2174
2175 If the device is not shut down, but directly powered off.
2176
2177 It will default that this is a power-off state.
2178
2179 In modes 2 to 5, DO RO status and pulse count are saved in flash.
2180
2181 After restart, the status before power failure will be read from flash.
2182
2183
2184 == 6.8 Can i set up LT-22222-L as a NC(Normal Close) Relay? ==
2185
2186
2187 LT-22222-L built-in relay is NO (Normal Open). User can use an external relay to achieve Normal Close purpose. Diagram as below:
2188
2189
2190 [[image:image-20221006170630-1.png||height="610" width="945"]]
2191
2192
2193 == 6.9 Can LT22222-L save RO state? ==
2194
2195
2196 Firmware version needs to be no less than 1.6.0.
2197
2198
2199 == 6.10 Why does the LT22222 always report 15.585V when measuring AVI? ==
2200
2201
2202 It is likely that the GND is not connected during the measurement, or the wire connected to the GND is loose.
2203
2204
2205 = 7. Trouble Shooting =
2206 )))
2207
2208 (((
2209 (((
2210 == 7.1 Downlink doesn't work, how to solve it? ==
2211
2212
2213 )))
2214 )))
2215
2216 (((
2217 Please see this link for how to debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H5.1Howitwork"]]
2218 )))
2219
2220 (((
2221
2222
2223 == 7.2 Have trouble to upload image. ==
2224
2225
2226 )))
2227
2228 (((
2229 See this link for trouble shooting: [[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
2230 )))
2231
2232 (((
2233
2234
2235 == 7.3 Why I can't join TTN in US915 /AU915 bands? ==
2236
2237
2238 )))
2239
2240 (((
2241 It might be about the channels mapping. [[Please see this link for detail>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
2242 )))
2243
2244
2245 == 7.4 Why can LT22222 perform Uplink normally, but cannot receive Downlink? ==
2246
2247
2248 The FCD count of the gateway is inconsistent with the FCD count of the node, causing the downlink to remain in the queue state.
2249 Use this command to bring their counts back together: [[Resets the downlink packet count>>||anchor="H3.4.2.23Resetsthedownlinkpacketcount"]]
2250
2251
2252 = 8. Order Info =
2253
2254
2255 (% style="color:#4f81bd" %)**LT-22222-L-XXX:**
2256
2257 (% style="color:#4f81bd" %)**XXX:**
2258
2259 * (% style="color:red" %)**EU433**(%%):  LT with frequency bands EU433
2260 * (% style="color:red" %)**EU868**(%%):  LT with frequency bands EU868
2261 * (% style="color:red" %)**KR920**(%%):  LT with frequency bands KR920
2262 * (% style="color:red" %)**CN470**(%%):  LT with frequency bands CN470
2263 * (% style="color:red" %)**AS923**(%%):  LT with frequency bands AS923
2264 * (% style="color:red" %)**AU915**(%%):  LT with frequency bands AU915
2265 * (% style="color:red" %)**US915**(%%):  LT with frequency bands US915
2266 * (% style="color:red" %)**IN865**(%%):  LT with frequency bands IN865
2267 * (% style="color:red" %)**CN779**(%%):  LT with frequency bands CN779
2268
2269 = 9. Packing Info =
2270
2271
2272 **Package Includes**:
2273
2274 * LT-22222-L I/O Controller x 1
2275 * Stick Antenna for LoRa RF part x 1
2276 * Bracket for controller x1
2277 * Program cable x 1
2278
2279 **Dimension and weight**:
2280
2281 * Device Size: 13.5 x 7 x 3 cm
2282 * Device Weight: 105g
2283 * Package Size / pcs : 14.5 x 8 x 5 cm
2284 * Weight / pcs : 170g
2285
2286 = 10. Support =
2287
2288
2289 * (((
2290 Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
2291 )))
2292 * (((
2293 Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[Support@dragino.cc>>mailto:Support@dragino.cc]]
2294
2295
2296
2297 )))
2298
2299 = 11. Reference​​​​​ =
2300
2301
2302 * LT-22222-L: [[http:~~/~~/www.dragino.com/products/lora-lorawan-end-node/item/156-lt-22222-l.html>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/156-lt-22222-l.html]]
2303 * [[Datasheet, Document Base>>https://www.dropbox.com/sh/gxxmgks42tqfr3a/AACEdsj_mqzeoTOXARRlwYZ2a?dl=0]]
2304 * [[Hardware Source>>url:https://github.com/dragino/Lora/tree/master/LT/LT-33222-L/v1.0]]