หลังจากใช้งาน Home Assistant (HA) กับ Tuya มาได้พักใหญ่ คิดว่าตกผลึกประมาณนึงละ เลยอยากเล่าหน่อย
Tuya เป็นบริษัทที่ขายอุปกรณ์ Iot + platform ของจีนเจ้าใหญ่ ที่มีบริษัทเอาไปผลิต device ออกมาเยอะมากที่ใช้งานบน platform ของ Tuya มีทั้งแบบที่เป็น Wi-Fi และ Zigbee
ก่อนจะไปต่อ ต้องบอกความคิดเบื้องหลังใช้งาน Tuya กับ Home Assistant ของตัวเอง ซึ่งก็คือ
- แอพ Tuya ต้องยังใช้งานกับอุปกรณ์ได้ปกติ
- ไม่อยากลง custom firmware – อยากให้สามารถใช้งานได้ปกติ ไม่อยากต้องตามข่าวของ library / breaking changes ต่างๆ ของแต่ละ component
- สามารถใช้งานกับ Google Assistant ได้ (เพื่อทำ voice commands)
- ถ้าสามารถไม่ต้องพึ่งพา internet ได้ก็จะดี (optional)
ในการ Integrate Tuya เข้ากับ Home Assistant นั้นมีด้วยการ 2 ท่า คือ
- Official Tuya Integration – https://www.home-assistant.io/integrations/tuya/
อันนี้ก็ตามตัว อันหลักของ Tuya built-in มาในระบบของ HA เอง มีข้อควรทราบคือ
- ต้องการ Tuya Iot platform account คือเราต้องไปสมัคร developer platform เพื่อให้ได้ client detail มากรอกใน Home Assistant
- ในการใช้งาน developer platform จะมีสิ่งที่เรียกว่า subscription อยู่ ซึ่งที่ผ่านมาจนถึงตอนนี้ ยังฟรีอยู่ (โดยเรียกว่า trial) ซึ่งเมื่อหมดอายุก็เข้ามากด ขอต่ออายุได้ … แต่แน่นอนว่าเราต้องขยันเข้ามากดขอต่ออายุนะ ไม่งั้นก็ใช้ไม่ได้
- การต่อกับ official add-on นั้น มี mechanism ที่เป็น messaging queue (MQTT) เพื่อส่งข้อมูลของ sensor / สถานะสวิตช์ และค่าต่างๆจาก server Tuya กลับมาให้เรา ซึ่ง add-on ปัจจุบันทำสิ่งนี้ได้แย่มาก กล่าวคือ ทุกๆ 2 ชม. ตัว messaging queue credential จะหมดอายุ และ add-on เองไม่สามารถขอ token ใหม่ได้ เลยต้องมีวิธี workaround (ทีเดี๋ยวจะเขียนไว้ด้านล่าง) เพื่อให้มันใช้งานได้อย่างต่อเนื่อง
- จากการอ่านค่าต่างๆจากตัว messaging queue ที่ว่า ทำให้ add-on ต้องพึ่งพา internet (ในการรับค่าสถานะ) ตลอดเวลา ส่วนการสั่งงานนั้น น่าจะสามารถสั่งตรงไปยัง Gateway/Hub ได้เลยโดยไม่ต้องออกอินเตอร์เน็ต