2 คะแนน โดย GN⁺ 2024-04-24 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ESPHome เป็นแพลตฟอร์มที่เปลี่ยนบอร์ดอย่าง ESP32, ESP8266, BK72xx และ RP2040 ให้กลายเป็นอุปกรณ์สมาร์ตโฮม โดยตั้งค่าอุปกรณ์ด้วย YAML แทน C++
  • รองรับการควบคุมแบบโลคัลและการอัปเดตผ่านเครือข่ายไร้สาย ช่วยลดการพึ่งพาคลาวด์ และสามารถผสานเซ็นเซอร์ จอแสดงผล และคอมโพเนนต์ต่าง ๆ เพื่อสร้างอุปกรณ์ได้หลากหลาย
  • ครอบคลุมผู้ใช้ตั้งแต่สาย DIY ไปจนถึงผู้ให้บริการติดตั้งระบบมืออาชีพ และผู้ผลิตที่สร้างผลิตภัณฑ์ที่ได้รับการรับรองMade for ESPHome
  • สภาพแวดล้อมที่รองรับรวมถึง Espressif ESP32·ESP8266, Raspberry Pi RP2040, Nordic Semiconductor nRF52, Realtek RTL87xx, Beken BK72xx ตลอดจนhost platformสำหรับบางคอมโพเนนต์
  • สำหรับการเริ่มต้น เส้นทางผ่าน Home Assistant ทำได้ง่ายที่สุด ส่วนผู้ใช้ขั้นสูงสามารถเริ่มจากคู่มือ command line หรือโปรเจกต์ที่ตั้งค่าไว้ล่วงหน้าได้

อุปกรณ์สมาร์ตโฮมแบบโลคัลที่ตั้งค่าด้วย YAML

  • ESPHome เปลี่ยน ESP32, ESP8266, BK72xx, RP2040 และบอร์ดอื่น ๆ ที่รองรับให้เป็นอุปกรณ์สมาร์ตโฮม
  • ใช้วิธีตั้งค่าอุปกรณ์ผ่านไฟล์คอนฟิก YAMLแทนโค้ด C++ ที่ซับซ้อน
  • คุณสมบัติหลัก

    • ตั้งค่าได้โดยไม่ต้องเขียนโค้ด: ใช้การตั้งค่า YAML แบบง่ายโดยไม่ต้องพึ่ง C++ ที่ซับซ้อน
    • อัปเดตผ่านเครือข่ายไร้สาย: อัปเดตได้โดยไม่ต้องเข้าถึงตัวอุปกรณ์โดยตรง
    • การออกแบบแบบโมดูลาร์: รองรับเซ็นเซอร์ จอแสดงผล และคอมโพเนนต์อื่น ๆ หลายร้อยแบบ
    • การควบคุมแบบโลคัล: ทำงานในเครื่องได้โดยไม่ต้องพึ่งคลาวด์
  • แหล่งข้อมูลที่เกี่ยวข้อง

