เนื่องจากรอซื้อ Moto 360 มานานมากนานจนลืมไปเลยว่าสั่งซื้อได้แล้ว ก็เลยใช้บริการจาก ThaiNexusMan ได้ Moto 360 มาอย่างรวดเร็ว เนื่องจากต้องการทดสอบเรื่องคาใจทั้งในเรื่อง flicker screen และเรื่อง ambient mode ใน Application ที่ได้ลองเขียน สรุปว่าลองกับเครื่องจริงไม่มีปัญหาอะไร ถ้ายังจำกันได้ผมเคยเขียนเรื่อง Watchface บน Android Wear ไปเมื่อนานมาแล้ว ลองไปค้นดูครับ ตอนแรกว่าจะ review เรื่อง Moto 360 คิดไปคิดมา ก็คงเหมือนๆ กับท่านอื่นที่ซื้อ Moto 360 มาใช้ล่ะครับ ก็เลยขออ้างอิงจาก Review Moto 360 จากคุณ ​Akeorcist ละกัน เพราะเขียนไว้ได้ละเอียดเลยทีเดียว สำหรับผมคงมาบ่นเรื่องการใช้งานนิดหน่อย

  1. คงเป็นเรื่องอาการแบตรั่วเป็นสายธาร เนื่องจาก rom ที่มากับเครื่องมีปัญหาเรื่องอาการกินไฟแบบสุดๆ แบตลดเร็วมาก ใจหายเลยเวลาหยิบเอามาเล่น แต่ปัญหานี้แก้ไขแล้วใน rom รุ่นใหม่ ทดสอบใช้งานตั้งแต่ 9.00 – 20.00 แบตเหลือ 63% พอรับได้
  2. ชาร์ตไม่รู้จักเต็มสักที เนื่องจากเราไม่สามารถปิดเครื่องแล้วใช้ wireless charge ได้ มันจะเปิดเครื่องขึ้นมาอัตโนมัติทุกครั้ง และหน้าจอ ambient ไม่ได้ช่วยให้แบตชาร์ตเร็ว แต่กลายเป็นช่วย discharge เรื่อยๆ ต่างหาก ทำให้การชาร์ตใช้เวลานาน ยิ่งชาร์ตนาน เครื่องยิ่งร้อน ไม่ดีต่อสุขภาพครับ วิธีแก้ไขง่ายๆ คือ ตั้งค่า ambient เป็น on ก่อนวางที่แท่นชาร์ต รอให้หน้าจอเข้า ambient mode แสงหน้าจอจะหรี่ลง ให้กดเปลี่ยนจาก ambient เป็น off หน้าจอจะดับทันที
  3. ความร้อนเรื่องนี้ไม่รู้จะแก้ยังไง เพราะตัวเครื่องเป็นอลูมิเนียมอยู่ในห้องแอร์คงช่วยได้
  4. Moto 360 มีแบตแค่ 300mAh น้อยมากๆ หน้าจอกินไฟมากที่สุด ถัดมาจะเป็นเรื่องของ watchface, background service ที่อยู่ในระบบ วิธีประหยัดแบตก็ง่ายมาก ตั้ง ambient เป็น off เลือก notification เฉพาะ app ที่ต้องใช้ เลือก watchface ธรรมดาๆ อย่าหวือหวามากนัก watchface ดุ๊กดิ๊กจะเป็นตัวกินแบต เพราะมีทั้งการแสดงผลและ background service โดน 2 เด้ง

เก็บตกจาก Becky Stern และ Lady Ada แห่ง Adafruit แงะ Moto 360 ออกมาให้ดูว่ามีอะไรข้างใน

หรือใครสนใจก็ลองตามไปอ่านต่อในรายละเอียดกันได้ครับ

AppScale เป็น OpenSource Platform as a Service หรือจะเรียกว่าเป็น OpenSource AppEngine ก็ว่าได้ เพราะใช้งานคล้ายกัน โค้ดที่เขียนบน Google AppEngine สามารถทำงานบน AppScale ได้ นอกจากนี้คุณยังสามารถติดตั้ง AppScale บน VirtualMachine, Cloud Provider ต่างๆ ได้อย่างง่ายๆ ผ่าน AppScale Tools หากใช้ AWS คุณสามารถสั่ง Scale Compute Node ของ AppScale ได้อัตโนมัติผ่านเครื่องมือที่ทาง AppScale เตรียมไว้ให้ได้เลย

สำหรับท่านที่ต้องการเล่น AppScale มีหลายวิธี

  • ติดตั้งเอง
  • ขอใช้ Demo จาก AppScale
  • ทดลองเล่นผ่าน Vagrant Image ก็ได้

Continue reading

เนื่องจากมีคนมาชวนเล่น Google Course Builder ก็เลยกลับมาเล่นอีกรอบ Course Builder เป็น LMS ในโครงการ Open Online Education ของ Google เหมาะสำหรับครูอาจารย์ที่ต้องการสร้างบทเรียนออนไลน์ผ่านบริการของ Google การติดตั้งและใช้งานจะต้องติดตั้งผ่าน Google AppEngine และใช้ Google Account เข้าใช้งานเท่านั้น Course Builder พัฒนามาตั้งแต่ปี 2012 มีบางช่วงเหมือนจะหยุดพัฒนา แต่ก็มีอัพเดทใหม่ๆ และการแตกโครงการออกหลายส่วน เช่น Course Builder X เป็นต้น ดูจากการอัพเดทแล้วคงยังไม่หยุดพัฒนาล่ะคับ :P เมื่อต้นเดือนตุลาคมที่ผ่านมามีอัพเดทใหม่หลายตัวที่่น่าสนใจ เช่น การแทรกเอกสารจาก Google Doc, การจัดการ Certificate, รายงานผลการเรียนแบบละเอียด, เชื่อมต่อกับ XBlock ของ edX เป็นต้น ซึ่งน่าสนใจมากๆ

สำหรับท่านที่อยากลองคงต้องติดตั้งกันเอาเอง เพราะไม่มีบริการฟรีหรือ demo ให้เล่น การติดตั้งก็ง่ายมากๆ คือ เอาโค้ดจากโครงการโยนขึ้น Google AppEngine แล้วใช้งานได้เลย เริ่มจากเข้าไปที่ Google Developer Console สร้างโครงการขึ้นมาก่อน

Continue reading

เนื่องจากเห็นคุณ Pumpith Ungsupanit เล่น Humhub ก็เลยอยากเล่นบ้าง Humhub เป็น OpenSource Social Network น้องใหม่มีความสามารถหลายอย่าง คล้ายๆ Facebook รองรับการใช้งาน Group, Spaces (ใน Facebook เรียก Page), File, Search และรองรับการทำงานบน Mobile และ Tablet ด้วย และที่สำคัญมีส่วนเสริม (plug-in) ให้ติดตั้งเพิ่มเติมได้ ผ่าน Market Place ครับ ใครอยากทดลองเล่นก็สามารถเข้าไปเล่นตัว Demo ที่เว็บ Humhub ได้

แต่ถ้าอยากติดตั้งเองก็สามารถติดตั้งเองได้ง่ายๆ บน Ubuntu 14.04 LTS ดังนี้

Continue reading

ครั้งที่แล้วได้ลองเล่น MQTT Broker บน Linux Server ครั้งนี้ขอมัดรวมรวดเดียวเลยละกัน เพราะเดี๋ยวจะไม่ได้ blog สักทีดองไว้นานมาก ครั้งนี้เราจะมาลองเชื่อมต่อ Arduino + Sensor ส่งข้อมูลไปยัง Raspberry Pi โดยใช้ MQTT ผ่าน LAN หากลองมาดู diagram เราจะได้ภาพแบบนี้

ลองมาดูทีละส่วน เริ่มจาก Raspberry Pi ก่อน ติดตั้ง MQTT Broker ก่อน เราใช้ Mosquitto เหมือนเดิมดังนี้

Continue reading

ครั้งที่แล้วพาเล่น Node-RED บนเครื่อง Linux Server ครั้งนี้มาลองเล่นบน Respberry Pi กันบ้าง เผื่อท่านใดสนใจเอาไปประยุกต์กับการอ่านค่าจาก MQTT Broker แล้วส่งข้อมูลไปยัง MQTT Broker อื่นหรือสั่งงานผ่าน GPIO แล้วแต่การประยุกต์ใช้ครับ Node-RED ต้องใช้ Node.js ดังนั้นเราติดตั้ง Node.js สำหรับ Raspberry Pi กันก่อน ดังนี้

เอาไฟล์ package จากเว็บมาก่อน

wget http://node-arm.herokuapp.com/node_latest_armhf.deb

ติดตั้งด้วยคำสั่ง

sudo dpkg -i node_latest_armhf.deb

เท่านี้ก็ได้ Node.js และ npm แล้ว จากนั้นก็ clone Node-RED จาก git repository ดังนี้

git clone https://github.com/node-red/node-red.git

cd node-red

npm install

Continue reading

MQTT (Message Queue Telemetry Transport) เป็นโปรโตคอลสำหรับ Internet of Things โปรโตคอลนี้ใช้วิธีการเหมือนกับ Message Queue ปกติแต่พัฒนาให้รองรับงานด้าน Internet of Things นอกจากจะรอรับและอ่านค่าแล้ว ยังสามารถสั่งงานอุปกรณ์ที่ใช้ MQTT ได้ด้วย การใช้งานโปรโตคอลนี้ต้องจะต้องมีอุปกรณ์ที่ฝัง MQTT Broker มาเพื่อทำหน้าที่รับส่งข้อมูลไปยังอุปกรณ์อื่นที่ใช้ MQTT เหมือนกัน เนื่องจากไม่มีอุปกรณ์ที่เล่นกับ MQTT ได้ก็ต้องจำลองกันสักหน่อย

