Version 214.1 by Dilisi S on 2024/11/24 01:55

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