วันจันทร์ที่ 20 กรกฎาคม พ.ศ. 2552

ลง WM6.5 บน HP iPAQ rw6828

หลังจากได้รับบริจาค HP iPAQ rw6828 มาสักพักนึง ได้เพียงแต่เอามาต่อเน็ต
ยังไ่ม่ได้ทำอย่างอื่นเลย วันนี้ว่างๆ
ก็เลยลองหาข้อมูลดูว่ามีอะไรให้เล่นกับมันได้บ้าง ในที่สุดก็พบว่ามีคนทำ
ROM image ของ Windows Mobile รุ่นใหม่ๆ เช่น Mobile 6.0, Mobile 6.1
ไปจนถึงรุ่นล่าสุด 6.5 ให้สามารถติดตั้งลงบน rw6828 ได้ (ซึ่งเดิม ROM
image ของทาง HP จะเป็น Windows Mobile 5 เท่านั้น)

สำหรับแหล่งรวม ROM image ก็ที่นี่เลย
http://forum.xda-developers.com/forumdisplay.php?f=388

มีทำการหลายตัวมากไม่รู้จะเลือกตัวไหนดี ก็เลยเริ่มจาก Ver 3.02.02b for
HP6815 & HP68x8 ของท่าน NHOCBANME
ดูรายละเอียดได้ที่นี่

http://forum.xda-developers.com/showthread.php?t=505750

ที่ดูเหมือนจะทำมานานแล้ว (มีอ้างอิงหลายที่น่าเชื่อถือดี)

วิธีการก็ไม่ยุ่งยากอะไร ดาวน์โหลดไฟล์มาแล้วก็ Extract เอาไฟล์
diskimg.nb0 ไปใส่ใน miniSD จากนั้นก็สั่งใช้ stylus กดปุ่มรีบูตพร้อมๆ
กับกดปุ่ม - (ขีด) ซ้ายขวาพร้อมๆ กัน จนเห็นโลโก้ HP
โดยมุมล่างขวาจะเขียนข้อความ PBL 1.0.5 จากนั้นก็ปล่อยทิ้งไว้สัก 15 ถึง
20 นาที เครื่องก็รีบูต เข้าสู่ ROM image ใหม่
(บูตครั้งแรกจะนานหน่อยไม่ต้องตกใจ)

เสร็จแล้วก็ลองเล่นดู รู้สึกยังไม่ถูกใจเท่าไหร่ UI หลายๆ จุด
ดูไม่ค่อยเข้ากันเท่าไหร่ ก็เลยกลับมานั่งหาดูว่ามี ROM image
ตัวอื่นที่น่าสนใจหรือเปล่า ก็พบว่ามีตัวนี้

http://forum.xda-developers.com/showthread.php?t=360664

ที่มีคนให้ความสนใจกันมาก จำนวนคนที่เปิดดูกระทู้นี้ปาเข้าไปสองแสนกว่า
ผู้ตอบสามพันกว่า ก็เลยลองเอาตัว ROM image ล่าสุด b318 มาอัพเกรดดู

วิธีการก็เหมือนเดิม ไม่ถึง 20 นาที ก็เรียบร้อย เท่าที่ลองเล่นดู
ตัวนี้ค่อนข้างสมบูรณ์กว่าในเรื่องของ UI ที่ค่อนข้างกลมกลืน แต่ตัว
Windows Mobile 6.5 จะเป็น Build 21234 แทนที่จะเป็น Build 21501
(ใหม่กว่า) และไม่มีโปรแกรมเสริมต่างๆ ลงมาให้เลย
ก็ต้องมานั่งหาโปรแกรมมาลงเพิ่มเติมเอง

ไว้มีเวลาจะเก็บมาฝากว่ามีโปรแกรมอะไรที่น่าสนใจบ้าง

วันจันทร์ที่ 17 พฤศจิกายน พ.ศ. 2551

TNKernel - RTOS สัญชาติรัสเซีย

TNKernel เป็น RTOS พัฒนาโดยนาย Yuri Tiomkin
ซึ่งจบจากมหาวิทยาลัยแหล่งหนึ่งในรัสเซีย จุดเด่นของ TNKernel อยู่ที่ตัว
APIs ที่คล้ายกันกับ µITRON 4.0 ของทางญี่ปุ่น (ดร. เคน ซากามูระ
ปรมาจารย์ทางด้านระบบสมองกลฝังตัวของญี่ปุ่น) นอกจากนี้
ยังถูกพอร์ตไปยังไมโครคอนโทรลเลอร์ตระกูล ARM หลายตัว
และยังสามารถเข้ากันได้ Toolchains หลายยี่ห้อ
ตั้งแต่ที่สามารถใช้งานได้ฟรี (GNU Toolchains) ไปจนถึงตัวแพงๆ
ระดับหลายพันเหรียญ

