Last modified by Xiaoling on 2023/07/18 10:12

From version 204.1
edited by Edwin Chen
on 2022/10/08 15:03
Change comment: There is no comment for this version
To version 198.1
edited by Bei Jinggeng
on 2022/09/06 10:35
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Edwin
1 +XWiki.Bei
Content
... ... @@ -16,7 +16,6 @@
16 16  
17 17  = 1. Introduction =
18 18  
19 -
20 20  == 1.1 What is LHT65N Temperature & Humidity Sensor ==
21 21  
22 22  
... ... @@ -45,7 +45,6 @@
45 45  )))
46 46  
47 47  
48 -
49 49  == 1.2 Features ==
50 50  
51 51  
... ... @@ -61,10 +61,11 @@
61 61  * Tri-color LED to indicate working status
62 62  * Datalog feature (Max 3328 records)
63 63  
62 +
64 64  == 1.3 Specification ==
65 65  
66 66  
67 -(% style="color:#037691" %)**Built-in Temperature Sensor:**
66 +**Built-in Temperature Sensor:**
68 68  
69 69  * Resolution: 0.01 °C
70 70  * Accuracy Tolerance : Typ ±0.3 °C
... ... @@ -71,7 +71,7 @@
71 71  * Long Term Drift: < 0.02 °C/yr
72 72  * Operating Range: -40 ~~ 85 °C
73 73  
74 -(% style="color:#037691" %)**Built-in Humidity Sensor:**
73 +**Built-in Humidity Sensor:**
75 75  
76 76  * Resolution: 0.04 %RH
77 77  * Accuracy Tolerance : Typ ±3 %RH
... ... @@ -78,7 +78,7 @@
78 78  * Long Term Drift: < 0.02 °C/yr
79 79  * Operating Range: 0 ~~ 96 %RH
80 80  
81 -(% style="color:#037691" %)**External Temperature Sensor:**
80 +**External Temperature Sensor:**
82 82  
83 83  * Resolution: 0.0625 °C
84 84  * ±0.5°C accuracy from -10°C to +85°C
... ... @@ -85,9 +85,9 @@
85 85  * ±2°C accuracy from -55°C to +125°C
86 86  * Operating Range: -55 °C ~~ 125 °C
87 87  
87 +
88 88  = 2. Connect LHT65N to IoT Server =
89 89  
90 -
91 91  == 2.1 How does LHT65N work? ==
92 92  
93 93  
... ... @@ -132,7 +132,6 @@
132 132  (% _msthash="315240" _msttexthash="9205482" _mstvisible="1" class="wikigeneratedid" %)
133 133  This section shows an example of how to join the TTN V3 LoRaWAN IoT server. Use with other LoRaWAN IoT servers is of a similar procedure.
134 134  
135 -
136 136  (% _mstvisible="1" class="wikigeneratedid" %)
137 137  [[image:image-20220522232442-1.png||_mstalt="427830" _mstvisible="3" height="387" width="648"]]
138 138  
... ... @@ -497,7 +497,7 @@
497 497  
498 498  sensor by setting:
499 499  
500 -AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
498 +AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)Time to power this sensor, from 0 ~~ 65535ms
501 501  
502 502  For example:
503 503  
... ... @@ -520,7 +520,6 @@
520 520  
521 521  When the voltage collected by ADC_IN1 is less than the minimum range, the minimum range will be used as the output; Similarly, when the collected voltage is greater than the maximum range, the maximum range will be used as the output.
522 522  
523 -
524 524  1) The minimum range is about 0.1V. Each chip has internal calibration, so this value is close to 0.1V
525 525  
526 526  [[image:image-20220628151005-5.png]]
... ... @@ -536,35 +536,29 @@
536 536  [[image:image-20220628151143-7.png]]
537 537  
538 538  
536 +==== ====
539 539  
540 -==== 2.4.6.4 Ext~=2 TMP117 Sensor (Since Firmware v1.3) ====
538 +==== 2.4.6.4 Ext~=2 TMP117 Sensor (since v1.3) ====
541 541  
540 +Ext=2,Temperature Sensor(TMP117):
542 542  
543 -[[image:image-20220927095645-1.png||height="534" width="460"]]
544 -
545 -
546 -**Ext=2,Temperature Sensor(TMP117):**
547 -
548 548  [[image:image-20220906102307-7.png]]
549 549  
550 550  
551 -(% style="color:blue" %)**Interrupt Mode and Counting Mode:**
545 +**Interrupt Mode and Counting Mode**
552 552  
553 553  The external cable NE2 can be use for MOD4 and MOD8
554 554  
555 555  
556 556  
551 +==== 2.4.6.5 Ext~=4 Interrupt Mode (since v1.3) ====
557 557  
558 -==== 2.4.6.5 Ext~=4 Interrupt Mode (Since Firmware v1.3) ====
553 +**Note: In this mode, 3.3v output will be always ON. LHT65N will send an uplink when there is a trigger.**
559 559  
555 +**Interrupt Mode can be used to connect to external interrupt sensors such as:**
560 560  
561 -(% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will send an uplink when there is a trigger.**
557 +Case 1:Door Sensor. 3.3v Out for such sensor is just to detect Open/Close.
562 562  
563 -
564 -(% style="color:blue" %)**Interrupt Mode can be used to connect to external interrupt sensors such as:**
565 -
566 -**Case 1: Door Sensor.** 3.3v Out for such sensor is just to detect Open/Close.
567 -
568 568   In Open State, the power consumption is the same as if there is no probe
569 569  
570 570   In Close state, the power consumption will be 3uA higher than normal.
... ... @@ -571,23 +571,22 @@
571 571  
572 572  [[image:image-20220906100852-1.png||height="205" width="377"]]
573 573  
574 -
575 575  Ext=4,Interrupt Sensor:
576 576  
577 -(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %)
578 -|(% style="width:117px" %)(((
567 +(% border="8" cellpadding="4" cellspacing="4" style="height:8px; width:662px" %)
568 +|(((
579 579  AT+EXT=4,1
580 -)))|(% style="width:371px" %)(((
570 +)))|(% style="width:503px" %)(((
581 581  Sent uplink packet in both rising and falling interrupt
582 582  )))
583 -|(% style="width:117px" %)(((
573 +|(((
584 584  AT+EXT=4,2
585 -)))|(% style="width:371px" %)(((
575 +)))|(% style="width:503px" %)(((
586 586  Sent uplink packet only in falling interrupt
587 587  )))
588 -|(% style="width:117px" %)(((
578 +|(((
589 589  AT+EXT=4,3
590 -)))|(% style="width:371px" %)(((
580 +)))|(% style="width:503px" %)(((
591 591  Sent uplink packet only in rising interrupt
592 592  )))
593 593  
... ... @@ -601,65 +601,66 @@
601 601  [[image:image-20220906101145-3.png]]
602 602  
603 603  
594 +==== ====
604 604  
596 +==== 2.4.6.6 Ext~=8 Counting Mode(since v1.3) ====
605 605  
606 -==== 2.4.6.6 Ext~=8 Counting Mode(Since Firmware v1.3) ====
598 +**Note: In this mode, 3.3v output will be always ON. LHT65N will count for every interrupt and uplink periodically.**
607 607  
608 608  
609 -(% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will count for every interrupt and uplink periodically.**
601 +Case 1: Low power consumption Flow Sensor, such flow sensor has pulse output and the power consumption in uA level and can be powered by LHT65N.
610 610  
611 -
612 -(% style="color:blue" %)**Case 1**(%%):  Low power consumption Flow Sensor, such flow sensor has pulse output and the power consumption in uA level and can be powered by LHT65N.
613 -
614 614  [[image:image-20220906101320-4.png||height="366" width="698"]]
615 615  
605 +Case 2: Normal Flow Sensor: Such flow sensor has higher power consumption and is not suitable to be powered by LHT65N. It is powered by external power and output <3.3v pulse
616 616  
617 -(% style="color:blue" %)**Case 2**(%%):  Normal Flow Sensor: Such flow sensor has higher power consumption and is not suitable to be powered by LHT65N. It is powered by external power and output <3.3v pulse
618 -
619 619  [[image:image-20220906101320-5.png||height="353" width="696"]]
620 620  
621 621  Ext=8, Counting Sensor ( 4 bytes):
622 622  
623 -(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:381px" %)
624 -|(% style="width:138px" %)(((
611 +(% border="8" cellpadding="4" cellspacing="4" style="height:8px; width:662px" %)
612 +|(((
625 625  AT+EXT=8,0
626 -)))|(% style="width:240px" %)(((
614 +)))|(% style="width:503px" %)(((
627 627  Count at falling interrupt
628 628  )))
629 -|(% style="width:138px" %)(((
617 +|(((
630 630  AT+EXT=8,1
631 -)))|(% style="width:240px" %)(((
619 +)))|(% style="width:503px" %)(((
632 632  Count at rising interrupt
633 633  )))
634 -|(% style="width:138px" %)(((
622 +|(((
635 635  AT+SETCNT=60
636 -)))|(% style="width:240px" %)(((
624 +)))|(% style="width:503px" %)(((
637 637  Sent current count to 60
638 638  )))
639 639  
628 +
640 640  [[image:image-20220906101320-6.png]]
641 641  
642 642  
643 -(% style="color:blue" %)**A2 downlink Command:**
632 +A2 downlink Command:
644 644  
645 -A2 02:  Same as AT+EXT=2 (AT+EXT= second byte)
634 +A2 02: Same as AT+EXT=2 (AT+EXT= second byte)
646 646  
647 -A2 06 01 F4:  Same as AT+EXT=6,500 (AT+EXT= second byte, third and fourth bytes)
636 +A2 06 01 F4: Same as AT+EXT=6,500 (AT+EXT= second byte, third and fourth bytes)
648 648  
649 -A2 04 02:  Same as AT+EXT=4,2 (AT+EXT= second byte, third byte)
638 +A2 04 02: Same as AT+EXT=4,2 (AT+EXT= second byte, third byte)
650 650  
651 -A2 08 01 00:  Same as AT+EXT=8,0 (AT+EXT= second byte, fourth byte)
640 +A2 08 01 00: Same as AT+EXT=8,0 (AT+EXT= second byte, fourth byte)
652 652  
653 -A2 08 02 00 00 00 3C:  Same as AT+ SETCNT=60  (AT+ SETCNT = 4th byte and 5th byte and 6th byte and 7th byte)
642 +A2 08 02 00 00 00 3C: Same as AT+ SETCNT=60  (AT+ SETCNT = 4th byte and 5th byte and 6th byte and 7th byte)
654 654  
655 655  
656 -(% style="color:blue" %)**Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm.**
657 657  
658 658  
659 -(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
647 +**Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm.**
660 660  
661 -(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
662 662  
650 +AT+WMOD=parameter1,parameter2,parameter3,parameter4
651 +
652 +Parameter 1: Alarm mode:
653 +
663 663  0): Cancel
664 664  
665 665  1): Threshold alarm
... ... @@ -667,19 +667,19 @@
667 667  2): Fluctuation alarm
668 668  
669 669  
670 -(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
661 +Parameter 2: Sampling time. Unit: seconds, up to 255 seconds.
671 671  
672 -(% style="color:red" %)**Note: When the collection time is less than 60 seconds and always exceeds the set alarm threshold, the sending interval will not be the collection time, but will be sent every 60 seconds.**
663 +**Note: When the collection time is less than 60 seconds and always exceeds the set alarm threshold, the sending interval will not be the collection time, but will be sent every 60 seconds.**
673 673  
674 674  
675 -(% style="color:#037691" %) **Parameter 3 and parameter 4:**
666 +Parameter 3 and parameter 4:
676 676  
677 -1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
668 +1):If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
678 678  
679 679  Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
680 680  
681 681  
682 -2):  If Alarm Mode is set to 2: Parameter 3 is valid, which represents the difference between the currently collected temperature and the last uploaded temperature.
673 +2):If Alarm Mode is set to 2: Parameter 3 is valid, which represents the difference between the currently collected temperature and the last uploaded temperature.
683 683  
684 684  Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
685 685  
... ... @@ -686,7 +686,7 @@
686 686  If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
687 687  
688 688  
689 -(% style="color:blue" %)** Downlink:**
680 +Downlink:
690 690  
691 691  0xA5 00 ~-~- AT+WMOD=0.
692 692  
... ... @@ -697,8 +697,6 @@
697 697  0xA5 FF ~-~- After the device receives it, upload the current alarm configuration (FPORT=8). Such as 01 0A 11 94 29 04 or 02 0A 02.
698 698  
699 699  
700 -
701 -
702 702  == 2.5 Show data on Datacake ==
703 703  
704 704  
... ... @@ -761,19 +761,11 @@
761 761  
762 762  There are two methods:
763 763  
764 -**Method 1**: IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specified time range.
753 +1. IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specifying time range.
754 +1. Set [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]], LHT65N will wait for ACK for every uplink, when there is no LoRaWAN network, LHT65N will mark these records with non-ack message and store the sensor data, and it will send all messages (10s interval) after the network recovery. note: a) LHT65N will do ack check for data records sending to make sure every data arrive server. b) LHT65N will send data in CONFIRMED Mode when PNACKMD=1, but it won't re-transmit the same packet , it will just mark it as NONE-ACK and resend after network is detected.
765 765  
766 -
767 -**Method 2: **Set [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]], LHT65N will wait for ACK for every uplink, when there is no LoRaWAN network, LHT65N will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
768 -
769 -**Note for method 2:**
770 -
771 -* a) LHT65N will do an ACK check for data records sending to make sure every data arrive server.
772 -* b) LHT65N will send data in **CONFIRMED Mode** when PNACKMD=1, but LHT65N won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if LHT65N gets a ACK, LHT65N will consider there is a network connection and resend all NONE-ACK Message.
773 -
774 774  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
775 775  
776 -
777 777  [[image:image-20220703111700-2.png||height="381" width="1119"]]
778 778  
779 779  
... ... @@ -995,18 +995,15 @@
995 995  (% _msthash="315268" _msttexthash="390390" _mstvisible="3" %)**Poll message flag & Ext**
996 996  
997 997  (% _mstvisible="1" %)
979 +[[image:image-20220523152208-14.png||_mstalt="452920" _mstvisible="3"]]
980 +
981 +(% _mstvisible="1" %)
998 998  (((
999 999  (% _mstvisible="2" %)
1000 1000  (((
1001 1001  (% _msthash="736723" _msttexthash="2005003" _mstvisible="3" %)
1002 1002  (((
1003 -[[image:image-20221006192726-1.png||height="112" width="754"]]
1004 -
1005 -(% class="mark" %)No ACK Message(%%): 1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]] feature)
1006 -
1007 -(% class="mark" %)Poll Message Flag(%%): 1: This message is a poll message reply.
1008 -
1009 -
987 +Poll Message Flag: 1: This message is a poll message reply.
1010 1010  )))
1011 1011  )))
1012 1012  )))
... ... @@ -1147,7 +1147,6 @@
1147 1147  (% _mstvisible="1" %)
1148 1148  [[image:image-20220523001219-13.png||_mstalt="451204" _mstvisible="3" height="421" style="text-align:left" width="727"]]
1149 1149  
1150 -
1151 1151  (% _msthash="315271" _msttexthash="12012546" _mstvisible="1" style="text-align: left;" %)
1152 1152  (((
1153 1153  7FFF089801464160065F977FFF088E014B41600660097FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
... ... @@ -1271,7 +1271,6 @@
1271 1271  
1272 1272  = 3. Sensors and Accessories =
1273 1273  
1274 -
1275 1275  == 3.1 E2 Extension Cable ==
1276 1276  
1277 1277  
... ... @@ -1509,7 +1509,7 @@
1509 1509  
1510 1510  (% _msthash="315254" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1511 1511  
1512 -0x306007806000  ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1488 +0x306007806000 ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1513 1513  
1514 1514  
1515 1515  
... ... @@ -1533,8 +1533,8 @@
1533 1533  
1534 1534  (% style="color:#4f81bd" %)**Downlink Command:**
1535 1535  
1536 -0x28 01  ~/~/  Same As AT+SYNCMOD=1
1537 -0x28 00  ~/~/  Same As AT+SYNCMOD=0
1512 +0x28 01 ~/~/ Same As AT+SYNCMOD=1
1513 +0x28 00 ~/~/ Same As AT+SYNCMOD=0
1538 1538  
1539 1539  
1540 1540  
... ... @@ -1628,7 +1628,6 @@
1628 1628  
1629 1629  = 5. Battery & How to replace =
1630 1630  
1631 -
1632 1632  == 5.1 Battery Type ==
1633 1633  
1634 1634  
... ... @@ -1947,7 +1947,7 @@
1947 1947  == 6.3 How to change the uplink interval? ==
1948 1948  
1949 1949  
1950 -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/||_msthash="506137" _msttexthash="5712018" style="background-color: rgb(255, 255, 255);"]]
1925 +[[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/||_msthash="506137" _msttexthash="5712018"]]
1951 1951  
1952 1952  
1953 1953  
... ... @@ -1981,7 +1981,6 @@
1981 1981  [[image:image-20220615170542-5.png]]
1982 1982  
1983 1983  
1984 -
1985 1985  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
1986 1986  
1987 1987  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -1995,7 +1995,6 @@
1995 1995  [[image:image-20220621170938-2.png]]
1996 1996  
1997 1997  
1998 -
1999 1999  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
2000 2000  
2001 2001  [[image:image-20220615171334-6.png]]
... ... @@ -2044,7 +2044,6 @@
2044 2044  [[image:image-20220615170542-5.png]]
2045 2045  
2046 2046  
2047 -
2048 2048  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
2049 2049  
2050 2050  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -2057,7 +2057,6 @@
2057 2057  Press and hold the start key to restart and enter  (% _mstvisible="1" %)bootlaod(%%) mode.
2058 2058  
2059 2059  
2060 -
2061 2061  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
2062 2062  
2063 2063  [[image:image-20220615171334-6.png]]
... ... @@ -2082,13 +2082,20 @@
2082 2082  
2083 2083  (% style="color:#4f81bd" %)**XX **(%%): The default frequency band
2084 2084  
2085 -* (% style="color:#4f81bd" %)** **(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
2056 +(% style="color:#4f81bd" %)** **(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
2057 +
2086 2086  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
2059 +
2087 2087  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
2061 +
2088 2088  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
2063 +
2089 2089  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
2065 +
2090 2090  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**US915**(%%): LoRaWAN US915 band
2067 +
2091 2091  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
2069 +
2092 2092  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
2093 2093  
2094 2094  (% style="color:#4f81bd" %)**YY**(%%): Sensor Accessories
... ... @@ -2095,7 +2095,6 @@
2095 2095  
2096 2096  * (% style="color:red" %)**E3**(%%): External Temperature Probe
2097 2097  
2098 -
2099 2099  = 8. Packing Info =
2100 2100  
2101 2101  
... ... @@ -2109,13 +2109,11 @@
2109 2109  * Device Size:  10 x 10 x 3.5 cm
2110 2110  * Device Weight: 120.5g
2111 2111  
2112 -
2113 2113  = 9. Reference material =
2114 2114  
2115 2115  
2116 2116  * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0||_msthash="504975" _msttexthash="51420512"]]
2117 2117  
2118 -
2119 2119  = 10. FCC Warning =
2120 2120  
2121 2121  
... ... @@ -2124,6 +2124,3 @@
2124 2124  (1) This device may not cause harmful interference;
2125 2125  
2126 2126  (2) this device must accept any interference received, including interference that may cause undesired operation.
2127 -
2128 -
2129 -
image-20220927095645-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Bei
Size
... ... @@ -1,1 +1,0 @@
1 -174.1 KB
Content
image-20221006192726-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Edwin
Size
... ... @@ -1,1 +1,0 @@
1 -17.3 KB
Content