กลุ่มผู้ใช้และเส้นทางเริ่มต้น

  • ใครที่ใช้งาน

    • ผู้ใช้ DIY: สร้างเซ็นเซอร์ สวิตช์ และจอแสดงผลให้ตรงกับความต้องการเฉพาะ
    • ผู้ใช้งานสมาร์ตโฮมสายงานอดิเรก: ขยายระบบโฮมอัตโนมัติด้วยอุปกรณ์คัสตอมราคาประหยัด
    • ผู้ให้บริการติดตั้งระบบมืออาชีพ: นำอุปกรณ์สมาร์ตที่ควบคุมแบบโลคัลไปใช้งานให้ลูกค้า
    • ผู้ผลิต: ผลิตสินค้าที่ได้รับการรับรอง Made for ESPHome ด้วยเฟิร์มแวร์มาตรฐาน
  • ไมโครคอนโทรลเลอร์และสภาพแวดล้อมการรันที่รองรับ

    • Espressif ESP32·ESP8266: รองรับไมโครคอนโทรลเลอร์ ESP32·ESP8266 ที่ใช้ในโปรเจกต์ IoT จำนวนมาก
    • RP2040: รองรับไมโครคอนโทรลเลอร์ RP2040 ของ Raspberry Pi
    • ชิปอื่น ๆ: รองรับ Nordic Semiconductor nRF52, Realtek RTL87xx และ Beken BK72xx
    • เดสก์ท็อป host platform: สามารถรันคอมโพเนนต์ของ ESPHome ได้จำนวนมากบนคอมพิวเตอร์เดสก์ท็อปด้วย
  • วิธีเริ่มต้น

    • การเริ่มต้นผ่านแอป Home Assistant เป็นเส้นทางที่ง่ายที่สุด: Home Assistant Guide
    • ผู้ใช้ขั้นสูงที่ชอบทำงานผ่าน command line สามารถใช้คู่มือแยกได้: Command Line Guide
    • กรณีการใช้งานทั่วไปสามารถเริ่มจากโปรเจกต์ที่ตั้งค่าไว้ล่วงหน้าได้: Browse Projects

