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