หลังจากที่ไม่มีการออกเวอร์ชันใหม่มาประมาณปีกว่า (จนนึกว่าเลิกทำไปแล้ว)
ล่าสุด ก็ได้ปล่อยเวอร์ชัน 2.5 ออกมาให้ดาวน์โหลดไปใช้กันแบบฟรีๆ

http://www.tnkernel.com/downloads.html

พร้อมกันนี้ยังได้เปิดให้ดาวน์โหลดซอร์สโค้ดของ USB Firmware Loader
ฝั่งที่ทำงานบนพีซี ซึ่งเดิมให้มาเฉพาะไบนารี

http://www.tnkernel.com/usb_fw_upgrader.html

สำหรับใครที่กำลังมองหา RTOS
ขนาดเล็กที่ออกแบบมาสำหรับไมโครคอนโทรลเลอร์ตระกูล ARM โดยเฉพาะ
(แม้ว่าจะการพอร์ตไปยัง MCU ตระกูลอื่นบ้างแล้ว เช่น PIC, Freescale
HCS08) TNKernel เป็นอีกทางเลือกหนึ่งที่น่าสนใจ

แต่ทว่า ฐานของผู้ใช้ดูเหมือนจะยังจำกัดอยู่ในวงแคบๆ เมื่อเทียบกับ RTOS
ฟรี ตัวอื่นๆ เช่น FreeRTOS เป็นต้น

วันพุธที่ 5 พฤศจิกายน พ.ศ. 2551

มาสร้างโทรศัพท์มือถือ Android ใช้เองกันดีกว่า

เมื่อพูดถึงโทรศัพท์มือถือที่เปิดเผยข้อมูลออกแบบทั้งหมด ตั้งแต่แบบวงจร
ไปจนถึงซอฟต์แวร์ต่างๆ เรียกได้ว่าเอาไปปั๊มได้เลย ก็ต้องนึกถึง Openmoko
(www.openmoko.org) แต่ทว่าดูเหมือนจะไม่ค่อยได้รับความสนใจเท่าไหร่
เมื่อเทียบกับกระแสของ Android ซึ่งเป็น Mobile Platform จากทาง Google
(ประมาณว่ายุคนี้ Google ทำอะไรก็ดัง)
แม้ล่าสุดเพิ่งมีมือถือที่วางจำหน่ายแล้วเพียงรุ่นเดียวที่ใช้ Android
คือ HTC รุ่น G1 แต่ก็มีการคาดการณ์ว่าจะมีการผลิตมือถือรุ่นนี้ถึง 5
แสนเครื่องภายในปีนี้ นอกจากนี้ยังมี Motorola, Asus
และผู้ผลิตมือถืออีกหลายราย กำลังจะปล่อยมือถือที่ใช้ Android
ออกมาในเร็ววันนี้

ระหว่างที่รอ กลับมาที่ Openmoko
ซึ่งปัจจุบันได้มีการวางจำหน่ายฮาร์ดแวร์รุ่นที่ 2 แล้ว ที่ใช้ชื่อว่า
Neo Freerunner สนนราคาอยู่ที่ 399 USD ล่าสุดพบว่า Android
กลายเป็นอีกทางเลือกหนึ่งของซอฟต์แวร์ที่สามารถทำงานบนฮาร์ดแวร์ Neo
Freerunner ได้ ซึ่งเกิดขึ้นหลังจากที่ Google เปิดซอร์สโค้ดของ Android
(source.android.com) ได้เพียงไม่กี่สัปดาห์ สามารถดูรายละเอียดได้ที่

http://wiki.openmoko.org/wiki/User:Seanmcneil3

ก็คงเป็นอะไรที่ท้าทายคนที่อยากลองสร้างมือถือ Android ไว้ใช้เอง

ตัวอย่างโปรแกรมสำหรับ LPC2148 ที่สมบูรณ์ที่สุด

