<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Smart Home Automation Forum - T128M]]></title>
		<link>https://www.kincony.com/forum/</link>
		<description><![CDATA[Smart Home Automation Forum - https://www.kincony.com/forum]]></description>
		<pubDate>Thu, 07 May 2026 13:58:17 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[T128M Smart Controller Wiring Examples]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=9279</link>
			<pubDate>Mon, 20 Apr 2026 14:27:52 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=9279</guid>
			<description><![CDATA[<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=9661" target="_blank" title="">T128M_wiring.jpg</a> (Size: 271.73 KB / Downloads: 50)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=9661" target="_blank" title="">T128M_wiring.jpg</a> (Size: 271.73 KB / Downloads: 50)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[T128M Smart Controller ESP32 system block diagram]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=9277</link>
			<pubDate>Mon, 20 Apr 2026 13:34:49 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=9277</guid>
			<description><![CDATA[<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=9659" target="_blank" title="">KinCony-T128M-smart-controller-diagram.png</a> (Size: 1,003.48 KB / Downloads: 48)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=9659" target="_blank" title="">KinCony-T128M-smart-controller-diagram.png</a> (Size: 1,003.48 KB / Downloads: 48)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Separate +12V to Kincony, +24V to MOSFETs]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8902</link>
			<pubDate>Mon, 12 Jan 2026 00:47:59 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=8213">Toper</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8902</guid>
			<description><![CDATA[Hi,<br />
<span style="color: #000000;" class="mycode_color">I have a question about power supply for <span style="font-weight: bold;" class="mycode_b">T128</span>.</span><br />
<span style="color: #000000;" class="mycode_color">I'm using 24 V relays (Finder 40.52) connected to the Digital Outputs.<br />
I am considering two power options:</span><br />
<ol type="1" class="mycode_list"><li><span style="color: #000000;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Two power supplies (this version works fine since 2 days)</span>:<br />
</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">12 V for the Kincony board (VCC),</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">24 V only for the outputs,</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">common ground (GND) for both power supplies.</span><br />
</li>
</ul>
</li>
<li><span style="color: #000000;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">One 24 V power supply</span>:<br />
</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">24 V connected to VCC and to LO.</span><br />
</li>
</ul>
</li>
</ol>
<span style="color: #000000;" class="mycode_color">My questions:</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">Is it <span style="font-weight: bold;" class="mycode_b">safe</span> to connect the grounds (GND) of the 12 V and 24 V power supplies together?</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">Does the manufacturer <span style="font-weight: bold;" class="mycode_b">recommend</span> using a common ground in this case?</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">From <span style="font-weight: bold;" class="mycode_b">thermal and reliability</span> point of view, is it better to power everything with 24 V, or use 12 V for VCC and 24 V only for outputs?</span><br />
</li>
</ul>
<br />
<span style="color: #000000;" class="mycode_color">Thank you in advance for your help.</span><br />
<span style="color: #000000;" class="mycode_color">regards,</span><br />
<span style="color: #000000;" class="mycode_color">Toper</span>]]></description>
			<content:encoded><![CDATA[Hi,<br />
<span style="color: #000000;" class="mycode_color">I have a question about power supply for <span style="font-weight: bold;" class="mycode_b">T128</span>.</span><br />
<span style="color: #000000;" class="mycode_color">I'm using 24 V relays (Finder 40.52) connected to the Digital Outputs.<br />
I am considering two power options:</span><br />
<ol type="1" class="mycode_list"><li><span style="color: #000000;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Two power supplies (this version works fine since 2 days)</span>:<br />
</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">12 V for the Kincony board (VCC),</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">24 V only for the outputs,</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">common ground (GND) for both power supplies.</span><br />
</li>
</ul>
</li>
<li><span style="color: #000000;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">One 24 V power supply</span>:<br />
</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">24 V connected to VCC and to LO.</span><br />
</li>
</ul>
</li>
</ol>
<span style="color: #000000;" class="mycode_color">My questions:</span><ul class="mycode_list"><li><span style="color: #000000;" class="mycode_color">Is it <span style="font-weight: bold;" class="mycode_b">safe</span> to connect the grounds (GND) of the 12 V and 24 V power supplies together?</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">Does the manufacturer <span style="font-weight: bold;" class="mycode_b">recommend</span> using a common ground in this case?</span><br />
</li>
<li><span style="color: #000000;" class="mycode_color">From <span style="font-weight: bold;" class="mycode_b">thermal and reliability</span> point of view, is it better to power everything with 24 V, or use 12 V for VCC and 24 V only for outputs?</span><br />
</li>
</ul>
<br />
<span style="color: #000000;" class="mycode_color">Thank you in advance for your help.</span><br />
<span style="color: #000000;" class="mycode_color">regards,</span><br />
<span style="color: #000000;" class="mycode_color">Toper</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-08 read analog input ports]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8256</link>
			<pubDate>Mon, 23 Jun 2025 13:41:45 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8256</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * Description:<br />
 * This Arduino program reads analog values from four analog input pins (A1, A2, A3, A4)<br />
 * and prints the values to the Serial Monitor. The analog inputs are defined with specific<br />
 * GPIO pins and the program reads the voltage levels from these pins every 2 seconds.<br />
 *<br />
 * Pin Definitions:<br />
 * - A1: GPIO 7<br />
 * - A2: GPIO 6<br />
 * - A3: GPIO 5<br />
 * - A4: GPIO 4<br />
 */<br />
<br />
#define ANALOG_A1 &nbsp;&nbsp;7 &nbsp;&nbsp;// Define GPIO pin for analog input A1<br />
#define ANALOG_A2 &nbsp;&nbsp;6 &nbsp;&nbsp;// Define GPIO pin for analog input A2<br />
#define ANALOG_A3 &nbsp;&nbsp;5 &nbsp;&nbsp;// Define GPIO pin for analog input A3<br />
#define ANALOG_A4 &nbsp;&nbsp;4 &nbsp;&nbsp;// Define GPIO pin for analog input A4<br />
<br />
void setup()<br />
{<br />
    Serial.begin(115200); // Initialize serial communication at 115200 baud rate<br />
    delay(500); // Short delay to allow serial communication to start<br />
<br />
    pinMode(ANALOG_A1, INPUT); // Set GPIO 5 as an input for analog signal A1<br />
    pinMode(ANALOG_A2, INPUT); // Set GPIO 7 as an input for analog signal A2<br />
    pinMode(ANALOG_A3, INPUT); // Set GPIO 6 as an input for analog signal A3<br />
    pinMode(ANALOG_A4, INPUT); // Set GPIO 4 as an input for analog signal A4<br />
}<br />
<br />
void loop()<br />
{<br />
    // Read and print analog values from the defined pins<br />
    Serial.print("A1="); <br />
    Serial.println(analogRead(ANALOG_A1)); // Read and print the value from A1<br />
    Serial.print("A2=");<br />
    Serial.println(analogRead(ANALOG_A2)); // Read and print the value from A2<br />
    Serial.print("A3=");<br />
    Serial.println(analogRead(ANALOG_A3)); // Read and print the value from A3<br />
    Serial.print("A4=");<br />
    Serial.println(analogRead(ANALOG_A4)); // Read and print the value from A4<br />
    <br />
    delay(2000); // Wait for 2 seconds before the next reading<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7860" target="_blank" title="">8-analog-input.zip</a> (Size: 768 bytes / Downloads: 420)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7861" target="_blank" title="">8-analog-input.ino.merged.zip</a> (Size: 187.19 KB / Downloads: 372)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * Description:<br />
 * This Arduino program reads analog values from four analog input pins (A1, A2, A3, A4)<br />
 * and prints the values to the Serial Monitor. The analog inputs are defined with specific<br />
 * GPIO pins and the program reads the voltage levels from these pins every 2 seconds.<br />
 *<br />
 * Pin Definitions:<br />
 * - A1: GPIO 7<br />
 * - A2: GPIO 6<br />
 * - A3: GPIO 5<br />
 * - A4: GPIO 4<br />
 */<br />
<br />
#define ANALOG_A1 &nbsp;&nbsp;7 &nbsp;&nbsp;// Define GPIO pin for analog input A1<br />
#define ANALOG_A2 &nbsp;&nbsp;6 &nbsp;&nbsp;// Define GPIO pin for analog input A2<br />
#define ANALOG_A3 &nbsp;&nbsp;5 &nbsp;&nbsp;// Define GPIO pin for analog input A3<br />
#define ANALOG_A4 &nbsp;&nbsp;4 &nbsp;&nbsp;// Define GPIO pin for analog input A4<br />
<br />
void setup()<br />
{<br />
    Serial.begin(115200); // Initialize serial communication at 115200 baud rate<br />
    delay(500); // Short delay to allow serial communication to start<br />
<br />
    pinMode(ANALOG_A1, INPUT); // Set GPIO 5 as an input for analog signal A1<br />
    pinMode(ANALOG_A2, INPUT); // Set GPIO 7 as an input for analog signal A2<br />
    pinMode(ANALOG_A3, INPUT); // Set GPIO 6 as an input for analog signal A3<br />
    pinMode(ANALOG_A4, INPUT); // Set GPIO 4 as an input for analog signal A4<br />
}<br />
<br />
void loop()<br />
{<br />
    // Read and print analog values from the defined pins<br />
    Serial.print("A1="); <br />
    Serial.println(analogRead(ANALOG_A1)); // Read and print the value from A1<br />
    Serial.print("A2=");<br />
    Serial.println(analogRead(ANALOG_A2)); // Read and print the value from A2<br />
    Serial.print("A3=");<br />
    Serial.println(analogRead(ANALOG_A3)); // Read and print the value from A3<br />
    Serial.print("A4=");<br />
    Serial.println(analogRead(ANALOG_A4)); // Read and print the value from A4<br />
    <br />
    delay(2000); // Wait for 2 seconds before the next reading<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7860" target="_blank" title="">8-analog-input.zip</a> (Size: 768 bytes / Downloads: 420)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7861" target="_blank" title="">8-analog-input.ino.merged.zip</a> (Size: 187.19 KB / Downloads: 372)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-07 i2c scanner search online devices]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8255</link>
			<pubDate>Mon, 23 Jun 2025 13:40:32 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8255</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>// Made by KinCony IoT: https://www.kincony.com<br />
// This sketch scans two I2C buses and prints all detected device addresses.<br />
// IIC Bus-1: SDA - GPIO48, SCL - GPIO47<br />
// IIC Bus-2: SDA - GPIO12, SCL - GPIO11<br />
<br />
#include &lt;Wire.h&gt;<br />
<br />
// Create two I2C bus objects<br />
TwoWire I2C_BUS1 = TwoWire(0);<br />
TwoWire I2C_BUS2 = TwoWire(1);<br />
<br />
// Scan function for a specific I2C bus<br />
void scanI2CBus(TwoWire &amp;bus, const char* busName) {<br />
  Serial.println();<br />
  Serial.print("Scanning ");<br />
  Serial.print(busName);<br />
  Serial.println(" at 100kHz...");<br />
<br />
  byte error, address;<br />
  int nDevices = 0;<br />
<br />
  for (address = 1; address &lt; 127; address++) {<br />
    bus.beginTransmission(address);<br />
    error = bus.endTransmission();<br />
<br />
    if (error == 0) {<br />
      Serial.print("I2C device found at address 0x");<br />
      if (address &lt; 16)<br />
        Serial.print("0");<br />
      Serial.print(address, HEX);<br />
      Serial.println("  ✓");<br />
      nDevices++;<br />
    } else if (error == 4) {<br />
      Serial.print("Unknown error at address 0x");<br />
      if (address &lt; 16)<br />
        Serial.print("0");<br />
      Serial.println(address, HEX);<br />
    }<br />
  }<br />
<br />
  if (nDevices == 0)<br />
    Serial.println("No I2C devices found.");<br />
  else<br />
    Serial.println("Scan completed.");<br />
}<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  delay(1000); // Wait for serial to initialize<br />
<br />
  // Initialize IIC Bus-1 (GPIO48 = SDA, GPIO47 = SCL) at 100kHz<br />
  I2C_BUS1.begin(48, 47);<br />
<br />
  // Initialize IIC Bus-2 (GPIO12 = SDA, GPIO11 = SCL) at 100kHz<br />
  I2C_BUS2.begin(12, 11);<br />
<br />
  // Start scanning both buses<br />
  scanI2CBus(I2C_BUS1, "IIC Bus-1");<br />
  scanI2CBus(I2C_BUS2, "IIC Bus-2");<br />
}<br />
<br />
void loop() {<br />
  // Nothing to do in the loop<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7858" target="_blank" title="">7-i2c-scanner.zip</a> (Size: 841 bytes / Downloads: 389)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7859" target="_blank" title="">7-i2c-scanner.ino.merged.zip</a> (Size: 192.17 KB / Downloads: 397)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>// Made by KinCony IoT: https://www.kincony.com<br />
// This sketch scans two I2C buses and prints all detected device addresses.<br />
// IIC Bus-1: SDA - GPIO48, SCL - GPIO47<br />
// IIC Bus-2: SDA - GPIO12, SCL - GPIO11<br />
<br />
#include &lt;Wire.h&gt;<br />
<br />
// Create two I2C bus objects<br />
TwoWire I2C_BUS1 = TwoWire(0);<br />
TwoWire I2C_BUS2 = TwoWire(1);<br />
<br />
// Scan function for a specific I2C bus<br />
void scanI2CBus(TwoWire &amp;bus, const char* busName) {<br />
  Serial.println();<br />
  Serial.print("Scanning ");<br />
  Serial.print(busName);<br />
  Serial.println(" at 100kHz...");<br />
<br />
  byte error, address;<br />
  int nDevices = 0;<br />
<br />
  for (address = 1; address &lt; 127; address++) {<br />
    bus.beginTransmission(address);<br />
    error = bus.endTransmission();<br />
<br />
    if (error == 0) {<br />
      Serial.print("I2C device found at address 0x");<br />
      if (address &lt; 16)<br />
        Serial.print("0");<br />
      Serial.print(address, HEX);<br />
      Serial.println("  ✓");<br />
      nDevices++;<br />
    } else if (error == 4) {<br />
      Serial.print("Unknown error at address 0x");<br />
      if (address &lt; 16)<br />
        Serial.print("0");<br />
      Serial.println(address, HEX);<br />
    }<br />
  }<br />
<br />
  if (nDevices == 0)<br />
    Serial.println("No I2C devices found.");<br />
  else<br />
    Serial.println("Scan completed.");<br />
}<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  delay(1000); // Wait for serial to initialize<br />
<br />
  // Initialize IIC Bus-1 (GPIO48 = SDA, GPIO47 = SCL) at 100kHz<br />
  I2C_BUS1.begin(48, 47);<br />
<br />
  // Initialize IIC Bus-2 (GPIO12 = SDA, GPIO11 = SCL) at 100kHz<br />
  I2C_BUS2.begin(12, 11);<br />
<br />
  // Start scanning both buses<br />
  scanI2CBus(I2C_BUS1, "IIC Bus-1");<br />
  scanI2CBus(I2C_BUS2, "IIC Bus-2");<br />
}<br />
<br />
void loop() {<br />
  // Nothing to do in the loop<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7858" target="_blank" title="">7-i2c-scanner.zip</a> (Size: 841 bytes / Downloads: 389)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7859" target="_blank" title="">7-i2c-scanner.ino.merged.zip</a> (Size: 192.17 KB / Downloads: 397)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-06 digital INPUT trigger OUTPUT directly]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8254</link>
			<pubDate>Mon, 23 Jun 2025 13:39:41 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8254</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This Arduino program reads 128 input channels from 8 PCF8575 modules on I2C Bus-2<br />
 * and controls 128 output channels on 8 PCF8575 modules on I2C Bus-1.<br />
 * When an input pin is pulled LOW (connected to GND), the corresponding output relay is turned ON (LOW).<br />
 * Otherwise, the relay is turned OFF (HIGH).<br />
 *<br />
 * I2C Bus-1 (Outputs):<br />
 * - SDA: GPIO 48<br />
 * - SCL: GPIO 47<br />
 * - Output1~16    : 0x27<br />
 * - Output17~32 &nbsp;&nbsp;: 0x26<br />
 * - Output33~48 &nbsp;&nbsp;: 0x23<br />
 * - Output49~64 &nbsp;&nbsp;: 0x22<br />
 * - Output65~80 &nbsp;&nbsp;: 0x25<br />
 * - Output81~96 &nbsp;&nbsp;: 0x24<br />
 * - Output97~112  : 0x21<br />
 * - Output113~128 : 0x20<br />
 *<br />
 * I2C Bus-2 (Inputs):<br />
 * - SDA: GPIO 12<br />
 * - SCL: GPIO 11<br />
 * - Input1~16   &nbsp;&nbsp;: 0x27<br />
 * - Input17~32    : 0x26<br />
 * - Input33~48    : 0x23<br />
 * - Input49~64    : 0x22<br />
 * - Input65~80    : 0x25<br />
 * - Input81~96    : 0x24<br />
 * - Input97~112 &nbsp;&nbsp;: 0x21<br />
 * - Input113~128  : 0x20<br />
 */<br />
<br />
#include &lt;Wire.h&gt;<br />
#include &lt;PCF8575.h&gt;<br />
<br />
// Define two I2C buses for independent input/output communication<br />
TwoWire I2C_Output = TwoWire(0); // Bus 1 - Outputs<br />
TwoWire I2C_Input  = TwoWire(1); // Bus 2 - Inputs<br />
<br />
// === Output PCF8575 instances ===<br />
PCF8575 output_1(0x27, &amp;I2C_Output);  // Output 1~16<br />
PCF8575 output_2(0x26, &amp;I2C_Output);  // Output 17~32<br />
PCF8575 output_3(0x23, &amp;I2C_Output);  // Output 33~48<br />
PCF8575 output_4(0x22, &amp;I2C_Output);  // Output 49~64<br />
PCF8575 output_5(0x25, &amp;I2C_Output);  // Output 65~80<br />
PCF8575 output_6(0x24, &amp;I2C_Output);  // Output 81~96<br />
PCF8575 output_7(0x21, &amp;I2C_Output);  // Output 97~112<br />
PCF8575 output_8(0x20, &amp;I2C_Output);  // Output 113~128<br />
<br />
// === Input PCF8575 instances ===<br />
PCF8575 input_1(0x27, &amp;I2C_Input);  // Input 1~16<br />
PCF8575 input_2(0x26, &amp;I2C_Input);  // Input 17~32<br />
PCF8575 input_3(0x23, &amp;I2C_Input);  // Input 33~48<br />
PCF8575 input_4(0x22, &amp;I2C_Input);  // Input 49~64<br />
PCF8575 input_5(0x25, &amp;I2C_Input);  // Input 65~80<br />
PCF8575 input_6(0x24, &amp;I2C_Input);  // Input 81~96<br />
PCF8575 input_7(0x21, &amp;I2C_Input);  // Input 97~112<br />
PCF8575 input_8(0x20, &amp;I2C_Input);  // Input 113~128<br />
<br />
// === Create arrays for easy loop access ===<br />
PCF8575* inputArray[8] = {<br />
  &amp;input_1, &amp;input_2, &amp;input_3, &amp;input_4,<br />
  &amp;input_5, &amp;input_6, &amp;input_7, &amp;input_8<br />
};<br />
<br />
PCF8575* outputArray[8] = {<br />
  &amp;output_1, &amp;output_2, &amp;output_3, &amp;output_4,<br />
  &amp;output_5, &amp;output_6, &amp;output_7, &amp;output_8<br />
};<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  Serial.println("KinCony 128-Channel Input-Output Mapping Test");<br />
<br />
  // Initialize both I2C buses<br />
  I2C_Output.begin(48, 47);  // SDA: GPIO48, SCL: GPIO47<br />
  I2C_Input.begin(12, 11); &nbsp;&nbsp;// SDA: GPIO12, SCL: GPIO11<br />
<br />
  // Initialize all PCF8575 chips and set initial output states<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    inputArray[i]-&gt;begin(); &nbsp;&nbsp;// Initialize input chip<br />
    outputArray[i]-&gt;begin();  // Initialize output chip<br />
<br />
    // Set all output pins HIGH (relay OFF)<br />
    for (int j = 0; j &lt; 16; j++) {<br />
      outputArray[i]-&gt;write(j, HIGH);<br />
    }<br />
  }<br />
}<br />
<br />
void loop() {<br />
  for (int chip = 0; chip &lt; 8; chip++) {<br />
    for (int pin = 0; pin &lt; 16; pin++) {<br />
      bool inputState = inputArray[chip]-&gt;read(pin);<br />
<br />
      // If input is LOW (button pressed or contact closed), turn ON relay (set output LOW)<br />
      // Otherwise, turn OFF relay (set output HIGH)<br />
      outputArray[chip]-&gt;write(pin, inputState ? HIGH : LOW);<br />
    }<br />
  }<br />
<br />
  delay(200); // Delay to prevent I2C bus flooding<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7856" target="_blank" title="">6-input-trigger-output.zip</a> (Size: 1.33 KB / Downloads: 390)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7857" target="_blank" title="">6-input-trigger-output.ino.merged.zip</a> (Size: 192.36 KB / Downloads: 409)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This Arduino program reads 128 input channels from 8 PCF8575 modules on I2C Bus-2<br />
 * and controls 128 output channels on 8 PCF8575 modules on I2C Bus-1.<br />
 * When an input pin is pulled LOW (connected to GND), the corresponding output relay is turned ON (LOW).<br />
 * Otherwise, the relay is turned OFF (HIGH).<br />
 *<br />
 * I2C Bus-1 (Outputs):<br />
 * - SDA: GPIO 48<br />
 * - SCL: GPIO 47<br />
 * - Output1~16    : 0x27<br />
 * - Output17~32 &nbsp;&nbsp;: 0x26<br />
 * - Output33~48 &nbsp;&nbsp;: 0x23<br />
 * - Output49~64 &nbsp;&nbsp;: 0x22<br />
 * - Output65~80 &nbsp;&nbsp;: 0x25<br />
 * - Output81~96 &nbsp;&nbsp;: 0x24<br />
 * - Output97~112  : 0x21<br />
 * - Output113~128 : 0x20<br />
 *<br />
 * I2C Bus-2 (Inputs):<br />
 * - SDA: GPIO 12<br />
 * - SCL: GPIO 11<br />
 * - Input1~16   &nbsp;&nbsp;: 0x27<br />
 * - Input17~32    : 0x26<br />
 * - Input33~48    : 0x23<br />
 * - Input49~64    : 0x22<br />
 * - Input65~80    : 0x25<br />
 * - Input81~96    : 0x24<br />
 * - Input97~112 &nbsp;&nbsp;: 0x21<br />
 * - Input113~128  : 0x20<br />
 */<br />
<br />
#include &lt;Wire.h&gt;<br />
#include &lt;PCF8575.h&gt;<br />
<br />
// Define two I2C buses for independent input/output communication<br />
TwoWire I2C_Output = TwoWire(0); // Bus 1 - Outputs<br />
TwoWire I2C_Input  = TwoWire(1); // Bus 2 - Inputs<br />
<br />
// === Output PCF8575 instances ===<br />
PCF8575 output_1(0x27, &amp;I2C_Output);  // Output 1~16<br />
PCF8575 output_2(0x26, &amp;I2C_Output);  // Output 17~32<br />
PCF8575 output_3(0x23, &amp;I2C_Output);  // Output 33~48<br />
PCF8575 output_4(0x22, &amp;I2C_Output);  // Output 49~64<br />
PCF8575 output_5(0x25, &amp;I2C_Output);  // Output 65~80<br />
PCF8575 output_6(0x24, &amp;I2C_Output);  // Output 81~96<br />
PCF8575 output_7(0x21, &amp;I2C_Output);  // Output 97~112<br />
PCF8575 output_8(0x20, &amp;I2C_Output);  // Output 113~128<br />
<br />
// === Input PCF8575 instances ===<br />
PCF8575 input_1(0x27, &amp;I2C_Input);  // Input 1~16<br />
PCF8575 input_2(0x26, &amp;I2C_Input);  // Input 17~32<br />
PCF8575 input_3(0x23, &amp;I2C_Input);  // Input 33~48<br />
PCF8575 input_4(0x22, &amp;I2C_Input);  // Input 49~64<br />
PCF8575 input_5(0x25, &amp;I2C_Input);  // Input 65~80<br />
PCF8575 input_6(0x24, &amp;I2C_Input);  // Input 81~96<br />
PCF8575 input_7(0x21, &amp;I2C_Input);  // Input 97~112<br />
PCF8575 input_8(0x20, &amp;I2C_Input);  // Input 113~128<br />
<br />
// === Create arrays for easy loop access ===<br />
PCF8575* inputArray[8] = {<br />
  &amp;input_1, &amp;input_2, &amp;input_3, &amp;input_4,<br />
  &amp;input_5, &amp;input_6, &amp;input_7, &amp;input_8<br />
};<br />
<br />
PCF8575* outputArray[8] = {<br />
  &amp;output_1, &amp;output_2, &amp;output_3, &amp;output_4,<br />
  &amp;output_5, &amp;output_6, &amp;output_7, &amp;output_8<br />
};<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  Serial.println("KinCony 128-Channel Input-Output Mapping Test");<br />
<br />
  // Initialize both I2C buses<br />
  I2C_Output.begin(48, 47);  // SDA: GPIO48, SCL: GPIO47<br />
  I2C_Input.begin(12, 11); &nbsp;&nbsp;// SDA: GPIO12, SCL: GPIO11<br />
<br />
  // Initialize all PCF8575 chips and set initial output states<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    inputArray[i]-&gt;begin(); &nbsp;&nbsp;// Initialize input chip<br />
    outputArray[i]-&gt;begin();  // Initialize output chip<br />
<br />
    // Set all output pins HIGH (relay OFF)<br />
    for (int j = 0; j &lt; 16; j++) {<br />
      outputArray[i]-&gt;write(j, HIGH);<br />
    }<br />
  }<br />
}<br />
<br />
void loop() {<br />
  for (int chip = 0; chip &lt; 8; chip++) {<br />
    for (int pin = 0; pin &lt; 16; pin++) {<br />
      bool inputState = inputArray[chip]-&gt;read(pin);<br />
<br />
      // If input is LOW (button pressed or contact closed), turn ON relay (set output LOW)<br />
      // Otherwise, turn OFF relay (set output HIGH)<br />
      outputArray[chip]-&gt;write(pin, inputState ? HIGH : LOW);<br />
    }<br />
  }<br />
<br />
  delay(200); // Delay to prevent I2C bus flooding<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7856" target="_blank" title="">6-input-trigger-output.zip</a> (Size: 1.33 KB / Downloads: 390)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7857" target="_blank" title="">6-input-trigger-output.ino.merged.zip</a> (Size: 192.36 KB / Downloads: 409)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-05 Ethernet W5500 chip work with TCP Server mode]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8253</link>
			<pubDate>Mon, 23 Jun 2025 13:38:30 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8253</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This Arduino program sets up an ESP32-S3 with a W5500 Ethernet module<br />
 * as a TCP server. It listens on port 4196 and echoes back any string <br />
 * received from a client.<br />
 *<br />
 * Hardware connections:<br />
 * - CLK: GPIO42<br />
 * - MOSI: GPIO43<br />
 * - MISO: GPIO44<br />
 * - CS: GPIO41<br />
 * - RST: GPIO1<br />
 * - INT: GPIO2<br />
 *<br />
 * Static IP address: 192.168.3.55<br />
 * Subnet Mask: 255.255.255.0<br />
 * Gateway: 192.168.3.1<br />
 * DNS: 192.168.3.1<br />
 */<br />
<br />
#include &lt;SPI.h&gt;<br />
#include &lt;Ethernet.h&gt;<br />
<br />
// Define the W5500 Ethernet module pins<br />
#define W5500_CS_PIN  41<br />
#define W5500_RST_PIN 1<br />
#define W5500_INT_PIN 2<br />
#define W5500_CLK_PIN 42<br />
#define W5500_MOSI_PIN 43<br />
#define W5500_MISO_PIN 44<br />
<br />
// MAC address for your Ethernet shield (must be unique on your network)<br />
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };<br />
<br />
// Static IP address configuration<br />
IPAddress ip(192, 168, 3, 55);     &nbsp;&nbsp;// Static IP address<br />
IPAddress subnet(255, 255, 255, 0); &nbsp;&nbsp;// Subnet mask<br />
IPAddress gateway(192, 168, 3, 1);    // Default gateway<br />
IPAddress dns(192, 168, 3, 1);        // DNS server address<br />
<br />
// Create an EthernetServer object to handle TCP connections<br />
EthernetServer server(4196);<br />
<br />
void setup() {<br />
  // Initialize serial communication<br />
  Serial.begin(115200);<br />
  while (!Serial) {<br />
    ; // Wait for serial port to connect<br />
  }<br />
<br />
  // Initialize the W5500 module<br />
  pinMode(W5500_RST_PIN, OUTPUT);<br />
  pinMode(W5500_INT_PIN, INPUT);<br />
  digitalWrite(W5500_RST_PIN, LOW);  // Reset the W5500 module<br />
  delay(100);                     &nbsp;&nbsp;// Wait for reset to complete<br />
  digitalWrite(W5500_RST_PIN, HIGH); // Release reset<br />
<br />
  // Initialize SPI with the correct pin definitions<br />
  SPI.begin(W5500_CLK_PIN, W5500_MISO_PIN, W5500_MOSI_PIN);<br />
<br />
  // Set up the Ethernet library with W5500-specific pins<br />
  Ethernet.init(W5500_CS_PIN);<br />
<br />
  // Start the Ethernet connection with static IP configuration<br />
  Ethernet.begin(mac, ip, dns, gateway, subnet);<br />
<br />
  // Print the IP address to the serial monitor<br />
  Serial.print("IP Address: ");<br />
  Serial.println(Ethernet.localIP());<br />
<br />
  // Start listening for incoming TCP connections<br />
  server.begin();<br />
}<br />
<br />
void loop() {<br />
  // Check for incoming client connections<br />
  EthernetClient client = server.available();<br />
  if (client) {<br />
    Serial.println("New client connected");<br />
<br />
    // Read data from the client and echo it back<br />
    while (client.connected()) {<br />
      if (client.available()) {<br />
        char c = client.read();<br />
        server.write(c);<br />
      }<br />
    }<br />
<br />
    // Close the connection when done<br />
    client.stop();<br />
    Serial.println("Client disconnected");<br />
  }<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7854" target="_blank" title="">5-Ethernet-W5500.zip</a> (Size: 1.23 KB / Downloads: 385)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7855" target="_blank" title="">5-Ethernet-W5500.ino.merged.zip</a> (Size: 191.08 KB / Downloads: 386)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This Arduino program sets up an ESP32-S3 with a W5500 Ethernet module<br />
 * as a TCP server. It listens on port 4196 and echoes back any string <br />
 * received from a client.<br />
 *<br />
 * Hardware connections:<br />
 * - CLK: GPIO42<br />
 * - MOSI: GPIO43<br />
 * - MISO: GPIO44<br />
 * - CS: GPIO41<br />
 * - RST: GPIO1<br />
 * - INT: GPIO2<br />
 *<br />
 * Static IP address: 192.168.3.55<br />
 * Subnet Mask: 255.255.255.0<br />
 * Gateway: 192.168.3.1<br />
 * DNS: 192.168.3.1<br />
 */<br />
<br />
#include &lt;SPI.h&gt;<br />
#include &lt;Ethernet.h&gt;<br />
<br />
// Define the W5500 Ethernet module pins<br />
#define W5500_CS_PIN  41<br />
#define W5500_RST_PIN 1<br />
#define W5500_INT_PIN 2<br />
#define W5500_CLK_PIN 42<br />
#define W5500_MOSI_PIN 43<br />
#define W5500_MISO_PIN 44<br />
<br />
// MAC address for your Ethernet shield (must be unique on your network)<br />
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };<br />
<br />
// Static IP address configuration<br />
IPAddress ip(192, 168, 3, 55);     &nbsp;&nbsp;// Static IP address<br />
IPAddress subnet(255, 255, 255, 0); &nbsp;&nbsp;// Subnet mask<br />
IPAddress gateway(192, 168, 3, 1);    // Default gateway<br />
IPAddress dns(192, 168, 3, 1);        // DNS server address<br />
<br />
// Create an EthernetServer object to handle TCP connections<br />
EthernetServer server(4196);<br />
<br />
void setup() {<br />
  // Initialize serial communication<br />
  Serial.begin(115200);<br />
  while (!Serial) {<br />
    ; // Wait for serial port to connect<br />
  }<br />
<br />
  // Initialize the W5500 module<br />
  pinMode(W5500_RST_PIN, OUTPUT);<br />
  pinMode(W5500_INT_PIN, INPUT);<br />
  digitalWrite(W5500_RST_PIN, LOW);  // Reset the W5500 module<br />
  delay(100);                     &nbsp;&nbsp;// Wait for reset to complete<br />
  digitalWrite(W5500_RST_PIN, HIGH); // Release reset<br />
<br />
  // Initialize SPI with the correct pin definitions<br />
  SPI.begin(W5500_CLK_PIN, W5500_MISO_PIN, W5500_MOSI_PIN);<br />
<br />
  // Set up the Ethernet library with W5500-specific pins<br />
  Ethernet.init(W5500_CS_PIN);<br />
<br />
  // Start the Ethernet connection with static IP configuration<br />
  Ethernet.begin(mac, ip, dns, gateway, subnet);<br />
<br />
  // Print the IP address to the serial monitor<br />
  Serial.print("IP Address: ");<br />
  Serial.println(Ethernet.localIP());<br />
<br />
  // Start listening for incoming TCP connections<br />
  server.begin();<br />
}<br />
<br />
void loop() {<br />
  // Check for incoming client connections<br />
  EthernetClient client = server.available();<br />
  if (client) {<br />
    Serial.println("New client connected");<br />
<br />
    // Read data from the client and echo it back<br />
    while (client.connected()) {<br />
      if (client.available()) {<br />
        char c = client.read();<br />
        server.write(c);<br />
      }<br />
    }<br />
<br />
    // Close the connection when done<br />
    client.stop();<br />
    Serial.println("Client disconnected");<br />
  }<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7854" target="_blank" title="">5-Ethernet-W5500.zip</a> (Size: 1.23 KB / Downloads: 385)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7855" target="_blank" title="">5-Ethernet-W5500.ino.merged.zip</a> (Size: 191.08 KB / Downloads: 386)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-04 Read free GPIO state]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8252</link>
			<pubDate>Mon, 23 Jun 2025 13:37:24 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8252</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * GPIO Status Monitoring<br />
 *<br />
 * This program monitors the status (high or low) of multiple GPIO pins on the ESP32-S3.<br />
 * It prints the status of the pins to the serial monitor whenever a change is detected.<br />
 *<br />
 * GPIO Pins Monitored:<br />
 * - GPIO 8<br />
 * - GPIO 9<br />
 * - GPIO 10<br />
 * - GPIO 15<br />
 * - GPIO 16<br />
 * - GPIO 17<br />
 * - GPIO 18<br />
 * - GPIO 0<br />
 *<br />
 * Hardware Requirements:<br />
 * - Connect the pins to appropriate devices or pull them to HIGH/LOW for testing<br />
 */<br />
<br />
#define GPIO_PIN_8 8<br />
#define GPIO_PIN_9 9<br />
#define GPIO_PIN_10 10<br />
#define GPIO_PIN_15 15<br />
#define GPIO_PIN_16 16<br />
#define GPIO_PIN_17 17<br />
#define GPIO_PIN_18 18<br />
#define GPIO_PIN_0 0<br />
<br />
// Store the previous state of the GPIO pins<br />
bool prevState[8] = {false, false, false, false, false, false, false, false};<br />
<br />
void setup() {<br />
  // Initialize serial communication for debugging purposes<br />
  Serial.begin(115200); // Initialize the serial monitor at 115200 baud<br />
  while (!Serial);      // Wait for the serial monitor to open<br />
<br />
  // Initialize GPIO pins as inputs<br />
  pinMode(GPIO_PIN_8, INPUT);<br />
  pinMode(GPIO_PIN_9, INPUT);<br />
  pinMode(GPIO_PIN_10, INPUT);<br />
  pinMode(GPIO_PIN_15, INPUT);<br />
  pinMode(GPIO_PIN_16, INPUT);<br />
  pinMode(GPIO_PIN_17, INPUT);<br />
  pinMode(GPIO_PIN_18, INPUT);<br />
  pinMode(GPIO_PIN_0, INPUT);<br />
<br />
  Serial.println("GPIO Status Monitoring Started");<br />
}<br />
<br />
void loop() {<br />
  // Read the current state of each GPIO pin<br />
  bool currentState[8];<br />
  currentState[0] = digitalRead(GPIO_PIN_8);<br />
  currentState[1] = digitalRead(GPIO_PIN_9);<br />
  currentState[2] = digitalRead(GPIO_PIN_10);<br />
  currentState[3] = digitalRead(GPIO_PIN_15);<br />
  currentState[4] = digitalRead(GPIO_PIN_16);<br />
  currentState[5] = digitalRead(GPIO_PIN_17);<br />
  currentState[6] = digitalRead(GPIO_PIN_18);<br />
  currentState[7] = digitalRead(GPIO_PIN_0);<br />
<br />
  // Check for changes in GPIO pin states<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    if (currentState[i] != prevState[i]) {<br />
      // Print the pin number and its new state if it has changed<br />
      Serial.print("GPIO ");<br />
      Serial.print(i == 0 ? GPIO_PIN_8 : <br />
                 &nbsp;&nbsp;i == 1 ? GPIO_PIN_9 : <br />
                 &nbsp;&nbsp;i == 2 ? GPIO_PIN_10 : <br />
                 &nbsp;&nbsp;i == 3 ? GPIO_PIN_15 : <br />
                 &nbsp;&nbsp;i == 4 ? GPIO_PIN_16 : <br />
                 &nbsp;&nbsp;i == 5 ? GPIO_PIN_17 : <br />
                 &nbsp;&nbsp;i == 6 ? GPIO_PIN_18 : GPIO_PIN_0);<br />
      Serial.print(" changed to ");<br />
      Serial.println(currentState[i] ? "HIGH" : "LOW");<br />
      // Update the previous state<br />
      prevState[i] = currentState[i];<br />
    }<br />
  }<br />
<br />
  // Delay to avoid flooding the serial monitor<br />
  delay(100); // Adjust the delay as needed<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7852" target="_blank" title="">4-free-gpio-state.zip</a> (Size: 1.04 KB / Downloads: 375)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7853" target="_blank" title="">4-free-gpio-state.ino.merged.zip</a> (Size: 181.77 KB / Downloads: 393)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * GPIO Status Monitoring<br />
 *<br />
 * This program monitors the status (high or low) of multiple GPIO pins on the ESP32-S3.<br />
 * It prints the status of the pins to the serial monitor whenever a change is detected.<br />
 *<br />
 * GPIO Pins Monitored:<br />
 * - GPIO 8<br />
 * - GPIO 9<br />
 * - GPIO 10<br />
 * - GPIO 15<br />
 * - GPIO 16<br />
 * - GPIO 17<br />
 * - GPIO 18<br />
 * - GPIO 0<br />
 *<br />
 * Hardware Requirements:<br />
 * - Connect the pins to appropriate devices or pull them to HIGH/LOW for testing<br />
 */<br />
<br />
#define GPIO_PIN_8 8<br />
#define GPIO_PIN_9 9<br />
#define GPIO_PIN_10 10<br />
#define GPIO_PIN_15 15<br />
#define GPIO_PIN_16 16<br />
#define GPIO_PIN_17 17<br />
#define GPIO_PIN_18 18<br />
#define GPIO_PIN_0 0<br />
<br />
// Store the previous state of the GPIO pins<br />
bool prevState[8] = {false, false, false, false, false, false, false, false};<br />
<br />
void setup() {<br />
  // Initialize serial communication for debugging purposes<br />
  Serial.begin(115200); // Initialize the serial monitor at 115200 baud<br />
  while (!Serial);      // Wait for the serial monitor to open<br />
<br />
  // Initialize GPIO pins as inputs<br />
  pinMode(GPIO_PIN_8, INPUT);<br />
  pinMode(GPIO_PIN_9, INPUT);<br />
  pinMode(GPIO_PIN_10, INPUT);<br />
  pinMode(GPIO_PIN_15, INPUT);<br />
  pinMode(GPIO_PIN_16, INPUT);<br />
  pinMode(GPIO_PIN_17, INPUT);<br />
  pinMode(GPIO_PIN_18, INPUT);<br />
  pinMode(GPIO_PIN_0, INPUT);<br />
<br />
  Serial.println("GPIO Status Monitoring Started");<br />
}<br />
<br />
void loop() {<br />
  // Read the current state of each GPIO pin<br />
  bool currentState[8];<br />
  currentState[0] = digitalRead(GPIO_PIN_8);<br />
  currentState[1] = digitalRead(GPIO_PIN_9);<br />
  currentState[2] = digitalRead(GPIO_PIN_10);<br />
  currentState[3] = digitalRead(GPIO_PIN_15);<br />
  currentState[4] = digitalRead(GPIO_PIN_16);<br />
  currentState[5] = digitalRead(GPIO_PIN_17);<br />
  currentState[6] = digitalRead(GPIO_PIN_18);<br />
  currentState[7] = digitalRead(GPIO_PIN_0);<br />
<br />
  // Check for changes in GPIO pin states<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    if (currentState[i] != prevState[i]) {<br />
      // Print the pin number and its new state if it has changed<br />
      Serial.print("GPIO ");<br />
      Serial.print(i == 0 ? GPIO_PIN_8 : <br />
                 &nbsp;&nbsp;i == 1 ? GPIO_PIN_9 : <br />
                 &nbsp;&nbsp;i == 2 ? GPIO_PIN_10 : <br />
                 &nbsp;&nbsp;i == 3 ? GPIO_PIN_15 : <br />
                 &nbsp;&nbsp;i == 4 ? GPIO_PIN_16 : <br />
                 &nbsp;&nbsp;i == 5 ? GPIO_PIN_17 : <br />
                 &nbsp;&nbsp;i == 6 ? GPIO_PIN_18 : GPIO_PIN_0);<br />
      Serial.print(" changed to ");<br />
      Serial.println(currentState[i] ? "HIGH" : "LOW");<br />
      // Update the previous state<br />
      prevState[i] = currentState[i];<br />
    }<br />
  }<br />
<br />
  // Delay to avoid flooding the serial monitor<br />
  delay(100); // Adjust the delay as needed<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7852" target="_blank" title="">4-free-gpio-state.zip</a> (Size: 1.04 KB / Downloads: 375)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7853" target="_blank" title="">4-free-gpio-state.ino.merged.zip</a> (Size: 181.77 KB / Downloads: 393)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-03 RS485 communication test]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8251</link>
			<pubDate>Mon, 23 Jun 2025 13:36:27 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8251</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * RS485 Communication Test with Direction Control (SP3485EEN)<br />
 *<br />
 * This program is a simple test for RS485 communication using ESP32-S3.<br />
 * It will send a message over RS485 and then read incoming messages.<br />
 * The TXD pin is defined as GPIO 13, RXD is GPIO 21, and EN is GPIO 14.<br />
 */<br />
<br />
#include &lt;HardwareSerial.h&gt;<br />
<br />
// Define RS485 pins<br />
#define RS485_RXD 21   &nbsp;&nbsp;// RS485 Receive<br />
#define RS485_TXD 13   &nbsp;&nbsp;// RS485 Transmit<br />
#define RS485_EN  14   &nbsp;&nbsp;// RS485 Direction control (High: Send, Low: Receive)<br />
<br />
// Create a hardware serial object on UART1<br />
HardwareSerial rs485Serial(1);<br />
<br />
void setup() {<br />
  // Start serial communication for debugging<br />
  Serial.begin(115200);<br />
  while (!Serial);<br />
<br />
  // Set RS485 direction control pin<br />
  pinMode(RS485_EN, OUTPUT);<br />
  digitalWrite(RS485_EN, LOW); // Start in receive mode<br />
<br />
  // Initialize RS485 serial communication<br />
  rs485Serial.begin(9600, SERIAL_8N1, RS485_RXD, RS485_TXD);<br />
<br />
  Serial.println("RS485 Test Start (with direction control)");<br />
}<br />
<br />
void loop() {<br />
  // Prepare the message to send<br />
  String message = "Hello from KinCony T128M!";<br />
  <br />
  // Switch to transmit mode<br />
  digitalWrite(RS485_EN, HIGH);<br />
  delay(2); // Short delay to allow driver to switch<br />
  <br />
  // Send the message<br />
  rs485Serial.println(message);<br />
  rs485Serial.flush(); // Wait for transmission to complete<br />
  <br />
  // Switch back to receive mode<br />
  digitalWrite(RS485_EN, LOW);<br />
  <br />
  Serial.println("Message sent. Waiting for response...");<br />
<br />
  // Wait for a response (up to 1 second)<br />
  unsigned long startTime = millis();<br />
  while (millis() - startTime &lt; 1000) {<br />
    if (rs485Serial.available()) {<br />
      String receivedMessage = "";<br />
      while (rs485Serial.available()) {<br />
        char c = rs485Serial.read();<br />
        receivedMessage += c;<br />
      }<br />
      // Print the received message<br />
      Serial.print("Received: ");<br />
      Serial.println(receivedMessage);<br />
      break;<br />
    }<br />
  }<br />
<br />
  // Wait before sending the next message<br />
  delay(2000);<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7850" target="_blank" title="">3-RS485-Test.zip</a> (Size: 1.02 KB / Downloads: 398)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7851" target="_blank" title="">3-RS485-Test.ino.merged.zip</a> (Size: 186.66 KB / Downloads: 409)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * RS485 Communication Test with Direction Control (SP3485EEN)<br />
 *<br />
 * This program is a simple test for RS485 communication using ESP32-S3.<br />
 * It will send a message over RS485 and then read incoming messages.<br />
 * The TXD pin is defined as GPIO 13, RXD is GPIO 21, and EN is GPIO 14.<br />
 */<br />
<br />
#include &lt;HardwareSerial.h&gt;<br />
<br />
// Define RS485 pins<br />
#define RS485_RXD 21   &nbsp;&nbsp;// RS485 Receive<br />
#define RS485_TXD 13   &nbsp;&nbsp;// RS485 Transmit<br />
#define RS485_EN  14   &nbsp;&nbsp;// RS485 Direction control (High: Send, Low: Receive)<br />
<br />
// Create a hardware serial object on UART1<br />
HardwareSerial rs485Serial(1);<br />
<br />
void setup() {<br />
  // Start serial communication for debugging<br />
  Serial.begin(115200);<br />
  while (!Serial);<br />
<br />
  // Set RS485 direction control pin<br />
  pinMode(RS485_EN, OUTPUT);<br />
  digitalWrite(RS485_EN, LOW); // Start in receive mode<br />
<br />
  // Initialize RS485 serial communication<br />
  rs485Serial.begin(9600, SERIAL_8N1, RS485_RXD, RS485_TXD);<br />
<br />
  Serial.println("RS485 Test Start (with direction control)");<br />
}<br />
<br />
void loop() {<br />
  // Prepare the message to send<br />
  String message = "Hello from KinCony T128M!";<br />
  <br />
  // Switch to transmit mode<br />
  digitalWrite(RS485_EN, HIGH);<br />
  delay(2); // Short delay to allow driver to switch<br />
  <br />
  // Send the message<br />
  rs485Serial.println(message);<br />
  rs485Serial.flush(); // Wait for transmission to complete<br />
  <br />
  // Switch back to receive mode<br />
  digitalWrite(RS485_EN, LOW);<br />
  <br />
  Serial.println("Message sent. Waiting for response...");<br />
<br />
  // Wait for a response (up to 1 second)<br />
  unsigned long startTime = millis();<br />
  while (millis() - startTime &lt; 1000) {<br />
    if (rs485Serial.available()) {<br />
      String receivedMessage = "";<br />
      while (rs485Serial.available()) {<br />
        char c = rs485Serial.read();<br />
        receivedMessage += c;<br />
      }<br />
      // Print the received message<br />
      Serial.print("Received: ");<br />
      Serial.println(receivedMessage);<br />
      break;<br />
    }<br />
  }<br />
<br />
  // Wait before sending the next message<br />
  delay(2000);<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7850" target="_blank" title="">3-RS485-Test.zip</a> (Size: 1.02 KB / Downloads: 398)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7851" target="_blank" title="">3-RS485-Test.ino.merged.zip</a> (Size: 186.66 KB / Downloads: 409)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-02 Read digital input ports state]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8250</link>
			<pubDate>Mon, 23 Jun 2025 13:35:22 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8250</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * Description:<br />
 * This Arduino program reads the state of 128 digital inputs using 8 PCF8575 I/O expanders.<br />
 * Each PCF8575 reads 16 input channels. The input states are printed to the Serial Monitor<br />
 * as binary strings grouped by chip.<br />
 *<br />
 * I2C Pin Definitions:<br />
 * - SDA: GPIO 12<br />
 * - SCL: GPIO 11<br />
 *<br />
 * PCF8575 Addresses:<br />
 * - Input  1~16 &nbsp;&nbsp;: 0x27<br />
 * - Input 17~32  : 0x26<br />
 * - Input 33~48  : 0x23<br />
 * - Input 49~64  : 0x22<br />
 * - Input 65~80  : 0x25<br />
 * - Input 81~96  : 0x24<br />
 * - Input 97~112 : 0x21<br />
 * - Input113~128 : 0x20<br />
 *<br />
 * Input Status Legend:<br />
 * - 0: ON (Active)<br />
 * - 1: OFF (Inactive / Pulled HIGH)<br />
 */<br />
<br />
#include &lt;Wire.h&gt;<br />
#include &lt;PCF8575.h&gt;<br />
<br />
// Define I2C pins<br />
#define I2C_SDA 12<br />
#define I2C_SCL 11<br />
<br />
// Define PCF8575 I2C addresses<br />
PCF8575 pcf_inputs[8] = {<br />
  PCF8575(0x27), // Input 1-16<br />
  PCF8575(0x26), // Input 17-32<br />
  PCF8575(0x23), // Input 33-48<br />
  PCF8575(0x22), // Input 49-64<br />
  PCF8575(0x25), // Input 65-80<br />
  PCF8575(0x24), // Input 81-96<br />
  PCF8575(0x21), // Input 97-112<br />
  PCF8575(0x20)  // Input 113-128<br />
};<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  Wire.begin(I2C_SDA, I2C_SCL);<br />
<br />
  Serial.println("KinCony F128 128 channel input state  0:ON  1:OFF");<br />
<br />
  // Initialize all PCF8575 modules<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    pcf_inputs[i].begin();<br />
  }<br />
}<br />
<br />
void loop() {<br />
  // Iterate through all 8 chips<br />
  for (int chip = 0; chip &lt; 8; chip++) {<br />
    Serial.print("Input ");<br />
    Serial.print((chip * 16) + 1);<br />
    Serial.print("~");<br />
    Serial.print((chip + 1) * 16);<br />
    Serial.print(": ");<br />
<br />
    // Read and print the state of all 16 pins on current chip<br />
    for (int pin = 0; pin &lt; 16; pin++) {<br />
      int state = pcf_inputs[chip].read(pin);<br />
      Serial.print(state);<br />
    }<br />
<br />
    Serial.println();<br />
  }<br />
<br />
  Serial.println("--------------------------------------------------");<br />
  delay(1000); // Delay 1 second between reads<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7848" target="_blank" title="">2-digital-input.zip</a> (Size: 1,019 bytes / Downloads: 381)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7849" target="_blank" title="">2-digital-input.ino.merged.zip</a> (Size: 192.36 KB / Downloads: 399)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * Description:<br />
 * This Arduino program reads the state of 128 digital inputs using 8 PCF8575 I/O expanders.<br />
 * Each PCF8575 reads 16 input channels. The input states are printed to the Serial Monitor<br />
 * as binary strings grouped by chip.<br />
 *<br />
 * I2C Pin Definitions:<br />
 * - SDA: GPIO 12<br />
 * - SCL: GPIO 11<br />
 *<br />
 * PCF8575 Addresses:<br />
 * - Input  1~16 &nbsp;&nbsp;: 0x27<br />
 * - Input 17~32  : 0x26<br />
 * - Input 33~48  : 0x23<br />
 * - Input 49~64  : 0x22<br />
 * - Input 65~80  : 0x25<br />
 * - Input 81~96  : 0x24<br />
 * - Input 97~112 : 0x21<br />
 * - Input113~128 : 0x20<br />
 *<br />
 * Input Status Legend:<br />
 * - 0: ON (Active)<br />
 * - 1: OFF (Inactive / Pulled HIGH)<br />
 */<br />
<br />
#include &lt;Wire.h&gt;<br />
#include &lt;PCF8575.h&gt;<br />
<br />
// Define I2C pins<br />
#define I2C_SDA 12<br />
#define I2C_SCL 11<br />
<br />
// Define PCF8575 I2C addresses<br />
PCF8575 pcf_inputs[8] = {<br />
  PCF8575(0x27), // Input 1-16<br />
  PCF8575(0x26), // Input 17-32<br />
  PCF8575(0x23), // Input 33-48<br />
  PCF8575(0x22), // Input 49-64<br />
  PCF8575(0x25), // Input 65-80<br />
  PCF8575(0x24), // Input 81-96<br />
  PCF8575(0x21), // Input 97-112<br />
  PCF8575(0x20)  // Input 113-128<br />
};<br />
<br />
void setup() {<br />
  Serial.begin(115200);<br />
  Wire.begin(I2C_SDA, I2C_SCL);<br />
<br />
  Serial.println("KinCony F128 128 channel input state  0:ON  1:OFF");<br />
<br />
  // Initialize all PCF8575 modules<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    pcf_inputs[i].begin();<br />
  }<br />
}<br />
<br />
void loop() {<br />
  // Iterate through all 8 chips<br />
  for (int chip = 0; chip &lt; 8; chip++) {<br />
    Serial.print("Input ");<br />
    Serial.print((chip * 16) + 1);<br />
    Serial.print("~");<br />
    Serial.print((chip + 1) * 16);<br />
    Serial.print(": ");<br />
<br />
    // Read and print the state of all 16 pins on current chip<br />
    for (int pin = 0; pin &lt; 16; pin++) {<br />
      int state = pcf_inputs[chip].read(pin);<br />
      Serial.print(state);<br />
    }<br />
<br />
    Serial.println();<br />
  }<br />
<br />
  Serial.println("--------------------------------------------------");<br />
  delay(1000); // Delay 1 second between reads<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7848" target="_blank" title="">2-digital-input.zip</a> (Size: 1,019 bytes / Downloads: 381)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7849" target="_blank" title="">2-digital-input.ino.merged.zip</a> (Size: 192.36 KB / Downloads: 399)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[arduino code examples for T128M]-01 Turn ON/OFF OUTPUT]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8249</link>
			<pubDate>Mon, 23 Jun 2025 13:33:41 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8249</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This program controls 128 outputs using 8 PCF8575 I/O expanders.<br />
 * It sequentially turns on outputs 1 to 128, then turns them off from 128 to 1, in a loop.<br />
 * <br />
 * I2C Pin Definitions:<br />
 * - SDA: GPIO 48<br />
 * - SCL: GPIO 47<br />
 *<br />
 * PCF8575 Addresses:<br />
 * - Output  1~16 &nbsp;&nbsp;: 0x27<br />
 * - Output 17~32  : 0x26<br />
 * - Output 33~48  : 0x23<br />
 * - Output 49~64  : 0x22<br />
 * - Output 65~80  : 0x25<br />
 * - Output 81~96  : 0x24<br />
 * - Output 97~112 : 0x21<br />
 * - Output113~128 : 0x20<br />
 *<br />
 * Delay Time:<br />
 * - 200 milliseconds between switching outputs<br />
 */<br />
<br />
#include &lt;Wire.h&gt;        // Include the Wire library for I2C communication<br />
#include &lt;PCF8575.h&gt;   &nbsp;&nbsp;// Include the PCF8575 library<br />
<br />
#define SDA_PIN 48     &nbsp;&nbsp;// Define SDA pin<br />
#define SCL_PIN 47     &nbsp;&nbsp;// Define SCL pin<br />
#define DELAY_TIME 50 &nbsp;&nbsp;// Delay between operations in milliseconds<br />
<br />
// Create PCF8575 objects for each chip<br />
PCF8575 pcf_1(0x27); // output 1-16<br />
PCF8575 pcf_2(0x26); // output 17-32<br />
PCF8575 pcf_3(0x23); // output 33-48<br />
PCF8575 pcf_4(0x22); // output 49-64<br />
PCF8575 pcf_5(0x25); // output 65-80<br />
PCF8575 pcf_6(0x24); // output 81-96<br />
PCF8575 pcf_7(0x21); // output 97-112<br />
PCF8575 pcf_8(0x20); // output 113-128<br />
<br />
// Array of pointers to PCF8575 objects<br />
PCF8575* pcfArray[8] = {<br />
  &amp;pcf_1, &amp;pcf_2, &amp;pcf_3, &amp;pcf_4,<br />
  &amp;pcf_5, &amp;pcf_6, &amp;pcf_7, &amp;pcf_8<br />
};<br />
<br />
void setup() {<br />
  Wire.begin(SDA_PIN, SCL_PIN);  // Initialize I2C with specified pins<br />
  Serial.begin(115200);<br />
  Serial.println("PCF8575 128-Channel Output Control Starting...");<br />
<br />
  // Initialize all PCF8575 modules and set all pins to HIGH (OFF)<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    pcfArray[i]-&gt;begin();<br />
    for (int j = 0; j &lt; 16; j++) {<br />
      pcfArray[i]-&gt;write(j, HIGH);  // Turn off all outputs initially<br />
    }<br />
  }<br />
}<br />
<br />
void loop() {<br />
  // Turn ON outputs from 1 to 128 (LOW)<br />
  for (int channel = 0; channel &lt; 128; channel++) {<br />
    int chipIndex = channel / 16;        // Which PCF8575 (0 to 7)<br />
    int pinIndex = channel % 16;       &nbsp;&nbsp;// Which pin on that PCF8575 (0 to 15)<br />
    pcfArray[chipIndex]-&gt;write(pinIndex, LOW); // Turn ON the output<br />
    delay(DELAY_TIME);<br />
  }<br />
<br />
  // Turn OFF outputs from 128 to 1 (HIGH)<br />
  for (int channel = 127; channel &gt;= 0; channel--) {<br />
    int chipIndex = channel / 16;<br />
    int pinIndex = channel % 16;<br />
    pcfArray[chipIndex]-&gt;write(pinIndex, HIGH); // Turn OFF the output<br />
    delay(DELAY_TIME);<br />
  }<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7846" target="_blank" title="">1-output.zip</a> (Size: 1.12 KB / Downloads: 380)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7847" target="_blank" title="">1-output.ino.merged.zip</a> (Size: 181.63 KB / Downloads: 396)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/*<br />
 * Made by KinCony IoT: https://www.kincony.com<br />
 *<br />
 * This program controls 128 outputs using 8 PCF8575 I/O expanders.<br />
 * It sequentially turns on outputs 1 to 128, then turns them off from 128 to 1, in a loop.<br />
 * <br />
 * I2C Pin Definitions:<br />
 * - SDA: GPIO 48<br />
 * - SCL: GPIO 47<br />
 *<br />
 * PCF8575 Addresses:<br />
 * - Output  1~16 &nbsp;&nbsp;: 0x27<br />
 * - Output 17~32  : 0x26<br />
 * - Output 33~48  : 0x23<br />
 * - Output 49~64  : 0x22<br />
 * - Output 65~80  : 0x25<br />
 * - Output 81~96  : 0x24<br />
 * - Output 97~112 : 0x21<br />
 * - Output113~128 : 0x20<br />
 *<br />
 * Delay Time:<br />
 * - 200 milliseconds between switching outputs<br />
 */<br />
<br />
#include &lt;Wire.h&gt;        // Include the Wire library for I2C communication<br />
#include &lt;PCF8575.h&gt;   &nbsp;&nbsp;// Include the PCF8575 library<br />
<br />
#define SDA_PIN 48     &nbsp;&nbsp;// Define SDA pin<br />
#define SCL_PIN 47     &nbsp;&nbsp;// Define SCL pin<br />
#define DELAY_TIME 50 &nbsp;&nbsp;// Delay between operations in milliseconds<br />
<br />
// Create PCF8575 objects for each chip<br />
PCF8575 pcf_1(0x27); // output 1-16<br />
PCF8575 pcf_2(0x26); // output 17-32<br />
PCF8575 pcf_3(0x23); // output 33-48<br />
PCF8575 pcf_4(0x22); // output 49-64<br />
PCF8575 pcf_5(0x25); // output 65-80<br />
PCF8575 pcf_6(0x24); // output 81-96<br />
PCF8575 pcf_7(0x21); // output 97-112<br />
PCF8575 pcf_8(0x20); // output 113-128<br />
<br />
// Array of pointers to PCF8575 objects<br />
PCF8575* pcfArray[8] = {<br />
  &amp;pcf_1, &amp;pcf_2, &amp;pcf_3, &amp;pcf_4,<br />
  &amp;pcf_5, &amp;pcf_6, &amp;pcf_7, &amp;pcf_8<br />
};<br />
<br />
void setup() {<br />
  Wire.begin(SDA_PIN, SCL_PIN);  // Initialize I2C with specified pins<br />
  Serial.begin(115200);<br />
  Serial.println("PCF8575 128-Channel Output Control Starting...");<br />
<br />
  // Initialize all PCF8575 modules and set all pins to HIGH (OFF)<br />
  for (int i = 0; i &lt; 8; i++) {<br />
    pcfArray[i]-&gt;begin();<br />
    for (int j = 0; j &lt; 16; j++) {<br />
      pcfArray[i]-&gt;write(j, HIGH);  // Turn off all outputs initially<br />
    }<br />
  }<br />
}<br />
<br />
void loop() {<br />
  // Turn ON outputs from 1 to 128 (LOW)<br />
  for (int channel = 0; channel &lt; 128; channel++) {<br />
    int chipIndex = channel / 16;        // Which PCF8575 (0 to 7)<br />
    int pinIndex = channel % 16;       &nbsp;&nbsp;// Which pin on that PCF8575 (0 to 15)<br />
    pcfArray[chipIndex]-&gt;write(pinIndex, LOW); // Turn ON the output<br />
    delay(DELAY_TIME);<br />
  }<br />
<br />
  // Turn OFF outputs from 128 to 1 (HIGH)<br />
  for (int channel = 127; channel &gt;= 0; channel--) {<br />
    int chipIndex = channel / 16;<br />
    int pinIndex = channel % 16;<br />
    pcfArray[chipIndex]-&gt;write(pinIndex, HIGH); // Turn OFF the output<br />
    delay(DELAY_TIME);<br />
  }<br />
}</code></div></div> arduino ino file download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7846" target="_blank" title="">1-output.zip</a> (Size: 1.12 KB / Downloads: 380)
<!-- end: postbit_attachments_attachment --><br />
BIN file (you can use esp32 download tool download to ESP32-S3 with address 0x0 then directly to use) download: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7847" target="_blank" title="">1-output.ino.merged.zip</a> (Size: 181.63 KB / Downloads: 396)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[T128M ESPHome yaml for home assistant]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8248</link>
			<pubDate>Mon, 23 Jun 2025 13:32:09 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8248</guid>
			<description><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>esphome:<br />
  name: t128m<br />
  friendly_name: t128m<br />
<br />
esp32:<br />
  board: esp32-s3-devkitc-1<br />
  framework:<br />
    type: esp-idf<br />
<br />
# Enable logging<br />
logger:<br />
  hardware_uart: USB_SERIAL_JTAG<br />
# Enable Home Assistant API<br />
api:<br />
<br />
ethernet:<br />
  type: W5500<br />
  clk_pin: GPIO42<br />
  mosi_pin: GPIO43<br />
  miso_pin: GPIO44<br />
  cs_pin: GPIO41<br />
  interrupt_pin: GPIO2<br />
  reset_pin: GPIO1<br />
<br />
i2c:<br />
 &nbsp;&nbsp;- id: bus_a<br />
   &nbsp;&nbsp;sda: 48<br />
   &nbsp;&nbsp;scl: 47<br />
   &nbsp;&nbsp;scan: true<br />
   &nbsp;&nbsp;frequency: 400kHz<br />
 &nbsp;&nbsp;- id: bus_b<br />
   &nbsp;&nbsp;sda: 12<br />
   &nbsp;&nbsp;scl: 11<br />
   &nbsp;&nbsp;scan: true<br />
   &nbsp;&nbsp;frequency: 400kHz<br />
<br />
pcf8574:<br />
  - id: 'pcf8574_hub_out_1'  # for output channel 1-16<br />
    i2c_id: bus_a<br />
    address: 0x27<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_2'  # for output channel 17-32<br />
    i2c_id: bus_a<br />
    address: 0x26<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_3'  # for output channel 33-48<br />
    i2c_id: bus_a<br />
    address: 0x23<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_4'  # for output channel 49-64<br />
    i2c_id: bus_a<br />
    address: 0x22<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_5'  # for output channel 65-80<br />
    i2c_id: bus_a<br />
    address: 0x25<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_6'  # for output channel 81-96<br />
    i2c_id: bus_a<br />
    address: 0x24<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_7'  # for output channel 97-112<br />
    i2c_id: bus_a<br />
    address: 0x21<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_8'  # for output channel 113-128<br />
    i2c_id: bus_a<br />
    address: 0x20<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_1'  # for input channel 1-16<br />
    i2c_id: bus_b<br />
    address: 0x27<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_2'  # for input channel 17-32<br />
    i2c_id: bus_b<br />
    address: 0x26<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_3'  # for input channel 33-48<br />
    i2c_id: bus_b<br />
    address: 0x23<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_4'  # for input channel 49-64<br />
    i2c_id: bus_b<br />
    address: 0x22<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_5'  # for input channel 65-80<br />
    i2c_id: bus_b<br />
    address: 0x25<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_6'  # for input channel 81-96<br />
    i2c_id: bus_b<br />
    address: 0x24<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_7'  # for input channel 97-112<br />
    i2c_id: bus_b<br />
    address: 0x21<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_8'  # for input channel 113-128<br />
    i2c_id: bus_b<br />
    address: 0x20<br />
    pcf8575: true<br />
<br />
switch:<br />
  - platform: gpio<br />
    name: "t128m-output01"<br />
    id: "t128m_output01"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output02"<br />
    id: "t128m_output02"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output03"<br />
    id: "t128m_output03"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output04"<br />
    id: "t128m_output04"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output05"<br />
    id: "t128m_output05"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output06"<br />
    id: "t128m_output06"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output07"<br />
    id: "t128m_output07"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output08"<br />
    id: "t128m_output08"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output09"<br />
    id: "t128m_output09"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output10"<br />
    id: "t128m_output10"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output11"<br />
    id: "t128m_output11"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output12"<br />
    id: "t128m_output12"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output13"<br />
    id: "t128m_output13"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output14"<br />
    id: "t128m_output14"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output15"<br />
    id: "t128m_output15"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output16"<br />
    id: "t128m_output16"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output17"<br />
    id: "t128m_output17"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output18"<br />
    id: "t128m_output18"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output19"<br />
    id: "t128m_output19"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output20"<br />
    id: "t128m_output20"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output21"<br />
    id: "t128m_output21"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output22"<br />
    id: "t128m_output22"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output23"<br />
    id: "t128m_output23"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output24"<br />
    id: "t128m_output24"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output25"<br />
    id: "t128m_output25"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output26"<br />
    id: "t128m_output26"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output27"<br />
    id: "t128m_output27"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output28"<br />
    id: "t128m_output28"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output29"<br />
    id: "t128m_output29"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output30"<br />
    id: "t128m_output30"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output31"<br />
    id: "t128m_output31"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output32"<br />
    id: "t128m_output32"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output33"<br />
    id: "t128m_output33"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output34"<br />
    id: "t128m_output34"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output35"<br />
    id: "t128m_output35"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output36"<br />
    id: "t128m_output36"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output37"<br />
    id: "t128m_output37"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output38"<br />
    id: "t128m_output38"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output39"<br />
    id: "t128m_output39"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output40"<br />
    id: "t128m_output40"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output41"<br />
    id: "t128m_output41"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output42"<br />
    id: "t128m_output42"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output43"<br />
    id: "t128m_output43"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output44"<br />
    id: "t128m_output44"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output45"<br />
    id: "t128m_output45"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output46"<br />
    id: "t128m_output46"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output47"<br />
    id: "t128m_output47"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output48"<br />
    id: "t128m_output48"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output49"<br />
    id: "t128m_output49"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output50"<br />
    id: "t128m_output50"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output51"<br />
    id: "t128m_output51"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output52"<br />
    id: "t128m_output52"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output53"<br />
    id: "t128m_output53"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output54"<br />
    id: "t128m_output54"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output55"<br />
    id: "t128m_output55"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output56"<br />
    id: "t128m_output56"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output57"<br />
    id: "t128m_output57"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output58"<br />
    id: "t128m_output58"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output59"<br />
    id: "t128m_output59"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output60"<br />
    id: "t128m_output60"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output61"<br />
    id: "t128m_output61"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output62"<br />
    id: "t128m_output62"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output63"<br />
    id: "t128m_output63"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output64"<br />
    id: "t128m_output64"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output65"<br />
    id: "t128m_output65"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output66"<br />
    id: "t128m_output66"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output67"<br />
    id: "t128m_output67"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output68"<br />
    id: "t128m_output68"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output69"<br />
    id: "t128m_output69"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output70"<br />
    id: "t128m_output70"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output71"<br />
    id: "t128m_output71"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output72"<br />
    id: "t128m_output72"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output73"<br />
    id: "t128m_output73"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output74"<br />
    id: "t128m_output74"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output75"<br />
    id: "t128m_output75"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output76"<br />
    id: "t128m_output76"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output77"<br />
    id: "t128m_output77"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output78"<br />
    id: "t128m_output78"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output79"<br />
    id: "t128m_output79"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output80"<br />
    id: "t128m_output80"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output81"<br />
    id: "t128m_output81"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output82"<br />
    id: "t128m_output82"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output83"<br />
    id: "t128m_output83"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output84"<br />
    id: "t128m_output84"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output85"<br />
    id: "t128m_output85"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output86"<br />
    id: "t128m_output86"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output87"<br />
    id: "t128m_output87"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output88"<br />
    id: "t128m_output88"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output89"<br />
    id: "t128m_output89"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output90"<br />
    id: "t128m_output90"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output91"<br />
    id: "t128m_output91"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output92"<br />
    id: "t128m_output92"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output93"<br />
    id: "t128m_output93"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output94"<br />
    id: "t128m_output94"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output95"<br />
    id: "t128m_output95"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output96"<br />
    id: "t128m_output96"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output97"<br />
    id: "t128m_output97"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output98"<br />
    id: "t128m_output98"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output99"<br />
    id: "t128m_output99"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output100"<br />
    id: "t128m_output100"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output101"<br />
    id: "t128m_output101"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output102"<br />
    id: "t128m_output102"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output103"<br />
    id: "t128m_output103"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output104"<br />
    id: "t128m_output104"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output105"<br />
    id: "t128m_output105"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output106"<br />
    id: "t128m_output106"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output107"<br />
    id: "t128m_output107"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output108"<br />
    id: "t128m_output108"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output109"<br />
    id: "t128m_output109"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output110"<br />
    id: "t128m_output110"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output111"<br />
    id: "t128m_output111"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output112"<br />
    id: "t128m_output112"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output113"<br />
    id: "t128m_output113"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output114"<br />
    id: "t128m_output114"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output115"<br />
    id: "t128m_output115"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output116"<br />
    id: "t128m_output116"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output117"<br />
    id: "t128m_output117"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output118"<br />
    id: "t128m_output118"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output119"<br />
    id: "t128m_output119"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output120"<br />
    id: "t128m_output120"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output121"<br />
    id: "t128m_output121"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output122"<br />
    id: "t128m_output122"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output123"<br />
    id: "t128m_output123"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output124"<br />
    id: "t128m_output124"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output125"<br />
    id: "t128m_output125"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output126"<br />
    id: "t128m_output126"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output127"<br />
    id: "t128m_output127"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output128"<br />
    id: "t128m_output128"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
binary_sensor:<br />
  - platform: gpio<br />
    name: "t128m-input01"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input02"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input03"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input04"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input05"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input06"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input07"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input08"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input09"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input10"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input11"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input12"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input13"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input14"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input15"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input16"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input17"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input18"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input19"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input20"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input21"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input22"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input23"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input24"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input25"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input26"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input27"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input28"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input29"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input30"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input31"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input32"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input33"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input34"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input35"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input36"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input37"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input38"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input39"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input40"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input41"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input42"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input43"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input44"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input45"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input46"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input47"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input48"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input49"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input50"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input51"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input52"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input53"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input54"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input55"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input56"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input57"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input58"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input59"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input60"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input61"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input62"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input63"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input64"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input65"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input66"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input67"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input68"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input69"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input70"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input71"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input72"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input73"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input74"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input75"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input76"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input77"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input78"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input79"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input80"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input81"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input82"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input83"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input84"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input85"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input86"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input87"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input88"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input89"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input90"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input91"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input92"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input93"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input94"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input95"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input96"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input97"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input98"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input99"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input100"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input101"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input102"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input103"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input104"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input105"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input106"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input107"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input108"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input109"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input110"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input111"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input112"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input113"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input114"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input115"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input116"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input117"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input118"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input119"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input120"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input121"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input122"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input123"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input124"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input125"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input126"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input127"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input128"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
## pull-up resistance on PCB<br />
  - platform: gpio<br />
    name: "t128m-W1-io15"<br />
    pin: <br />
      number: 15<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io16"<br />
    pin: <br />
      number: 16<br />
      inverted: false<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io17"<br />
    pin: <br />
      number: 17<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io18"<br />
    pin: <br />
      number: 18<br />
      inverted:  false<br />
<br />
## without pull-up resistance on PCB<br />
  - platform: gpio<br />
    name: "t128m-io0"<br />
    pin: <br />
      number: 0<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io8"<br />
    pin: <br />
      number: 8<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io9"<br />
    pin: <br />
      number: 9<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io10"<br />
    pin: <br />
      number: 10<br />
      inverted:  false<br />
<br />
sensor:<br />
  - platform: adc<br />
    pin: 7<br />
    name: "t128m A1 Voltage"<br />
    update_interval: 5s<br />
    attenuation: 11db<br />
    filters:<br />
      - lambda:<br />
          if (x &gt;= 3.11) {<br />
            return x * 1.60256;<br />
          } else if (x &lt;= 0.15) {<br />
            return 0;<br />
          } else {<br />
            return x * 1.51;<br />
          }<br />
  - platform: adc<br />
    pin: 6<br />
    name: "t128m A2 Voltage"<br />
    update_interval: 5s<br />
    attenuation: 11db<br />
    filters:<br />
      # - multiply: 1.51515<br />
      - lambda:<br />
          if (x &gt;= 3.11) {<br />
            return x * 1.60256;<br />
          } else if (x &lt;= 0.15) {<br />
            return 0;<br />
          } else {<br />
            return x * 1.51;<br />
          }<br />
  - platform: adc<br />
    pin: 5<br />
    name: "t128m A3 Current"<br />
    update_interval: 5s<br />
    unit_of_measurement: mA<br />
    attenuation: 11db<br />
    filters:<br />
      - multiply: 6.66666666<br />
  - platform: adc<br />
    pin: 4<br />
    name: "t128m A4 Current"<br />
    update_interval: 5s<br />
    unit_of_measurement: mA<br />
    attenuation: 11db<br />
    filters:<br />
      - multiply: 6.66666666<br />
<br />
web_server:<br />
  port: 80<br />
<br />
   </code></div></div> download yaml file: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/txt.png" title="Text Document" border="0" alt=".txt" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7845" target="_blank" title="">T128M-HA.txt</a> (Size: 45.57 KB / Downloads: 258)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>esphome:<br />
  name: t128m<br />
  friendly_name: t128m<br />
<br />
esp32:<br />
  board: esp32-s3-devkitc-1<br />
  framework:<br />
    type: esp-idf<br />
<br />
# Enable logging<br />
logger:<br />
  hardware_uart: USB_SERIAL_JTAG<br />
# Enable Home Assistant API<br />
api:<br />
<br />
ethernet:<br />
  type: W5500<br />
  clk_pin: GPIO42<br />
  mosi_pin: GPIO43<br />
  miso_pin: GPIO44<br />
  cs_pin: GPIO41<br />
  interrupt_pin: GPIO2<br />
  reset_pin: GPIO1<br />
<br />
i2c:<br />
 &nbsp;&nbsp;- id: bus_a<br />
   &nbsp;&nbsp;sda: 48<br />
   &nbsp;&nbsp;scl: 47<br />
   &nbsp;&nbsp;scan: true<br />
   &nbsp;&nbsp;frequency: 400kHz<br />
 &nbsp;&nbsp;- id: bus_b<br />
   &nbsp;&nbsp;sda: 12<br />
   &nbsp;&nbsp;scl: 11<br />
   &nbsp;&nbsp;scan: true<br />
   &nbsp;&nbsp;frequency: 400kHz<br />
<br />
pcf8574:<br />
  - id: 'pcf8574_hub_out_1'  # for output channel 1-16<br />
    i2c_id: bus_a<br />
    address: 0x27<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_2'  # for output channel 17-32<br />
    i2c_id: bus_a<br />
    address: 0x26<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_3'  # for output channel 33-48<br />
    i2c_id: bus_a<br />
    address: 0x23<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_4'  # for output channel 49-64<br />
    i2c_id: bus_a<br />
    address: 0x22<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_5'  # for output channel 65-80<br />
    i2c_id: bus_a<br />
    address: 0x25<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_6'  # for output channel 81-96<br />
    i2c_id: bus_a<br />
    address: 0x24<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_7'  # for output channel 97-112<br />
    i2c_id: bus_a<br />
    address: 0x21<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_out_8'  # for output channel 113-128<br />
    i2c_id: bus_a<br />
    address: 0x20<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_1'  # for input channel 1-16<br />
    i2c_id: bus_b<br />
    address: 0x27<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_2'  # for input channel 17-32<br />
    i2c_id: bus_b<br />
    address: 0x26<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_3'  # for input channel 33-48<br />
    i2c_id: bus_b<br />
    address: 0x23<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_4'  # for input channel 49-64<br />
    i2c_id: bus_b<br />
    address: 0x22<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_5'  # for input channel 65-80<br />
    i2c_id: bus_b<br />
    address: 0x25<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_6'  # for input channel 81-96<br />
    i2c_id: bus_b<br />
    address: 0x24<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_7'  # for input channel 97-112<br />
    i2c_id: bus_b<br />
    address: 0x21<br />
    pcf8575: true<br />
<br />
  - id: 'pcf8574_hub_in_8'  # for input channel 113-128<br />
    i2c_id: bus_b<br />
    address: 0x20<br />
    pcf8575: true<br />
<br />
switch:<br />
  - platform: gpio<br />
    name: "t128m-output01"<br />
    id: "t128m_output01"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output02"<br />
    id: "t128m_output02"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output03"<br />
    id: "t128m_output03"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output04"<br />
    id: "t128m_output04"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output05"<br />
    id: "t128m_output05"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output06"<br />
    id: "t128m_output06"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output07"<br />
    id: "t128m_output07"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output08"<br />
    id: "t128m_output08"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output09"<br />
    id: "t128m_output09"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output10"<br />
    id: "t128m_output10"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output11"<br />
    id: "t128m_output11"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output12"<br />
    id: "t128m_output12"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output13"<br />
    id: "t128m_output13"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output14"<br />
    id: "t128m_output14"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output15"<br />
    id: "t128m_output15"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output16"<br />
    id: "t128m_output16"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_1<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output17"<br />
    id: "t128m_output17"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output18"<br />
    id: "t128m_output18"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output19"<br />
    id: "t128m_output19"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output20"<br />
    id: "t128m_output20"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output21"<br />
    id: "t128m_output21"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output22"<br />
    id: "t128m_output22"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output23"<br />
    id: "t128m_output23"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output24"<br />
    id: "t128m_output24"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output25"<br />
    id: "t128m_output25"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output26"<br />
    id: "t128m_output26"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output27"<br />
    id: "t128m_output27"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output28"<br />
    id: "t128m_output28"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output29"<br />
    id: "t128m_output29"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output30"<br />
    id: "t128m_output30"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output31"<br />
    id: "t128m_output31"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output32"<br />
    id: "t128m_output32"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_2<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output33"<br />
    id: "t128m_output33"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output34"<br />
    id: "t128m_output34"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output35"<br />
    id: "t128m_output35"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output36"<br />
    id: "t128m_output36"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output37"<br />
    id: "t128m_output37"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output38"<br />
    id: "t128m_output38"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output39"<br />
    id: "t128m_output39"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output40"<br />
    id: "t128m_output40"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output41"<br />
    id: "t128m_output41"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output42"<br />
    id: "t128m_output42"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output43"<br />
    id: "t128m_output43"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output44"<br />
    id: "t128m_output44"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output45"<br />
    id: "t128m_output45"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output46"<br />
    id: "t128m_output46"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output47"<br />
    id: "t128m_output47"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output48"<br />
    id: "t128m_output48"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_3<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output49"<br />
    id: "t128m_output49"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output50"<br />
    id: "t128m_output50"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output51"<br />
    id: "t128m_output51"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output52"<br />
    id: "t128m_output52"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output53"<br />
    id: "t128m_output53"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output54"<br />
    id: "t128m_output54"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output55"<br />
    id: "t128m_output55"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output56"<br />
    id: "t128m_output56"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output57"<br />
    id: "t128m_output57"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output58"<br />
    id: "t128m_output58"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output59"<br />
    id: "t128m_output59"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output60"<br />
    id: "t128m_output60"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output61"<br />
    id: "t128m_output61"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output62"<br />
    id: "t128m_output62"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output63"<br />
    id: "t128m_output63"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output64"<br />
    id: "t128m_output64"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_4<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output65"<br />
    id: "t128m_output65"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output66"<br />
    id: "t128m_output66"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output67"<br />
    id: "t128m_output67"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output68"<br />
    id: "t128m_output68"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output69"<br />
    id: "t128m_output69"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output70"<br />
    id: "t128m_output70"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output71"<br />
    id: "t128m_output71"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output72"<br />
    id: "t128m_output72"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output73"<br />
    id: "t128m_output73"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output74"<br />
    id: "t128m_output74"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output75"<br />
    id: "t128m_output75"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output76"<br />
    id: "t128m_output76"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output77"<br />
    id: "t128m_output77"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output78"<br />
    id: "t128m_output78"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output79"<br />
    id: "t128m_output79"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output80"<br />
    id: "t128m_output80"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_5<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output81"<br />
    id: "t128m_output81"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output82"<br />
    id: "t128m_output82"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output83"<br />
    id: "t128m_output83"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output84"<br />
    id: "t128m_output84"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output85"<br />
    id: "t128m_output85"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output86"<br />
    id: "t128m_output86"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output87"<br />
    id: "t128m_output87"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output88"<br />
    id: "t128m_output88"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output89"<br />
    id: "t128m_output89"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output90"<br />
    id: "t128m_output90"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output91"<br />
    id: "t128m_output91"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output92"<br />
    id: "t128m_output92"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output93"<br />
    id: "t128m_output93"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output94"<br />
    id: "t128m_output94"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output95"<br />
    id: "t128m_output95"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output96"<br />
    id: "t128m_output96"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_6<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output97"<br />
    id: "t128m_output97"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output98"<br />
    id: "t128m_output98"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output99"<br />
    id: "t128m_output99"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output100"<br />
    id: "t128m_output100"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output101"<br />
    id: "t128m_output101"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output102"<br />
    id: "t128m_output102"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output103"<br />
    id: "t128m_output103"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output104"<br />
    id: "t128m_output104"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output105"<br />
    id: "t128m_output105"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output106"<br />
    id: "t128m_output106"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output107"<br />
    id: "t128m_output107"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output108"<br />
    id: "t128m_output108"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output109"<br />
    id: "t128m_output109"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output110"<br />
    id: "t128m_output110"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output111"<br />
    id: "t128m_output111"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output112"<br />
    id: "t128m_output112"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_7<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output113"<br />
    id: "t128m_output113"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 0<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output114"<br />
    id: "t128m_output114"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 1<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output115"<br />
    id: "t128m_output115"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 2<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output116"<br />
    id: "t128m_output116"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 3<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output117"<br />
    id: "t128m_output117"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 4<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output118"<br />
    id: "t128m_output118"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 5<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output119"<br />
    id: "t128m_output119"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 6<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output120"<br />
    id: "t128m_output120"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 7<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output121"<br />
    id: "t128m_output121"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 8<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output122"<br />
    id: "t128m_output122"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 9<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output123"<br />
    id: "t128m_output123"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 10<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output124"<br />
    id: "t128m_output124"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 11<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output125"<br />
    id: "t128m_output125"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 12<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output126"<br />
    id: "t128m_output126"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 13<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output127"<br />
    id: "t128m_output127"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 14<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-output128"<br />
    id: "t128m_output128"<br />
    pin:<br />
      pcf8574: pcf8574_hub_out_8<br />
      number: 15<br />
      mode: OUTPUT<br />
      inverted: true<br />
<br />
binary_sensor:<br />
  - platform: gpio<br />
    name: "t128m-input01"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input02"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input03"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input04"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input05"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input06"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input07"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input08"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input09"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input10"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input11"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input12"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input13"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input14"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input15"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input16"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_1<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input17"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input18"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input19"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input20"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input21"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input22"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input23"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input24"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input25"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input26"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input27"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input28"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input29"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input30"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input31"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input32"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_2<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input33"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input34"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input35"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input36"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input37"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input38"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input39"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input40"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input41"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input42"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input43"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input44"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input45"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input46"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input47"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input48"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_3<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input49"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input50"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input51"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input52"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input53"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input54"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input55"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input56"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input57"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input58"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input59"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input60"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input61"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input62"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input63"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input64"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_4<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input65"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input66"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input67"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input68"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input69"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input70"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input71"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input72"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input73"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input74"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input75"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input76"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input77"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input78"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input79"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input80"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_5<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input81"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input82"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input83"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input84"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input85"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input86"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input87"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input88"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input89"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input90"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input91"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input92"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input93"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input94"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input95"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input96"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_6<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input97"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input98"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input99"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input100"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input101"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input102"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input103"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input104"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input105"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input106"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input107"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input108"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input109"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input110"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input111"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input112"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_7<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input113"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 0<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input114"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 1<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input115"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 2<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input116"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 3<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input117"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 4<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input118"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 5<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input119"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 6<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input120"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 7<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input121"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 8<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input122"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 9<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input123"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 10<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input124"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 11<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input125"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 12<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input126"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 13<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input127"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 14<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-input128"<br />
    pin:<br />
      pcf8574: pcf8574_hub_in_8<br />
      number: 15<br />
      mode: INPUT<br />
      inverted: true<br />
<br />
## pull-up resistance on PCB<br />
  - platform: gpio<br />
    name: "t128m-W1-io15"<br />
    pin: <br />
      number: 15<br />
      inverted: true<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io16"<br />
    pin: <br />
      number: 16<br />
      inverted: false<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io17"<br />
    pin: <br />
      number: 17<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-W1-io18"<br />
    pin: <br />
      number: 18<br />
      inverted:  false<br />
<br />
## without pull-up resistance on PCB<br />
  - platform: gpio<br />
    name: "t128m-io0"<br />
    pin: <br />
      number: 0<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io8"<br />
    pin: <br />
      number: 8<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io9"<br />
    pin: <br />
      number: 9<br />
      inverted:  false<br />
<br />
  - platform: gpio<br />
    name: "t128m-io10"<br />
    pin: <br />
      number: 10<br />
      inverted:  false<br />
<br />
sensor:<br />
  - platform: adc<br />
    pin: 7<br />
    name: "t128m A1 Voltage"<br />
    update_interval: 5s<br />
    attenuation: 11db<br />
    filters:<br />
      - lambda:<br />
          if (x &gt;= 3.11) {<br />
            return x * 1.60256;<br />
          } else if (x &lt;= 0.15) {<br />
            return 0;<br />
          } else {<br />
            return x * 1.51;<br />
          }<br />
  - platform: adc<br />
    pin: 6<br />
    name: "t128m A2 Voltage"<br />
    update_interval: 5s<br />
    attenuation: 11db<br />
    filters:<br />
      # - multiply: 1.51515<br />
      - lambda:<br />
          if (x &gt;= 3.11) {<br />
            return x * 1.60256;<br />
          } else if (x &lt;= 0.15) {<br />
            return 0;<br />
          } else {<br />
            return x * 1.51;<br />
          }<br />
  - platform: adc<br />
    pin: 5<br />
    name: "t128m A3 Current"<br />
    update_interval: 5s<br />
    unit_of_measurement: mA<br />
    attenuation: 11db<br />
    filters:<br />
      - multiply: 6.66666666<br />
  - platform: adc<br />
    pin: 4<br />
    name: "t128m A4 Current"<br />
    update_interval: 5s<br />
    unit_of_measurement: mA<br />
    attenuation: 11db<br />
    filters:<br />
      - multiply: 6.66666666<br />
<br />
web_server:<br />
  port: 80<br />
<br />
   </code></div></div> download yaml file: <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.kincony.com/forum/images/attachtypes/txt.png" title="Text Document" border="0" alt=".txt" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=7845" target="_blank" title="">T128M-HA.txt</a> (Size: 45.57 KB / Downloads: 258)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[T128M ESP32-S3 IO pins define]]></title>
			<link>https://www.kincony.com/forum/showthread.php?tid=8247</link>
			<pubDate>Mon, 23 Jun 2025 13:31:19 +0800</pubDate>
			<dc:creator><![CDATA[<a href="https://www.kincony.com/forum/member.php?action=profile&uid=1">admin</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.kincony.com/forum/showthread.php?tid=8247</guid>
			<description><![CDATA[analog A1 (0-5v): GPIO7<br />
analog A2 (0-5v): GPIO6<br />
analog A3 (4-20mA): GPIO5<br />
analog A4 (4-20mA): GPIO4<br />
<br />
-----------------<br />
IIC Bus-1:<br />
<br />
SDA:GPIO48<br />
SCL:GPIO47<br />
<br />
PCF8575: (output1-16): i2c address:0x27<br />
PCF8575: (output17-32): i2c address:0x26<br />
PCF8575: (output33-48): i2c address:0x23<br />
PCF8575: (output49-64): i2c address:0x22<br />
PCF8575: (output65-80): i2c address:0x25<br />
PCF8575: (output81-96): i2c address:0x24<br />
PCF8575: (output97-112): i2c address:0x21<br />
PCF8575: (output113-128): i2c address:0x20<br />
<br />
24C02 EPROM i2c address: 0x50<br />
<br />
------------------<br />
<br />
IIC Bus-2:<br />
<br />
SDA:GPIO12<br />
SCL:GPIO11<br />
<br />
PCF8575: (input1-16): i2c address:0x27<br />
PCF8575: (input17-32): i2c address:0x26<br />
PCF8575: (input33-48): i2c address:0x23<br />
PCF8575: (input49-64): i2c address:0x22<br />
PCF8575: (input65-80): i2c address:0x25<br />
PCF8575: (input81-96): i2c address:0x24<br />
PCF8575: (input97-112): i2c address:0x21<br />
PCF8575: (input113-128): i2c address:0x20<br />
<br />
-----------------<br />
<br />
1-wire (pull-up resistance on PCB): <br />
GPIO15<br />
GPIO16<br />
GPIO17<br />
GPIO18<br />
<br />
free GPIO:<br />
GPIO8<br />
GPIO9<br />
GPIO10<br />
<br />
-----------------<br />
<br />
Ethernet (W5500) I/O define:<br />
<br />
clk_pin: GPIO42<br />
mosi_pin: GPIO43<br />
miso_pin: GPIO44<br />
cs_pin: GPIO41<br />
<br />
interrupt_pin: GPIO2<br />
reset_pin: GPIO1<br />
<br />
--------------------<br />
RS485: <br />
RXD:GPIO21<br />
TXD:GPIO13<br />
EN:GPIO14]]></description>
			<content:encoded><![CDATA[analog A1 (0-5v): GPIO7<br />
analog A2 (0-5v): GPIO6<br />
analog A3 (4-20mA): GPIO5<br />
analog A4 (4-20mA): GPIO4<br />
<br />
-----------------<br />
IIC Bus-1:<br />
<br />
SDA:GPIO48<br />
SCL:GPIO47<br />
<br />
PCF8575: (output1-16): i2c address:0x27<br />
PCF8575: (output17-32): i2c address:0x26<br />
PCF8575: (output33-48): i2c address:0x23<br />
PCF8575: (output49-64): i2c address:0x22<br />
PCF8575: (output65-80): i2c address:0x25<br />
PCF8575: (output81-96): i2c address:0x24<br />
PCF8575: (output97-112): i2c address:0x21<br />
PCF8575: (output113-128): i2c address:0x20<br />
<br />
24C02 EPROM i2c address: 0x50<br />
<br />
------------------<br />
<br />
IIC Bus-2:<br />
<br />
SDA:GPIO12<br />
SCL:GPIO11<br />
<br />
PCF8575: (input1-16): i2c address:0x27<br />
PCF8575: (input17-32): i2c address:0x26<br />
PCF8575: (input33-48): i2c address:0x23<br />
PCF8575: (input49-64): i2c address:0x22<br />
PCF8575: (input65-80): i2c address:0x25<br />
PCF8575: (input81-96): i2c address:0x24<br />
PCF8575: (input97-112): i2c address:0x21<br />
PCF8575: (input113-128): i2c address:0x20<br />
<br />
-----------------<br />
<br />
1-wire (pull-up resistance on PCB): <br />
GPIO15<br />
GPIO16<br />
GPIO17<br />
GPIO18<br />
<br />
free GPIO:<br />
GPIO8<br />
GPIO9<br />
GPIO10<br />
<br />
-----------------<br />
<br />
Ethernet (W5500) I/O define:<br />
<br />
clk_pin: GPIO42<br />
mosi_pin: GPIO43<br />
miso_pin: GPIO44<br />
cs_pin: GPIO41<br />
<br />
interrupt_pin: GPIO2<br />
reset_pin: GPIO1<br />
<br />
--------------------<br />
RS485: <br />
RXD:GPIO21<br />
TXD:GPIO13<br />
EN:GPIO14]]></content:encoded>
		</item>
	</channel>
</rss>