Version 2.5 by Kilight Cao on 2025/07/03 13:43

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