MQTT Broker มีหลายค่ายให้ใช้งาน เราเลือกใช้ของง่ายๆ กันก่อน คือ Mosquitto เจ้ายุงนี้เป็น OpenSource MQTT Broker สนับสนุน MQTT Broker v3.1/3.1.1 วิธีการติดตั้งก็ง่ายมาก ติดตั้งผ่าน PPA ได้เลยดังนี้

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

sudo apt-get update

sudo apt-get install mosquitto python-software-properties

เท่านี้ก็ใช้งานได้แล้ว อ้อเกือบลืม mosquitto ทำงานบน port 1883 ครับ ได้ Broker แล้วจะทดลองเล่นยังไง มี 2 ทางเลือกคือ ใช้ MQTT Client หรือเขียนโปรแกรมเชื่อมต่อ ทางเลือกที่ดีที่สุดคือใช้ Client ครับ :) ผมเลือก Client ที่คิดว่าน่าจะใช้ง่ายที่สุดคือ MQTT Spy ครับ ดาวน์โหลดมาแล้วเรียกใช้งาน เราจะได้หน้าตาแบบนี้ Continue reading

ครั้งที่แล้วพาเล่น Node-RED โดยดึงข้อมูลจาก Twitter แล้วสั่ง ReTweet ผ่าน Node-RED กันไปบ้างแล้ว ครั้งนี้จะมาลองเขียน REST API ง่ายๆ ผ่าน Node-RED กันบ้าง หากคุณยังไม่มี Node-RED ก็สามารถติดตั้งได้ตามวิธีการในครั้งที่แล้ว หรือใช้ Boilerplates Node-RED Starter ใน Bluemix ก็ได้ครับ เข้าไปที่ Node-RED กันได้เลย วาง block http input และ output debug เชื่อม block ให้เรียบร้อย เราจะรับค่าจาก http request แล้วส่งไปแสดงผลใน debug ที่หน้า web console ตั้งค่า http input ดังนี้

จากนั้นเปิด rest client มาลองทดสอบกัน เริ่มจากทดสอบ POST request ก่อน เราจะพบว่า Node-RED สร้าง REST Server ให้เราพร้อมสั่งให้รับค่าแบบ json ผ่าน POST request เท่านั้น

Continue reading

Ardublock เป็น Block Code ตัวนึงใช้งานเหมือนกับ Block Code ใน LEGO การเขียนโปรแกรมก็ง่ายมากๆ เพียงแค่ลาก block มาวางต่อกัน แล้วสั่งอัพโหลดโปรแกรมไปที่ Arduino ได้เลย Ardublock ยังสนับสนุนชุด break out ของค่ายต่างๆ ด้วย เช่น DFRobot, Adafruit, SeedStudio เป็นต้น ทำให้การเขียนโปรแกรมร่วมกับชุด break out เท่านั้นทำได้ง่ายมากขึ้น และที่สำคัญไม่ต้องกังวลว่า library ของอุปกรณ์จะไม่ครบ Ardublock ยังบอกลิงค์สำหรับดาวน์โหลด library เพิ่มเติมให้เราอีกด้วย มาลองเล่นกัน

ดาวน์โหลด Ardublock ได้ที่ http://sourceforge.net/projects/ardublock/ เมื่อได้ไฟล์ jar มาแล้ว ก็คัดลอกลงใน ไดเรทอรี tool ของ Arduino Sketch ส่วนใหญ่อยู่ในไดเรคทอรี document ตัวอย่าง

  • Mac, /Users/YOUR-USERNAME/Documents/Arduino/tools/ArduBlockTool/tool/ardublock-all.jar
  • Linux, /home/YOUR-USERNAME/sketchbook/tools/ArduBlockTool/tool/ardublock-all.jar
  • Windows, C:\Users\YOUR-USERNAME\Documents\Arduino\tools\ArduBlockTool\tool\ardublock-all.jar

การใช้งานก็เปิด Arduino Sketch ขึ้นมาปกติ แล้วเปิด Ardublock จากเมนู Tools > Ardublock ลองเขียนแบบ Block ดูบ้าง

กด Upload to Arduino ก็จะได้โค้ดมาพร้อม compile และ upload ไปยัง board ให้เลย

Ubuntu 14.04 มี Java 7 ติดตั้งมาให้ ซึ่งเป็น Open JDK 1.7 แต่หากต้องการติดตั้ง Java 8 จาก Oracle ต้องทำยังไง หลายท่านถามคำถามนี้เข้ามา ก็เลยถือโอกาสแนะนำวิธีการติดตั้ง Java 8 บน Ubuntu 14.04 วิธีการติดตั้งแบบง่ายที่สุด คือใช้ PPA ดังนี้

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

sudo apt-get install oracle-java8-installer oracle-java8-set-default

เพื่อความแน่ใจ ตรวจสอบสักนิดว่าเป็น Java 8 หรือยังด้วยคำสั่ง

java -version