<?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[F1ATB forum - Home Automation]]></title>
		<link>https://f1atb.fr/forum_f1atb/</link>
		<description><![CDATA[F1ATB forum - https://f1atb.fr/forum_f1atb]]></description>
		<pubDate>Thu, 09 Apr 2026 03:00:38 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Case for "ESP32 + relay + integrated 230V AC"]]></title>
			<link>https://f1atb.fr/forum_f1atb/thread-1895.html</link>
			<pubDate>Sat, 11 Oct 2025 11:38:04 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://f1atb.fr/forum_f1atb/member.php?action=profile&uid=2097">noschvie</a>]]></dc:creator>
			<guid isPermaLink="false">https://f1atb.fr/forum_f1atb/thread-1895.html</guid>
			<description><![CDATA[Hello<br />
looking for a case for this device: ESP32 + relay + integrated 230V AC<br />
<a href="https://f1atb.fr/esp32-relay-integrated-230v-ac-power-supply-sensors/" target="_blank" rel="noopener" class="mycode_url">https://f1atb.fr/esp32-relay-integrated-...y-sensors/</a><br />
any ideas? Thanks!]]></description>
			<content:encoded><![CDATA[Hello<br />
looking for a case for this device: ESP32 + relay + integrated 230V AC<br />
<a href="https://f1atb.fr/esp32-relay-integrated-230v-ac-power-supply-sensors/" target="_blank" rel="noopener" class="mycode_url">https://f1atb.fr/esp32-relay-integrated-...y-sensors/</a><br />
any ideas? Thanks!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[ESP32 connected via Ethernet]]></title>
			<link>https://f1atb.fr/forum_f1atb/thread-1570.html</link>
			<pubDate>Wed, 25 Jun 2025 16:31:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://f1atb.fr/forum_f1atb/member.php?action=profile&uid=1">F1ATB</a>]]></dc:creator>
			<guid isPermaLink="false">https://f1atb.fr/forum_f1atb/thread-1570.html</guid>
			<description><![CDATA[The ESP32 is a high-performance microcomputer with a dual-core processor, digital and analog interfaces, and Bluetooth and Wi-Fi communication capabilities. Some boards also include an RJ45 connector for direct Ethernet connectivity. <br />
See the video here : <a href="https://youtu.be/LywEGlftM3s" target="_blank" rel="noopener" class="mycode_url">https://youtu.be/LywEGlftM3s</a><br />
<br />
<a href="https://f1atb.fr/esp32-connected-via-ethernet/" target="_blank" rel="noopener" class="mycode_url">Web page on the subject, source code...</a><br />
<img src="https://f1atb.fr/wp-content/uploads/2025/03/ESP32-ETH01.png" loading="lazy"  alt="[Image: ESP32-ETH01.png]" class="mycode_img" />]]></description>
			<content:encoded><![CDATA[The ESP32 is a high-performance microcomputer with a dual-core processor, digital and analog interfaces, and Bluetooth and Wi-Fi communication capabilities. Some boards also include an RJ45 connector for direct Ethernet connectivity. <br />
See the video here : <a href="https://youtu.be/LywEGlftM3s" target="_blank" rel="noopener" class="mycode_url">https://youtu.be/LywEGlftM3s</a><br />
<br />
<a href="https://f1atb.fr/esp32-connected-via-ethernet/" target="_blank" rel="noopener" class="mycode_url">Web page on the subject, source code...</a><br />
<img src="https://f1atb.fr/wp-content/uploads/2025/03/ESP32-ETH01.png" loading="lazy"  alt="[Image: ESP32-ETH01.png]" class="mycode_img" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Watchdog timer in ESP32 board manager v3.0.x - Demo / Example]]></title>
			<link>https://f1atb.fr/forum_f1atb/thread-174.html</link>
			<pubDate>Mon, 01 Jul 2024 11:45:50 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://f1atb.fr/forum_f1atb/member.php?action=profile&uid=1">F1ATB</a>]]></dc:creator>
			<guid isPermaLink="false">https://f1atb.fr/forum_f1atb/thread-174.html</guid>
			<description><![CDATA[Watchdog timer in ESP32 board manage 3.0x changes a lot from previous implementation. Here is a simple example how to implement it (Arduino IDE).<br />
One key point is to set a delay of minimum 1 ms after the :<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font"><span style="color: #d35400;" class="mycode_color">esp_task_wdt_reset</span><span style="color: #434f54;" class="mycode_color">()</span>;</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font"><span style="color: #d35400;" class="mycode_color">delay</span><span style="color: #434f54;" class="mycode_color">(</span><span style="color: #005c5f;" class="mycode_color">1</span><span style="color: #434f54;" class="mycode_color">)</span>; // &lt;------------------------------ Mandatory</span></span><br />
<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">Here after the example to be tested:</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- watchog is set to 25s</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- In a cycle of 20 s. The reset is done the first 10s, then no reset during 10s.</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- After 60s no reset at all the system will crashes and restart at 75s.</span></span><br />
<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">Regards F1ATB</span></span><br />
<div class="codeblock"><div class="title">Code :</div><div class="body" dir="ltr"><code>#include &lt;esp_task_wdt.h&gt;<br />
#define WDT_TIMEOUT 25 // Timeout in seconds<br />
esp_err_t ESP32_ERROR;<br />
int i = 0;<br />
int last = millis();<br />
void setup() {<br />
  Serial.begin(115200);<br />
  delay(100);<br />
  Serial.println("Configuring WDT...");<br />
  Serial.print("Watchdog Timeout (in seconds) set to : ");<br />
  Serial.println(WDT_TIMEOUT);<br />
  esp_task_wdt_deinit();<br />
  // Task Watchdog configuration <br />
  esp_task_wdt_config_t wdt_config = {<br />
    .timeout_ms = WDT_TIMEOUT * 1000,               &nbsp;&nbsp;// Convertin ms<br />
    .idle_core_mask = (1 &lt;&lt; portNUM_PROCESSORS) - 1,  // Bitmask of all cores, https://github.com/espressif/esp-idf/blob/v5.2.2/examples/system/task_watchdog/main/task_watchdog_example_main.c<br />
    .trigger_panic = true                           &nbsp;&nbsp;// Enable panic to restart ESP32<br />
  };<br />
  // WDT Init<br />
  ESP32_ERROR = esp_task_wdt_init(&amp;wdt_config);<br />
 &nbsp;&nbsp;Serial.println("Last Reset : " + String(esp_err_to_name(ESP32_ERROR)));<br />
 &nbsp;&nbsp;esp_task_wdt_add(NULL);  //add current thread to WDT watch<br />
}<br />
<br />
void loop() {<br />
  if (millis() - last &gt;= 1000) { // Task every second<br />
    last = millis();<br />
    Serial.print(i);<br />
    Serial.print("s : ");<br />
    i++;<br />
    if (i % 20 &lt;= 10 &amp;&amp; i&lt;60) { //Reset only during 10s the first minute<br />
      Serial.println(" Resetting WDT...");<br />
      esp_task_wdt_reset();<br />
      delay(1);  //VERY VERY IMPORTANT for Watchdog Reset to apply. At least 1 ms<br />
      if (i % 20 == 10) { // No reset after 10s for test<br />
        Serial.println("Stopping WDT reset.");<br />
      }<br />
    } <br />
  }<br />
}</code></div></div>]]></description>
			<content:encoded><![CDATA[Watchdog timer in ESP32 board manage 3.0x changes a lot from previous implementation. Here is a simple example how to implement it (Arduino IDE).<br />
One key point is to set a delay of minimum 1 ms after the :<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font"><span style="color: #d35400;" class="mycode_color">esp_task_wdt_reset</span><span style="color: #434f54;" class="mycode_color">()</span>;</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font"><span style="color: #d35400;" class="mycode_color">delay</span><span style="color: #434f54;" class="mycode_color">(</span><span style="color: #005c5f;" class="mycode_color">1</span><span style="color: #434f54;" class="mycode_color">)</span>; // &lt;------------------------------ Mandatory</span></span><br />
<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">Here after the example to be tested:</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- watchog is set to 25s</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- In a cycle of 20 s. The reset is done the first 10s, then no reset during 10s.</span></span><br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">- After 60s no reset at all the system will crashes and restart at 75s.</span></span><br />
<br />
<span style="color: #4e5b61;" class="mycode_color"><span style="font-family: Consolas, 'Courier New', monospace;" class="mycode_font">Regards F1ATB</span></span><br />
<div class="codeblock"><div class="title">Code :</div><div class="body" dir="ltr"><code>#include &lt;esp_task_wdt.h&gt;<br />
#define WDT_TIMEOUT 25 // Timeout in seconds<br />
esp_err_t ESP32_ERROR;<br />
int i = 0;<br />
int last = millis();<br />
void setup() {<br />
  Serial.begin(115200);<br />
  delay(100);<br />
  Serial.println("Configuring WDT...");<br />
  Serial.print("Watchdog Timeout (in seconds) set to : ");<br />
  Serial.println(WDT_TIMEOUT);<br />
  esp_task_wdt_deinit();<br />
  // Task Watchdog configuration <br />
  esp_task_wdt_config_t wdt_config = {<br />
    .timeout_ms = WDT_TIMEOUT * 1000,               &nbsp;&nbsp;// Convertin ms<br />
    .idle_core_mask = (1 &lt;&lt; portNUM_PROCESSORS) - 1,  // Bitmask of all cores, https://github.com/espressif/esp-idf/blob/v5.2.2/examples/system/task_watchdog/main/task_watchdog_example_main.c<br />
    .trigger_panic = true                           &nbsp;&nbsp;// Enable panic to restart ESP32<br />
  };<br />
  // WDT Init<br />
  ESP32_ERROR = esp_task_wdt_init(&amp;wdt_config);<br />
 &nbsp;&nbsp;Serial.println("Last Reset : " + String(esp_err_to_name(ESP32_ERROR)));<br />
 &nbsp;&nbsp;esp_task_wdt_add(NULL);  //add current thread to WDT watch<br />
}<br />
<br />
void loop() {<br />
  if (millis() - last &gt;= 1000) { // Task every second<br />
    last = millis();<br />
    Serial.print(i);<br />
    Serial.print("s : ");<br />
    i++;<br />
    if (i % 20 &lt;= 10 &amp;&amp; i&lt;60) { //Reset only during 10s the first minute<br />
      Serial.println(" Resetting WDT...");<br />
      esp_task_wdt_reset();<br />
      delay(1);  //VERY VERY IMPORTANT for Watchdog Reset to apply. At least 1 ms<br />
      if (i % 20 == 10) { // No reset after 10s for test<br />
        Serial.println("Stopping WDT reset.");<br />
      }<br />
    } <br />
  }<br />
}</code></div></div>]]></content:encoded>
		</item>
	</channel>
</rss>