1 ความคิดเห็น

 
GN⁺ 2024-04-24
ความคิดเห็นบน Hacker News
  • ผมเป็นหนึ่งในคนที่นำ ESPHome อยู่ ถ้ามีคำถามก็บอกมาได้เลย
    เมื่อวันเสาร์ที่ผ่านมา เราประกาศว่า ESPHome ได้มาอยู่ภายใต้การเป็นเจ้าของของ Open Home Foundation แล้ว
    Open Home Foundation เป็นองค์กรที่มุ่งปกป้องความเป็นส่วนตัว ทางเลือก และความยั่งยืน เพื่อสมาร์ตโฮมและทุกคนที่อาศัยอยู่ในนั้น: https://www.openhomefoundation.org/blog/announcing-the-open-...

    • คนที่อยากลองใช้ ESPHome สามารถติดตั้งโปรเจกต์ที่เตรียมไว้แล้วแล้วลองได้ทันที โดยไม่ต้องเขียนคอนฟิกแม้แต่บรรทัดเดียว: https://esphome.io/projects/
      สามารถเปลี่ยนไมโครคอนโทรลเลอร์ราคาถูกให้เป็น ผู้ช่วยเสียง, พร็อกซี Bluetooth หรือมีเดียเพลเยอร์ได้จากในเบราว์เซอร์โดยตรง
    • ไม่มีคำถาม มีแต่คำชม ESPHome ยอดเยี่ยมจริง ๆ และทุกครั้งที่เห็นฟีเจอร์ก็ทึ่ง
      ผมเคยขุดลึกลงไปใน Espressif SDK จนแทบทำสวิตช์ไร้สายที่มีเซ็นเซอร์อุณหภูมิและ MQTT ได้เกือบหมดแล้ว แต่พอเจอ ESPHome งานทั้งหมดที่ทำมาก็ไม่จำเป็นอีกต่อไป
      ฟีเจอร์ที่ผมเขียนไว้มีอยู่ครบแล้ว แถมยังมีฟีเจอร์อีกมากมายกว่านั้นด้วย
    • ESPHome ยอดเยี่ยม แต่ผมอยากหลุดออกจาก IoT บน Wi-Fi เหตุผลใหญ่คือชอบ เครือข่ายเมชที่ซ่อมแซมตัวเองได้ ซึ่งทำงานออฟไลน์ได้อย่างสมบูรณ์โดยไม่ต้องตั้งค่าอะไรมาก
      ดูเหมือนว่า Espressif จะมีอุปกรณ์บางตัวที่มีฟังก์ชัน Zigbee อยู่ เลยสงสัยว่าในอนาคตจะมีช่องทางให้สร้าง อุปกรณ์ Zigbee เองได้หรือไม่
    • โปรเจกต์ ESPHome มีความสามารถสูงและเน้นผู้ใช้เป็นศูนย์กลางอย่างผิดปกติ และทำงานได้ดีจนแทบจะน่าประหลาด
      แต่สิ่งที่ผมต้องการคือการให้รัน feedback loop ที่รวดเร็วและอัลกอริทึมบนบอร์ดที่ซับซ้อนขึ้นภายในอุปกรณ์ได้ แม้ผมจะไม่แน่ใจว่ามันอยู่ในขอบเขตของ ESPHome หรือทำให้เรียบร้อยได้หรือไม่
      ตัวอย่างเช่น ให้เซ็นเซอร์วัดแสงควบคุมหลอดไฟ ปรับความสว่างต่อเนื่องด้วยการเปลี่ยนแปลงเล็ก ๆ ที่แทบไม่รู้สึก และใช้สิ่งอย่าง Kalman filter เพื่อรักษาระดับแสงและอุณหภูมิสีให้คงที่ตามช่วงเวลา
      ผมอยากควบคุมเครื่องฟอกอากาศ การระบายอากาศ การทำความร้อน การเพิ่มความชื้น การลดความชื้น และการทำความเย็นอย่างต่อเนื่อง เพื่อปรับสภาพแวดล้อมและการใช้พลังงานให้เหมาะสม การระบายอากาศช่วยลด CO2/TVOC แต่พา PM2.5 และอุณหภูมิภายนอกเข้ามา ส่วนการทำความเย็น/ความร้อน การระบายอากาศ และความชื้นก็เชื่อมโยงกันซับซ้อน
      เครื่องทำความร้อนเสริมแพงกว่าระบบทำความร้อนหลักมาก แต่จำเป็นในวันที่หนาวจัด และเมื่อไม่มีคนอยู่บ้าน ความสำคัญก็เปลี่ยนไป จึงอยากให้ตอนมีคนอยู่มีความชื้นที่พออยู่สบาย ส่วนตอนคนไม่อยู่ให้ลดความชื้นให้น้อยที่สุด
      อย่างที่สองคืออยากให้ ESPHome สร้างได้ไม่ใช่แค่อุปกรณ์ Wi-Fi แต่รวมถึง อุปกรณ์ Zigbee ด้วย
    • ESPHome ทำให้การแฟลช การคอมไพล์ การดูล็อก และการอัปเดต OTA ง่ายทั้งหมด เดิมทีเป็นงานที่น่ารำคาญเสมอ แต่ตอนนี้ง่ายแล้ว
      การดูล็อกผ่าน Wi-Fi มันเรียบง่ายได้ขนาดนี้เลยหรือ
      ผมทำ ตัวรับ/ส่งอินฟราเรด ขนาดเล็กเพื่อควบคุมระบบเสียงด้วยรีโมตทีวี การตั้งค่าง่ายมาก และการเชื่อมกับ Home Assistant ก็ยอดเยี่ยม
  • ผมใช้อุปกรณ์มากกว่า 20 ตัวด้วย ESPHome โดยราวสามในสี่อยู่ในเครือข่าย Home Assistant และอีกราว 6 ตัวให้ ESPHome ทำงานแบบอิสระโดยสื่อสารกับอย่างอื่นผ่าน MQTT
    กำลังดูข้อมูลจากสถานีตรวจอากาศจีนราคาถูกที่เปลี่ยนภายในเป็น ESP32, การมอนิเตอร์ถังน้ำฝน, ความชื้นดินในเรือนกระจก, อุณหภูมิ/ความชื้นหลายจุดในบ้าน, คุณภาพอากาศในครัวและห้องเด็ก ๆ เป็นต้น
    ESPHome เป็นโปรเจกต์ที่ถูกประเมินต่ำไปจริง ๆ พูดตรง ๆ คือใช้เวลา 5 นาที, ฮาร์ดแวร์ราคา 10 ดอลลาร์, ไม่ต้องเขียนโปรแกรม ก็สร้างอุปกรณ์ IoT ในบ้านเองและรับข้อมูลเรียลไทม์จากทุกที่ในบริเวณบ้านได้

    • ผมก็คล้ายกัน และมันถูกมากจนเก็บบอร์ด ESP32 หลากรุ่นไว้ในกล่องชิ้นส่วนอิเล็กทรอนิกส์เป็นสิบ ๆ บอร์ด
      การมีฮาร์ดแวร์อยู่ใกล้มือเมื่อไอเดียผุดขึ้นมาให้อิสระอย่างมาก
      มันเสถียรอย่างน่าประหลาดใจ และโมดูลอย่างตัวควบคุมสปริงเกลอร์ก็โปรแกรมให้ทำงานอิสระได้ ขอแค่มีไฟก็ทำงานต่อไป
      ผมเพิ่งรู้หลังผ่านไปหลายเดือนว่า microSD card ของ Home Assistant พัง เพราะ อุปกรณ์ไฮโดรโปนิกส์ ของผมยังทำงานปกติต่อเนื่องอยู่
      งานที่กินเวลามากที่สุดคือการเดินสายเข้ากับ DC/DC converter เพื่อขับรีเลย์ภายในกล่องกันน้ำ Sockitbox
      การมีบอร์ด breakout สำหรับขั้วต่อสายไฟไว้ใกล้ ๆ ก็มีประโยชน์มาก: https://www.amazon.com/whiteeeen-Development-Expansion-ESP-W...
      CloudFree ก็เป็นแหล่งที่ดีในการหาอะไหล่ IoT สำเร็จรูปที่โปรแกรมใหม่ด้วย ESPHome ได้: https://cloudfree.shop/
    • ควรแชร์รายละเอียดเพิ่มเติมเกี่ยวกับฮาร์ดแวร์ เคส แหล่งจ่ายไฟ และขั้นตอนการทำงานที่ใช้กับอุปกรณ์เหล่านั้น
    • สงสัยว่าจ่ายไฟอย่างไร
      เมื่อก่อนผมใช้ ESPHome กับ Wittycloud ESP8266 ราคา 3 ดอลลาร์ เพื่อดึงข้อมูลวิเคราะห์พลังงานแสงอาทิตย์แล้วดูการใช้ไฟใน Home Assistant
      แต่ยังหาวิธีจ่ายไฟที่ดูเรียบร้อยนอกจากอะแดปเตอร์ USB ไม่ได้เลย สำหรับเซ็นเซอร์กลางแจ้งอยากได้ วิธีใช้แบตเตอรี่ที่เรียบร้อย
    • โดยรวมเห็นด้วย แต่ผมอยากตัดส่วน ฮาร์ดแวร์ 10 ดอลลาร์ ออก
      ดูเหมือนจะใช้ชิปที่ค่อนข้างไฮเอนด์
      ถ้าจะประหยัดกว่านั้น ESP8266 ลงไปได้ถึง 4 ดอลลาร์ด้วยซ้ำ และน่าทึ่งจริง ๆ
    • สงสัยว่ามีชิ้นส่วนที่เหมาะกับงานด้านความปลอดภัยแนะนำไหม
      เช่น กรณีมีคนเข้ามาในบ้านที่ผมปล่อยเช่าโดยไม่มีร่องรอยการบุกรุก
      ในเอกสารมีตัวเลือกหลายอย่าง แต่ไม่รู้ควรไปทางการตรวจจับการเคลื่อนไหว/การมีคนอยู่ หรือใช้ตัวตรวจจับการมีคนอยู่แบบไบนารี อยากรู้ว่าเซ็นเซอร์แบบไหนดีกว่าและคุ้มค่ากว่า
  • สิ่งที่ดีที่สุดของ ESPHome คือ คอมมูนิตี้ที่แข็งแกร่งและกระตือรือร้น
    สำหรับมอนิเตอร์คุณภาพอากาศฮาร์ดแวร์โอเพนซอร์ส [1] ที่เราสร้างขึ้น สมาชิกคอมมูนิตี้ได้พัฒนา integration ของ ESPHome ที่ประณีต [2]
    integration นั้นมีฟีเจอร์ทั้งหมดที่อยู่ในเฟิร์มแวร์โอเพนซอร์สหลัก และบางครั้งยังทำฟีเจอร์ใหม่ได้เร็วกว่าเราด้วย
    ในแง่หนึ่ง การแข่งขันแบบโอเพนซอร์สเช่นนี้ช่วยและกระตุ้นให้เวอร์ชันซอฟต์แวร์ของเราดีขึ้น
    [1] https://www.airgradient.com/
    [2] https://github.com/MallocArray/airgradient_esphome

  • มีเอกสารที่เกี่ยวข้องเป็นชุดการตั้งค่าอุปกรณ์ ESPHome สำหรับฮาร์ดแวร์เชิงพาณิชย์: https://devices.esphome.io/
    และยังมีชุด การตั้งค่า Tasmota สำหรับอุปกรณ์ที่หลายครั้งก็รัน ESPHome ได้เช่นกัน: https://templates.blakadder.com/

  • นอกเรื่องเล็กน้อย แต่ชอบ ESPHome และใช้กับเซ็นเซอร์อุณหภูมิที่ใช้ IoT ในบ้านอยู่หลายตัว
    แต่จุดที่มักติดเรื่อง WAF หรือความยอมรับจากภรรยาเสมอ คือการเอา ESP32, เซ็นเซอร์ และสายไฟที่พันกันยุ่งเหยิงไปใส่ภาชนะซ่อนให้ดูดี
    อยากรู้ว่าคนอื่น ๆ ใช้อะไรซ่อนชิ้นส่วนอิเล็กทรอนิกส์กัน

    • ถ้ามีเครื่องพิมพ์ 3D ก็ทำของที่ผ่านเกณฑ์ WAF ของผมได้
      สินค้าของ Apollo ทำออกมาได้ค่อนข้างไม่สะดุดตา: https://apolloautomation.com/products/sensor-stand?pr_prod_s...
    • ถ้าเป็นของที่ต้องใช้แบบสแตนด์อโลน จะเช็กก่อนว่ามีสินค้าสำเร็จรูปอยู่แล้วไหม โดยทั่วไปคุ้มค่ากว่าทำเองและดูดีกว่า
      สำหรับเซ็นเซอร์อุณหภูมิ มักเลือกสินค้าสำเร็จรูปที่เฟิร์มแวร์นี้รองรับ: https://github.com/pvvx/ATC_MiThermometer
      แถมยังทำงานด้วยแบตเตอรี่ได้นานกว่า 1 ปี
    • ขอแนะนำ กล่อง Tupperware ได้ มีรูปทรงและขนาดหลากหลาย และราคาถูกมาก
      ถ้าใช้ชามแก้วหรือพลาสติกใส ก็จะมองเห็นด้านในได้โดยที่ชิ้นส่วนไม่สกปรก
      ตอนติดตั้งบนผนัง ให้ขันบอร์ดไว้ด้านในของฝา แล้วติดฝานั้นกับผนัง เท่านี้ก็เข้าถึงได้ง่าย เพียงถอดตัวกล่องออกจากฝา
      ข้อเสียคือถ้าวางไว้ในจุดที่เห็นชัด อาจดูไม่สวย
    • enclosure สำหรับโปรเจ็กต์จะพิมพ์ด้วยเครื่องพิมพ์ 3D
      โดยปกติจะหาแบบเดิมใน Thingiverse ที่พอเข้ากันได้ ถ้าใช้ชิ้นส่วนที่พบได้ทั่วไป ก็มีโอกาสสูงที่จะหาโมเดลที่พอดีเป๊ะได้
    • สำหรับกรณีนี้ M5Stack คือคำตอบ
  • มีคำถามที่ค้นหาแล้วก็ยังหาคำตอบไม่ได้
    มีระบบเตือนถังบำบัดน้ำเสีย และเมื่อสวิตช์ลูกลอยตรวจพบว่าถังเต็ม 3/4 จะเปิดสัญญาณเตือนทั้งเสียงและภาพ
    มีคู่ หน้าสัมผัสแห้งแบบ NO ที่จะปิดวงจรเมื่อสัญญาณเตือนดัง
    อยากรู้ว่าควรมอนิเตอร์อย่างไรให้รู้ว่าหน้าสัมผัสนี้ปิดหรือเปิดอยู่ คิดว่าน่าจะใช้ขา GPIO ได้ แต่ค้นหาแล้วไม่เจอคำตอบที่ใช้ได้
    กำลังคิดว่าจะยอมแพ้แล้วใช้รีเลย์แพ็กเกจ RIB01BDC [0] เปิด Raspberry Pi จากนั้นให้ส่งอีเมลเมื่อหน้าสัมผัสของถังบำบัดปิดวงจร
    [0] https://www.functionaldevices.com/product/rib01bdc/

    • ถ้าไม่สมมติว่าใช้ไมโครคอนโทรลเลอร์ตัวใดเป็นพิเศษ ให้ต่อหน้าสัมผัสหนึ่งเข้ากับกราวด์ แล้วต่อขา GPIO·หน้าสัมผัสอีกด้าน·ตัวต้านทาน 10k หรือ 100k·VCC เข้าด้วยกันแบบอนุกรม
      ให้ไมโครคอนโทรลเลอร์อ่านขา GPIO เป็นระยะ ๆ ถ้าเป็นค่าสูง แปลว่าหน้าสัมผัสเปิดอยู่และสัญญาณเตือนไม่ดัง ถ้าเป็นค่าต่ำ แปลว่าหน้าสัมผัสปิดและสัญญาณเตือนดัง
      การจัดวงจร GPIO/หน้าสัมผัส/ตัวต้านทาน/VCC ทำหน้าที่เป็น วงจร pull-up ที่ดึงด้านหนึ่งของวงจรขึ้นไปยังลอจิกระดับสูง และตัวต้านทานจะจำกัดกระแสที่ไหลเมื่อหน้าสัมผัสปิด
      ถ้าไมโครคอนโทรลเลอร์รองรับการตั้งค่า pull-up ภายในของขา GPIO ก็อาจต่อขาเข้ากับหน้าสัมผัสโดยตรงได้โดยไม่ต้องมีฮาร์ดแวร์เพิ่มเติม
      ในทางกลับกัน ถ้ามีการตั้งค่า pull-down ภายใน ก็สามารถสลับโดยต่อ VCC เข้ากับหน้าสัมผัส และต่อ GPIO ตรงกับอีกด้านได้ ควรดูเอกสารของไมโครคอนโทรลเลอร์เรื่องฟังก์ชันที่มีและการจำกัดกระแส
    • ใช้ เซ็นเซอร์อัลตราโซนิก กับ ESPHome เพื่อเฝ้าระวังระดับน้ำในบ่อพักน้ำทิ้งอยู่
      ขึ้นอยู่กับข้อมูลที่ต้องการในการมอนิเตอร์ถังบำบัด วิธีนี้ก็อาจเป็นตัวเลือกที่มีประโยชน์ได้
  • ทำ นาฬิกาบันทึกเวลาเข้า-ออกงาน ด้วย ESPHome และ M5StickC
    เมื่อบันทึกเวลาเข้างาน/ออกงาน Home Assistant จะส่งเวลาไปยัง Google Sheet และทำงานได้เสถียรมาก

  • จุดที่น่าสนใจอย่างหนึ่งคือ ESP32 รองรับ การตรวจจับการแตะแบบ capacitive บนบางขา ทำให้เปลี่ยนพื้นผิวนำไฟฟ้าให้เป็นปุ่มสมาร์ตโฮมหรืออุปกรณ์ป้อนข้อมูลได้
    ESPHome ก็รองรับได้ดี: https://esphome.io/components/binary_sensor/esp32_touch.html

  • มีโปรเจ็กต์เล็ก ๆ ที่อยากลองทำอยู่
    อยากดึงเวลารถบัสมาถึงป้ายใกล้บ้านจาก API ขนส่งท้องถิ่น แล้วแสดงเวลาของรถบัสหลัก 3 สายบนจอใหญ่จอเดียว หรือจอเล็ก 3 จอแยกตามสาย
    ไม่จำเป็นต้องความละเอียดสูง แต่อยากให้ใหญ่และสว่างพอที่คนในครอบครัวจะมองเห็นได้ชัดจากระยะไกล เช่น ใช้จอ 7-segment แสดงเลขสายรถบัส 3 หลักกับจำนวนนาทีที่เหลือก่อนมาถึง 4 หลัก
    ควรอัปเดตผ่าน Wi-Fi ได้ และถ้ามีอุปกรณ์กินไฟต่ำอย่าง Arduino/Raspberry Pi ต่ออยู่ก็ไม่เป็นไร ถ้ารันด้วยแบตเตอรี่ AA ได้จะยิ่งดี
    อย่างแรกพอทำเป็น แต่อย่างที่สองไม่รู้เลย และไม่เคยบัดกรีมาก่อนด้วย ถ้ามีคนรู้ช่วยชี้ทางให้ได้ก็ดี

    • ESPHome เป็นเฟรมเวิร์กที่เหมาะเป็นจุดเริ่มต้น เพราะประกอบหลายคอมโพเนนต์ซ้อนกันได้ง่าย
      สามารถผสมคอมโพเนนต์ display สำหรับวาดบนกริดพิกเซล https://esphome.io/components/display/, ตัวเรนเดอร์ข้อความ, addressable_light platform ที่สร้างเมทริกซ์แสดงผลบนไดรเวอร์ LED แบบระบุตำแหน่งได้ https://esphome.io/components/light/neopixelbus https://esphome.io/components/display/addressable_light, และแผง LED 8x32 ราคาถูก https://www.google.com/search?q=8x32+ws2812b อะไรทำนองนี้ได้
      ถ้าต้องการพื้นที่มากขึ้น ก็ทำหลายชุดหรือเอาแผงมาต่อกันได้
      แน่นอนว่าไม่จำเป็นต้องประดิษฐ์ล้อใหม่ จะทำตามไกด์แบบนี้ก็ได้: https://community.home-assistant.io/t/led-matrix-with-esphom...
      โดยเฉพาะถ้าไปทางนำฮาร์ดแวร์สำเร็จรูปอย่าง Ulanzi มาใช้ใหม่ ก็ไม่ต้องบัดกรีมาก สิ่งสำคัญคือการต่อสายข้อมูลให้ถูกและจ่ายไฟให้เพียงพอ
    • ถ้าดูเหมือนว่าคุณคุ้นกับ Arduino อยู่แล้ว ก็ใช้มันเป็นเฟรมเวิร์กไปเลยได้
      สามารถโปรแกรม ESP32 ด้วย Arduino ได้ และยังใช้ไลบรารีที่คุ้นเคยกับการจัดการ Wi-Fi แบบเดิมได้
      Adafruit มี RGB matrix ขาย และยังขายบอร์ด ESP32 ที่ขับมันได้โดยตรงด้วย ดังนั้นแทบจะเสียบแล้วใช้งานได้เลย แทบไม่ต้องมีความรู้ฮาร์ดแวร์
      ถ้าอยากทำเองแต่ต้องการแนวทาง ลองดูโปรเจ็กต์นี้ซึ่งทำเอกสารทั้งฮาร์ดแวร์และซอฟต์แวร์ของอุปกรณ์แสดงข้อความผ่าน Wi-Fi ที่คล้ายกับสิ่งที่ต้องการ: https://github.com/BlueAndi/esp-rgb-led-matrix
  • ส่วนตัวไม่ได้ใช้ แต่ดูเป็นไอเดียที่ยอดเยี่ยมจริง ๆ
    เมื่อก่อนเคยทำบอร์ดเซ็นเซอร์และเขียนเฟิร์มแวร์เอง ต้องลองดูว่าจะตั้งค่า ESPHome ง่าย ๆ ให้รันบนบอร์ดนั้นได้ไหม
    แต่ฟีเจอร์ที่จำเป็นซึ่งเฟิร์มแวร์ของฉันมีอยู่แล้วคือ การอัปเดต OTA แบบ pull
    ตอนนี้ถ้าคัดลอกเฟิร์มแวร์ไว้ในโฟลเดอร์ เซ็นเซอร์ทั้งหมดในบ้านจะอัปเดตไปเป็นเฟิร์มแวร์นั้นโดยอัตโนมัติผ่านเซิร์ฟเวอร์ HTTP
    ใน ESPHome ต้อง push การอัปเดตแยกไปทีละเซ็นเซอร์ ถ้ามีหลายสิบตัวก็ยุ่งยาก

    • ผมก็ทำเกือบเหมือนกัน แต่ครั้งล่าสุดที่ดู แทบไม่มีแหล่งข้อมูลที่จะช่วยสร้างเฟิร์มแวร์คัสตอมสำหรับบอร์ดใหม่ที่มีเซ็นเซอร์หลายตัว นอกจากอ่านโค้ด ESPHome เอง
      ดูเหมือนว่าการเขียนเฟิร์มแวร์เองให้สื่อสารกับแบ็กเอนด์ง่าย ๆ จะง่ายและเร็วกว่า
      ผมยังสงสัยด้วยว่าโค้ดสำหรับอุปกรณ์ ESP32 ถูกใส่เข้าไปอย่างไร ถ้าต้องการ OTA บนอุปกรณ์แฟลช 4MB ขีดจำกัดของโปรแกรมจริง ๆ จะอยู่ราว 1MB
      แม้แต่โปรแกรมง่าย ๆ ที่เรียกแค่ GPIO, ADC, UART, Wi-Fi, HTTPS, HTTPS server, interrupt, FreeRTOS, MQTT, NVS, ข้อมูลชิป, log, OTA และฟังก์ชันไลบรารีมาตรฐาน ก็เกินขีดจำกัด 1MB ไปแล้ว แค่ scanf ตัวเดียวก็ใช้ 30KB
      ถ้าปิด log ทั้งหมดแล้วคอมไพล์ จะลดลงมาได้ราวโปรแกรมขนาด 800KB แต่ถึงยังไม่มีลอจิกของโปรแกรมเลยก็ยังค่อนข้างใกล้ขีดจำกัด
      ครั้งหน้าถ้าต้องใช้อุปกรณ์มอนิเตอร์ระยะไกล จะกลับมาดูอีกที
    • ในเว็บอินเทอร์เฟซมีปุ่ม update all เลยสะดวกในระดับนั้น
      ถ้ามีอุปกรณ์ที่ไม่อยากอัปเดต ก็ใส่คีย์เวิร์ดที่ไม่คาดคิดไว้ชั่วคราวในไฟล์ YAML ให้การคอมไพล์และการอัปเดตล้มเหลวไป
    • การใช้สิ่งนี้อาจช่วยลดบั๊กและความจำเป็นในการแก้ไขได้
      ที่บ้านมีอุปกรณ์ ESP ติดหัววัดอุณหภูมิอยู่หลายตัว และกำลังจะย้ายไป ESPHome เพื่อลดโค้ดที่ต้องดูแล
    • คุ้มที่จะลองใช้ดู ESPHome สะดวกมาก
      โดยเฉพาะตรงที่ตอนแรกแฟลชจากเบราว์เซอร์ได้ และหลังจากนั้นก็อัปเดตแบบไร้สายได้
    • ฟีเจอร์นี้จะเข้ามาในรีลีสถัดไป