با یک نمایشگر ۷۰ هزارتومانی، خانواده را از جلسه بودنم باخبر می‌کنم

خلاصه

با یک برد ESP32 و نمایشگر ارزان، سیستم «On Air» ساختم که وضعیت جلساتم را از گوگل‌کالندر می‌خواند و به‌صورت زنده روی صفحه نشان می‌دهد تا هم‌خانه‌ها بدانند کی مزاحم نشوند.

مقدمه

کار در خانه راحت است تا وقتی کسی وسط جلسه در را باز نکند! با این پروژه ۳ ساعته، یک چراغ هوشمند ساختم که خودش وضعیت تماسم را اعلام می‌کند.

آنچه لازم دارید

  • برد ESP32 با صفحه‌نمایش لمسی (مثل WT32-SC01 Plus)
  • ESPHome نصب‌شده روی دستگاه
  • Home Assistant با دسترسی به اینترنت
  • یک تقویم گوگل که رویدادهای کاری در آن باشد

مرحله ۱: تقویم را به Home Assistant بیاورید

در مسیر Settings > Devices & Services > Add Integration، Google Calendar را اضافه کنید. هر تقویم به‌صورت یک موجودیت (entity) جدا نمایش داده می‌شود.

سنسورهای الگویی که بسازید

نام سنسور | کاربرد
عنوان جلسه | نمایش نام جلسه
ساعت شروع | استخراج ساعت شروع
ساعت پایان | استخراج ساعت پایان
در جلسه‌ام؟ | باینری‌سنسور خود تقویم
امروز جلسه دیگری دارم؟ | بررسی وجود رویداد بعدی در همان روز

کد نمونه برای ساعت شروع:

{% set s = state_attr('calendar.your_mail_com','start_time') %}
{% if s %}
  {% set dt = as_datetime(s) %}
  {{ dt.strftime('%H:%M') }}
{% else %}-{% endif %}

مرحله ۲: ESPHome را پیکربندی کنید

فایل YAML دستگاه را طوری بسازید که چهار متغیر زیر را از Home Assistant دریافت کند:

  • وضعیت «در جلسه» (true/false)
  • عنوان جلسه فعلی یا بعدی
  • ساعت پایان جلسه فعلی
  • پاسخ به این سوال: «امروز جلسه دیگری دارم؟»

منطق نمایش

وضعیترنگ صفحهمتن
در جلسه‌امقرمزOn Air تا ۱۴:۳۰
جلسه‌ای نیست و امروز جلسه دیگری دارمآبیFree بعدی: ۱۶:۰۰
جلسه‌ای نیست و امروز دیگر جلسه‌ای ندارمسبزFree امروز تمام شد!

نصب و تست نهایی

۱. دستگاه را فلش کنید.
۲. در Home Assistant، از قسمت Services، سرویس esphome.your_device_reload را اجرا کنید تا متغیرها فوراً به‌روز شوند.
۳. یک رویداد آزمایشی در تقویم بسازید و ببینید صفحه چگونه تغییر می‌کند.

ایده‌های بعدی

  • اتصال به HASS-Agent برای تشخیص روشن بودن وب‌کم یا میکروفون
  • افزودن دکمه لمسی برای دستی کردن وضعیت
  • پخش صدای ملایم «لطفاً مزاحم نشوید» هنگام شروع جلسه

همین حالا می‌توانید تمام کدها را از مخزن گیت‌هاب پروژه دانلود و شروع به ساخت کنید.

اشتراک گذاری

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *