کنترل از راه دور دکمه پاور کامپیوتر با برد ارزان‌قیمت ESP32 به عنوان جایگزین Wake-on-LAN

کنترل از راه دور دکمه پاور کامپیوتر با برد ارزان‌قیمت ESP32 به عنوان جایگزین Wake-on-LAN

قابلیت Wake-on-LAN (WOL) ابزار مفیدی برای روشن کردن کامپیوترها از راه دور است، اما همیشه بی‌نقص عمل نمی‌کند. به‌روزرسانی‌های BIOS، رفتن کارت شبکه به حالت خواب عمیق یا قطع ناگهانی برق می‌توانند این قابلیت را غیرفعال کنند. در چنین شرایطی، فشردن فیزیکی دکمه پاور تنها راه چاره است. برای حل این مشکل، یک راهکار جایگزین و مطمئن با استفاده از برد ارزان‌قیمت ESP32 توسعه یافته است که مستقیماً به هدر پاور مادربرد متصل می‌شود.

دکمه پاور کامپیوتر در واقع یک سوئیچ ساده است که دو پین روی هدر پنل جلویی مادربرد را به یکدیگر متصل می‌کند. برد ESP32 با شبیه‌سازی این اتصال الکترونیکی از طریق پین‌های GPIO خود، کارکرد دکمه فیزیکی را بازسازی می‌کند. برای این کار به قطعات ساده‌ای مانند یک اپتوکوپلر (گزینه ایده‌آل) یا یک رله نیاز است. پس از اتصال فیزیکی، ESP32 به شبکه Wi-Fi متصل شده و کاربر می‌تواند از طریق پلتفرم‌هایی مانند Home Assistant یا یک صفحه وب، فرمان روشن شدن را صادر کند.

مزایای ESP32 نسبت به Wake-on-LAN

برخلاف WOL که در صورت قطع کامل برق یا تغییر تنظیمات سیستم‌عامل از کار می‌افتد، شبیه‌سازی دکمه فیزیکی پاور این محدودیت‌ها را ندارد. این روش همچنین قابلیت‌هایی فراتر از WOL ارائه می‌دهد؛ برای مثال، کاربر می‌تواند با ارسال فرمان «فشردن طولانی‌مدت» (Long Press)، سیستم را در صورت قفل کردن به صورت اجباری خاموش (Force Shutdown) کند. علاوه بر این، می‌توان برد ESP32 را به هدر LED مادربرد نیز متصل کرد تا وضعیت روشن یا خاموش بودن واقعی کامپیوتر را به کاربر گزارش دهد.

قطعات مورد نیاز و نحوه راه‌اندازی

برای ساخت این ابزار به یک برد ESP32، رله یا اپتوکوپلر، چند مقاومت (بسته به نوع مدار) و یک برد بورد (Breadboard) برای تست اولیه نیاز است. خروجی ESP32 به رله متصل می‌شود تا جریان را کنترل کند. در این پروژه از فریم‌ورک ESPHome برای برنامه‌نویسی برد استفاده شده است. کد نوشته‌شده شامل دو عملکرد اصلی است: یک پالس کوتاه ۳۰۰ میلی‌ثانیه‌ای برای روشن یا خاموش کردن عادی کامپیوتر، و یک پالس طولانی ۵۵۰۰ میلی‌ثانیه‌ای برای خاموش کردن اجباری سیستم در مواقع اضطراری.