1 คะแนน โดย GN⁺ 2025-05-16 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เลือก SF32LB52J ของ SiFli เป็นชิปสำหรับ Core Time 2
  • หนึ่งในการตัดสินใจที่ สำคัญที่สุด ในการออกแบบสมาร์ตวอตช์คือการเลือกชิป
  • ความเข้ากันได้ของซอฟต์แวร์, การใช้พลังงาน และต้นทุน ล้วนมีผลอย่างมากต่อการเลือกชิป
  • ชิปของ SiFli มาพร้อม SDK โอเพนซอร์ส, การใช้พลังงานต่ำ และหน่วยความจำที่ค่อนข้างเหลือเฟือ
  • ซีรีส์นี้จะพูดถึง วิธีเลือกชิ้นส่วนสำคัญอื่น ๆ เช่น จอแสดงผล ในตอนต่อ ๆ ไป

ภาพรวม

  • บทความนี้เป็น ตอนแรกของซีรีส์ ที่แนะนำวิธีสร้างสมาร์ตวอตช์ด้วยตัวเอง
  • เป้าหมายคือแสดงให้เห็นว่าใคร ๆ ก็สามารถสร้างสมาร์ตวอตช์ที่ใช้งานได้ดีพอสำหรับราวปี 2025 ได้ด้วยความพยายามเพียงเล็กน้อย
  • คาดว่า การเปิดโอเพนซอร์สของ PebbleOS จะช่วยกระตุ้นการพัฒนาสมาร์ตวอตช์ที่สร้างสรรค์ยิ่งขึ้น
  • โดยรวมแล้วสมาร์ตวอตช์ประกอบด้วย 3 องค์ประกอบหลัก ได้แก่ ฮาร์ดแวร์, ซอฟต์แวร์ (เฟิร์มแวร์/ระบบปฏิบัติการ), แอปมือถือ

แยกองค์ประกอบของฮาร์ดแวร์

  • ฮาร์ดแวร์ของสมาร์ตวอตช์สามารถแบ่งออกเป็น 5 ระบบหลัก
    • ชิปไมโครคอนโทรลเลอร์ (โดยมากมีวิทยุ Bluetooth ในตัว)
    • จอแสดงผล
    • เซ็นเซอร์และอุปกรณ์ส่งออก (ปุ่ม, ระบบสัมผัส, ไมโครโฟน, มาตรความเร่ง, ลำโพง ฯลฯ)
    • ชิ้นส่วนอิเล็กทรอนิกส์อื่น ๆ (ชิป, อุปกรณ์พาสซีฟ, PCB, แบตเตอรี่ ฯลฯ)
    • โครงสร้างเชิงกล (ตัวเรือนนาฬิกา, กระจก, ปุ่ม, สาย, สายชาร์จ ฯลฯ)
  • เซ็นเซอร์, แบตเตอรี่, สาย, ไมโครโฟน และชิ้นส่วนอื่น ๆ มีตัวเลือกมากในหลายช่วงราคา จึงเลือกได้ไม่ยากในปัจจุบัน
  • การตัดสินใจที่ ยากที่สุด คือไมโครคอนโทรลเลอร์+วิทยุ Bluetooth และจอแสดงผล

ความสำคัญของการเลือกชิป (ไมโครคอนโทรลเลอร์)

  • MCU ทำหน้าที่เป็น “หัวใจ” ของสมาร์ตวอตช์ โดยรวม CPU, RAM, พื้นที่เก็บข้อมูลแฟลช, I/O, วิทยุ ไว้ในชิปตัวเดียว
  • การเลือก MCU ที่เหมาะสมคือการหาจุดสมดุลระหว่างข้อจำกัดหลายด้าน เช่น ต้นทุน พลังงาน และความเข้ากันได้ของซอฟต์แวร์
  • MCU แต่ละรุ่นมี SDK, ไดรเวอร์, ระบบบิลด์ ต่างกัน ทำให้ความยากของการพัฒนาซอฟต์แวร์เพิ่มขึ้น
  • PebbleOS ถูกปรับให้ทำงานกับ MCU ของบริษัทหนึ่งโดยเฉพาะ (STM) ดังนั้นเมื่อเปลี่ยนไป MCU อื่น จึงต้องแก้ทั้งไดรเวอร์และระบบบิลด์
  • MCU บางรุ่นรองรับ FreeRTOS ที่ PebbleOS ต้องใช้ได้ยาก
  • เนื่องจากไม่ได้ผลิตในปริมาณมาก ต้นทุนการพัฒนาซอฟต์แวร์จึงกลายเป็นสัดส่วนใหญ่ของต้นทุนต่อเครื่อง

