AndroidOpen Source HardwareSmart Phone

โยโย่ มาแล้ว (IOIO is Coming) ตอนที่ 1

By September 12, 2011 June 15th, 2012 11 Comments

สวัสดีครับ ผ่านมาหลายเดือนแล้ว หลังจาก Google I/O เปิดตัว USB Accessory กับ Google ADK มา ผมยังหามือถือเจ๋งๆ ราคาเพื่อมวลชน อย่างเราให้สัมผัสได้สักที่

มือถือที่จะมีความสามารถ USB Accessory ที่ผมสำรวจมาเป็นมือถือรุ่นใหม่ ที่มากับ Android 2.3.4 หรือ Honeycomb 3.1 แต่มาผ่านมาหลายเดือน เห็นมีแต่ Nexus One ,Nexus S ,Motolora Xoom ที่มีเอามาใช้ USB Accessory บ้าง ผมว่ามันไม่ค่อยจะมวลชน มันจำกัดในวงแคบไปนิด (ถ้าทำ product แล้วจะขายใครล่ะนิ) เอาเป็นว่า รอกันไปก่อน ดูสถานการณ์ ว่าจะเป็นไงต่อ

1. IOIO คืออะไร

สำหรับบทความนี้ ผมเลยเอาอีกทางเลือกมานำเสนอ บอร์ด IOIO (อ่านว่า “โย-โย่”) ซึ่งมาอยู่กับผมสักพักแล้ว เจ้าบอร์ดนี้เป็นบอร์ดที่ทำให้ Android สามารถเชื่อมต่อกับโลกภายนอกได้ เหมือนกับต่อแขน ขา หรือ ตาให้มือถือได้เลย

ความสามารถของเจ้า IOIO

  • เป็นบอร์ด I/O มีช่องสัญญาณ Digital และ Analog
  • รูปแบบการสื่อสารกับแอนดรอยด์แบบ ADB  มาดัดแปลง เชื่อมต่อกับมือถือแอนดรอยด์ ผ่าน USB
  • ทำงานได้กับ แอนดรอยด์โอเอส ตั้งแต่เวอร์ชั่น 1.5 ขึ้นไป
  • พัฒนาโปรแกรมโดยใช้ Android-SDK และ ซึ่งเขียนแบบ Java
  • สำหรับ Hardware ไม่ต้องทำ Firmware บนไมโครใหม่ แต่เน้น เขียนโปรแกรมบน Android สื่อสารกับ บอร์ด IOIO อีกที่

โปรเจคนี้ ผมว่าหลายคนคงจะสงสัยแบบเดียวกับผมนะครับ

  • แอนดรอยด์มันต่อกับอุปกรณ์ USB ได้อย่างไง? มันไม่ได้มี USB Host Controller บนมือถือสักหน่อย หรือว่ามันมี
  • ถ้าจะให้ใช้ Kernel ของแอนดรอยด์ เราต้องโมดิฟายระบบปฏิบัติการหรือป่าว หรือ มันมีวิธีลง Driver ได้ง่าย

นาย YTAI ผู้ที่พัฒนา IOIO ได้ชื้ความกระจ่างว่า อุปกรณ์แอนดรอยด์ มันมีโปรโตคอล Android Debug Bridge หรือ ADB ซึ่งมือถือแอนดรอยด์ทุกรุ่นมีอยู่แล้ว ตั้งแต่แอนดอรยด์เวอร์ชั่น 1.5  ด้วย ฉะนั้นโดยทางเทคนิดแล้ว โปรโตคอล Android Debug Bridge จะยอมเชื่อมต่อกับอุปกรณ์ที่ทำหน้าที่เป็นโฮส อย่างเช่นคอมพิวเตอร์ เพื่อเข้าถึงข้อมูลภายในเครื่องได้

การเปิด Android Debug Bridge จะเป็นการอนุญาติให้ เข้า access kernel shell ได้ครับ จึงทำให้ ไม่ว่าจะเปิดโปรแกรม เพื่อดึงข้อมูล Logfile เพื่อใช้ในการ Debug และ เข้าถึงไฟล์ซิสเต็ม เพื่อจะลดหรือแก้ไขไฟล์ได้ และ ADB ยังมี Service ที่สามารถ forward port ที่ใช้สื่อสารภายในโปรแกรม ออกไป port สื่อสารภายนอกได้

ทางนาย YTAI จึงได้นำส่วนนี้ ทำให้แอนดรอยด์ รับค่าหรืออ่านค่าจากภายนอกได้ โดยไม่ต้องโมดิฟายใดๆ ตัวระบบ Android เลย ซึ่งถือว่าเป็นไอเดียที่เยี่ยมมาก  เป็น Hacker ขนานแท้ เอาของที่มีอยู่มาประยุกต์ใช้งาน (ถึงจะผิควัตถุประสงค์ไปสักนิดก้อตาม)

