- เมื่ออาศัยอยู่ในซานฟรานซิสโกก็ต้องใช้ขนส่งสาธารณะบ่อย แต่หลายแอปให้การแจ้งเตือนเวลาเดินทางมาถึงเฉพาะทั้งเส้นทางเท่านั้น
- จึงทำให้แสดงเฉพาะการแจ้งเตือนเวลาเดินทางมาถึงที่ใกล้กับตำแหน่งปัจจุบันบน Kindle เพื่อให้ตรวจดูก่อนออกจากบ้านได้
- ทำการเจลเบรก Kindle เปิดใช้งาน USBNet และตั้งค่าให้เข้าถึงผ่าน SSH ได้
- จากนั้นจึงสามารถตั้งงาน cron เพื่ออัปเดตหน้าจอได้
- ในขั้นแรกของการแสดงภาพบน Kindle ได้ดึงสกรีนช็อตจากหน้าข้อมูลเวลาออกเดินทางแบบเรียลไทม์ของ BART แล้วส่งไปยัง Kindle
- ในความพยายามแรก ภาพที่แสดงมีความบิดเบี้ยวอย่างมาก
- แก้ปัญหาได้ด้วยการปรับขนาดภาพและความลึกสี
การสร้างภาพที่ใช้งานได้จริง
- สร้างเซิร์ฟเวอร์ Node.js ใช้ Puppeteer จับภาพหน้าจอของหน้า BART แล้วปรับขนาดและสีให้เหมาะกับ Kindle ก่อนส่งกลับผ่าน HTTP endpoint
- ติดตั้งเซิร์ฟเวอร์บน Raspberry Pi และตั้ง cron ให้ดึงภาพทุกนาที
เริ่มใหม่ตั้งแต่ต้น - สถาปัตยกรรม
- สร้าง HTTP เซิร์ฟเวอร์ใหม่ด้วย Rust และ Axum
- ใช้ API ของ 511.org เพื่อดึงเวลาเดินทางมาถึงของทุกป้ายใน Bay Area
- ใช้ไลบรารีกราฟิก Skia เพื่อเรนเดอร์ภาพ PNG โดยตรง
การดึงข้อมูล
- ใช้ API ของ 511.org เพื่อดึงเวลาเดินทางมาถึงของ SF MUNI
- พาร์สคำตอบ JSON แล้วกรองเฉพาะเวลาเดินทางมาถึงของป้ายที่ต้องการ
- เรียงลำดับเวลาเดินทางมาถึงแล้วแสดงแยกตามแต่ละทิศทาง
สรุปโดย GN⁺
- โปรเจกต์นี้กล่าวถึงกระบวนการสร้างระบบแสดงข้อมูลขนส่งสาธารณะแบบเรียลไทม์ด้วย Kindle เก่า
- ใช้ Rust และ Skia เพื่อสร้างระบบที่มีประสิทธิภาพและเชื่อถือได้
- การให้ข้อมูลขนส่งสาธารณะแบบเรียลไทม์ช่วยมอบข้อมูลที่เป็นประโยชน์แก่ผู้ใช้ได้
- โปรเจกต์ที่มีความสามารถคล้ายกันซึ่งแนะนำคือโปรเจกต์สมาร์ตดิสเพลย์บน Raspberry Pi
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
OneBusAway เป็นโปรเจ็กต์โอเพนซอร์สที่มีผู้คนจำนวนมากใช้ทุกวันเพื่อตรวจสอบตำแหน่งและเวลาเดินทางมาถึงของรถบัส รถไฟ รถราง และเคเบิลคาร์
ผู้ใช้อีกรายกล่าวถึงแอปชื่อ Öffi ที่ให้ความสามารถคล้ายกับ OneBusAway
BART และ MUNI รองรับ General Transit Feed Specification ทำให้สามารถดึงข้อมูลได้ด้วยวิธีมาตรฐาน
ผู้ใช้ที่เคยใช้ชีวิตใน Boston โดยไม่มีรถเล่าว่าได้หาวิธีไปถึงจุดหมายผ่านเส้นทางหลากหลาย และมองว่ามุมมอง "ออกเดินทางถัดไป" มีประโยชน์
ในสหราชอาณาจักรสามารถซื้อบอร์ดแสดงเวลาออกเดินทางที่เลียนแบบบอร์ดออกเดินทางของสถานีได้
ใน Washington, DC ใช้งานกับรถบัสได้ แต่ยังใช้กับรถไฟไม่ได้ และต้องการความช่วยเหลือเรื่องความเข้ากันได้กับรถไฟ
สามารถใช้เว็บเบราว์เซอร์เพื่อทำหน้าจอแสดงสภาพอากาศ การจราจร และข่าวสารบน Kindle ได้อย่างง่ายดายโดยไม่ต้องเจลเบรก
ผู้ใช้ที่อาศัยอยู่ใน SF ได้พัฒนาแอป iOS ชื่อ "A Better Ride" เพื่อแสดงเวลาออกเดินทางของป้ายใกล้เคียง ทำให้การเดินทางคาดเดาและวางแผนได้ง่ายขึ้น
ผู้ใช้ต้องการทางเลือกแทน Google Maps โดยอยากได้เส้นทางสำรองเมื่อรถไฟเสียหรือเส้นทางถูกปิดกั้น
ผู้ใช้รายหนึ่งสร้างระบบโดยใช้แท็บเล็ต Lenovo ThinkSmart View เพื่อมอบฟังก์ชันหลากหลายผ่านการผสานรวมกับหน่วยงานขนส่งท้องถิ่น