ชิปที่เคยใช้และกระบวนการคัดเลือก

  • นาฬิกา Pebble ในอดีตใช้ STM32F2 และในช่วงแรกการเลือกชิปก็มักอาศัยความสัมพันธ์และคำแนะนำรอบตัว
  • ช่วงหลังมีการใช้ Nordic nRF52840 เพื่อสร้างต้นแบบสมาร์ตวอตช์ Core 2 Duo
    • พัฒนาโดยเปลี่ยนมาใช้ BLE stack แบบโอเพนซอร์ส (nimBLE)
  • สำหรับ Core Time 2 ที่ต้องการหน่วยความจำและประสิทธิภาพมากขึ้น nRF52840 เริ่มถึงขีดจำกัด
    • ชิปรุ่นประหยัดตัวล่าสุดของ Nordic (nRF54L15) มี RAM ไม่พอ และชิปรุ่นสูงกว่า (nRF54H) ก็มีราคาแพง
    • ยังต้องการ อินเทอร์เฟซพิเศษ เพื่อขับจอสีของ Core Time 2 ด้วย

การค้นพบและการเลือกชิป SiFli

  • มีการพิจารณาตัวเลือกหลายราย (Apollo, BES, Dialog ฯลฯ) แต่ยังไม่พอใจนัก เพราะขาด SDK แบบโอเพนซอร์ส เป็นต้น

  • ชิปบางตัวอย่าง BES มีปัญหาเรื่อง NDA และไม่เปิดเผยโค้ดตัวอย่าง ทำให้สภาพแวดล้อมการพัฒนาไม่เหมาะสม

  • ต่อมาได้รับอีเมลจาก CEO ของ SiFli โดยบังเอิญ และหลังจากพูดคุยก็ยืนยันได้ว่าบริษัทสนับสนุนระบบนิเวศโอเพนซอร์สอย่างจริงจัง

  • ชิป SiFli ถูกนำไปใช้แล้วในสมาร์ตวอตช์หลายสิบล้านเรือน (แบรนด์เช่น Redmi, Oppo, Noise ฯลฯ)

    • รุ่นขนาดเล็กสุด (SF32LB52x) มี SRAM มากกว่า 512K, 16M PSRAM และคอนโทรลเลอร์จอ MIP โดยเฉพาะ
    • กินพลังงานต่ำ (เมื่อเชื่อมต่อ BLE ~50uA) และมีราคาต่ำกว่า 2 ดอลลาร์
    • มีตัวเลือกเพิ่ม SRAM อีก 1~2MB
    • มี SDK โอเพนซอร์สบน GitHub และให้คำมั่นว่าจะช่วยพอร์ต PebbleOS
  • สุดท้ายจึงเลือก SF32LB52J (เวอร์ชัน 1.8V) เป็นชิปสำหรับ Core Time 2

บทสรุปและทิศทางต่อจากนี้

  • Core Time 2 จะถูกพัฒนาด้วยชิป SiFli SF32LB52J
  • บทความถัดไปจะพูดถึงกระบวนการ เลือกจอแสดงผล

