- พัฒนาแดชบอร์ด Timeframe ที่ใช้ e-paper เพื่อสร้าง ระบบแสดงปฏิทิน/สภาพอากาศ/ข้อมูลสมาร์ตโฮมภายในบ้าน
- ใช้ความสามารถอัปเดตแบบเรียลไทม์ของ Boox Mira Pro ขนาด 23 นิ้ว ทำให้สามารถมีได้ทั้ง หน้าจอขนาดใหญ่และการแสดงสถานะแบบเรียลไทม์
- ฝั่งแบ็กเอนด์ถูกออกแบบใหม่จาก Ruby on Rails ไปเป็นสถาปัตยกรรมที่มี Home Assistant เป็นศูนย์กลาง ทำให้การรวมข้อมูลและการบำรุงรักษาง่ายขึ้น
- ปัจจุบันระบบนี้กลายเป็น อินเทอร์เฟซหลักที่แสดงสถานะภายในบ้านแบบเรียลไทม์ และกำลังพิจารณาตัวเลือกต้นทุนต่ำอยู่
ที่มาของการพัฒนา Timeframe
- หลังแต่งงาน ผู้เขียนเริ่มโปรเจกต์นี้เพื่อหาวิธีให้คู่สามีภรรยาสามารถตรวจสอบตารางนัดหมายและข้อมูลสภาพอากาศได้ โดยยังคง สภาพแวดล้อมในห้องนอนที่ไม่มีหน้าจอ
- ความพยายามแรกคือสร้าง Magic Mirror ด้วยตู้ยาและ LCD แต่พบปัญหา การอ่านยากในสภาพแสงจ้า และ แสงจากหน้าจอในเวลากลางคืน
- หลังจากนั้นจึงทำต้นแบบแบบ e-paper ผ่าน การแฮ็กอุปกรณ์ Kindle และตั้งค่าให้อัปเดตหน้าจอทุก 30 นาที
- ดึงข้อมูลจาก Google Calendar และ Dark Sky เข้า แอป Ruby on Rails แล้วเรนเดอร์เป็น PNG ด้วย IMGKit
- ยืนยันได้ว่า e-paper เหมาะสม เพราะไม่ได้รับผลกระทบจากสภาพแสงมากนัก
ช่วงทำให้เสถียรด้วย Visionect
- ระบบที่ใช้ Kindle ต้องการ การดูแลรักษาอย่างต่อเนื่อง จึงมีความน่าเชื่อถือต่ำ
- จึงนำ จอ e-paper ของ Visionect (6”/10”/13”/32”) มาใช้ ซึ่งสามารถใช้งานได้ 2~3 เดือนต่อการชาร์จหนึ่งครั้ง
- รุ่น 6” ใช้แสดงสภาพอากาศที่หน้าประตู, 13” ติดด้านข้างตู้เย็น, 10” ใช้ในห้องนอน
- รัน Rails backend บน Raspberry Pi แล้วส่งภาพที่สร้างด้วย IMGKit ไปยัง Visionect API ทุก 5 นาที
- แยกโลจิกที่เกี่ยวข้องออกเป็นไลบรารี visionect-ruby
- ระบบทำงานได้อย่างเสถียรต่อเนื่องหลายเดือนโดยไม่มีปัญหา
การทดสอบตลาดและข้อจำกัด
- จากความสนใจของผู้มาเยือน จึงมีการทำ การทดสอบนำร่องกับลูกค้ารายแรก
- ทดลองหลายรูปแบบ เช่น มุมมองปฏิทินรายเดือนบนหน้าจอ 13”
- อย่างไรก็ตาม ราคาประมาณ $1000 และ ค่าลิขสิทธิ์ของ Visionect เดือนละ $7 เป็นภาระค่อนข้างสูง
- หากเปลี่ยนเป็นบริการแบบสมัครสมาชิก จะต้องคิดค่าบริการ มากกว่า $10 ต่อเดือน
การย้ายไปใช้ Boox Mira Pro
- หลังบ้านถูกไฟไหม้ทั้งหมดจากเหตุการณ์ Marshall Fire ในปี 2021 ระหว่างการออกแบบบ้านใหม่จึงได้สร้างระบบนี้ขึ้นอีกครั้ง
- เมื่อ Boox Mira Pro(25.3”) วางจำหน่าย ก็ทำให้สามารถสร้าง e-paper ความละเอียดสูงที่อัปเดตแบบเรียลไทม์ได้
- ในบ้านใหม่มีการออกแบบ พื้นที่ติดตั้งเฉพาะ (‘phone nook’) และ เดินสายไฟสำหรับจอ Visionect เพิ่มเติม ไว้ด้วย
การปรับโครงสร้างแบ็กเอนด์
- เนื่องจากต้องรองรับ การอัปเดตแบบเรียลไทม์ จึงมีการยกเครื่องแบ็กเอนด์ Rails เดิมครั้งใหญ่
- เปลี่ยนจากการเรนเดอร์เป็นภาพ ไปเป็น การเรนเดอร์ URL โดยตรง
- เลือกใช้ Home Assistant(HA) เป็นแหล่งข้อมูลหลัก และรวม Google Calendar·Apple Weather·Sonos เข้าไว้ด้วยกัน
- ลบโค้ดออกไปมากกว่าครึ่ง และทำให้ระบบง่ายขึ้นด้วยการ ถอดทั้งฐานข้อมูลและ Redis ออก
- ใช้ Rufus Scheduler สำหรับรันงานเบื้องหลัง และเก็บผลลัพธ์ด้วย Rails file cache backend
- ตั้งค่าให้แสดงสถานะของเซนเซอร์ที่มีคำนำหน้า sensor.timeframe โดยอัตโนมัติ
- ตัวอย่าง: ตรวจจับ การใช้พลังงานของเครื่องล้างจาน แล้วแสดงการแจ้งเตือนว่ามีการทำงานหลัง 8 โมง
วิธีการใช้งานในปัจจุบัน
- หลังย้ายเข้าอยู่บ้านใหม่ ฟังก์ชัน การแสดงสถานะแบบเรียลไทม์ กลายเป็นบทบาทหลักของระบบ
- แสดง สถานะภายในบ้านในรูปแบบภาพ เช่น ประตูเปิดหรือปิด, ซักผ้าเสร็จหรือยัง
- หากหน้าจอว่าง จะตีความว่าเป็น “สถานะปกติ”
- แยก การควบคุมอุปกรณ์ ออกจาก การแสดงสถานะ ทำให้สามารถรับรู้สถานะได้ทันที โดยไม่ต้องไล่หาข้อมูลที่ไม่จำเป็น
งานที่ต้องทำต่อไป
- ทำให้การดีพลอยเสถียร: กำลังปรับปรุงการจัดการ runtime error และจำเป็นต้องออกแบบ ระบบ embedded ที่แทบไม่ต้องบำรุงรักษา
- รวมกับ Home Assistant อย่างสมบูรณ์: มีเป้าหมายจะย้ายแหล่งข้อมูลทั้งหมดไปยัง HA แล้วเผยแพร่ในรูปแบบ แอป HA
- ลดต้นทุนฮาร์ดแวร์: ปัจจุบัน จอ Boox ขนาด 25” ราคาประมาณ $2000 ซึ่งยังแพงเกินไปสำหรับผู้บริโภคทั่วไป
บทสรุป
- Timeframe เติบโตเป็น โปรเจกต์ส่วนตัวที่ช่วยเพิ่มประสิทธิภาพในชีวิตประจำวันภายในบ้าน
- แตกต่างจากการพัฒนาซอฟต์แวร์สำหรับผู้ใช้จำนวนมาก เพราะเป็น งานสร้างสรรค์ที่ช่วยปรับปรุงชีวิตของครอบครัวได้โดยตรง และยังคงเดินหน้าต่อไป
2 ความคิดเห็น
ONYX BOOX Mira Pro นี่ดูเจ๋งดีนะ แต่ราคาก็ค่อนข้างน่าหนักใจเหมือนกัน
ความคิดเห็นจาก Hacker News
ถ้าเทคโนโลยีแบบนี้แพร่หลายขึ้น ก็น่าจะสร้างความเปลี่ยนแปลงครั้งใหญ่ให้กับป้ายดิจิทัลและจอแสดงผลสาธารณะที่กินไฟสูงได้
จำได้ว่าเมื่อก่อนนวัตกรรมเคยถูกขัดขวางเพราะมี สิทธิบัตรเชิงรุก อยู่ไม่กี่ตัว แต่ไม่แน่ใจว่าตอนนี้ยังเป็นแบบนั้นไหม
แต่ AI กำลังปรับโครงสร้างของอุตสาหกรรมทั้งระบบ
แต่จอหลักราคา $2000 ทำให้เป็นราคาที่ครัวเรือนทั่วไปเอื้อมถึงยาก
เคสพิมพ์ 3D เอง ใช้แบตเตอรี่สองก้อน ต้นทุนรวม ต่ำกว่า $100 และใช้ OpenWeather API แบบฟรี
ถ้าเชื่อม HomeAssistant กับ ESPhome ก็ทำได้สบาย ๆ ในงบ ต่ำกว่า $100
โปรเจกต์ต้นฉบับยอดเยี่ยมมาก แต่ทางนี้ใช้งานจริงได้มากกว่าเยอะ
เช่น Samsung EM32DX ซึ่งเป็นป้ายสี e-ink ขนาด 32 นิ้ว ราคาไม่เกิน $1300 และช่วงลดราคาก็ต่ำกว่า $1000
แต่ ความเร็วในการรีเฟรช ช้า อีกตัวเลือกคือ SVD rE 32" reflective LCD ซึ่งมองเห็นได้ดีเฉพาะในที่สว่างมาก
(ขอออกตัวว่าฉันเป็นสมาชิกทีมนี้)
ไม่มีการเชื่อมกับสมาร์ตโฮม แต่แสดง ปฏิทิน สภาพอากาศ คุณภาพอากาศ และการแจ้งเตือนรถไฟใต้ดิน
UI ทำด้วย Bootstrap 3 เลยยังรันได้ดีบน iPad Air 2 เครื่องเก่า จุดประสงค์ก็เพื่อรีไซเคิลอุปกรณ์เก่าด้วย
มีหลายรุ่นที่รูตได้ และฉันชอบ Nook Simple Touch เป็นพิเศษ
ก่อนหน้านี้เคยหาแผง e-ink ที่ร้านค้าเคยใช้มาได้ แล้วลองขับมันด้วยการ reverse engineer
ฉันดัดแปลง Adafruit ThinkInk แล้วเขียน driver layer ขึ้นมาเอง และเพราะแผงแรกใช้งานได้สมบูรณ์เลยไม่ได้พัฒนาต่อ
ลิงก์โปรเจกต์
ลิงก์โปรเจกต์
ล้อเล่น aside, จอ e-ink ไม่ว่าจะเมื่อไรก็ดูน่าทึ่งเสมอ
ฉันทำแผ่นกระจกกับกรอบไม้แล้วใช้ เหมือนไวต์บอร์ด
มันกลายเป็นพื้นที่ที่คนในครอบครัวใช้ฝากข้อความหรือวาดรูปคุยกัน เป็นโปรเจกต์ที่ ถูกและสนุก
ก่อนหน้านี้ EV6 และ Ioniq ของ Kia กับ Hyundai เกือบจะได้ระบบชาร์จไร้สายแล้ว แต่สุดท้ายก็ไม่สำเร็จ
สิ่งที่น่าสนใจของจอ eInk คือมันเข้า โหมดสลีป ได้เต็มที่ระหว่างการอัปเดต จึงเหมาะกับการใช้ trickle charge
สำหรับของอย่างเครื่องซักผ้า ฉันรู้สึกว่ามันเป็นสิ่งที่คุ้นเคยอยู่แล้วจนไม่จำเป็นต้องมีข้อมูลเรียลไทม์
การทำให้การติดตามเรื่องซ้ำ ๆ แบบนี้เป็นอัตโนมัติช่วยให้ มีพื้นที่ในหัวมากขึ้น
ฉันไม่ชอบเครื่องใช้ไฟฟ้าอัจฉริยะแบบต่อคลาวด์ แต่ชอบ การเชื่อมต่อแบบ local อย่าง Home Assistant
ฉันเองก็เป็นแบบนั้น ระบบแจ้งเตือนแบบนี้เลยมีประโยชน์
(แน่นอนว่า ครีบระบายความร้อนให้สมอง ก็ช่วยเหมือนกัน)
ยังไงก็มีสมาร์ตโฟนอยู่ข้างตัวตลอดอยู่แล้ว เลย ไม่คิดว่าจำเป็นต้องเพิ่มจอมากกว่านี้
งานอดิเรกแต่ละอย่างก็แค่มี ค่าเริ่มต้น ต่างกัน แต่แก่นแท้เหมือนกัน
ถ้าไม่ชอบก็เลื่อนผ่านได้เลย ยังมีคนอีกมากรวมถึงฉันที่รู้สึกขอบคุณสำหรับโพสต์แบบนี้
แต่จอที่ติดอยู่บนผนังนั้น แค่มองก็พอ
การดูพยากรณ์อากาศช่วยให้ วางแผนกิจกรรม ได้ง่ายขึ้นมาก
ข้อมูลที่ฉันดูบ่อยที่สุดบน Apple Watch คือ ดัชนี UV สำคัญกว่าอุณหภูมิหรือแบตเตอรี่มาก