2 คะแนน โดย GN⁺ 2024-06-09 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

Sol Mate e-Paper Display

ฮาร์ดแวร์

  • Raspberry Pi 5
  • จอแสดงผล Waveshare e-Paper 7.3" (หากใช้ขนาดอื่น ต้องอัปเดตโค้ด)

ซอฟต์แวร์และวิธีใช้งาน

  • แนะนำให้ตั้งค่า Python virtual environment

    uv venv
    source .venv/bin/activate
    uv pip install -r requirements.txt
    

    หรือ

    python -m venv .
    source .venv/bin/activate
    pip install -r requirements.txt
    
  • ต้องตั้งค่าตัวแปรสภาพแวดล้อม OPENAI_API_KEY

  • ใช้สคริปต์ control.py เพื่อสร้างภาพและแสดงบนหน้าจอ

    python control.py show Barcelona
    
  • ระวังอย่าปล่อยให้ภาพเดียวกันค้างอยู่บนจอแสดงผลนานเกินไป

    python control.py clear
    
  • ตัวอย่างการตั้งค่า cron job (อัปเดตภาพและล้างหน้าจอ)

    0 8 * * * cd ~/src/sol-mate-eink && .venv/bin/python control.py show Barcelona
    0 18 * * * cd ~/src/sol-mate-eink && .venv/bin/python control.py show Barcelona
    0 2 * * * cd ~/src/sol-mate-eink && .venv/bin/python control.py clear
    

แบ็กเอนด์

  • สามารถใช้ API ส่วนตัวได้ (หากใช้งานหนัก แนะนำให้โฮสต์เอง)
  • ซอร์สโค้ด: ลิงก์ GitHub

เมื่อเกิดปัญหา

  • สามารถขอความช่วยเหลือได้ทาง Twitter หรือสร้าง GitHub issue

ความเห็นของ GN⁺

  • การใช้งานจริง: จอ e-Paper ใช้พลังงานต่ำ และนำไปประยุกต์ใช้ได้หลากหลาย
  • การขยายต่อยอด: เป็นโปรเจ็กต์โอเพนซอร์ส จึงสามารถเพิ่มหรือปรับฟังก์ชันได้ตามต้องการ
  • ค่าใช้จ่าย: การใช้ OpenAI API อาจมีค่าใช้จ่าย ควรพิจารณาทางเลือกฟรีหรือการโฮสต์เอง
  • ความท้าทายทางเทคนิค: สำหรับวิศวกรมือใหม่ การตั้งค่า virtual environment และการจัดการ API key อาจเป็นโอกาสเรียนรู้ที่ดี
  • โปรเจ็กต์คล้ายกัน: โปรเจ็กต์โอเพนซอร์สอื่นที่มีฟังก์ชันคล้ายกัน เช่น MagicMirror²

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

 
GN⁺ 2024-06-09
ความคิดเห็นบน Hacker News
  • ประสบการณ์การใช้งาน Inkplate 6Color: มีคอนโทรลเลอร์ ESP32 ในตัว จึงไม่ต้องใช้ Raspberry Pi และสามารถทำงานด้วยแบตเตอรี่ได้ แขวนป้าย "On Air" ไว้ที่ประตูออฟฟิศ แล้วอัปเดตสถานะและปิดเสียงอุปกรณ์จาก Mac ด้วยคีย์ลัด มีตัวอย่างโปรเจกต์โอเพนซอร์สสำหรับแสดงสภาพอากาศ ข่าวสาร Google Calendar และอื่น ๆ

  • ประสบการณ์กับโปรเจกต์แบบเดียวกัน: ได้ทำโปรเจกต์คล้ายกันขึ้นมาอย่างอิสระเมื่อสัปดาห์ก่อนโดยใช้จอแสดงผลตัวเดียวกัน ทำเฟรมที่ดึงสภาพอากาศปัจจุบันและเวลา จากนั้นให้ AI สร้างภาพของสถานที่นั้นแล้วแสดงผล

  • ความกังวลเกี่ยวกับการใช้ OpenAI API: จะไม่ใช้ OpenAI API กับอุปกรณ์ที่เปิดทิ้งไว้ตลอดเวลา แต่มีแผนจะทำเวอร์ชันที่ใช้ OpenStreetMaps และ Stable Diffusion ที่โฮสต์อยู่บน LAN แทน

  • ข้อสงสัยเรื่องความน่าเชื่อถือของข้อมูลอากาศ: นึกภาพไม่ออกว่าจะเจอทั้ง 26°C และ 2°C ในบาร์เซโลนาได้พร้อมกันหรือไม่ จึงสงสัยว่าข้อมูลอากาศน่าเชื่อถือแค่ไหน หรือควรแค่เพลิดเพลินกับแอนิเมชันก็พอ

  • ได้แรงบันดาลใจจากโปรเจกต์คล้ายกัน: เห็นโปรเจกต์คล้ายกันแล้วจึงซื้อจอแสดงผลแบบเดียวกันมา 2 ตัว เดิมตั้งใจจะทำเป็นจอแสดงภาพถ่ายสี แต่แอปพลิเคชันนี้ก็น่าสนใจเช่นกัน

  • ข้อควรระวังของจอ e-ink สี: สงสัยเกี่ยวกับคำแนะนำที่ว่าไม่ควรปล่อยให้ภาพเดิมค้างอยู่บนจอแสดงผลนานเกินไป ว่าเป็นเพราะคุณสมบัติเฉพาะของ e-ink สีหรือไม่

  • คุณค่าของโปรเจกต์: เป็นโปรเจกต์ที่ยอดเยี่ยมและเปิดทางให้ปรับแต่งต่อได้ คำแนะนำด้านฮาร์ดแวร์และแหล่งอ้างอิงอย่าง epaper.py มีประโยชน์มาก

  • ความเป็นไปได้ในการใช้แทน Raspberry Pi: สงสัยว่าทำไมต้องใช้คอมพิวเตอร์พลังงานต่ำขนาดเล็กเป็นพิเศษ เช่น Raspberry Pi และถามว่าสามารถขับจอ e-paper ผ่านสาย USB จากคอมพิวเตอร์ที่รัน Debian GNU/Linux อยู่แล้วได้หรือไม่

  • ข้อสงสัยเรื่องเหตุผลที่ใช้ AI: เข้าใจได้ยากว่าทำไมต้องใช้ AI เพื่อดึงข้อมูลสภาพอากาศ เพราะมี weather API ฟรีจำนวนมากที่เรียกใช้งานได้โดยตรง

  • ข้อผิดพลาดของภาพที่ AI สร้าง: ข้อผิดพลาดเล็ก ๆ ในภาพที่ AI สร้าง เช่น สะกด "Stocckholm" ผิด หรือมีคนตัวใหญ่ยักษ์กับเคนทอร์อยู่บนชายหาดซานตาโมนิกา กลับยิ่งเพิ่มความขำให้กับงาน