ลิงก์อ้างอิง

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

 
GN⁺ 2025-05-16
ความคิดเห็นจาก Hacker News
  • มีการย้ำว่า PebbleOS ไม่ใช่ผู้เล่นรายเดียวในพื้นที่นี้ และยังแนะนำ Espruino ซึ่งเป็น JavaScript implementation ขนาดเล็กสำหรับไมโครคอนโทรลเลอร์ ใช้อยู่ใน bangle.js และ Fallout Pip boy เป็นต้น แฮ็กอุปกรณ์แบบเรียลไทม์ได้ง่าย พร้อมแชร์ลิงก์ Github discussion เกี่ยวกับ Espruino ไว้ด้วย
    • เพิ่งเคยได้ยินชื่อ bangle.js และชอบตรงที่สามารถลองเล่นได้เต็มที่ด้วยภาษาที่รู้อยู่แล้ว เดิมอยากซื้อรุ่นเจเนอเรชันแรก แต่เสียดายที่ตอนนี้เลิกขายไปแล้ว
    • ขอบคุณที่พูดถึงผลงานดี ๆ ของคู่แข่งที่ไม่ค่อยเป็นที่สนใจ Pebble ก็ยอดเยี่ยม แต่พวกเขาก็สมควรได้รับความสนใจเช่นกัน และซีรีส์ Amazon Fallout ก็สนุกมาก ถ้ามีโอกาสแนะนำให้ดู
    • อีกตัวที่นึกออกคือ PineTime
  • สะดุดกับคำว่า "SDK เป็นโอเพนซอร์ส" รู้สึกสนใจที่ BLE MCU มาพร้อม SDK code แบบโอเพนซอร์ส แต่ในความเป็นจริงโค้ด BLE กลับมาในรูป binary blob ถ้าจะอธิบายว่าเป็นโอเพนซอร์ส ก็ควรอ่านซอร์สโค้ดทั้งหมดได้
    • เฟิร์มแวร์ของอุปกรณ์วิทยุ BLE มักถูกแจกจ่ายเป็น binary blob อยู่เสมอ ด้วยเหตุผลด้าน IP และข้อกำกับดูแล
  • สมาร์ตวอตช์เรือนนี้ไม่ได้ฉลาดมากนักเมื่อเทียบกับมาตรฐานปัจจุบัน ฟีเจอร์อย่างการจ่ายเงินผ่าน NFC, GPS แบบดูอัลแบนด์, การเชื่อมต่อ 4G LTE ที่มีในสมาร์ตวอตช์ที่ใช้อยู่ตอนนี้คงจะคิดถึงมาก Pebble (และ repebble) แลกสิ่งเหล่านี้กับอายุแบตเตอรี่ที่อยู่ได้หลายสัปดาห์ แต่ความยุ่งยากในการชาร์จ Galaxy Watch ทุกสองวันก็ยังไม่มากพอจะทำให้ยอมสละฟีเจอร์ทรงพลังทั้งหมดนี้
    • ในทางกลับกัน ฉันไม่สนใจฟีเจอร์ทั้งหมดนั้น และให้ความสำคัญกับอายุแบตเตอรี่ยาวนาน เป็นเรื่องดีที่มีอุปกรณ์หลากหลายสำหรับผู้ใช้หลากหลายกลุ่ม แค่สมาร์ตวอตช์เรือนนี้ไม่เหมาะกับคุณ ก็ไม่ได้แปลว่า "ไม่ฉลาด" แค่ไม่ตรงกับผู้ใช้บางคนเท่านั้น
    • Garmin มีฟีเจอร์ส่วนใหญ่แบบนี้อยู่แล้วพร้อมอายุแบตเตอรี่หลายสัปดาห์ ขาดแค่ 4G และยังได้ยินมาว่าอาจมีในอุปกรณ์ปีหน้า
    • ฉันเองก็คงเสียดายถ้าไม่มี GPS แต่ก็ยังหาอุปกรณ์ที่ให้ความพึงพอใจแบบที่ Pebble เคยให้ไม่ได้ Garmin เองก็ต้องประนีประนอมในด้านอื่น ๆ (แบตเตอรี่, วิดเจ็ต, ปฏิทิน, ความอ่านง่ายของหน้าจอ ฯลฯ) ทุกอย่างล้วนเป็น trade-off
    • สำหรับฉัน ฟีเจอร์ทั้งหมดนั้นไม่จำเป็นเลย ขอแค่นาฬิกาที่รับการแจ้งเตือน วัดชีพจรแบบง่าย ๆ ได้ และปรับแต่งได้นิดหน่อยก็พอ ถ้าต้องชาร์จมากกว่าสัปดาห์ละครั้ง ฉันก็ไม่คิดจะใส่
    • แค่อายุแบตเตอรี่ข้อเดียวก็น่าประทับใจมากแล้ว
  • มีการแชร์ลิงก์บทความจาก cnx-software ที่ให้ข้อมูลเพิ่มเติมเกี่ยวกับชิปตัวนี้
  • น่าสนใจที่เลือกดีไซน์แบบชิปเดียว แทนที่จะแยกชิปหลักกับชิปสำหรับ BLE เพราะ MCU ประสิทธิภาพสูงมักไม่มี RF ทำให้การออกแบบแบบ 2 ชิปหลายครั้งอาจเหมาะกว่า
    • แม้แต่ MCU ระดับสูงสมัยใหม่ก็มีชิปที่ใช้ Bluetooth และ Wi-Fi พร้อมกันได้ เช่น NRF หรือ ESP32 ทุกวันนี้ส่วนตัวฉันคงเลือก ESP32 เพราะมีการพัฒนาต่อเนื่องและชุมชนสนับสนุนที่ดี ฉันเองก็กำลังพัฒนาแพลตฟอร์มสมาร์ตวอตช์บน micropython อยู่
    • คอร์ Cortex-M33 ของชิป SiFli เร็วกว่าคอร์ M4 ที่ใช้ใน Pebble รุ่นเดิมมาก และก็ไม่ได้ต้องการ MCU ที่เร็วกว่านั้นแล้ว สิ่งที่สำคัญกว่าคืออายุแบตเตอรี่ และการเปลี่ยนมาใช้ MCU ที่มี Bluetooth ในตัวครั้งนี้ถือเป็นอัปเกรดใหญ่ เพราะขยายอายุการใช้งานจากราว 1 สัปดาห์เป็นราว 1 เดือน
    • ถ้าเป็นแค่นาฬิกา ก็ไม่จำเป็นต้องถึงขั้นเป็นคอมพิวเตอร์ UNIX การแสดงเวลา วัดชีพจร หรือสื่อสารกับ AWS ใช้ MCU ง่าย ๆ ก็เพียงพอ
    • ยิ่งจำนวนชิปมาก โปรเจกต์ก็ยิ่งซับซ้อน แต่ละชิปต้องมี passive components กับ oscillator ต้องคอยจัดการการสื่อสารระหว่างชิป การอัปเดตเฟิร์มแวร์ วิธีดีบัก ฯลฯ ดังนั้นบางทีการยอมเสียอายุแบตเตอรี่ไปเล็กน้อยอาจคุ้มกว่า
  • ดีใจที่ในวงการชิปพลังงานต่ำเริ่มมีผลิตภัณฑ์ที่มุ่งสู่อโอเพนซอร์สเสียที พอเห็นประกาศ rePebble ก็ลงทะเบียนทันที แต่จริง ๆ แล้วภายหลังฉันเพิ่งรู้ว่าตัวเองไม่ได้อยากได้สมาร์ตวอตช์ แต่อยากได้นาฬิกา "โง่ ๆ" ที่มีแค่การแจ้งเตือนแบบสั่น ความต้องการแบบนี้เป็นตลาดเฉพาะกลุ่ม แต่ก็มีคนที่สนใจจริงจังมาก ช่วง 2 ปีที่ผ่านมาฉันใส่ Casio F105 จนทนอะไรที่ใหญ่กว่า หนักกว่า หรือหนากว่านี้ไม่ได้แล้ว ถ้ามีแค่ Bluetooth ฉันก็ยอมชาร์จสัปดาห์ละครั้งได้ ตอนนี้เลยวางแผนจะเอาชิป Bluetooth เล็ก ๆ ที่รับการแจ้งเตือนทั้งหมดจาก iPhone ได้ พร้อมมอเตอร์สั่นและแบตเตอรี่ลิเทียมก้อนเล็ก ไปติดไว้ระหว่างสายของนาฬิกา ฉันยังจำตอนใช้ Mi Band 1 ครั้งแรกได้ดี มันไม่มีจอเลย มีแค่ RGB LED 3 ดวงที่เปลี่ยนสีตามแต่ละแอป ทำให้รู้ได้ทันทีว่าเป็นข้อความประเภทไหน
    • มีการพูดถึงรุ่น W770 ของ Citizen เพิ่งซื้อของมือสองมาในราคาไม่ถึง 200 ดอลลาร์ เป็นนาฬิกาที่ค่อนข้างดี มีทั้งโครโนกราฟ, BLE, นาฬิกาปลุก และมอเตอร์สั่น มันใช้เข็มนาฬิกาแสดงข้อมูลเกือบทั้งหมดแทนจอ ดังนั้นถ้าจะใช้งานให้คล่องต้องอ่านคู่มือจริง ๆ การชาร์จพลังงานแสงอาทิตย์บนพื้นฐานซูเปอร์คาปาซิเตอร์ทำให้ไม่ต้องกังวลเรื่องแบตเตอรี่นานหลายเดือนแม้อยู่ในที่มืดสนิท ซูเปอร์คาปาซิเตอร์เป็นชิ้นส่วนที่เปลี่ยนได้เมื่อใช้ไปราว 15-20 ปี มันไม่เรียกร้องอะไรและทำหน้าที่ของมันอย่างสม่ำเสมอ Citizen อาจมีรุ่นอื่นที่มี BLE ด้วย และถ้ามีใคร reverse engineer โปรโตคอลการแจ้งเตือน/บลูทูธแล้วทำแอปโอเพนซอร์สขึ้นมา ก็น่าจะเปิดความเป็นไปได้ที่น่าสนุกสำหรับสายแฮ็กเกอร์
    • ฉันยังใช้ OG Pebble อยู่ และตื่นเต้นที่มันจะกลับมา แต่ไม่มีแผนอัปเกรด ขอแค่มีปลุกแบบสั่นกับการแจ้งเตือนก็พอ แต่สิ่งสำคัญคือต้องมีหน้าจอที่มองเห็นชัดในที่สว่างและเป็นมิตรกับสายตายาวตามอายุ ซึ่งจอ eInk ของ OG Pebble ทำหน้าที่นั้นได้ดีพอแล้ว อ่านข้อความได้โดยไม่ต้องหยิบสมาร์ตโฟนออกมา ซื้อเครื่องมือสองได้แค่ 30 ดอลลาร์ และแบตเตอรี่ใหม่ก็หาได้ในราคา 15 ดอลลาร์ ถือว่าคุ้มมาก ชุมชน Rebble.io ก็ยังใช้งานกันได้ดีพอสมควร
    • ฉันเองก็อยากให้มีสายหรือตัวล็อกนาฬิกาแบบ “อัจฉริยะ” ที่เอาไปติดกับนาฬิกา Seiko วินเทจได้ ขอแค่มีการแจ้งเตือนแบบสั่นในบางสถานการณ์เฉพาะก็พอ ฟีเจอร์ทั้งหมดหรือหน้าจอกลับเป็นสิ่งรบกวนเสียมากกว่า
    • UX ของ Apple Watch ใช้งานลำบาก (นิ้วยาว 1 ซม. ไปแตะจอ 2 ซม. ...) และฉันก็ไม่ชอบที่มันพยายามทำมากเกินไป Pebble แค่รับสายโทรเข้าและข้อความก็พอแล้ว ทำให้ฉันอยู่ห่างจากโทรศัพท์ได้ Pebble เบามาก และพอใส่ watch face บางแบบก็ให้ความรู้สึกเหมือนได้กลับบ้าน
    • ฉันเองก็แค่อยากได้นาฬิกา “โง่ ๆ” ที่มีการแจ้งเตือนแบบสั่นเท่านั้น การแจ้งเตือนส่วนใหญ่ไม่ได้เร่งด่วนขนาดนั้น และมีแต่จะดึงสมาธิโดยไม่จำเป็น สุดท้ายเลยปิดการแจ้งเตือนทั้งหมด แล้วค่อยหยิบโทรศัพท์มาดูเองทุก ๆ หลายชั่วโมง สิ่งที่จำเป็นจริง ๆ กลับเป็นฟังก์ชันเตือนแบบสั่นสำหรับเรื่องอย่าง "รถบัสใกล้มาแล้ว" หรือ "ได้เวลาพัก" เท่านั้น ไม่ต้องมีเซ็นเซอร์ที่ไม่จำเป็น
    • Withings ScanWatch ก็เป็นผลิตภัณฑ์ที่เหมาะกับการใช้งานแบบนี้ และมีอายุแบตเตอรี่เกือบหนึ่งเดือน
    • ความหวังของฉันในการหา fitness tracker ที่ไม่ใช่นาฬิกาก็เป็นความต้องการที่ค่อนข้างเฉพาะเหมือนกัน ฉันไม่ชอบแหวน อยากได้แบบกำไลหรือถ้าเป็นไปได้ที่สุดคือสายรัดข้อเท้า แต่ก็คงวัดชีพจรหรือเก็บข้อมูลเพิ่มเติมได้ยาก
    • อุปกรณ์อย่าง Mi Band เติมเต็มช่องว่างนี้ได้ดี เพราะมันเล็กและเบาจนไม่เกะกะ แต่ก็ยังมีจอและอายุแบตเตอรี่ที่ใช้ได้ดี
  • มีคนเริ่มแฮ็ก Freqchip SOC ราคาถูกจากจีน และบอกว่าสามารถซื้อสมาร์ตวอตช์ที่ใช้ชิปนี้ได้จาก Ali ในราคา 3 ยูโร
    • มีคนขอลิงก์สินค้านาฬิกาที่ใช้ชิปดังกล่าว โดยบอกว่าค้นหาหลายรอบแล้วแต่ไม่เจอ
    • บางชิปมี MOQ 3,000 ชิ้น ราคา 2.6 หยวน ($0.36) พร้อม Arm Cortex m3, BLE และรองรับ sig-mesh ด้วย ซึ่งน่าทึ่งมาก เลยสงสัยว่า SDK ใช้งานได้ดีแค่ไหน
  • ยินดีที่ได้เห็นฮาร์ดแวร์ที่ค่อนข้างโอเพนซอร์สและรันด้วย PebbleOS และหวังว่าในปี 2025 รูปแบบบล็อกที่จัดชิดซ้ายจะหายไปเสียที เพราะในยุคจอกว้างแบบนี้มันทำให้อ่านยากโดยไม่จำเป็น
  • เกี่ยวกับประเด็นที่ว่า "ข้อจำกัดที่น่าสนใจและยากที่สุดคือความเข้ากันได้ของซอฟต์แวร์" นั้น ฉันกลับคิดว่านี่เป็นเรื่องที่แก้ง่ายจนควรไปอยู่ท้ายสุดของรายการมากกว่า
    • สำหรับผลิตภัณฑ์นี้ ความเข้ากันได้ของซอฟต์แวร์สำคัญมากด้วยเหตุผลใหญ่สองข้อ ข้อแรกคือทีมตอนนี้เล็กกว่าสมัย Pebble เดิมมาก ดังนั้นการลดงานด้านซอฟต์แวร์จึงเป็นลำดับความสำคัญสูงสุด ข้อสองคือแอปและ watch face ทั้งหมดถูกแจกจ่ายเป็น ARM binary ดังนั้นถ้าสถาปัตยกรรม MCU เปลี่ยน ความเข้ากันได้ย้อนหลังจะหายไป ซึ่ง ESP32 ก็เข้าข่ายนี้ด้วย
    • ถ้าทุกอย่างเป็น proprietary ก็อาจติดทางตันได้มากมาย มันต่างจากฮาร์ดแวร์ PC มาตรฐานมาก
  • อ่านโพสต์นี้อย่างสนุกมาก nimBLE เป็น Bluetooth stack ที่ยอดเยี่ยม และน่าตื่นเต้นที่มันเปิดทางสู่ความเป็นไปได้ในการพัฒนาต่อของ Core Devices ในอนาคต