2. มารู้จักบอร์ด IOIO for Android

บอร์ดนี้เป็นบอร์ด I/O เน้นทางเขียนโปรแกรมบน Android คือเขียน app บน android ให้ควบคุม สัญญาณ Digital และ สัญญาณ Analog ภายนอก โดยที่เราไม่ต้องเขียน firmware บนไมโครเลย

บอร์ด IOIO เป็นบอร์ดที่มี usb host controller ที่ประยุกต์ใช้ ADB เพื่อใช้สื่อสารข้อมูลภายในบอร์ด กับ USB ครับ สำหรับหน้าตาบอร์ดนี้มีสีขาวครับ มีขนาดเล็ก (7×3 cm) บนบอร์ด ใช้ไอซีไมโครซิป ตระกุล PIC24 ที่มี USB OTG ภายในตัว อุปกรณ์จึงน้อยกว่าทาง GoogleADK มากซึ่งรายละเอียดเพิ่มเติมของบอร์ดเข้าไปดูได้ที่ sparkfun และ ioio wiki ครับ

3. การใช้งาน

สำหรับขั้นตอนการลง Android-SDK มันค่องข้างยาวครับ ผมว่าหาดูในเวปมีเวปไทยสอนเยอะครับ หรือไม่ ซื้อ TPE เล่ม 21 ที่รวมเล่ม Android มาอ่านดีกว่า สำหรับตัวอย่างการใช้งาน ในขั้นต้นหลังจากลง android-sdk ได้แล้ว ลงเอา code ตัวอย่างจาก Sparkfun มาลองครับ ซึ่งมันก็จริงอย่างที่ เขาบอกครับ ว่าใช้งานได้กับมือถือทุกรุ่นจริงๆครับ อย่าง Wellcom A88 ตกรุ่น ยังใช้งานได้เลย  สำหรับตอนนี้ แค่โชว์ไฟกระพริบได้ก้อดีใจแล้ว

4. วีดีโอรีวิว

เอาเป็นว่า โปรเจค IOIO เป็น Hardware ไมโครคอนโทรลเลอร์ ที่มาพร้อมกับ USB Host Controller ที่น่าสนใจครับ เน้นด้วยมาสร้างง่ายไอซีตัวเดียว ราคาน่าจะถูก ผมว่า IOIO ยังพัฒนาไปได้ต่ออีกไกล และ ตัว Libraries ที่อยู่บน Android-SDK มันก็ใช้งานง่าย ไม่ซับซ้อนครับ เดี่ยวถ้าเรามีโปรเจคอะไรใหม่จะเข้ามา Update ให้ชมต่อ

chang

ชื่อ “ช้าง” ส่วนมากเขาจะเรียกว่า “พี่ช้าง” แล้ว มีความสนใจทางเทคโนโลยีทางคอมพิวเตอร์ อิเล็กทรอนิกส์ และ หุ่นยนต์ เป็นทั้งนักคิด นักประดิษฐ์ ชอบทดลองเล่น จนเดี่ยวนี้รู้สึกว่าจะเล่นมากกว่ามืออาชีพไปสักแล้ว

11 Comments

  • Nutt Taro says:

    A88 ไม่ทราบใช้ Rom ของอะไรครับ

  • Nutt Taro says:

    ไม่ทราบว่า A88 ใช้ Rom อะไรครับ

  • Nutt Taro says:

    ไม่ทราบว่า A88 ใช้ Rom อะไรครับ

  • Tttong_maladang_maladang says:

     ถ้าเป็น samsung spica ใช้ rom ตัวไหนคับ ถึงจะใช้กับ ioio ได้ rom เดิม 2.1 ของ pica ใช้ไม่ได้คับเชื่อมต่อไม่ได้เหมือนกัน

  • Kaikling_8 says:

    ผมใช้บอร์ด IOIO ควบคุมหุ่มยนต์ผ่านบลูทูธด้วยครับ

  • Tonjangja01 says:

    ราคา โยโย่ บอร์ดเนี่ยมันเท่าไหร่หรอ!

    • chang says:

      ราคาประมาณ 1650 บาท ครับ หาดูในเวป inex เลยครับ เขาทุ่มเท จำหน่ายอยู่

  • frame says:

    อยากได้หาซื้อไหนคับ

  • AE says:

    samsung galaxzy note2 ก้อใช้ไม่ได้หรอคะ??? ต่อแล้วมันหาไม่เจออ่ะค่ะ แล้วต้องทำไงให้มันหาเจอคะ แนะนำหน่อยค่ะ

Leave a Reply to Kaikling_8 Cancel Reply