Version 230.11 by Xiaoling on 2024/12/09 10:06

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 {{info}}
27 **This manual is also applicable to the LT-33222-L.**
28 {{/info}}
29
30 The Dragino (% style="color:blue" %)**LT-22222-L I/O Controller**(%%) is an advanced LoRaWAN end 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.
31
32 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.
33 )))
34 )))
35
36 (((
37 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.
38 )))
39
40 (((
41 You can connect the LT-22222-L I/O Controller to a LoRaWAN network service provider in several ways:
42
43 * If there is public LoRaWAN network coverage in the area where you plan to install the device (e.g., The Things Stack Community Network), you can select a network and register the LT-22222-L I/O controller with it.
44 * 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.
45 * Setup your own private LoRaWAN network.
46 )))
47
48 (((
49
50
51 The network diagram below illustrates how the LT-22222-L communicates with a typical LoRaWAN network.
52 )))
53
54 (% class="wikigeneratedid" %)
55 [[image:lorawan-nw.jpg||height="354" width="900"]]
56
57
58 == 1.2 Specifications ==
59
60
61 (% style="color:#037691" %)**Hardware System:**
62
63 * STM32L072xxxx MCU
64 * SX1276/78 Wireless Chip 
65 * Power Consumption:
66 ** Idle: 4mA@12V
67 ** 20dB Transmit: 34mA@12V
68 * Operating Temperature: -40 ~~ 85 Degrees, No Dew
69
70 (% style="color:#037691" %)**Interface for Model: LT22222-L:**
71
72 * 2 x Digital dual direction Input (Detect High/Low signal, Max: 50V, or 220V with optional external resistor)
73 * 2 x Digital Output (NPN output. Max pull-up voltage 36V,450mA)
74 * 2 x Relay Output (5A@250VAC / 30VDC)
75 * 2 x 0~~20mA Analog Input (res:0.01mA)
76 * 2 x 0~~30V Analog Input (res:0.01V)
77 * Power Input 7~~ 24V DC. 
78
79 (% style="color:#037691" %)**LoRa Spec:**
80
81 * Frequency Range:
82 ** Band 1 (HF): 862 ~~ 1020 MHz
83 ** Band 2 (LF): 410 ~~ 528 MHz
84 * 168 dB maximum link budget.
85 * +20 dBm - 100 mW constant RF output vs.
86 * +14 dBm high-efficiency PA.
87 * Programmable bit rate up to 300 kbps.
88 * High sensitivity: down to -148 dBm.
89 * Bullet-proof front end: IIP3 = -12.5 dBm.
90 * Excellent blocking immunity.
91 * Low RX current of 10.3 mA, 200 nA register retention.
92 * Fully integrated synthesizer with a resolution of 61 Hz.
93 * FSK, GFSK, MSK, GMSK, LoRaTM and OOK modulation.
94 * Built-in bit synchronizer for clock recovery.
95 * Preamble detection.
96 * 127 dB Dynamic Range RSSI.
97 * Automatic RF Sense and CAD with ultra-fast AFC.
98 * Packet engine up to 256 bytes with CRC.
99
100 == 1.3 Features ==
101
102 * LoRaWAN Class A & Class C modes
103 * Optional Customized LoRa Protocol
104 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/RU864/IN865/MA869
105 * AT Commands to change parameters
106 * Remotely configure parameters via LoRaWAN Downlink
107 * Firmware upgradable via program port
108 * Counting
109
110 == 1.4 Applications ==
111
112 * Smart buildings & home automation
113 * Logistics and supply chain management
114 * Smart metering
115 * Smart agriculture
116 * Smart cities
117 * Smart factory
118
119 == 1.5 Hardware Variants ==
120
121
122 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
123 |(% style="background-color:#4f81bd; color:white; width:94px" %)**Model**|(% style="background-color:#4f81bd; color:white; width:172px" %)**Photo**|(% style="background-color:#4f81bd; color:white; width:244px" %)**Description**
124 |(% style="width:94px" %)**LT-22222-L**|(% style="width:172px" %)(((
125 (% style="text-align:center" %)
126 [[image:lt33222-l.jpg||height="116" width="100"]]
127 )))|(% style="width:256px" %)(((
128 * 2 x Digital Input (Bi-direction)
129 * 2 x Digital Output
130 * 2 x Relay Output (5A@250VAC / 30VDC)
131 * 2 x 0~~20mA Analog Input (res:0.01mA)
132 * 2 x 0~~30V Analog Input (res:0.01v)
133 * 1 x Counting Port
134 )))
135
136 = 2. Assembling the device =
137
138 == 2.1 Connecting the antenna ==
139
140 Connect the LoRa antenna to the antenna connector, **ANT**,** **located on the top right side of the device, next to the upper screw terminal block. Secure the antenna by tightening it clockwise.
141
142 {{warning}}
143 **Warning! Do not power on the device without connecting the antenna.**
144 {{/warning}}
145
146 == 2.2 Terminals ==
147
148 The  LT-22222-L has two screw terminal blocks. The upper screw treminal block has 6 screw terminals and the lower screw terminal block has 10 screw terminals.
149
150 **Upper screw terminal block (from left to right):**
151
152 (% style="width:634px" %)
153 |=(% style="width: 295px;" %)Screw Terminal|=(% style="width: 338px;" %)Function
154 |(% style="width:295px" %)GND|(% style="width:338px" %)Ground
155 |(% style="width:295px" %)VIN|(% style="width:338px" %)Input Voltage
156 |(% style="width:295px" %)AVI2|(% style="width:338px" %)Analog Voltage Input Terminal 2
157 |(% style="width:295px" %)AVI1|(% style="width:338px" %)Analog Voltage Input Terminal 1
158 |(% style="width:295px" %)ACI2|(% style="width:338px" %)Analog Current Input Terminal 2
159 |(% style="width:295px" %)ACI1|(% style="width:338px" %)Analog Current Input Terminal 1
160
161 **Lower screw terminal block (from left to right):**
162
163 (% style="width:633px" %)
164 |=(% style="width: 296px;" %)Screw Terminal|=(% style="width: 334px;" %)Function
165 |(% style="width:296px" %)RO1-2|(% style="width:334px" %)Relay Output 1
166 |(% style="width:296px" %)RO1-1|(% style="width:334px" %)Relay Output 1
167 |(% style="width:296px" %)RO2-2|(% style="width:334px" %)Relay Output 2
168 |(% style="width:296px" %)RO2-1|(% style="width:334px" %)Relay Output 2
169 |(% style="width:296px" %)DI2+|(% style="width:334px" %)Digital Input 2
170 |(% style="width:296px" %)DI2-|(% style="width:334px" %)Digital Input 2
171 |(% style="width:296px" %)DI1+|(% style="width:334px" %)Digital Input 1
172 |(% style="width:296px" %)DI1-|(% style="width:334px" %)Digital Input 1
173 |(% style="width:296px" %)DO2|(% style="width:334px" %)Digital Output 2
174 |(% style="width:296px" %)DO1|(% style="width:334px" %)Digital Output 1
175
176 == 2.3 Connecting LT-22222-L to a Power Source ==
177
178 The LT-22222-L I/O Controller can be powered by a **7–24V DC** power source. Connect your 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.
179
180 {{warning}}
181 **We recommend that you power on the LT-22222-L after adding its registration information to the LoRaWAN network server. Otherwise, the device will continuously send join-request messages to attempt to join a LoRaWAN network but will fail.**
182 {{/warning}}
183
184
185 [[image:1653297104069-180.png]]
186
187
188 = 3. Registering LT-22222-L with a LoRaWAN Network Server =
189
190 The LT-22222-L supports both OTAA (Over-the-Air Activation) and ABP (Activation By Personalization) methods to activate with a LoRaWAN Network Server. However, OTAA is the most secure method for activating a device with a LoRaWAN Network Server. OTAA regenerates session keys upon initial registration and regenerates new session keys after any subsequent reboots. By default, the LT-22222-L is configured to operate in LoRaWAN Class C mode.
191
192
193 === 3.2.1 Prerequisites ===
194
195 The LT-22222-L comes with device registration information such as DevEUI, AppEUI, and AppKey that allows you to register it with a LoRaWAN network. These 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.
196
197 [[image:image-20230425173427-2.png||height="246" width="530"]]
198
199 {{info}}
200 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.
201 {{/info}}
202
203 The following subsections explain how to register the LT-22222-L with different LoRaWAN network server providers.
204
205 === 3.2.2 The Things Stack ===
206
207 This section guides you through how to register your LT-22222-L with The Things Stack Sandbox.
208
209 {{info}}
210 The Things Stack Sandbox was formally called The Things Stack Community Edition.
211 {{/info}}
212
213
214 The network diagram below illustrates the connection between the LT-22222-L and The Things Stack, as well as how the data can be integrated with the ThingsEye IoT platform.
215
216
217 [[image:dragino-lorawan-nw-lt-22222-n.jpg]]
218
219 {{info}}
220 You can use a LoRaWAN gateway, such as the [[Dragino LPS8N>>https://www.dragino.com/products/lora-lorawan-gateway/item/200-lps8n.html]], to expand or create LoRaWAN coverage in your area.
221 {{/info}}
222
223
224 ==== 3.2.2.1 Setting up ====
225
226 * Sign up for a free account with [[The Things Stack Sandbox>>https://eu1.cloud.thethings.network]] if you do not have one yet.
227 * Log in to your The Things Stack Sandbox account.
228 * Create an **application** with The Things Stack if you do not have one yet (E.g., dragino-docs).
229 * Go to your application's page and click on the **End devices** in the left menu.
230 * On the End devices page, click on **+ Register end device**. Two registration options are available:
231
232 ==== 3.2.2.2 Using the LoRaWAN Device Repository ====
233
234 * On the **Register end device** page:
235 ** Select the option **Select the end device in the LoRaWAN Device Repository **under **Input method**.
236 ** Select the **End device brand**, **Model**, **Hardware version**, **Firmware version**, and **Profile (Region)** from the respective dropdown lists.
237 *** **End device brand**: Dragino Technology Co., Limited
238 *** **Model**: LT22222-L I/O Controller
239 *** **Hardware ver**: Unknown
240 *** **Firmware ver**: 1.6.0
241 *** **Profile (Region)**: Select the region that matches your device.
242 ** Select the **Frequency plan** that matches your device from the **Frequency plan** dropdown list.
243
244 [[image:lt-22222-l-dev-repo-reg-p1.png]]
245
246
247 * Register end device page continued...
248 ** Enter the **AppEUI** in the **JoinEUI** field and click the **Confirm** button. If The Things Stack accepts the JoinEUI you provided, it will display the message 'This end device can be registered on the network'.
249 ** In the **DevEUI** field, enter the **DevEUI**.
250 ** In the **AppKey** field, enter the **AppKey.**
251 ** In the **End device ID** field, enter a unique name for your LT-22222-N within this application.
252 ** Under **After registration**, select the **View registered end device** option.
253
254 [[image:lt-22222-l-dev-repo-reg-p2.png]]
255
256
257 ==== 3.2.2.3 Adding device manually ====
258
259 * On the **Register end device** page:
260 ** Select the option **Enter end device specifies manually** under **Input method**.
261 ** Select the **Frequency plan** that matches your device from the **Frequency plan** dropdown list.
262 ** Select the **LoRaWAN version** as **LoRaWAN Specification 1.0.3**
263 ** Select the **Regional Parameters version** as** RP001 Regional Parameters 1.0.3 revision A**
264 ** Click **Show advanced activation, LoRaWAN class and cluster settings** link to expand the hidden section.
265 ** Select the option **Over the air activation (OTAA)** under the **Activation mode.**
266 ** Select **Class C (Continuous)** from the **Additional LoRaWAN class capabilities** dropdown list.
267
268 [[image:lt-22222-l-manually-p1.png]]
269
270
271 * Register end device page continued...
272 ** Enter the **AppEUI** in the **JoinEUI** field and click the **Confirm** button. If The Things Stack accepts the JoinEUI you provided, it will display the message '//**This end device can be registered on the network**//'
273 ** In the **DevEUI** field, enter the **DevEUI**.
274 ** In the **AppKey** field, enter the **AppKey**.
275 ** In the **End device ID** field, enter a unique name for your LT-22222-N within this application.
276 ** Under **After registration**, select the **View registered end device** option.
277 ** Click the **Register end device** button.
278
279 [[image:lt-22222-l-manually-p2.png]]
280
281
282 You will be navigated to the **Device overview** page.
283
284
285 [[image:lt-22222-device-overview.png]]
286
287
288 ==== 3.2.2.4 Joining ====
289
290 On the Device's page, click on **Live data** tab. The Live data panel for your device will display.
291
292 Now power on your LT-22222-L. The **TX LED** will **fast-blink 5 times** which means the LT-22222-L will enter the **work mode** and start to **join** The Things Stack network server. The **TX LED** will be on for **5 seconds** after joining the network. In the **Live data** panel, you can see the **join-request** and **join-accept** messages exchanged between the device and the network server.
293
294
295 [[image:lt-22222-l-joining.png]]
296
297
298
299 ==== 3.2.2.5 Uplinks ====
300
301
302 After successfully joining, the device will send its first **uplink data message** to the application it belongs to (in this example, **dragino-docs**). When the LT-22222-L sends an uplink message to the server, the **TX LED** turns on for **1 second**. By default, you will receive an uplink data message from the device every 10 minutes.
303
304 Click on one of a **Forward uplink data messages **to see its payload content. The payload content is encapsulated within the decode_payload {} JSON object.
305
306 [[image:lt-22222-ul-payload-decoded.png]]
307
308
309 If you can't see the decoded payload, it is because you haven't added the uplink formatter code. To add the uplink formatter code, select **Applications > your application > End devices** > **your end device** > **Payload formatters** > **Uplink**. Then  select **Use Device repository formatters** for the **Formatter type** dropdown. Click the **Save changes** button to apply the changes.
310
311 {{info}}
312 The Things Stack provides two levels of payload formatters: application level and device level. The device-level payload formatters **override **the application-level payload formatters.
313 {{/info}}
314
315 [[image:lt-22222-ul-payload-fmt.png]]
316
317
318 We also have a payload formatter that resolves some decoding issues present in the Device Repository formatter. You can add it under the Custom JavaScript formatter. It can be found [[here>>https://github.com/dragino/dragino-end-node-decoder/blob/main/LT22222-L/v1.6_decoder_ttn%20.txt]]:
319
320 (% class="wikigeneratedid" %)
321 [[image:lt-22222-l-js-custom-payload-formatter.png]]
322
323
324 ==== 3.2.2.6 Downlinks ====
325
326 When the LT-22222-L receives a downlink message from the server, the **RX LED** turns on for **1 second**.
327
328
329 == 3.3 Working Modes and Uplink Payload formats ==
330
331
332 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.
333
334 * (% style="color:blue" %)**MOD1**(%%): (default mode/factory set): 2ACI + 2AVI + DI + DO + RO
335
336 * (% style="color:blue" %)**MOD2**(%%): Double DI Counting + DO + RO
337
338 * (% style="color:blue" %)**MOD3**(%%): Single DI Counting + 2 x ACI + DO + RO
339
340 * (% style="color:blue" %)**MOD4**(%%): Single DI Counting + 1 x Voltage Counting + DO + RO
341
342 * (% style="color:blue" %)**MOD5**(%%): Single DI Counting + 2 x AVI + 1 x ACI + DO + RO
343
344 * (% style="color:blue" %)**ADDMOD6**(%%): Trigger Mode, Optional, used together with MOD1 ~~ MOD5
345
346 The uplink messages are sent over LoRaWAN FPort=2. By default, an uplink message is sent every 10 minutes.
347
348 === 3.3.1 AT+MOD~=1, 2ACI+2AVI ===
349
350 (((
351 This is the default mode.
352
353 The uplink payload is 11 bytes long.
354
355 (% style="color:red" %)**Note:The maximum count depends on the bytes number of bytes.
356 The maximum count for four bytes is FFFFFFFF (hex) = 4294967295 (dec).
357 It starts counting again when it reaches the maximum value.**(% style="display:none" wfd-invisible="true" %)
358
359 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
360 |(% 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**
361 |Value|(((
362 AVI1 voltage
363 )))|(((
364 AVI2 voltage
365 )))|(((
366 ACI1 Current
367 )))|(((
368 ACI2 Current
369 )))|**DIDORO***|(((
370 Reserve
371 )))|MOD
372 )))
373
374 (((
375 (% style="color:#4f81bd" %)*** DIDORO**(%%) is a combination of RO1, RO2, DI3, DI2, DI1, DO3, DO2 and DO1, and its size is1 byte long as shown below.
376
377 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
378 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
379 |RO1|RO2|--DI3--|DI2|DI1|--DO3--|DO2|DO1
380 )))
381
382 * RO is for the relay. ROx=1: CLOSED, ROx=0 always OPEN.
383 * DI is for digital input. DIx=1: HIGH or FLOATING, DIx=0: LOW.
384 * DO is for reverse digital output. DOx=1: LOW, DOx=0: HIGH or FLOATING.
385
386 (% style="color:red" %)**Note: DI3 and DO3 bits are not valid for LT-22222-L**
387
388 For example, if the payload is: [[image:image-20220523175847-2.png]]
389
390
391 **The interface values can be calculated as follows:  **
392
393 AVI1 channel voltage is 0x04AB/1000=1195(DEC)/1000=1.195V
394
395 AVI2 channel voltage is 0x04AC/1000=1.196V
396
397 ACI1 channel current is 0x1310/1000=4.880mA
398
399 ACI2 channel current is 0x1300/1000=4.864mA
400
401 The last byte 0xAA= **10101010**(b) means,
402
403 * [1] The RO1 relay channel is CLOSED, and the RO1 LED is ON.
404 * [0] The RO2 relay channel is OPEN, and the RO2 LED is OFF.
405 * **[1] DI3 - not used for LT-22222-L.**
406 * [0] DI2 channel input is LOW, and the DI2 LED is OFF.
407 * [1] DI1 channel input state:
408 ** DI1 is FLOATING when no sensor is connected between DI1+ and DI1-.
409 ** DI1 is HIGH when a sensor is connected between DI1- and DI1+ and the sensor is ACTIVE.
410 ** DI1 LED is ON in both cases.
411 * **[0] DO3 - not used for LT-22222-L.**
412 * [1] DO2 channel output is LOW, and the DO2 LED is ON.
413 * [0] DO1 channel output state:
414 ** DO1 is FLOATING when there is no load between DO1 and V+.
415 ** DO1 is HIGH and there is a load between DO1 and V+.
416 ** DO1 LED is OFF in both cases.
417
418 Reserve = 0
419
420 MOD = 1
421
422 === 3.3.2 AT+MOD~=2, (Double DI Counting) ===
423
424
425 (((
426 **For LT-22222-L**: In this mode, **DI1 and DI2** are used as counting pins.
427 )))
428
429 (((
430 The uplink payload is 11 bytes long.
431
432 (% style="color:red" %)**Note:The maximum count depends on the bytes it is.
433 The maximum count for four bytes is FFFFFFFF (hex) = 4294967295 (dec).
434 It starts counting again when it reaches the maximum value.**
435
436 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
437 |(% 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**
438 |Value|COUNT1|COUNT2 |DIDORO*|(((
439 Reserve
440 )))|MOD
441 )))
442
443 (((
444 (% style="color:#4f81bd" %)***DIDORO**(%%) is a combination of RO1, RO2, FIRST, Reserve, Reserve, DO3, DO2 and DO1, and its size is 1 byte long as shown below.
445
446 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
447 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
448 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
449
450 * RO is for the relay. ROx=1: CLOSED, ROx=0 always OPEN.
451 )))
452
453 * FIRST: Indicates that this is the first packet after joining the network.
454 * DO is for reverse digital output. DOx=1: LOW, DOx=0: HIGH or FLOATING.
455
456 (((
457 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L**
458
459
460 )))
461
462 (((
463 **To activate this mode, run the following AT commands:**
464 )))
465
466 (((
467 (% class="box infomessage" %)
468 (((
469 **AT+MOD=2**
470
471 **ATZ**
472 )))
473 )))
474
475 (((
476
477
478 (% style="color:#4f81bd" %)**AT Commands for counting:**
479 )))
480
481 (((
482 **For LT22222-L:**
483
484 (% style="color:blue" %)**AT+TRIG1=0,100**(%%)** (sets the DI1 port to trigger on a LOW level. The valid signal duration is 100ms) **
485
486 (% style="color:blue" %)**AT+TRIG1=1,100**(%%)** (sets the DI1 port to trigger on a HIGH level. The valid signal duration is 100ms) **
487
488 (% style="color:blue" %)**AT+TRIG2=0,100**(%%)** (sets the DI2 port to trigger on a LOW level. The valid signal duration is 100ms) **
489
490 (% style="color:blue" %)**AT+TRIG2=1,100**(%%)** (sets the DI2 port to trigger on a HIGH level. The valid signal duration is 100ms) **
491
492 (% style="color:blue" %)**AT+SETCNT=1,60**(%%)** (sets the COUNT1 value to 60)**
493
494 (% style="color:blue" %)**AT+SETCNT=2,60 **(%%)**(sets the COUNT2 value to 60)**
495 )))
496
497
498 === 3.3.3 AT+MOD~=3, Single DI Counting + 2 x ACI ===
499
500 (% style="color:red" %)**Note: The maximum count depends on the bytes it is.
501 The maximum count for four bytes is FFFFFFFF (hex) = 4294967295 (dec).
502 It starts counting again when it reaches the maximum value.**
503
504 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
505
506 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
507 |(% 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**
508 |Value|COUNT1|(((
509 ACI1 Current
510 )))|(((
511 ACI2 Current
512 )))|DIDORO*|Reserve|MOD
513
514 (((
515 (% 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.
516
517 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
518 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
519 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
520 )))
521
522 * RO is for the relay. ROx=1: closed, ROx=0 always open.
523 * FIRST: Indicates that this is the first packet after joining the network.
524 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
525
526 (((
527 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
528 )))
529
530
531 (((
532 **To activate this mode, run the following AT commands:**
533 )))
534
535 (((
536 (% class="box infomessage" %)
537 (((
538 **AT+MOD=3**
539
540 **ATZ**
541 )))
542 )))
543
544 (((
545 AT Commands for counting:
546
547 The AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
548 )))
549
550
551 === 3.3.4 AT+MOD~=4, Single DI Counting + 1 x Voltage Counting ===
552
553 (% style="color:red" %)**Note:The maximum count depends on the bytes it is.
554 The maximum count for four bytes is FFFFFFFF (hex) = 4294967295 (dec).
555 It starts counting again when it reaches the maximum value.**
556
557
558 (((
559 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
560 )))
561
562 (((
563 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.
564
565 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
566 |(% 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**
567 |Value|COUNT1|AVI1 Counting|DIDORO*|(((
568 Reserve
569 )))|MOD
570 )))
571
572 (((
573 (% 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.
574
575 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
576 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
577 |RO1|RO2|FIRST|Reserve|Reserve|--DO3--|DO2|DO1
578 )))
579
580 * RO is for the relay. ROx=1: closed, ROx=0 always open.
581 * FIRST: Indicates that this is the first packet after joining the network.
582 * DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
583
584 (((
585 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
586
587
588 )))
589
590 (((
591 **To activate this mode, run the following AT commands:**
592 )))
593
594 (((
595 (% class="box infomessage" %)
596 (((
597 **AT+MOD=4**
598
599 **ATZ**
600 )))
601 )))
602
603 (((
604 AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
605 )))
606
607 (((
608 **In addition to that, below are the commands for AVI1 Counting:**
609
610 (% style="color:blue" %)**AT+SETCNT=3,60 **(%%)**(Sets AVI1 Count to 60)**
611
612 (% style="color:blue" %)**AT+VOLMAX=20000 **(%%)**(If the AVI1 voltage is higher than VOLMAX (20000mV =20V), the counter increases by 1)**
613
614 (% style="color:blue" %)**AT+VOLMAX=20000,0 **(%%)**(If the AVI1 voltage is lower than VOLMAX (20000mV =20V), counter increases by 1)**
615
616 (% style="color:blue" %)**AT+VOLMAX=20000,1 **(%%)**(If the AVI1 voltage is higher than VOLMAX (20000mV =20V), counter increases by 1)**
617 )))
618
619
620 === 3.3.5 AT+MOD~=5, Single DI Counting + 2 x AVI + 1 x ACI ===
621
622 (% style="color:red" %)**Note:The maximum count depends on the bytes it is.
623 The maximum count for four bytes is FFFFFFFF (hex) = 4294967295 (dec).
624 It starts counting again when it reaches the maximum value.**
625
626
627 **LT22222-L**: In this mode, the DI1 is used as a counting pin.
628
629 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
630 |(% 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**
631 |Value|(((
632 AVI1 voltage
633 )))|(((
634 AVI2 voltage
635 )))|(((
636 ACI1 Current
637 )))|COUNT1|DIDORO*|(((
638 Reserve
639 )))|MOD
640
641 (((
642 (% 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.
643
644 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
645 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
646 |RO1|RO2|FIRST|Reserve|Reserve|DO3|DO2|DO1
647 )))
648
649 * RO is for the relay. ROx=1: closed, ROx=0 always open.
650 * FIRST: Indicates that this is the first packet after joining the network.
651 * (((
652 DO is for reverse digital output. DOx=1: output low, DOx=0: high or floating.
653 )))
654
655 (((
656 (% style="color:red" %)**Note: DO3 bit is not valid for LT-22222-L.**
657 )))
658
659 (((
660 **To activate this mode, run the following AT commands:**
661 )))
662
663 (((
664 (% class="box infomessage" %)
665 (((
666 **AT+MOD=5**
667
668 **ATZ**
669 )))
670 )))
671
672 (((
673 Other AT Commands for counting are similar to the [[MOD2 Counting Command>>||anchor="H3.3.2AT2BMOD3D22C28DoubleDICounting29"]]s.
674 )))
675
676
677 === 3.3.6 AT+ADDMOD~=6 (Trigger Mode, Optional) ===
678
679
680 (% style="color:#4f81bd" %)**This mode is optional and intended for trigger purposes. It can operate __alongside__ with other modes.**
681
682 For example, if you configure the following commands:
683
684 * **AT+MOD=1 ** **~-~->**  Sets the default working mode
685 * **AT+ADDMOD6=1**   **~-~->**  Enables trigger mode
686
687 The LT-22222-L will continuously monitor AV1, AV2, AC1, and AC2 every 5 seconds. It will send uplink packets in two cases:
688
689 1. Periodic uplink: Based on TDC time. The payload is the same as in normal mode (MOD=1 as set above). These are (% style="color:#4f81bd" %)**unconfirmed**(%%) uplinks.
690 1. (((
691 Trigger uplink: sent when a trigger condition is met. In this case, LT will send two packets
692
693 * The first uplink uses the payload specified in trigger mode (MOD=6).
694 * The second packet uses the normal mode payload (MOD=1 as set above). Both are (% style="color:#4f81bd" %)**confirmed uplinks.**
695 )))
696
697 (% style="color:#037691" %)**AT Commands to set Trigger Conditions**:
698
699 (% style="color:#4f81bd" %)**Trigger based on voltage**:
700
701 Format: AT+AVLIM=<AV1_LIMIT_LOW>,< AV1_LIMIT_HIGH>,<AV2_LIMIT_LOW>,< AV2_LIMIT_HIGH>
702
703
704 **Example:**
705
706 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)
707
708 AT+AVLIM=5000,0,0,0 (triggers an uplink if AVI1 voltage lower than 5V. Use 0 for parameters that are not in use)
709
710
711 (% style="color:#4f81bd" %)**Trigger based on current**:
712
713 Format: AT+ACLIM=<AC1_LIMIT_LOW>,< AC1_LIMIT_HIGH>,<AC2_LIMIT_LOW>,< AC2_LIMIT_HIGH>
714
715
716 **Example:**
717
718 AT+ACLIM=10000,15000,0,0 (triggers an uplink if AC1 current is lower than 10mA or higher than 15mA)
719
720
721 (% style="color:#4f81bd" %)**Trigger based on DI status**:
722
723 DI status triggers Flag.
724
725 Format: AT+DTRI=<DI1_TIRGGER_FlAG>,< DI2_TIRGGER_FlAG >
726
727
728 **Example:**
729
730 AT+ DTRI =1,0   (Enable DI1 trigger / disable DI2 trigger)
731
732
733 (% style="color:#037691" %)**LoRaWAN Downlink Commands for Setting the Trigger Conditions:**
734
735 **Type Code**: 0xAA. Downlink command same as AT Command **AT+AVLIM, AT+ACLIM**
736
737 **Format**: AA xx yy1 yy1 yy2 yy2 yy3 yy3 yy4 yy4
738
739 AA: Type Code for this downlink Command:
740
741 xx: **0**: Limit for AV1 and AV2; **1**: limit for AC1 and AC2; **2**: DI1and DI2 trigger enable/disable.
742
743 yy1 yy1: AC1 or AV1 LOW limit or DI1/DI2 trigger status.
744
745 yy2 yy2: AC1 or AV1 HIGH limit.
746
747 yy3 yy3: AC2 or AV2 LOW limit.
748
749 Yy4 yy4: AC2 or AV2 HIGH limit.
750
751
752 **Example 1**: AA 00 13 88 00 00 00 00 00 00
753
754 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)
755
756
757 **Example 2**: AA 02 01 00
758
759 Same as AT+ DTRI =1,0 (Enable DI1 trigger / disable DI2 trigger)
760
761
762 (% style="color:#4f81bd" %)**Trigger Settings Payload Explanation:**
763
764 MOD6 Payload: total of 11 bytes
765
766 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
767 |(% 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**
768 |Value|(((
769 TRI_A FLAG
770 )))|(((
771 TRI_A Status
772 )))|(((
773 TRI_DI FLAG+STA
774 )))|Reserve|Enable/Disable MOD6|(((
775 MOD(6)
776 )))
777
778 (% style="color:#4f81bd" %)**TRI FLAG1**(%%) is a combination to show if the trigger is set for this part. Totally 1 byte as below
779
780 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
781 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
782 |(((
783 AV1_LOW
784 )))|(((
785 AV1_HIGH
786 )))|(((
787 AV2_LOW
788 )))|(((
789 AV2_HIGH
790 )))|(((
791 AC1_LOW
792 )))|(((
793 AC1_HIGH
794 )))|(((
795 AC2_LOW
796 )))|(((
797 AC2_HIGH
798 )))
799
800 * Each bit shows if the corresponding trigger has been configured.
801
802 **Example:**
803
804 10100000: This means the system is configured to use the triggers AV1_LOW and AV2_LOW.
805
806
807 (% style="color:#4f81bd" %)**TRI Status1**(%%) is a combination to show which condition is trigger. Totally 1 byte as below
808
809 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
810 |**bit 7**|**bit 6**|**bit 5**|**bit 4**|**bit 3**|**bit 2**|**bit 1**|**bit 0**
811 |(((
812 AV1_LOW
813 )))|(((
814 AV1_HIGH
815 )))|(((
816 AV2_LOW
817 )))|(((
818 AV2_HIGH
819 )))|(((
820 AC1_LOW
821 )))|(((
822 AC1_HIGH
823 )))|(((
824 AC2_LOW
825 )))|(((
826 AC2_HIGH
827 )))
828
829 * Each bit shows which status has been triggered on this uplink.
830
831 **Example:**
832
833 10000000: The uplink is triggered by AV1_LOW, indicating that the voltage is too low.
834
835
836 (% style="color:#4f81bd" %)**TRI_DI FLAG+STA **(%%)is a combination to show which condition is trigger. Totally 1byte as below
837
838 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
839 |(% style="width:50px" %)**bit 7**|(% style="width:50px" %)**bit 6**|(% style="width:50px" %)**bit 5**|(% style="width:50px" %)**bit 4**|(% style="width:90px" %)**bit 3**|(% style="width:80px" %)**bit 2**|(% style="width:90px" %)**bit 1**|(% style="width:95px" %)**bit 0**
840 |(% style="width:49px" %)N/A|(% style="width:53px" %)N/A|(% style="width:53px" %)N/A|(% style="width:55px" %)N/A|(% style="width:99px" %)DI2_STATUS|(% style="width:83px" %)DI2_FLAG|(% style="width:98px" %)DI1_STATUS|(% style="width:85px" %)DI1_FLAG
841
842 * Each bit shows which status has been triggered on this uplink.
843
844 **Example:**
845
846 00000111: This means both DI1 and DI2 triggers are enabled, and this packet is trigger by DI1.
847
848 00000101: This means both DI1 and DI2 triggers are enabled.
849
850
851 (% style="color:#4f81bd" %)**Enable/Disable MOD6 **(%%): 0x01: MOD6 is enabled. 0x00: MOD6 is disabled.
852
853 Downlink command to poll/request MOD6 status:
854
855 **AB 06**
856
857 When device receives this command, it will send the MOD6 payload.
858
859
860 === 3.3.7 Payload Decoder ===
861
862 (((
863
864
865 **Decoder for TTN/loraserver/ChirpStack**:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
866 )))
867
868
869 == 3.4 ​Configure LT-22222-L via AT Commands or Downlinks ==
870
871
872 (((
873 You can configure LT-22222-L I/O Controller via AT Commands or LoRaWAN Downlinks.
874 )))
875
876 (((
877 (((
878 There are two tytes of commands:
879 )))
880 )))
881
882 * (% style="color:blue" %)**Common commands**(%%):
883
884 * (% style="color:blue" %)**Sensor-related commands**(%%):
885
886
887 === 3.4.1 Common commands ===
888
889
890 (((
891 These are available for each sensors and include actions such as changing the uplink interval or resetting the device. For firmware v1.5.4, you can find the supported common commands under: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]s.
892
893
894 )))
895
896 === 3.4.2 Sensor-related commands ===
897
898
899 These commands are specially designed for the LT-22222-L. Commands can be sent to the device using options such as an AT command or a LoRaWAN downlink payload.
900
901
902 ==== 3.4.2.1 Set Transmit/Uplink Interval ====
903
904
905 Sets the uplink interval of the device. The default uplink transmission interval is 10 minutes.
906
907 (% style="color:#037691" %)**AT command**
908
909 (% border="2" style="width:500px" %)
910 |**Command**|AT+TDC=<time>
911 |**Parameters**|**time **: uplink interval in milliseconds
912 |**Get**|AT+TDC=?
913 |**Response**|(((
914 current uplink interval
915
916 OK
917 )))
918 |**Set**|AT+TDC=<time>
919 |**Response**|OK
920 |**Example**|(((
921 AT+TDC=30000
922
923 Sets the uplink interval to **30 seconds** (30000 milliseconds)
924 )))
925
926 (% style="color:#037691" %)**Downlink payload**
927
928 (% border="2" style="width:500px" %)
929 |**Payload**|(((
930 <prefix><time>
931 )))
932 |**Parameters**|(((
933 **prefix** : 0x01
934
935 **time** : uplink interval in **seconds**, represented by **3  bytes** in **hexadecimal**.
936 )))
937 |**Example**|(((
938 01 **00 00 1E**
939
940 Sets the uplink interval to **30 seconds**
941
942 Conversion: 30 (dec) = 00 00 1E (hex)
943
944 See [[RapidTables>>https://www.rapidtables.com/convert/number/decimal-to-hex.html?x=30]]
945
946 [[image:Screenshot 2024-11-23 at 18.27.11.png]]
947 )))
948
949 ==== 3.4.2.2 Set the Working Mode (AT+MOD) ====
950
951
952 Sets the working mode.
953
954 (% style="color:#037691" %)**AT command**
955
956 (% border="2" style="width:500px" %)
957 |(% style="width:97px" %)**Command**|(% style="width:413px" %)AT+MOD=<working_mode>
958 |(% style="width:97px" %)**Parameters**|(% style="width:413px" %)(((
959 **working_mode** :
960
961 1 = (Default mode/factory set):  2ACI + 2AVI + DI + DO + RO
962
963 2 = Double DI Counting + DO + RO
964
965 3 = Single DI Counting + 2 x ACI + DO + RO
966
967 4 = Single DI Counting + 1 x Voltage Counting + DO + RO
968
969 5 = Single DI Counting + 2 x AVI + 1 x ACI + DO + RO
970
971 6 = Trigger Mode, Optional, used together with MOD1 ~~ MOD5
972 )))
973 |(% style="width:97px" %)**Get**|(% style="width:413px" %)AT+MOD=?
974 |(% style="width:97px" %)**Response**|(% style="width:413px" %)(((
975 Current working mode
976
977 OK
978 )))
979 |(% style="width:97px" %)**Set**|(% style="width:413px" %)AT+MOD=<working_mode>
980 |(% style="width:97px" %)**Response**|(% style="width:413px" %)(((
981 Attention:Take effect after ATZ
982
983 OK
984 )))
985 |(% style="width:97px" %)**Example**|(% style="width:413px" %)(((
986 AT+MOD=2
987
988 Sets the device to working mode 2 (Double DI Counting + DO + RO)
989 )))
990
991 (% class="wikigeneratedid" %)
992 (% style="color:#037691" %)**Downlink payload**
993
994 (% border="2" style="width:500px" %)
995 |(% style="width:98px" %)**Payload**|(% style="width:400px" %)<prefix><working_mode>
996 |(% style="width:98px" %)**Parameters**|(% style="width:400px" %)(((
997 **prefix** : 0x0A
998
999 **working_mode** : Working mode, represented by 1 byte in hexadecimal.
1000 )))
1001 |(% style="width:98px" %)**Example**|(% style="width:400px" %)(((
1002 0A **02**
1003
1004 Sets the device to working mode 2 (Double DI Counting + DO + RO)
1005 )))
1006
1007
1008 ==== 3.4.2.3 Request an uplink from the device ====
1009
1010
1011 Requests an uplink from LT-22222-L. The content of the uplink payload varies based on the device's current working mode.
1012
1013 (% style="color:#037691" %)**AT command**
1014
1015 There is no AT Command available for this feature.
1016
1017 (% style="color:#037691" %)**Downlink payload**
1018
1019 (% border="2" style="width:500px" %)
1020 |(% style="width:101px" %)**Payload**|(% style="width:397px" %)<prefix>FF
1021 |(% style="width:101px" %)**Parameters**|(% style="width:397px" %)**prefix** : 0x08
1022 |(% style="width:101px" %)**Example**|(% style="width:397px" %)(((
1023 08 **FF**
1024
1025 Requests an uplink from LT-22222-L.
1026 )))
1027
1028
1029 ==== 3.4.2.4 Enable/Disable Trigger Mode ====
1030
1031
1032 Enable or disable the trigger mode for the current working mode (see also [[ADDMOD6>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]).
1033
1034 (% style="color:#037691" %)**AT Command**
1035
1036 (% border="2" style="width:500px" %)
1037 |(% style="width:95px" %)**Command**|(% style="width:403px" %)AT+ADDMOD6=<enable/disable trigger_mode>
1038 |(% style="width:95px" %)**Response**|(% style="width:403px" %)
1039 |(% style="width:95px" %)**Parameters**|(% style="width:403px" %)(((
1040 **enable/disable trigger_mode** :
1041
1042 1 = enable trigger mode
1043
1044 0 = disable trigger mode
1045 )))
1046 |(% style="width:95px" %)**Example**|(% style="width:403px" %)(((
1047 AT+ADDMOD6=1
1048
1049 Enable trigger mode for the current working mode
1050 )))
1051
1052 (% style="color:#037691" %)**Downlink payload**
1053
1054 (% border="2" style="width:500px" %)
1055 |(% style="width:97px" %)**Payload**|(% style="width:401px" %)<prefix><enable/disable trigger_mode>
1056 |(% style="width:97px" %)**Parameters**|(% style="width:401px" %)(((
1057 **prefix** : 0x0A 06 (two bytes in hexadecimal)
1058
1059 **enable/disable trigger_mode** : enable (1) or disable (0), represented by 1 byte in hexadecimal.
1060 )))
1061 |(% style="width:97px" %)**Example**|(% style="width:401px" %)(((
1062 0A 06 **01**
1063
1064 Enable trigger mode for the current working mode
1065 )))
1066
1067
1068 ==== 3.4.2.5 Request trigger settings ====
1069
1070
1071 Requests the trigger settings.
1072
1073 (% style="color:#037691" %)**AT Command:**
1074
1075 There is no AT Command available for this feature.
1076
1077 (% style="color:#037691" %)**Downlink Payload**
1078
1079 (% border="2" style="width:500px" %)
1080 |(% style="width:95px" %)**Payload**|(% style="width:403px" %)<prefix>
1081 |(% style="width:95px" %)**Parameters**|(% style="width:403px" %)**prefix **: AB 06 (two bytes in hexadecimal)
1082 |(% style="width:95px" %)**Example**|(% style="width:403px" %)(((
1083 AB 06
1084
1085 Uplinks the trigger settings.
1086 )))
1087
1088
1089 ==== 3.4.2.6 Enable/Disable DI1/DI2/DI3 as a trigger ====
1090
1091
1092 Enable or disable DI1/DI2/DI3 as a trigger.
1093
1094 (% style="color:#037691" %)**AT Command**
1095
1096 (% border="2" style="width:500px" %)
1097 |(% style="width:98px" %)**Command**|(% style="width:400px" %)AT+DTRI=<DI1_trigger>,<DI2_trigger>
1098 |(% style="width:98px" %)**Response**|(% style="width:400px" %)
1099 |(% style="width:98px" %)**Parameters**|(% style="width:400px" %)(((
1100 **DI1_trigger:**
1101
1102 1 = enable DI1 trigger
1103
1104 0 = disable DI1 trigger
1105
1106 **DI2 _trigger**
1107
1108 1 = enable DI2 trigger
1109
1110 0 = disable DI2 trigger
1111 )))
1112 |(% style="width:98px" %)**Example**|(% style="width:400px" %)(((
1113 AT+DTRI=1,0
1114
1115 Enable DI1 trigger, disable DI2 trigger
1116 )))
1117
1118 (% class="wikigeneratedid" %)
1119 (% style="color:#037691" %)**Downlink Payload**
1120
1121 (% border="2" style="width:500px" %)
1122 |(% style="width:101px" %)**Payload**|(% style="width:397px" %)<prefix><DI1_trigger><DI2_trigger>
1123 |(% style="width:101px" %)**Parameters**|(% style="width:397px" %)(((
1124 **prefix :** AA 02 (two bytes in hexadecimal)
1125
1126 **DI1_trigger:**
1127
1128 1 = enable DI1 trigger, represented by 1 byte in hexadecimal.
1129
1130 0 = disable DI1 trigger, represented by 1 byte in hexadecimal.
1131
1132 **DI2 _trigger**
1133
1134 1 = enable DI2 trigger, represented by 1 byte in hexadecimal.
1135
1136 0 = disable DI2 trigger, represented by 1 byte in hexadecimal.
1137 )))
1138 |(% style="width:101px" %)**Example**|(% style="width:397px" %)(((
1139 AA 02 **01 00**
1140
1141 Enable DI1 trigger, disable DI2 trigger
1142 )))
1143
1144
1145 ==== 3.4.2.7 Trigger1 – Set DI or DI3 as a trigger ====
1146
1147
1148 Sets DI1 or DI3 (for LT-33222-L) as a trigger.
1149
1150 (% style="color:#037691" %)**AT Command**
1151
1152 (% border="2" style="width:500px" %)
1153 |(% style="width:101px" %)**Command**|(% style="width:397px" %)AT+TRIG1=<interrupt_mode>,<minimum_signal_duration>
1154 |(% style="width:101px" %)**Response**|(% style="width:397px" %)
1155 |(% style="width:101px" %)**Parameters**|(% style="width:397px" %)(((
1156 **interrupt_mode** :  0: falling edge; 1: rising edge, 2: falling and raising edge (for MOD=1).
1157
1158 **minimum_signal_duration** : the **minimum signal duration** required for the DI1 port to recognize a valid trigger.
1159 )))
1160 |(% style="width:101px" %)**Example**|(% style="width:397px" %)(((
1161 AT+TRIG1=1,100
1162
1163 Set the DI1 port to trigger on a rising edge; the valid signal duration is 100 ms.
1164 )))
1165
1166 (% class="wikigeneratedid" %)
1167 (% style="color:#037691" %)**Downlink Payload**
1168
1169 (% border="2" style="width:500px" %)
1170 |(% style="width:101px" %)**Payload**|(% style="width:397px" %)<prefix><interrupt_mode><minimum_signal_duration>
1171 |(% style="width:101px" %)**Parameters**|(% style="width:397px" %)(((
1172 **prefix** : 09 01 (hexadecimal)
1173
1174 **interrupt_mode** : 0: falling edge; 1: rising edge, 2: falling and raising edge (for MOD=1), represented by 1 byte in hexadecimal.
1175
1176 **minimum_signal_duration** : in milliseconds, represented two bytes in hexadecimal.
1177 )))
1178 |(% style="width:101px" %)**Example**|(% style="width:397px" %)(((
1179 09 01 **01 00 64**
1180
1181 Set the DI1 port to trigger on a rising edge; the valid signal duration is 100 ms.
1182 )))
1183
1184
1185 ==== 3.4.2.8 Trigger2 – Set DI2 as a trigger ====
1186
1187
1188 Sets DI2 as a trigger.
1189
1190 (% style="color:#037691" %)**AT Command**
1191
1192 (% border="2" style="width:500px" %)
1193 |(% style="width:94px" %)**Command**|(% style="width:404px" %)AT+TRIG2=<interrupt_mode>,<minimum_signal_duration>
1194 |(% style="width:94px" %)**Response**|(% style="width:404px" %)
1195 |(% style="width:94px" %)**Parameters**|(% style="width:404px" %)(((
1196 **interrupt_mode **:  0: falling edge; 1: rising edge, 2: falling and raising edge (for MOD=1).
1197
1198 **minimum_signal_duration** : the **minimum signal duration** required for the DI1 port to recognize a valid trigger.
1199 )))
1200 |(% style="width:94px" %)**Example**|(% style="width:404px" %)(((
1201 AT+TRIG2=0,100
1202
1203 Set the DI1 port to trigger on a falling edge; the valid signal duration is 100 ms.
1204 )))
1205
1206 (% style="color:#037691" %)**Downlink Payload**
1207
1208 (% border="2" style="width:500px" %)
1209 |(% style="width:96px" %)**Payload**|(% style="width:402px" %)<prefix><interrupt_mode><minimum_signal_duration>
1210 |(% style="width:96px" %)**Parameters**|(% style="width:402px" %)(((
1211 **prefix** : 09 02 (hexadecimal)
1212
1213 **interrupt_mode **: 0: falling edge; 1: rising edge, 2: falling and raising edge (for MOD=1), represented by 1 byte in hexadecimal.
1214
1215 **minimum_signal_duration** : in milliseconds, represented two bytes in hexadecimal
1216 )))
1217 |(% style="width:96px" %)**Example**|(% style="width:402px" %)09 02 **00 00 64**
1218
1219
1220 ==== 3.4.2.9 Trigger – Set AC (current) as a trigger ====
1221
1222
1223 Sets the current trigger based on the AC port. See also [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1224
1225 (% style="color:#037691" %)**AT Command**
1226
1227 (% border="2" style="width:500px" %)
1228 |(% style="width:104px" %)**Command**|(% style="width:394px" %)(((
1229 AT+ACLIM=<AC1_LIMIT_LOW>,< AC1_LIMIT_HIGH>,<AC2_LIMIT_LOW>,< AC2_LIMIT_HIGH>
1230 )))
1231 |(% style="width:104px" %)**Response**|(% style="width:394px" %)
1232 |(% style="width:104px" %)**Parameters**|(% style="width:394px" %)(((
1233 **AC1_LIMIT_LOW** : lower limit of the current to be checked
1234
1235 **AC1_LIMIT_HIGH **: higher limit of the current to be checked
1236
1237 **AC2_LIMIT_HIGH **: lower limit of the current to be checked
1238
1239 **AC2_LIMIT_LOW** : higher limit of the current to be checked
1240 )))
1241 |(% style="width:104px" %)**Example**|(% style="width:394px" %)(((
1242 AT+ACLIM=10000,15000,0,0
1243
1244 Triggers an uplink if AC1 current is lower than 10mA or higher than 15mA
1245 )))
1246 |(% style="width:104px" %)Note|(% style="width:394px" %)See also, [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1247
1248 (% style="color:#037691" %)**Downlink Payload**
1249
1250 (% border="2" style="width:500px" %)
1251 |(% style="width:104px" %)**Payload**|(% style="width:394px" %)<prefix><AC1_LIMIT_LOW>,< AC1_LIMIT_HIGH>,<AC2_LIMIT_LOW>,< AC2_LIMIT_HIGH>
1252 |(% style="width:104px" %)**Parameters**|(% style="width:394px" %)(((
1253 **prefix **: AA 01 (hexadecimal)
1254
1255 **AC1_LIMIT_LOW** : lower limit of the current to be checked, two bytes in hexadecimal
1256
1257 **AC1_LIMIT_HIGH **: higher limit of the current to be checked, two bytes in hexadecimal
1258
1259 **AC2_LIMIT_HIGH **: lower limit of the current to be checked, two bytes in hexadecimal
1260
1261 **AC2_LIMIT_LOW** : higher limit of the current to be checked, two bytes in hexadecimal
1262 )))
1263 |(% style="width:104px" %)**Example**|(% style="width:394px" %)(((
1264 AA 01 **27** **10 3A** **98** 00 00 00 00
1265
1266 Triggers an uplink if AC1 current is lower than 10mA or higher than 15mA. Set all values to zero for AC2 limits because we are only checking AC1 limits.
1267 )))
1268 |(% style="width:104px" %)Note|(% style="width:394px" %)See also, [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1269
1270
1271 ==== 3.4.2.10 Trigger – Set AV (voltage) as trigger ====
1272
1273
1274 Sets the current trigger based on the AV port. See also [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1275
1276 (% style="color:#037691" %)**AT Command**
1277
1278 (% border="2" style="width:500px" %)
1279 |(% style="width:104px" %)**Command**|(% style="width:387px" %)AT+AVLIM= AV1_LIMIT_LOW>,< AV1_LIMIT_HIGH>,<AV2_LIMIT_LOW>,< AV2_LIMIT_HIGH>
1280 |(% style="width:104px" %)**Response**|(% style="width:387px" %)
1281 |(% style="width:104px" %)**Parameters**|(% style="width:387px" %)(((
1282 **AC1_LIMIT_LOW** : lower limit of the current to be checked
1283
1284 **AC1_LIMIT_HIGH **: higher limit of the current to be checked
1285
1286 **AC2_LIMIT_HIGH **: lower limit of the current to be checked
1287
1288 **AC2_LIMIT_LOW** : higher limit of the current to be checked
1289 )))
1290 |(% style="width:104px" %)**Example**|(% style="width:387px" %)(((
1291 AT+AVLIM=3000,6000,0,2000
1292
1293 Triggers an uplink if AVI1 voltage is lower than 3V or higher than 6V, or if AV2 voltage is higher than 2V
1294 )))
1295 |(% style="width:104px" %)**Note**|(% style="width:387px" %)See also, [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1296
1297 (% style="color:#037691" %)**Downlink Payload**
1298
1299 (% border="2" style="width:500px" %)
1300 |(% style="width:104px" %)**Payload**|(% style="width:394px" %)<prefix><AV1_LIMIT_LOW>,< AV1_LIMIT_HIGH>,<AV2_LIMIT_LOW>,< AV2_LIMIT_HIGH>
1301 |(% style="width:104px" %)**Parameters**|(% style="width:394px" %)(((
1302 **prefix **: AA 00 (hexadecimal)
1303
1304 **AV1_LIMIT_LOW** : lower limit of the voltage to be checked, two bytes in hexadecimal
1305
1306 **AV1_LIMIT_HIGH **: higher limit of the voltage to be checked, two bytes in hexadecimal
1307
1308 **AV2_LIMIT_HIGH **: lower limit of the voltage to be checked, two bytes in hexadecimal
1309
1310 **AV2_LIMIT_LOW** : higher limit of the voltage to be checked, two bytes in hexadecimal
1311 )))
1312 |(% style="width:104px" %)**Example**|(% style="width:394px" %)(((
1313 AA 00 **0B B8 17 70 00 00 07 D0**
1314
1315 Triggers an uplink if AVI1 voltage is lower than 3V or higher than 6V, or if AV2 voltage is higher than 2V.
1316 )))
1317 |(% style="width:104px" %)**Note**|(% style="width:394px" %)See also, [[trigger mode>>||anchor="H3.3.6AT2BADDMOD3D6.28TriggerMode2COptional29"]]
1318
1319
1320 ==== 3.4.2.11 Trigger – Set minimum interval ====
1321
1322
1323 Sets the AV and AC trigger minimum interval. The device won't respond to a second trigger within this set time after the first trigger.
1324
1325 (% style="color:#037691" %)**AT Command**
1326
1327 (% border="2" style="width:500px" %)
1328 |(% style="width:113px" %)**Command**|(% style="width:385px" %)AT+ATDC=<time>
1329 |(% style="width:113px" %)**Response**|(% style="width:385px" %)
1330 |(% style="width:113px" %)**Parameters**|(% style="width:385px" %)(((
1331 **time** : in minutes
1332 )))
1333 |(% style="width:113px" %)**Example**|(% style="width:385px" %)(((
1334 AT+ATDC=5
1335
1336 The device won't respond to the second trigger within 5 minutes after the first trigger.
1337 )))
1338 |(% style="width:113px" %)Note|(% style="width:385px" %)(% style="color:red" %)**The time must be greater than 5 minutes.**
1339
1340 (% style="color:#037691" %)**Downlink Payload**
1341
1342 (% border="2" style="width:500px" %)
1343 |(% style="width:112px" %)**Payload**|(% style="width:386px" %)<prefix><time>
1344 |(% style="width:112px" %)**Parameters**|(% style="width:386px" %)(((
1345 **prefix** : AC (hexadecimal)
1346
1347 **time **: in minutes (two bytes in hexadecimal)
1348 )))
1349 |(% style="width:112px" %)**Example**|(% style="width:386px" %)(((
1350 AC **00 05**
1351
1352 The device won't respond to the second trigger within 5 minutes after the first trigger.
1353 )))
1354 |(% style="width:112px" %)Note|(% style="width:386px" %)(% style="color:red" %)**The time must be greater than 5 minutes.**
1355
1356
1357 ==== 3.4.2.12 DO ~-~- Control Digital Output DO1/DO2/DO3 ====
1358
1359
1360 Controls the digital outputs DO1, DO2, and DO3
1361
1362 (% style="color:#037691" %)**AT Command**
1363
1364 There is no AT Command to control the Digital Output.
1365
1366
1367 (% style="color:#037691" %)**Downlink Payload**
1368
1369 (% border="2" style="width:500px" %)
1370 |(% style="width:115px" %)**Payload**|(% style="width:383px" %)<prefix><DO1><DO2><DO3>
1371 |(% style="width:115px" %)**Parameters**|(% style="width:383px" %)(((
1372 **prefix** : 02 (hexadecimal)
1373
1374 **DOI** : 01: Low,  00: High, 11: No action (1 byte in hex)
1375
1376 **DO2** : 01: Low,  00: High, 11: No action (1 byte in hex)
1377
1378 **DO3 **: 01: Low,  00: High, 11: No action (1 byte in hex)
1379 )))
1380 |(% style="width:115px" %)**Examples**|(% style="width:383px" %)(((
1381 02 **01 00 01**
1382
1383 If there is a load between V+ and DOx, it means DO1 is set to low, DO2 is set to high, and DO3 is set to low.
1384
1385 **More examples:**
1386
1387 (((
1388 01: Low,  00: High,  11: No action
1389
1390 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:383px" %)
1391 |(% style="background-color:#4f81bd; color:white; width:126px" %)**Downlink Code**|(% style="background-color:#4f81bd; color:white; width:85px" %)**DO1**|(% style="background-color:#4f81bd; color:white; width:86px" %)**DO2**|(% style="background-color:#4f81bd; color:white; width:86px" %)**DO3**
1392 |(% style="width:126px" %)02  01  00  11|(% style="width:85px" %)Low|(% style="width:86px" %)High|(% style="width:86px" %)No Action
1393 |(% style="width:126px" %)02  00  11  01|(% style="width:85px" %)High|(% style="width:86px" %)No Action|(% style="width:86px" %)Low
1394 |(% style="width:126px" %)02  11  01  00|(% style="width:85px" %)No Action|(% style="width:86px" %)Low|(% style="width:86px" %)High
1395 )))
1396
1397 (((
1398 (((
1399 (% style="color:red" %)**Note: For the LT-22222-L, there is no DO3; the last byte can have any value.**
1400 )))
1401
1402 (((
1403 (% style="color:red" %)**The device will upload a packet if downlink code executes successfully.**
1404 )))
1405 )))
1406 )))
1407
1408
1409 ==== 3.4.2.13 DO ~-~- Control Digital Output DO1/DO2/DO3 with time control ====
1410
1411
1412 * (% style="color:#037691" %)**AT Command**
1413
1414 There is no AT command to control the digital output.
1415
1416
1417 * (% style="color:#037691" %)**Downlink Payload (prefix 0xA9)**
1418
1419 (% style="color:blue" %)**0xA9 aa bb cc     **(%%) ~/~/ Sets DO1/DO2/DO3 outputs with time control
1420
1421 This is to control the digital output time of DO pin. Include four bytes:
1422
1423 (% style="color:#4f81bd" %)**First byte**(%%)**:** Type code (0xA9)
1424
1425 (% style="color:#4f81bd" %)**Second byte**(%%): Inverter Mode
1426
1427 **01:** DO pins revert to their original state after the timeout.
1428 **00:** DO pins switch to an inverted state after the timeout.
1429
1430
1431 (% style="color:#4f81bd" %)**Third Byte**(%%): Control Method and Port status:
1432
1433 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1434 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1435 |0x01|DO1 set to low
1436 |0x00|DO1 set to high
1437 |0x11|DO1 NO Action
1438
1439 (% style="color:#4f81bd" %)**Fourth byte**(%%): Control Method and Port status:
1440
1441 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1442 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1443 |0x01|DO2 set to low
1444 |0x00|DO2 set to high
1445 |0x11|DO2 NO Action
1446
1447 (% style="color:#4f81bd" %)**Fifth byte**(%%): Control Method and Port status:
1448
1449 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:300px" %)
1450 |(% style="background-color:#4f81bd; color:white" %)**Second Byte**|(% style="background-color:#4f81bd; color:white" %)**Status**
1451 |0x01|DO3 set to low
1452 |0x00|DO3 set to high
1453 |0x11|DO3 NO Action
1454
1455 (% style="color:#4f81bd" %)**Sixth, Seventh, Eighth, and Ninth bytes**:(%%) Latching time (Unit: ms)
1456
1457
1458 (% style="color:red" %)**Note: **
1459
1460 Since firmware v1.6.0, the latch time support 4 bytes and 2 bytes
1461
1462 Before firmware v1.6.0, the latch time only supported 2 bytes.
1463
1464 (% style="color:red" %)**The device will uplink a packet if the downlink code executes successfully.**
1465
1466
1467 **Example payload:**
1468
1469 **~1. A9 01 01 01 01 07 D0**
1470
1471 DO1 pin, DO2 pin, and DO3 pin will be set to low, last for 2 seconds, and then revert to their original state.
1472
1473 **2. A9 01 00 01 11 07 D0**
1474
1475 DO1 pin is set to high, DO2 pin is set to low, and DO3 pin takes no action. This lasts for 2 seconds and then reverts to the original state.
1476
1477 **3. A9 00 00 00 00 07 D0**
1478
1479 DO1 pin, DO2 pin, and DO3 pin will be set to high, last for 2 seconds, and then all change to low.
1480
1481 **4. A9 00 11 01 00 07 D0**
1482
1483 DO1 pin takes no action, DO2 pin is set to low, and DO3 pin is set to high. This lasts for 2 seconds, after which DO1 pin takes no action, DO2 pin is set to high, and DO3 pin is set to low.
1484
1485
1486 ==== 3.4.2.14 Relay ~-~- Control Relay Output RO1/RO2 ====
1487
1488
1489 * (% style="color:#037691" %)**AT Command:**
1490
1491 There is no AT Command to control the Relay Output
1492
1493
1494 * (% style="color:#037691" %)**Downlink Payload (prefix 0x03):**
1495
1496 (% style="color:blue" %)**0x03 aa bb     ** (%%)~/~/ Sets RO1/RO2 output
1497
1498
1499 (((
1500 If the payload is 0x030100, it means setting RO1 to close and RO2 to open.
1501 )))
1502
1503 (((
1504 00: Close ,  01: Open , 11: No action
1505
1506 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:320px" %)
1507 |(% style="background-color:#4f81bd; color:white" %)**Downlink Code**|(% style="background-color:#4f81bd; color:white" %)**RO1**|(% style="background-color:#4f81bd; color:white" %)**RO2**
1508 |03  00  11|Open|No Action
1509 |03  01  11|Close|No Action
1510 |03  11  00|No Action|Open
1511 |03  11  01|No Action|Close
1512 |03  00  00|Open|Open
1513 |03  01  01|Close|Close
1514 |03  01  00|Close|Open
1515 |03  00  01|Open|Close
1516 )))
1517
1518 (% style="color:red" %)**The device will uplink a packet if the downlink code executes successfully.**
1519
1520
1521 ==== 3.4.2.15 Relay ~-~- Control Relay Output RO1/RO2 with time control ====
1522
1523
1524 Controls the relay output time.
1525
1526 * (% style="color:#037691" %)**AT Command:**
1527
1528 There is no AT Command to control the Relay Output
1529
1530
1531 * (% style="color:#037691" %)**Downlink Payload (prefix 0x05):**
1532
1533 (% style="color:blue" %)**0x05 aa bb cc dd     ** (%%)~/~/ Sets RO1/RO2 relays with time control
1534
1535
1536 This controls the relay output time and includes 4 bytes:
1537
1538 (% style="color:#4f81bd" %)**First byte **(%%)**:** Type code (0x05)
1539
1540 (% style="color:#4f81bd" %)**Second byte (aa)**(%%): Inverter Mode
1541
1542 01: Relays will change back to their original state after timeout.
1543
1544 00: Relays will change to the inverter state after timeout.
1545
1546
1547 (% style="color:#4f81bd" %)**Third byte (bb)**(%%): Control Method and Ports status:
1548
1549 [[image:image-20221008095908-1.png||height="364" width="564"]]
1550
1551
1552 (% style="color:#4f81bd" %)**Fourth/Fifth/Sixth/Seventh bytes (cc)**(%%): Latching time. Unit: ms
1553
1554
1555 (% style="color:red" %)**Note:**
1556
1557 Since firmware v1.6.0, the latch time supports both 4 bytes and 2 bytes.
1558
1559 Before firmware v1.6.0, the latch time only supported 2 bytes.
1560
1561
1562 (% style="color:red" %)**The device will uplink a packet if the downlink code executes successfully.**
1563
1564
1565 **Example payload:**
1566
1567 **~1. 05 01 11 07 D0**
1568
1569 Relay1 and Relay2 will be set to NC, lasting 2 seconds, then revert to their original state
1570
1571 **2. 05 01 10 07 D0**
1572
1573 Relay1 will change to NC, Relay2 will change to NO, lasting 2 seconds, then both will revert to their original state.
1574
1575 **3. 05 00 01 07 D0**
1576
1577 Relay1 will change to NO, Relay2 will change to NC, lasting 2 seconds, then Relay1 will change to NC, and Relay2 will change to NO.
1578
1579 **4. 05 00 00 07 D0**
1580
1581 Relay1 and Relay2 will change to NO, lasting 2 seconds, then both will change to NC.
1582
1583
1584
1585 ==== 3.4.2.16 Counting ~-~- Voltage threshold counting ====
1586
1587
1588 When the voltage exceeds the threshold, counting begins. For details, see [[MOD4>>||anchor="H3.3.4AT2BMOD3D42CSingleDICounting2B1xVoltageCounting"]]
1589
1590 (% style="color:#037691" %)**AT Command**
1591
1592 (% border="2" style="width:500px" %)
1593 |(% style="width:137px" %)**Command**|(% style="width:361px" %)AT+VOLMAX=<voltage>,<logic>
1594 |(% style="width:137px" %)**Response**|(% style="width:361px" %)
1595 |(% style="width:137px" %)**Parameters**|(% style="width:361px" %)(((
1596 **voltage** : voltage threshold in mV
1597
1598 **logic**:
1599
1600 **0** : lower than
1601
1602 **1**: higher than
1603
1604 if you leave logic parameter blank, it is considered 0
1605 )))
1606 |(% style="width:137px" %)**Examples**|(% style="width:361px" %)(((
1607 AT+VOLMAX=20000
1608
1609 If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1
1610
1611 AT+VOLMAX=20000,0
1612
1613 If AVI1 voltage lower than VOLMAX (20000mV =20v), counter increase 1
1614
1615 AT+VOLMAX=20000,1
1616
1617 If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1
1618 )))
1619
1620 (% style="color:#037691" %)**Downlink Payload**
1621
1622 (% border="2" style="width:500px" %)
1623 |(% style="width:140px" %)**Payload**|(% style="width:358px" %)<prefix><voltage><logic>
1624 |(% style="width:140px" %)**Parameters**|(% style="width:358px" %)(((
1625 **prefix** : A5 (hex)
1626
1627 **voltage** : voltage threshold in mV (2 bytes in hex)
1628
1629 **logic**: (1 byte in hexadecimal)
1630
1631 **0** : lower than
1632
1633 **1**: higher than
1634
1635 if you leave logic parameter blank, it is considered 1 (higher than)
1636 )))
1637 |(% style="width:140px" %)**Example**|(% style="width:358px" %)(((
1638 A5 **4E 20**
1639
1640 If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1
1641
1642 A5 **4E 20 00**
1643
1644 If AVI1 voltage lower than VOLMAX (20000mV =20v), counter increase 1
1645
1646 A5 **4E 20 01**
1647
1648 If AVI1 voltage higher than VOLMAX (20000mV =20v), counter increase 1
1649 )))
1650
1651 ==== 3.4.2.17 Counting ~-~- Pre-configure the Count Number ====
1652
1653 This command allows users to pre-configure specific count numbers for various counting parameters such as Count1, Count2, or AVI1 Count. Use the AT command to set the desired count number for each configuration.
1654
1655 (% style="color:#037691" %)**AT Command**
1656
1657 (% border="2" style="width:500px" %)
1658 |(% style="width:134px" %)**Command**|(% style="width:364px" %)AT+SETCNT=<counting_parameter>,<number>
1659 |(% style="width:134px" %)**Response**|(% style="width:364px" %)
1660 |(% style="width:134px" %)**Parameters**|(% style="width:364px" %)(((
1661 **counting_parameter** :
1662
1663 1: COUNT1
1664
1665 2: COUNT2
1666
1667 3: AVI1 Count
1668
1669 **number** : Start number
1670 )))
1671 |(% style="width:134px" %)**Example**|(% style="width:364px" %)(((
1672 AT+SETCNT=1,10
1673
1674 Sets the COUNT1 to 10.
1675 )))
1676
1677 (% style="color:#037691" %)**Downlink Payload**
1678
1679 (% border="2" style="width:500px" %)
1680 |(% style="width:135px" %)**Payload**|(% style="width:363px" %)<prefix><counting_parameter><number>
1681 |(% style="width:135px" %)**Parameters**|(% style="width:363px" %)(((
1682 prefix : A8 (hex)
1683
1684 **counting_parameter** : (1 byte in hexadecimal)
1685
1686 1: COUNT1
1687
1688 2: COUNT2
1689
1690 3: AVI1 Count
1691
1692 **number** : Start number, 4 bytes in hexadecimal
1693 )))
1694 |(% style="width:135px" %)**Example**|(% style="width:363px" %)(((
1695 A8 **01 00 00 00 0A**
1696
1697 Sets the COUNT1 to 10.
1698 )))
1699
1700 ==== 3.4.2.18 Counting ~-~- Clear Counting ====
1701
1702 This command clears the counting in counting mode.
1703
1704 (% style="color:#037691" %)**AT Command**
1705
1706 (% border="2" style="width:500px" %)
1707 |(% style="width:142px" %)**Command**|(% style="width:356px" %)AT+CLRCOUNT
1708 |(% style="width:142px" %)**Response**|(% style="width:356px" %)-
1709
1710 (% style="color:#037691" %)**Downlink Payload**
1711
1712 (% border="2" style="width:500px" %)
1713 |(% style="width:141px" %)**Payload**|(% style="width:357px" %)<prefix><clear?>
1714 |(% style="width:141px" %)**Parameters**|(% style="width:357px" %)(((
1715 prefix : A6 (hex)
1716
1717 clear? : 01 (hex)
1718 )))
1719 |(% style="width:141px" %)**Example**|(% style="width:357px" %)A6 **01**
1720
1721
1722 ==== 3.4.2.19 Counting ~-~- Set Saving Interval for 'Counting Result' ====
1723
1724
1725 This command allows you to configure the device to save its counting result to internal flash memory at specified intervals. By setting a save time, the device will periodically store the counting data to prevent loss in case of power failure. The save interval can be adjusted to suit your requirements, with a minimum value of 30 seconds.
1726
1727 (% style="color:#037691" %)**AT Command**
1728
1729 (% border="2" style="width:500px" %)
1730 |(% style="width:124px" %)**Command**|(% style="width:374px" %)AT+COUTIME=<time>
1731 |(% style="width:124px" %)**Response**|(% style="width:374px" %)
1732 |(% style="width:124px" %)**Parameters**|(% style="width:374px" %)time : seconds (0 to 16777215)
1733 |(% style="width:124px" %)**Example**|(% style="width:374px" %)(((
1734 AT+COUTIME=60
1735
1736 Sets the device to save its counting results to the memory every 60 seconds.
1737 )))
1738
1739 (% style="color:#037691" %)**Downlink Payload**
1740
1741 (% border="2" style="width:500px" %)
1742 |(% style="width:123px" %)**Payload**|(% style="width:375px" %)<prefix><time>
1743 |(% style="width:123px" %)**Parameters**|(% style="width:375px" %)(((
1744 prefix : A7
1745
1746 time : seconds, 3 bytes in hexadecimal
1747 )))
1748 |(% style="width:123px" %)**Example**|(% style="width:375px" %)(((
1749 A7 **00 00 3C**
1750
1751 Sets the device to save its counting results to the memory every 60 seconds.
1752 )))
1753
1754
1755 ==== 3.4.2.20 Reset saved RO and DO states ====
1756
1757
1758 This command allows you to reset the saved relay output (RO) and digital output (DO) states when the device joins the network. By configuring this setting, you can control whether the device should retain or reset the relay states after a reset and rejoin to the network.
1759
1760 (% style="color:#037691" %)**AT Command**
1761
1762 (% border="2" style="width:500px" %)
1763 |(% style="width:127px" %)**Command**|(% style="width:371px" %)AT+RODORESET=<state>
1764 |(% style="width:127px" %)**Response**|(% style="width:371px" %)
1765 |(% style="width:127px" %)**Parameters**|(% style="width:371px" %)(((
1766 **state** :
1767
1768 **0** : RODO will close when the device joins the network. (default)
1769
1770 **1**: After the device is reset, the previously saved RODO state (limited to MOD2 to MOD5) is read, and it will not change when the device reconnects to the network.
1771 )))
1772 |(% style="width:127px" %)**Example**|(% style="width:371px" %)(((
1773 (% style="color:blue" %)**AT+RODORESET=1 **
1774
1775 RODO will close when the device joins the network. (default)
1776
1777 (% style="color:blue" %)**AT+RODORESET=0 **
1778
1779 After the device is reset, the previously saved RODO state (limited to MOD2 to MOD5) is read, and it will not change when the device reconnects to the network.
1780 )))
1781
1782 (% style="color:#037691" %)**Downlink Payload**
1783
1784 (% border="2" style="width:500px" %)
1785 |(% style="width:127px" %)**Payload**|(% style="width:371px" %)<prefix><state>
1786 |(% style="width:127px" %)**Parameters**|(% style="width:371px" %)(((
1787 **prefix** : AD
1788
1789 **state** :
1790
1791 **0** : RODO will close when the device joins the network. (default), represents as 1 byte in hexadecimal.
1792
1793 **1**: After the device is reset, the previously saved RODO state (limited to MOD2 to MOD5) is read, and it will not change when the device reconnects to the network. - represents as 1 byte in hexadecimal
1794 )))
1795 |(% style="width:127px" %)**Example**|(% style="width:371px" %)(((
1796 AD **01**
1797
1798 RODO will close when the device joins the network. (default)
1799
1800 AD **00**
1801
1802 After the device is reset, the previously saved RODO state (limited to MOD2 to MOD5) is read, and it will not change when the device reconnects to the network.
1803 )))
1804
1805
1806 ==== 3.4.2.21 Encrypted payload ====
1807
1808
1809 This command allows you to configure whether the device should upload data in an encrypted format or in plaintext. By default, the device encrypts the payload before uploading. You can toggle this setting to either upload encrypted data or transmit it without encryption.
1810
1811 (% style="color:#037691" %)**AT Command:**
1812
1813 (% border="2" style="width:500px" %)
1814 |(% style="width:127px" %)**Command**|(% style="width:371px" %)AT+DECRYPT=<state>
1815 |(% style="width:127px" %)**Response**|(% style="width:371px" %)
1816 |(% style="width:127px" %)**Parameters**|(% style="width:371px" %)(((
1817 **state** :
1818
1819 **1** : The payload is uploaded without encryption
1820
1821 **0** : The payload is encrypted when uploaded (default)
1822 )))
1823 |(% style="width:127px" %)**Example**|(% style="width:371px" %)(((
1824 AT+DECRYPT=1
1825
1826 The payload is uploaded without encryption
1827
1828 AT+DECRYPT=0
1829
1830 The payload is encrypted when uploaded (default)
1831 )))
1832
1833 There is no downlink payload for this configuration.
1834
1835
1836 ==== 3.4.2.22 Get sensor value ====
1837
1838
1839 This command allows you to retrieve and optionally uplink sensor readings through the serial port.
1840
1841 (% style="color:#037691" %)**AT Command**
1842
1843 (% border="2" style="width:500px" %)
1844 |(% style="width:127px" %)**Command**|(% style="width:371px" %)AT+GETSENSORVALUE=<state>
1845 |(% style="width:127px" %)**Response**|(% style="width:371px" %)
1846 |(% style="width:127px" %)**Parameters**|(% style="width:371px" %)(((
1847 **state** :
1848
1849 **0 **: Retrieves the current sensor reading via the serial port.
1850
1851 **1 **: Retrieves and uploads the current sensor reading via the serial port.
1852 )))
1853 |(% style="width:127px" %)**Example**|(% style="width:371px" %)(((
1854 AT+GETSENSORVALUE=0
1855
1856 Retrieves the current sensor reading via the serial port.
1857
1858 AT+GETSENSORVALUE=1
1859
1860 Retrieves and uplinks the current sensor reading via the serial port.
1861 )))
1862
1863 There is no downlink payload for this configuration.
1864
1865
1866 ==== 3.4.2.23 Resetting the downlink packet count ====
1867
1868
1869 This command manages how the node handles mismatched downlink packet counts. It offers two modes: one disables the reception of further downlink packets if discrepancies occur, while the other resets the downlink packet count to align with the server, ensuring continued communication.
1870
1871 (% style="color:#037691" %)**AT Command**
1872
1873 (% border="2" style="width:500px" %)
1874 |(% style="width:130px" %)**Command**|(% style="width:368px" %)AT+DISFCNTCHECK=<state>
1875 |(% style="width:130px" %)**Response**|(% style="width:368px" %)(((
1876
1877 )))
1878 |(% style="width:130px" %)**Parameters**|(% style="width:368px" %)(((
1879 **state **:
1880
1881 **0** : When the downlink packet count sent by the server is less than the node's downlink packet count or exceeds 16,384, the node stops receiving further downlink packets (default).
1882
1883
1884 **1** : When the downlink packet count sent by the server is less than the node's downlink packet count or exceeds 16,384, the node resets its downlink packet count to match the server's, ensuring consistency.
1885 )))
1886 |(% style="width:130px" %)**Example**|(% style="width:368px" %)(((
1887 AT+DISFCNTCHECK=0
1888
1889 When the downlink packet count sent by the server is less than the node's downlink packet count or exceeds 16,384, the node stops receiving further downlink packets (default).
1890
1891 AT+DISFCNTCHECK=1
1892
1893 When the downlink packet count sent by the server is less than the node's downlink packet count or exceeds 16,384, the node resets its downlink packet count to match the server's, ensuring consistency.
1894 )))
1895
1896 There is no downlink payload for this configuration.
1897
1898
1899 ==== 3.4.2.24 When the limit bytes are exceeded, upload in batches ====
1900
1901
1902 This command controls the behavior of the node when the combined size of the MAC commands (MACANS) from the server and the payload exceeds the allowed byte limit for the current data rate (DR). The command provides two modes: one enables splitting the data into batches to ensure compliance with the byte limit, while the other prioritizes the payload and ignores the MACANS in cases of overflow.
1903
1904 (% style="color:#037691" %)**AT Command**
1905
1906 (% border="2" style="width:500px" %)
1907 |(% style="width:127px" %)**Command**|(% style="width:371px" %)AT+DISMACANS=<state>
1908 |(% style="width:127px" %)**Response**|(% style="width:371px" %)
1909 |(% style="width:127px" %)**Parameters**|(% style="width:371px" %)(((
1910 **state** :
1911
1912 **0** : When the combined size of the MACANS from the server and the payload exceeds the byte limit (11 bytes for DR0 of US915, DR2 of AS923, DR2 of AU915), the node sends a packet with a payload of 00 and a port of 4. (default)
1913
1914 **1** : When the combined size of the MACANS from the server and the payload exceeds the byte limit for the current DR, the node ignores the MACANS and only uploads the payload.
1915 )))
1916 |(% style="width:127px" %)**Example**|(% style="width:371px" %)(((
1917 AT+DISMACANS=0
1918
1919 When the combined size of the MACANS from the server and the payload exceeds the byte limit (11 bytes for DR0 of US915, DR2 of AS923, DR2 of AU915), the node sends a packet with a payload of 00 and a port of 4. (default)
1920
1921 AT+DISMACANS=1
1922
1923 When the combined size of the MACANS from the server and the payload exceeds the byte limit for the current DR, the node ignores the MACANS and only uploads the payload.
1924 )))
1925
1926 (% style="color:#037691" %)**Downlink Payload**
1927
1928 (% border="2" style="width:500px" %)
1929 |(% style="width:126px" %)**Payload**|(% style="width:372px" %)<prefix><state>
1930 |(% style="width:126px" %)**Parameters**|(% style="width:372px" %)(((
1931 **prefix** : 21
1932
1933 **state** : (2 bytes in hexadecimal)
1934
1935 **0** : When the combined size of the MACANS from the server and the payload exceeds the byte limit (11 bytes for DR0 of US915, DR2 of AS923, DR2 of AU915), the node sends a packet with a payload of 00 and a port of 4. (default)
1936
1937 **1 **: When the combined size of the MACANS from the server and the payload exceeds the byte limit for the current DR, the node ignores the MACANS and only uploads the payload.
1938 )))
1939 |(% style="width:126px" %)**Example**|(% style="width:372px" %)(((
1940 21 **00 01**
1941
1942 Set DISMACANS=1
1943 )))
1944
1945
1946 ==== 3.4.2.25 Copy downlink to uplink ====
1947
1948
1949 This command enables the device to immediately uplink the payload of a received downlink packet back to the server. The command allows for quick data replication from downlink to uplink, with a fixed port number of 100.
1950
1951 (% style="color:#037691" %)**AT Command**(%%)**:**
1952
1953 (% style="color:blue" %)**AT+RPL=5**   (%%) ~/~/ After receiving a downlink payload from the server, the device will immediately uplink the payload back to the server using port number 100.
1954
1955 Example:**aa xx xx xx xx**         ~/~/ **aa** indicates whether the configuration has changed: **00** means YES, and **01** means NO. **xx xx xx xx** are the bytes uplinked back.
1956
1957
1958 [[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"]]
1959
1960 For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77.
1961
1962 [[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"]]
1963
1964 For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned.
1965
1966
1967 (% style="color:#037691" %)**Downlink Payload**(%%)**:**
1968
1969 There is no downlink option available for this feature.
1970
1971
1972 ==== 3.4.2.26 Query firmware version, frequency band, sub band, and TDC time ====
1973
1974
1975 This command is used to query key information about the device, including its firmware version, frequency band, sub band, and TDC time. By sending the specified payload as a downlink, the server can retrieve this essential data from the device.
1976
1977 * (((
1978 (% style="color:#037691" %)**Downlink Payload**(%%)**:**
1979
1980 (% style="color:blue" %)**26 01  ** (%%) ~/~/  The downlink payload 26 01 is used to query the device's firmware version, frequency band, sub band, and TDC time.
1981
1982
1983
1984 )))
1985
1986 **Example:**
1987
1988 [[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"]]
1989
1990
1991 == 3.5 Integrating with ThingsEye.io ==
1992
1993
1994 The Things Stack application supports integration with ThingsEye.io. Once integrated, ThingsEye.io acts as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic.
1995
1996
1997 === 3.5.1 Configuring The Things Stack ===
1998
1999
2000 We use The Things Stack Sandbox in this example:
2001
2002 * In **The Things Stack Sandbox**, go to the **Application **for the LT-22222-L you added.
2003 * Select **MQTT** under **Integrations** in the left menu.
2004 * In the **Connection information **section, under **Connection credentials**, The Things Stack displays an auto-generated **username**. You can use it or provide a new one.
2005 * Click the **Generate new API key** button to generate a password. You can view it by clicking on the **visibility toggle/eye** icon. The API key works as the password.
2006
2007 {{info}}
2008 The username and  password (API key) you created here are required in the next section.
2009 {{/info}}
2010
2011 [[image:tts-mqtt-integration.png]]
2012
2013
2014 === 3.5.2 Configuring ThingsEye.io ===
2015
2016
2017 The ThingsEye.io IoT platform is not open for self-registration at the moment. If you are interested in testing the platform, please send your project information to admin@thingseye.io, and we will create an account for you.
2018
2019 * Login to your [[ThingsEye.io >>https://thingseye.io]]account.
2020 * Under the **Integrations center**, click **Integrations**.
2021 * Click the **Add integration** button (the button with the **+** symbol).
2022
2023 [[image:thingseye-io-step-1.png]]
2024
2025
2026 On the **Add integration** window, configure the following:
2027
2028 **Basic settings:**
2029
2030 * Select **The Things Stack Community** from the **Integration type** list.
2031 * Enter a suitable name for your integration in the **Name **text** **box or keep the default name.
2032 * Ensure the following options are turned on.
2033 ** Enable integration
2034 ** Debug mode
2035 ** Allow create devices or assets
2036 * Click the **Next** button. you will be navigated to the **Uplink data converter** tab.
2037
2038 [[image:thingseye-io-step-2.png]]
2039
2040
2041 **Uplink data converter:**
2042
2043 * Click the **Create new** button if it is not selected by default.
2044 * Enter a suitable name for the uplink data converter in the **Name **text** **box or keep the default name.
2045 * Click the **JavaScript** button.
2046 * Paste the uplink decoder function into the text area (first, delete the default code). The demo uplink decoder function can be found [[here>>https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]].
2047 * Click the **Next** button. You will be navigated to the **Downlink data converter **tab.
2048
2049 [[image:thingseye-io-step-3.png]]
2050
2051
2052 **Downlink data converter (this is an optional step):**
2053
2054 * Click the **Create new** button if it is not selected by default.
2055 * Enter a suitable name for the downlink data converter in the **Name **text** **box or keep the default name.
2056 * Click the **JavaScript** button.
2057 * Paste the downlink decoder function into the text area (first, delete the default code). The demo downlink decoder function can be found [[here>>https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]].
2058 * Click the **Next** button. You will be navigated to the **Connection** tab.
2059
2060 [[image:thingseye-io-step-4.png]]
2061
2062
2063 **Connection:**
2064
2065 * Choose **Region** from the **Host type**.
2066 * Enter the **cluster** of your **The Things Stack** in the **Region** textbox. You can find the cluster in the url (e.g., https:~/~/**eu1**.cloud.thethings.network/...).
2067 * Enter the **Username** and **Password** of the MQTT integration in the **Credentials** section. The **username **and **password **can be found on the MQTT integration page of your The Things Stack account (see **3.5.1 Configuring The Things Stack**).
2068 * Click the **Check connection** button to test the connection. If the connection is successful, you will see the message saying **Connected**.
2069
2070 [[image:message-1.png]]
2071
2072
2073 * Click the **Add** button.
2074
2075 [[image:thingseye-io-step-5.png]]
2076
2077
2078 Your integration has been added to the** Integrations** list and will be displayed on the **Integrations** page. Check whether the status is shown as **Active**. If not, review your configuration settings and correct any errors.
2079
2080
2081 [[image:thingseye.io_integrationsCenter_integrations.png]]
2082
2083
2084 ==== 3.5.2.1 Viewing integration details ====
2085
2086
2087 Click on your integration from the list. The **Integration details** window will appear with the **Details **tab selected. The **Details **tab shows all the settings you have provided for this integration.
2088
2089 [[image:integration-details.png]]
2090
2091
2092 If you want to edit the settings you have provided, click on the **Toggle edit mode** button. Once you have done click on the **Apply changes **button.
2093
2094 {{info}}
2095 See also [[ThingsEye documentation>>https://wiki.thingseye.io/xwiki/bin/view/Main/]].
2096 {{/info}}
2097
2098
2099 ==== 3.5.2.2 Viewing events ====
2100
2101
2102 The **Events **tab displays all the uplink messages from the LT-22222-L.
2103
2104 * Select **Debug **from the **Event type** dropdown.
2105 * Select the** time frame** from the **time window**.
2106
2107 [[image:thingseye-events.png]]
2108
2109
2110 * To view the **JSON payload** of a message, click on the **three dots (...)** in the Message column of the desired message.
2111
2112 [[image:thingseye-json.png]]
2113
2114
2115 ==== 3.5.2.3 Deleting an integration ====
2116
2117
2118 If you want to delete an integration, click the **Delete integratio**n button on the Integrations page.
2119
2120
2121 ==== 3.5.2.4 Creating a Dashboard to Display and Analyze LT-22222-L Data ====
2122
2123
2124 This will be added soon.
2125
2126
2127 == 3.6 Interface Details ==
2128
2129 === 3.6.1 Digital Input Ports: DI1/DI2/DI3 (For LT-33222-L, Low Active) ===
2130
2131
2132 Supports** NPN-type **sensors.
2133
2134 [[image:1653356991268-289.png]]
2135
2136
2137 === 3.6.2 Digital Input Ports: DI1/DI2 ===
2138
2139
2140 (((
2141 The DI ports of the LT-22222-L can support **NPN**, **PNP**, or **dry contact** output sensors.
2142 )))
2143
2144 (((
2145 (((
2146 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.
2147
2148
2149 )))
2150 )))
2151
2152 [[image:1653357170703-587.png]]
2153
2154 (((
2155 (((
2156 (% 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.
2157 )))
2158 )))
2159
2160 (((
2161
2162 )))
2163
2164 (((
2165 (% style="color:#0000ff" %)**Example 1**(%%): Connecting to a low-active sensor.
2166 )))
2167
2168 (((
2169 This type of sensor outputs a low (GND) signal when active.
2170 )))
2171
2172 * (((
2173 Connect the sensor's output to DI1-
2174 )))
2175 * (((
2176 Connect the sensor's VCC to DI1+.
2177 )))
2178
2179 (((
2180 When the sensor is active, the current between NEC2501 pin 1 and pin 2 will be:
2181 )))
2182
2183 (((
2184 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1**+** / 1K.**
2185 )))
2186
2187 (((
2188 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.
2189 )))
2190
2191 (((
2192
2193 )))
2194
2195 (((
2196 (% style="color:#0000ff" %)**Example 2**(%%): Connecting to a high-active sensor.
2197 )))
2198
2199 (((
2200 This type of sensor outputs a high signal (e.g., 24V) when active.
2201 )))
2202
2203 * (((
2204 Connect the sensor's output to DI1+
2205 )))
2206 * (((
2207 Connect the sensor's GND DI1-.
2208 )))
2209
2210 (((
2211 When the sensor is active, the current between NEC2501 pin1 and pin2 will be:
2212 )))
2213
2214 (((
2215 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1+ / 1K.**
2216 )))
2217
2218 (((
2219 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.
2220 )))
2221
2222 (((
2223
2224 )))
2225
2226 (((
2227 (% style="color:#0000ff" %)**Example 3**(%%): Connecting to a 220V high-active sensor.
2228 )))
2229
2230 (((
2231 Assume that you want to monitor an active signal higher than 220V without damaging the photocoupler  
2232 )))
2233
2234 * (((
2235 Connect the sensor's output to DI1+ with a 50K resistor in series.
2236 )))
2237 * (((
2238 Connect the sensor's GND DI1-.
2239 )))
2240
2241 (((
2242 When the sensor is active, the current between NEC2501 pin1 and pin2 will be:
2243 )))
2244
2245 (((
2246 [[image:1653968155772-850.png||height="23" width="19"]]**= DI1+ / 51K.**
2247 )))
2248
2249 (((
2250 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.
2251 )))
2252
2253
2254 (% style="color:blue" %)**Example 4**(%%): Connecting to a Dry Contact sensor
2255
2256 From the DI port circuit above, 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 on its own.
2257
2258 To detect a Dry Contact, you can supply a power source to one of the pins of the Dry Contact. A reference circuit diagram is shown below.
2259
2260 [[image:image-20230616235145-1.png]]
2261
2262 (% style="color:blue" %)**Example 5**(%%): Connecting to an Open Collector
2263
2264 [[image:image-20240219115718-1.png]]
2265
2266
2267 === 3.6.3 Digital Output Ports: DO1/DO2 ===
2268
2269
2270 (% style="color:blue" %)**NPN output**(%%): GND or Float. The maximum voltage that can be applied to the output pin is 36V.
2271
2272 (% style="color:red" %)**Note: The DO pins will float when the device is powered off.**
2273
2274 [[image:1653357531600-905.png]]
2275
2276
2277 === 3.6.4 Analog Input Interfaces ===
2278
2279
2280 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:
2281
2282
2283 (% style="color:blue" %)**AC2 = (IN2 voltage )/12**
2284
2285 [[image:1653357592296-182.png]]
2286
2287 Example: Connecting a 4~~20mA sensor
2288
2289 We will use the wind speed sensor as an example for reference only.
2290
2291
2292 (% style="color:blue" %)**Specifications of the wind speed sensor:**
2293
2294 (% style="color:red" %)**Red:  12~~24V**
2295
2296 (% style="color:#ffc000" %)**Yellow:  4~~20mA**
2297
2298 **Black:  GND**
2299
2300 **Connection diagram:**
2301
2302 [[image:1653357640609-758.png]]
2303
2304 [[image:1653357648330-671.png||height="155" width="733"]]
2305
2306
2307 Example: Connecting to a regulated power supply to measure voltage
2308
2309 [[image:image-20230608101532-1.png||height="606" width="447"]]
2310
2311 [[image:image-20230608101608-2.jpeg||height="379" width="284"]]
2312
2313 [[image:image-20230608101722-3.png||height="102" width="1139"]]
2314
2315
2316 (% style="color:blue; font-weight:bold" %)**Specifications of the regulated power supply**(% style="color:blue" %)**:**
2317
2318 (% style="color:red" %)**Red:  12~~24v**
2319
2320 **Black:  GND**
2321
2322
2323 === 3.6.5 Relay Output ===
2324
2325
2326 (((
2327 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:
2328
2329 **Note**: The ROx pins will be in the Open (NO) state when the LT-22222-L is powered off.
2330 )))
2331
2332 [[image:image-20220524100215-9.png]]
2333
2334
2335 [[image:image-20220524100215-10.png||height="382" width="723"]]
2336
2337
2338 == 3.7 LED Indicators ==
2339
2340 The table below lists the behavior of LED indicators for each port function.
2341
2342 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
2343 |(% style="background-color:#4f81bd; color:white; width:50px" %)**LEDs**|(% style="background-color:#4f81bd; color:white; width:460px" %)**Feature**
2344 |**PWR**|Always on when there is power
2345 |**TX**|(((
2346 (((
2347 Device boot: TX blinks 5 times.
2348 )))
2349
2350 (((
2351 Successful network join: TX remains ON for 5 seconds.
2352 )))
2353
2354 (((
2355 Transmit a LoRa packet: TX blinks once
2356 )))
2357 )))
2358 |**RX**|RX blinks once when a packet is received.
2359 |**DO1**|For LT-22222-L: ON when DO1 is low, OFF when DO1 is high
2360 |**DO2**|For LT-22222-L: ON when DO2 is low, OFF when DO2 is high
2361 |**DI1**|(((
2362 For LT-22222-L: ON when DI1 is high, OFF when DI1 is low
2363 )))
2364 |**DI2**|(((
2365 For LT-22222-L: ON when DI2 is high, OFF when DI2 is low
2366 )))
2367 |**RO1**|For LT-22222-L: ON when RO1 is closed, OFF when RO1 is open
2368 |**RO2**|For LT-22222-L: ON when RO2 is closed, OFF when RO2 is open
2369
2370 = 4. Using AT Commands =
2371
2372 The LT-22222-L supports programming using AT Commands.
2373
2374 == 4.1 Connecting the LT-22222-L to a PC ==
2375
2376 (((
2377 You can use a USB-to-TTL adapter/converter along with a 3.5mm Program Cable to connect the LT-22222-L to a PC, as shown below.
2378
2379 [[image:usb-ttl-audio-jack-connection.jpg]]
2380
2381
2382 )))
2383
2384
2385 (((
2386 On the PC, you need to set the (% style="color:#4f81bd" %)**serial tool **(%%)(such as [[PuTTY>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]] or [[SecureCRT>>https://www.vandyke.com/cgi-bin/releases.php?product=securecrt]]) to a baud rate of (% style="color:green" %)**9600**(%%) to access the serial console of LT-22222-L. Access to AT commands is disabled by default, and a password (default: (% style="color:green" %)**123456**)(%%) must be entered to enable AT command access, as shown below:
2387 )))
2388
2389 [[image:1653358355238-883.png]]
2390
2391
2392 (((
2393 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/]]
2394
2395 == 4.2 LT-22222-L related AT commands ==
2396 )))
2397
2398 (((
2399 The following is the list of all the AT commands related to the LT-22222-L, except for those used for switching between working modes.
2400
2401 * **##AT##+<CMD>?** : Help on <CMD>
2402 * **##AT##+<CMD>** : Run <CMD>
2403 * **##AT##+<CMD>=<value>** : Set the value
2404 * **##AT##+<CMD>=?** : Get the value
2405 * ##**ATZ**##: Trigger a reset of the MCU
2406 * ##**AT+FDR**##: Reset Parameters to factory default, reserve keys 
2407 * **##AT+DEUI##**: Get or set the Device EUI (DevEUI)
2408 * **##AT+DADDR##**: Get or set the Device Address (DevAddr)
2409 * **##AT+APPKEY##**: Get or set the Application Key (AppKey)
2410 * ##**AT+NWKSKEY**##: Get or set the Network Session Key (NwkSKey)
2411 * **##AT+APPSKEY##**: Get or set the Application Session Key (AppSKey)
2412 * **##AT+APPEUI##**: Get or set the Application EUI (AppEUI)
2413 * **##AT+ADR##**: Get or set the Adaptive Data Rate setting. (0: OFF, 1: ON)
2414 * ##**AT+TXP**##: Get or set the Transmit Power (0-5, MAX:0, MIN:5, according to LoRaWAN Specification)
2415 * **##AT+DR##**:  Get or set the Data Rate. (0-7 corresponding to DR_X)  
2416 * **##AT+DCS##**: Get or set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing
2417 * ##**AT+PNM**##: Get or set the public network mode. (0: off, 1: on)
2418 * ##**AT+RX2FQ**##: Get or set the Rx2 window frequency
2419 * ##**AT+RX2DR**##: Get or set the Rx2 window data rate (0-7 corresponding to DR_X)
2420 * ##**AT+RX1DL**##: Get or set the delay between the end of the Tx and the Rx Window 1 in ms
2421 * ##**AT+RX2DL**##: Get or set the delay between the end of the Tx and the Rx Window 2 in ms
2422 * ##**AT+JN1DL**##: Get or set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms
2423 * ##**AT+JN2DL**##: Get or set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms
2424 * ##**AT+NJM**##: Get or set the Network Join Mode. (0: ABP, 1: OTAA)
2425 * ##**AT+NWKID**##: Get or set the Network ID
2426 * ##**AT+FCU**##: Get or set the Frame Counter Uplink (FCntUp)
2427 * ##**AT+FCD**##: Get or set the Frame Counter Downlink (FCntDown)
2428 * ##**AT+CLASS**##: Get or set the Device Class
2429 * ##**AT+JOIN**##: Join network
2430 * ##**AT+NJS**##: Get OTAA Join Status
2431 * ##**AT+SENDB**##: Send hexadecimal data along with the application port
2432 * ##**AT+SEND**##: Send text data along with the application port
2433 * ##**AT+RECVB**##: Print last received data in binary format (with hexadecimal values)
2434 * ##**AT+RECV**##: Print last received data in raw format
2435 * ##**AT+VER**##: Get current image version and Frequency Band
2436 * ##**AT+CFM**##: Get or Set the confirmation mode (0-1)
2437 * ##**AT+CFS**##: Get confirmation status of the last AT+SEND (0-1)
2438 * ##**AT+SNR**##: Get the SNR of the last received packet
2439 * ##**AT+RSSI**##: Get the RSSI of the last received packet
2440 * ##**AT+TDC**##: Get or set the application data transmission interval in ms
2441 * ##**AT+PORT**##: Get or set the application port
2442 * ##**AT+DISAT**##: Disable AT commands
2443 * ##**AT+PWORD**##: Set password, max 9 digits
2444 * ##**AT+CHS**##: Get or set the Frequency (Unit: Hz) for Single Channel Mode
2445 * ##**AT+CHE**##: Get or set eight channels mode, Only for US915, AU915, CN470
2446 * ##**AT+CFG**##: Print all settings
2447 )))
2448
2449
2450 == 4.2 Common AT Command Sequence ==
2451
2452 === 4.2.1 Multi-channel ABP mode (Use with SX1301/LG308) ===
2453
2454 (((
2455
2456
2457 (((
2458 (% style="color:blue" %)**If the device has not yet joined the network:**
2459 )))
2460 )))
2461
2462 (((
2463 (% style="background-color:#dcdcdc" %)##**123456 ~/~/Enter the password to enable AT commands access**##
2464 )))
2465
2466 (((
2467 (% style="background-color:#dcdcdc" %)##**AT+FDR ~/~/Reset parameters to factory default, Reserve keys**##
2468 )))
2469
2470 (((
2471 (% style="background-color:#dcdcdc" %)##**123456 ~/~/Enter the password to enable AT commands access**##
2472 )))
2473
2474 (((
2475 (% style="background-color:#dcdcdc" %)##**AT+NJM=0 ~/~/Set to ABP mode**##
2476 )))
2477
2478 (((
2479 (% style="background-color:#dcdcdc" %)##**ATZ ~/~/Reset MCU**##
2480 )))
2481
2482
2483 (((
2484 (% style="color:blue" %)**If the device has already joined the network:**
2485 )))
2486
2487 (((
2488 (% style="background-color:#dcdcdc" %)##**AT+NJM=0**##
2489 )))
2490
2491 (((
2492 (% style="background-color:#dcdcdc" %)##**ATZ**##
2493 )))
2494
2495
2496 === 4.2.2 Single-channel ABP mode (Use with LG01/LG02) ===
2497
2498 (((
2499
2500
2501 (((
2502 (% style="background-color:#dcdcdc" %)**123456**(%%)  ~/~/ Enter password to enable AT commands access
2503 )))
2504 )))
2505
2506 (((
2507 (% style="background-color:#dcdcdc" %)** AT+FDR**(%%)  ~/~/ Reset parameters to Factory Default, Reserve keys
2508 )))
2509
2510 (((
2511 (% style="background-color:#dcdcdc" %)** 123456**(%%)  ~/~/ Enter password to enable AT commands access
2512 )))
2513
2514 (((
2515 (% style="background-color:#dcdcdc" %)** AT+CLASS=C**(%%)  ~/~/ Set to CLASS C mode
2516 )))
2517
2518 (((
2519 (% style="background-color:#dcdcdc" %)** AT+NJM=0**(%%)  ~/~/ Set to ABP mode
2520 )))
2521
2522 (((
2523 (% style="background-color:#dcdcdc" %) **AT+ADR=0**(%%)  ~/~/ Set the Adaptive Data Rate Off
2524 )))
2525
2526 (((
2527 (% style="background-color:#dcdcdc" %)** AT+DR=5**(%%)  ~/~/ Set Data Rate
2528 )))
2529
2530 (((
2531 (% style="background-color:#dcdcdc" %)** AT+TDC=60000**(%%)  ~/~/ Set transmit interval to 60 seconds
2532 )))
2533
2534 (((
2535 (% style="background-color:#dcdcdc" %)** AT+CHS=868400000**(%%)  ~/~/ Set transmit frequency to 868.4 MHz
2536 )))
2537
2538 (((
2539 (% style="background-color:#dcdcdc" %)** AT+RX2FQ=868400000**(%%)  ~/~/ Set RX2 frequency to 868.4 MHz (according to the result from the server)
2540 )))
2541
2542 (((
2543 (% style="background-color:#dcdcdc" %)** AT+RX2DR=5**(%%)** ** ~/~/ Set RX2 DR to match the downlink DR from the server. See below.
2544 )))
2545
2546 (((
2547 (% style="background-color:#dcdcdc" %)** AT+DADDR=26 01 1A F1** (%%) ~/~/ Set Device Address. The Device Address can be found in the application on the LoRaWAN NS.
2548 )))
2549
2550 (((
2551 (% style="background-color:#dcdcdc" %)** ATZ**         (%%) ~/~/ Reset MCU
2552
2553
2554 )))
2555
2556 (((
2557 (% style="color:red" %)**Note:**
2558 )))
2559
2560 (((
2561 **~1. Ensure that the device is set to ABP mode in the LoRaWAN Network Server.**
2562
2563 **2. Verify that the LG01/02 gateway RX frequency matches the AT+CHS setting exactly.**
2564
2565 **3. Make sure the SF/bandwidth settings in the LG01/LG02 match the settings of AT+DR. Refer to [[this link>>url:http://www.dragino.com/downloads/index.php?
2566 dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.**
2567
2568 **4. The commands AT+RX2FQ and AT+RX2DR enable downlink functionality. To set the correct parameters, you can check the actual downlink parameters to be used as shown below. Here, RX2FQ should be set to 868400000 and RX2DR should be set to 5.**
2569 )))
2570
2571 (((
2572 [[image:1653359097980-169.png||height="188" width="729"]]
2573 )))
2574
2575
2576 === 4.2.3 Change to Class A ===
2577
2578
2579 (((
2580 (% style="color:blue" %)**If the sensor has JOINED:**
2581
2582 (% style="background-color:#dcdcdc" %)**AT+CLASS=A**
2583
2584 (% style="background-color:#dcdcdc" %)**ATZ**
2585 )))
2586
2587
2588 = 5. Case Study =
2589
2590 == 5.1 Counting how many objects pass through the flow line ==
2591
2592 See [[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]]?
2593
2594
2595 = 6. FAQ =
2596
2597 This section contains some frequently asked questions, which can help you resolve common issues and find solutions quickly.
2598
2599
2600 == 6.1 How to update the firmware? ==
2601
2602 Dragino frequently releases firmware updates for the LT-22222-L. Updating your LT-22222-L with the latest firmware version helps to:
2603
2604 * Support new features
2605 * Fix bugs
2606 * Change LoRaWAN frequency bands
2607
2608 You will need the following things before proceeding:
2609
2610 * 3.5mm programming cable (included with the LT-22222-L as an additional accessory)
2611 * USB to TTL adapter/converter
2612 * Download and install the [[STM32 Flash 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]]. (replaced by STM32CubeProgrammer)
2613 * Download the latest firmware image from [[LT-22222-L firmware image files>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACrbrDN0AqLHbBat0ViWx5Da/LT-22222-L/Firmware?dl=0&subfolder_nav_tracking=1]]. Check the file name of the firmware to find the correct region.
2614
2615 {{info}}
2616 As of this writing, the latest firmware version available for the LT-22222-L is v1.6.1.
2617 {{/info}}
2618
2619 Below is the hardware setup for uploading a firmware image to the LT-22222-L:
2620
2621 [[image:usb-ttl-audio-jack-connection.jpg]]
2622
2623
2624
2625 Start the STM32 Flash Loader and choose the correct COM port to update.
2626
2627 (((
2628 (((
2629 (% style="color:blue" %)**For LT-22222-L**(%%):
2630
2631 Hold down the **PRO** button, then briefly press the **RST** button. The **DO1** LED will change from OFF to ON. When the **DO1** LED is ON, it indicates that the device is in firmware download mode.
2632 )))
2633
2634
2635 )))
2636
2637 [[image:image-20220524103407-12.png]]
2638
2639
2640 [[image:image-20220524103429-13.png]]
2641
2642
2643 [[image:image-20220524104033-15.png]]
2644
2645
2646 (% style="color:red" %)**Note**(%%): If you have lost the programming cable, you can make one from a 3.5 mm cable. The pin mapping is as follows:
2647
2648 [[image:1653360054704-518.png||height="186" width="745"]]
2649
2650
2651 (((
2652 (((
2653 == 6.2 How to change the LoRaWAN frequency band/region? ==
2654 )))
2655 )))
2656
2657 (((
2658 You can follow the introductions on [[how to upgrade image>>||anchor="H5.1Howtoupgradetheimage3F"]]. When downloading, select the required image file.
2659 )))
2660
2661 (((
2662
2663
2664 == 6.3 How to setup LT-22222-L to work with a Single Channel Gateway, such as LG01/LG02? ==
2665 )))
2666
2667 (((
2668 (((
2669 In this case, you need to set the LT-22222-L to work in ABP mode and transmit on only one frequency.
2670 )))
2671 )))
2672
2673 (((
2674 (((
2675 We assume you have an LG01/LG02 working on the frequency 868400000. Below are the steps.
2676
2677
2678 )))
2679 )))
2680
2681 (((
2682 (% style="color:#0000ff" %)**Step 1**(%%): Log in to The Things Stack Sandbox account and create an ABP device in the application. To do this, use the manual registration option as explained in section 3.2.2.2, //Adding a Device Manually//. Select //Activation by Personalization (ABP)// under Activation Mode. Enter the DevEUI exactly as shown on the registration information sticker, then generate the Device Address, Application Session Key (AppSKey), and Network Session Key (NwkSKey).
2683
2684 [[image:lt-22222-l-abp.png||height="686" width="1000"]]
2685 )))
2686
2687 (((
2688
2689 )))
2690
2691 {{warning}}
2692 Ensure that the Device Address (DevAddr) and the two keys match between the LT-22222-L and The Things Stack. You can modify them either in The Things Stack or on the LT-22222-L to make them align. In The Things Stack, you can configure the NwkSKey and AppSKey on the settings page, but note that the Device Address is generated by The Things Stack.
2693 {{/warning}}
2694
2695
2696 (((
2697 (% style="color:blue" %)**Step 2**(%%)**:  **(% 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" %)Run AT commands to configure the LT-22222-L to operate in single-frequency and ABP mode. The AT commands are as follows:
2698
2699
2700 )))
2701
2702 (((
2703 (% style="background-color:#dcdcdc" %)**123456** (%%) : Enter the password to enable AT access.
2704
2705 (% style="background-color:#dcdcdc" %)**AT+FDR**(%%) : Reset parameters to factory default, keeping keys reserved.
2706
2707 (% style="background-color:#dcdcdc" %)**AT+NJM=0** (%%) : Set to ABP mode.
2708
2709 (% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%) : Disable the Adaptive Data Rate (ADR).
2710
2711 (% style="background-color:#dcdcdc" %)**AT+DR=5** (%%) : Set Data Rate (Use AT+DR=3 for the 915 MHz band).
2712
2713 (% style="background-color:#dcdcdc" %)**AT+TDC=60000 **(%%) : Set transmit interval to 60 seconds.
2714
2715 (% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) : Set transmit frequency to 868.4 MHz.
2716
2717 (% style="background-color:#dcdcdc" %)**AT+DADDR=xxxx**(%%) : Set the Device Address (DevAddr)
2718
2719 (% 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:700; text-decoration:none; white-space:pre-wrap" %)**AT+APPKEY=xxxx**(% 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" %): Get or set the Application Key (AppKey)
2720
2721 (% 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" %)**AT+NWKSKEY=xxxx**: Get or set the Network Session Key (NwkSKey)
2722
2723 (% 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" %)**AT+APPSKEY=xxxx**: Get or set the Application Session Key (AppSKey)
2724
2725 (% style="background-color:#dcdcdc" %)**ATZ**        (%%) : Reset MCU.
2726 )))
2727
2728
2729 (((
2730 (% 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" %)The following figure shows the screenshot of the command set above, issued using a serial tool:
2731 )))
2732
2733 [[image:1653360498588-932.png||height="485" width="726"]]
2734
2735
2736 == 6.4 How to change the uplink interval? ==
2737
2738 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/]]
2739
2740
2741 == 6.5 Can I see the counting event in the serial output? ==
2742
2743 (((
2744 You can run the AT command **AT+DEBUG** to view the counting event in the serial output. If the firmware is too old and doesn’t support AT+DEBUG, update to the latest firmware first.
2745
2746
2747 == 6.6 Can I use point-to-point communication with LT-22222-L? ==
2748
2749 Yes, you can. Please refer to the [[Point-to-Point Communication of LT-22222-L>>https://wiki.dragino.com/xwiki/bin/view/Main/%20Point%20to%20Point%20Communication%20of%20LT-22222-L/]] page. The firmware that supports point-to-point communication can be found [[here>>https://github.com/dragino/LT-22222-L/releases]].
2750
2751
2752 )))
2753
2754 (((
2755 == 6.7 Why does the relay output default to an open relay after the LT-22222-L is powered off? ==
2756
2757 * If the device is not properly shut down and is directly powered off.
2758 * It will default to a power-off state.
2759 * In modes 2 to 5, the DO/RO status and pulse count are saved to flash memory.
2760 * After a restart, the status before the power failure will be read from flash.
2761
2762 == 6.8 Can I setup LT-22222-L as a NC (Normally Closed) relay? ==
2763
2764 The LT-22222-L's built-in relay is Normally Open (NO). You can use an external relay to achieve a Normally Closed (NC) configuration. The circuit diagram is shown below:
2765
2766
2767 [[image:image-20221006170630-1.png||height="610" width="945"]]
2768
2769
2770 == 6.9 Can the LT-22222-L save the RO state? ==
2771
2772 To enable this feature, the firmware version must be 1.6.0 or higher.
2773
2774
2775 == 6.10 Why does the LT-22222-L always report 15.585V when measuring the AVI? ==
2776
2777 It is likely that the GND is not connected during the measurement, or that the wire connected to the GND is loose.
2778
2779
2780 = 7. Troubleshooting =
2781
2782 This section provides some known troubleshooting tips.
2783
2784
2785 )))
2786
2787 (((
2788 (((
2789 == 7.1 Downlink isn't working. How can I solve this? ==
2790 )))
2791 )))
2792
2793 (((
2794 Please refer to this link for debugging instructions: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H5.1Howitwork"]]
2795 )))
2796
2797 (((
2798
2799
2800 == 7.2 Having trouble uploading an image? ==
2801 )))
2802
2803 (((
2804 Please refer to this link for troubleshooting: [[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
2805 )))
2806
2807 (((
2808
2809
2810 == 7.3 Why can't I join TTN in the US915 /AU915 bands? ==
2811 )))
2812
2813 (((
2814 It might be related to the channel mapping. [[Please refer to this link for details.>>https://github.com/dragino/LT-22222-L/releases]]
2815 )))
2816
2817
2818 == 7.4 Why can the LT-22222-L perform uplink normally, but cannot receive downlink? ==
2819
2820 The FCD count of the gateway is inconsistent with the FCD count of the node, causing the downlink to remain in the queue.
2821 Use this command to synchronize their counts: [[Resets the downlink packet count>>||anchor="H3.4.2.23Resetsthedownlinkpacketcount"]]
2822
2823
2824 = 8. Ordering information =
2825
2826 (% style="color:#4f81bd" %)**LT-22222-L-XXX:**
2827
2828 (% style="color:#4f81bd" %)**XXX:**
2829
2830 * (% style="color:red" %)**EU433**(%%): LT with frequency bands EU433
2831 * (% style="color:red" %)**EU868**(%%): LT with frequency bands EU868
2832 * (% style="color:red" %)**KR920**(%%): LT with frequency bands KR920
2833 * (% style="color:red" %)**CN470**(%%): LT with frequency bands CN470
2834 * (% style="color:red" %)**AS923**(%%): LT with frequency bands AS923
2835 * (% style="color:red" %)**AU915**(%%): LT with frequency bands AU915
2836 * (% style="color:red" %)**US915**(%%): LT with frequency bands US915
2837 * (% style="color:red" %)**IN865**(%%): LT with frequency bands IN865
2838 * (% style="color:red" %)**CN779**(%%): LT with frequency bands CN779
2839
2840 = 9. Package information =
2841
2842 **Package includes**:
2843
2844 * 1 x LT-22222-L I/O Controller
2845 * 1 x LoRa antenna matched to the frequency of the LT-22222-L
2846 * 1 x bracket for DIN rail mounting
2847 * 1 x 3.5 mm programming cable
2848
2849 **Dimension and weight**:
2850
2851 * Device Size: 13.5 x 7 x 3 cm
2852 * Device Weight: 105 g
2853 * Package Size / pcs : 14.5 x 8 x 5 cm
2854 * Weight / pcs : 170 g
2855
2856 = 10. Support =
2857
2858 * (((
2859 Support is available Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different time zones, we cannot offer live support. However, your questions will be answered as soon as possible within the aforementioned schedule.
2860 )))
2861 * (((
2862 Please provide as much information as possible regarding your inquiry (e.g., product models, a detailed description of the problem, steps to replicate it, etc.) and send an email to [[support@dragino.cc>>mailto:support@dragino.cc]]
2863
2864
2865 )))
2866
2867 = 11. Reference​​​​​ =
2868
2869 * 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]]
2870 * [[Datasheet, Document Base>>https://www.dropbox.com/sh/gxxmgks42tqfr3a/AACEdsj_mqzeoTOXARRlwYZ2a?dl=0]]
2871 * [[Hardware Source>>url:https://github.com/dragino/Lora/tree/master/LT/LT-33222-L/v1.0]]