หากใครที่กำลังเรียนรู้หรือศึกษาการเขียนโปรแกรมสำหรับไมโครคอนโทรลเลอร์ตระกูล
ARM MCU ตัวหนึ่งที่ยังคงเป็นที่น่าสนใจก็คือ MCU ในซีรีส์ LCP214x จาก NXP
จุดเด่นของ MCU ตัวนี้ก็คงอยู่ที่มี USB Controller ภายในตัว เพื่อให้เห็นถึงศักยภาพของ
MCU ตัวนี้ อยากแนะนำให้ดูตัวอย่างโปรแกรมที่ท่าน J.C. Wren ได้กรุณานำมาเผยแพร่
ต่อสาธารณะ ซึ่งเป็นตัวอย่างโปรแกรมที่มีการใช้งานเกือบแทบครบทุกฟีเจอร์ที่ MCU ตัวนี้
มีให้ใช้เลยก็ว่าได้

http://jcwren.com/arm/

เดิมดูเหมือนท่าน J.C. Wren
จะไม่ได้มีการอัพเดทตัวอย่างโปรแกรมดังกล่าวมาประมาณปีกว่าๆ
(ตั้งแต่เวอร์ชัน 1.20)
แต่เข้าใจว่าหลังจากที่ตัวอย่างโปรแกรมดังกล่าวได้ถูกรวมให้เผยแพร่ไปพร้อมกับ
FreeRTOS 5.0.3 (อยู่ในส่วนของตัวอย่างโปรแกรมที่พัฒนา 3rd party)
ทำให้ตัวอย่างโปรแกรมดังกล่าวได้กลับมามีการอัพเดทจนมีเวอร์ชัน 1.30 และ
1.40 ตามออกมาโดยลำัดับ

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


วันเสาร์ที่ 11 ตุลาคม พ.ศ. 2551

GCC 4.3.2 ไบนารีสำหรับ ARM มาแล้ว

ไม่ต้องลำบากและเสียเวลา Build เองอีกต่อไป ล่าสุด GCC 4.3.2 สำหรับ ARM
มีให้ดาวน์โหลดในรูปแบบไบนารีแล้ว แบบฟรีๆ ตอนนี้มีสองตัวหลักๆ
คือ
1. Sourcery G++ for ARM Lite Edition
(http://www.codesourcery.com/gnu_toolchains/arm/portal/subscription?@template=lite)
สำหรับตัวนี้ก็เป็นที่ทราบกันดีว่า เป็นตัวเดียวที่รองรับ ARM Cortex
มาตั้งแต่รุ่น 4.2 แล้ว เนื่องจาก CodeSourcery เองเป็น contributor
หลักในส่วนของสถาปัตยกรรม Thumb-2 และ ARMv7 ให้กับ GCC
2. YAGARTO (http://www.yagarto.de/) จุดเด่นสำหรับตัวนี้คือ
เน้นสำหรับวินโดว์โดยเฉพาะ และรองรับการทำงานร่วมกับ Eclipse

วันเสาร์ที่ 4 ตุลาคม พ.ศ. 2551

Really Small Message Broker

Really Small Message Broker

เป็นเมสเสจเซิร์ฟเวอร์ขนาดเล็กมากๆ ซึ่งอิมพลีเมนต์ตามโพรโตคอล MQTT
ซึ่งใช้สำหรับกระจายเมสเสจระหว่างแอพพลิเคชันต่างๆ

http://alphaworks.ibm.com/tech/rsmb

เท่าที่ดาวน์โหลดมามีให้เฉพาะไบนารี สำหรับแพลตฟอร์มต่างๆ ตั้งแต่
วินโดว์ ลีนุกซ์สำหรับ x86 และ ARM

ส่วนรายละเอียดของโพรโทคอล MQTT ดูเพิ่มเติมได้ที่ www.mqtt.org

มีตัวอย่างอิมพพลีเมนเตชันทั้งเป็นภาษาซีและภาษาจาวา

Open Source Issues Tracker ที่น่าสนใจอีกตัว

บังเอิญไปเจอ Open source Issues Tracker ที่น่าสนใจมาอีกตัวนึง

http://www.redmine.org/

เท่าที่ลองดูเว็บสาธิตพบว่าคุณสมบัติต่างๆ โดยรวมเหมือนจะดูดีกว่า Trac
(http://trac.edgewall.org/)

สำหรับ Redmine ถูกพัฒนาบนพื้นฐานของ Ruby on Rails ส่วน Trac จะเป็น Python