Version 230.14 by Xiaoling on 2024/12/09 10:52

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