วันจันทร์ที่ 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

วันพฤหัสบดีที่ 11 กันยายน พ.ศ. 2551

เว็บไซต์ชั่วคราวบริษัทเฮลิออสเทคโนโลยีจำกัด

ได้ทดลองเปิดเว็บไซต์ชั่วคราวสำหรับบริษัทเฮลิออสเทคโนโลยีจำกัด
สามารถเข้าเยี่ยมชมได้ที่

http://heliostech.gotdns.com

ใช้ Drupal 6.4 + ธีม Four Seasons ที่ทำการปรับแต่งเล็กน้อย

วันพุธที่ 3 กันยายน พ.ศ. 2551

ตัวอย่างการออกแบบโดยใช้ไมโครคอนโทรลเลอร์ของ NXP

NXP ได้เผยแพร่ตัวอย่างการออกแบบโดยใช้ไมโครคอนโทรลเลอร์ในตระกูล LPC900
และ LPC2000 สำหรับแอพพลิเคชันต่างๆ สามารถดูรายละเอียดได้ที่

http://www.standardics.nxp.com/support/design/microcontrollers/

มีที่น่าสนใจคือ
- Li-ion Battery Charger
- LCD Controller

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

แปลงไฟล์ PDF ไปเป็นรูปภาพ

เราสามารถแปลงไลฟ์ PDF ไปเป็นรูปภาพ
เพื่อทำการแก้ไขหรือเอารูปไปใช้ทำอะไรต่อได้ โดยใช้โปรแกรม GIMP

แต่เบื้องหลังการทำงานจริงๆ การแปลงดังกล่าวถูกกระทำโดยโปรแกรม
Ghostscript ซึ่งเราสามารถทำการแปลงด้วยบรรทัดคำสั่งง่ายๆ ดังนี้

gswin32c -r100 -g826x1170 -sOutputFile=OCR_%03d.jpg -sDEVICE=jpeg
-dBATCH -dNOPAUSE
myfile.pdf

โดยที่ -r100 คือ Resolution 100 pixels/inch และ -g826x1170 คือขนาด
826x1170 pixels ซึ่งในทีนี้ก็คือขนาดประมาณหน้าขนาด A4

ถ้าต้องการได้ภาพที่ละเอียดขึ้นก็สามารถแก้เป็น -r200 -g1652x2340 เป็นต้น

วันพุธที่ 27 สิงหาคม พ.ศ. 2551

ลองเอา Trac มาใช้บริหารจัดการโครงการ

ที่ผ่านมาได้ลองเอา Trac (http://trac.edgewall.org/)
มาช่วยในการบริหารจัดการโครงการมาได้สักระยะหนึ่งแล้ว
แต่ไม่ค่อยได้ใช้งานอย่างจริงจังสักเท่าไหร่
คราวนี้เลยลองเอามาใช้กับโครงการต่างของ Helios Technology ดู ซึ่งสามารถเข้าใช้งานได้ที่
http://heliostech.gotdns.com/projects

วันศุกร์ที่ 22 สิงหาคม พ.ศ. 2551

GCC 4.3.1 สำหรับ ARM (รองรับ Cortex-M3) บน Mac OS X และ Linux

สำหรับใครที่ใช้ Mac OS X อยู่แล้วอยากลองพัฒนาโปรแกรมสำหรับ ARM นะครับ

บทความนี้จะเน้นสำหรับ STM32 (ARM Cortex-M3) จากค่าย ST นะครับ

http://www.paintyourdragon.com/uc/osxstm32/index.html

ยกเว้นขั้นตอนการ Build และ Install GCC และ Newlib
สามารถหลีกเลี่ยงไม่ให้เกิดปัญหาตามที่ระบุในข้อที่ 3
โดยการสร้างไดเรกทอรีใหม่สำหรับ Build แทนที่จะทำการ Build
ภายในไดเรกทอรีซอร์สโค้ดโดยตรง ดังนั้นในขั้นตอนที่ 2 ให้แก้เป็น

cd ~/Desktop/stm32/gcc-4.3.1 (or present GCC version)

ln -s ../newlib-1.16.0/newlib . (ditto, and note there's a
space before the period)

mkdir -p ~/Desktop/stm32/gcc-4.3.1-build (make build directory for GCC)

cd ~/ Desktop/stm32/gcc-4.3.1-build

../gcc-4.3.1/configure --prefix=/usr/local/stm32 --target=arm-none-eabi \
--enable-languages=c --enable-multilib \
--disable-libgomp --disable-libmudflap --disable-libssp \
--disable-libstdcxx-pch --disable-nls --disable-shared \
--disable-threads --with-gnu-as --with-gnu-ld \
--with-float=soft --with-newlib

(The entire "configure" block needs to be entered as a single
command. The end-of-line backslashes should allow you to copy and
paste the text from this page to the Terminal window.)

make (This will take a bit longer than the others…have a
sandwich or walk the dog or something.)

sudo make install

อย่างไรก็ตาม คนที่ใช้ Linux อยู่ แทนที่จะใช้ CodeSourcery G++ Lite
Edition เข้าใจว่าเป็นตัวเดียวในตอนนี้ (2008/08/22) ที่ฟรีและรองรับ ARM
Cortex ก็สามารถคอมไพล์ตามขั้นตอนดังกล่าวได้เช่นเดียวกัน (ผมลองกับ
Debian Etch)

ส่วนใครที่ใช้ Windows ก็อาจจะลองนำไปคอมไพล์ดูได้นะครับ

วันพฤหัสบดีที่ 7 สิงหาคม พ.ศ. 2551

Official NXP LPC1000 Information

ในที่สุดข้อมูลเกี่ยวกับ Cortex-M3 ของ NXP
พร้อมกับดาต้าชีทของชิพตัวแรกในตระกูลนี้ก็ถูกเปิดเผยอย่างเป็นทางการในเว็บของ
NXP แล้ว สามารถดูได้ที่นี่
http://www.standardics.nxp.com/products/lpc1000/

วันจันทร์ที่ 23 มิถุนายน พ.ศ. 2551

GUI DD for Windows

โปรแกรมดีดี (dd) สำหรับวินโดว์

http://www.si-linux.co.jp/wiki/silinux/index.php?DDforWindows

เมื่อพูดถึงเครื่องมืออรรถประโยชน์ตัวหนึ่งบนลีนุกซ์ หนึ่งในนั้นต้องมี dd (Disk dump) รวมอยู่ด้วย แต่สำหรับผู้ใช้วินโดว์แล้ว ผมก็ยังนึกไม่ออกว่ามีโปรแกรมเล็กๆ ตัีวไหนที่มีขีดความสามารถใกล้เคียงกัน แม้นว่าจะมีเจ้าโปรแกรมดีดี (dd) ที่ถูกพอร์ตให้สามารถทำงานได้บนวินโดว์ อย่างไรก็ตามสำหรับผู้ใช้วินโดว์คงไม่คุ้นเคยกับการติดต่อกับผู้ใช้ผ่านบรรทัดคำสั่ง (CLI: Command Line Interface) แบบลีนุกซ์ โชคดีที่มีโปรแกรมดีดีสำหรับวินโดว์ที่มีการติดต่อกับผู้ใช้แบบกราฟฟิกส์ (GUI: Graphics User Interface)

โปรแกรมนี้เหมาะสำหรับผู้พัฒนาระบบเอ็มเบดเด็ดที่ต้องการคัดลอกหรือสำรองข้อมูลที่อยู่ใน CompactFlash

แม้ว่าข้อมูลบนเว็บไซต์จะเป็นภาษาญี่ปุ่น แต่ตัวโปรแกรมสามารถทำงานในโหมดภาษาอังกฤษได้

รุ่นล่าสุด (0.99) รองรับ CompactFlash ที่มีขนาดใหญ่ด้วย ตัวโปรแกรมเป็นไฟล์ EXE เพียงไฟล์เดียว ไม่ต้องมีการติดตั้ง ทำให้สามารถย้ายไปใช้เครื่องไหนก็ได้

วันพุธที่ 18 มิถุนายน พ.ศ. 2551

Open Source Project Management Tool

OpenProj เป็นโปรแกรมสำหรับบริหารจัดการโครงการซึ่งสามารถใช้งานได้ฟรี และเปิดเผยซอร์สโค้ด
 
http://openproj.org/

แต่ที่น่าสนใจ คือ มีเวอร์ชันบนลีนุกซ์

ก่อนหน้านี้เคยใช้อีกตัวนึง คือ

http://www.openworkbench.org

รู้สึกไม่ค่อยประทับใจเท่าไหร่ ประกอบกับเห็นหยุดพัฒนาไปนาน สุดท้ายก็เลยหันกลับไปใช้ MS Project

อย่างไรก็ตาม ล่าสุดเพิ่งเห็นออกเวอร์ชันใหม่ ยังไม่ได้ลอง

Sony Linux-based devices

หากต้องการรู้ว่าผลิตภัณฑ์รุ่นไหนของ Sony ที่ใช้ลีนุกซ์บ้าง สามารถดูได้จาก

http://www.sony.net/Products/Linux/Download/search.html

เว็บไซต์ดังกล่าว ทางโซนี่ใช้สำหรับเพยแพร่ซอร์สโค้ดตามข้อตกลง GPL และ LGPL

จะเห็นว่าผลิตภัณฑ์หลายตัวเลยทีเดียวของโซนี่ที่ใช้ลีนุกซ์ ที่น่าสนใจคือ แล้วผลิตภัณฑ์แต่ละตัวใช้ตัวประมวลผลของอะไร?

คงต้องลองดาวน์โหลดเคอร์เนลมาดูกัน อย่างไรก็ตาม มีใครเคยแฮ็กค์ฮาร์ดแวร์เพื่อติดตั้งซอฟต์แวร์ที่ปรับแต่งแล้วได้บ้าง?

วันพฤหัสบดีที่ 12 มิถุนายน พ.ศ. 2551

บทความเกี่ยวกับ NXP ARM MCU

เป็นภาษารัสเซีย แปลเป็นภาษาอังกฤษ โดย กูเกิ้ล

http://www.google.com/translate?u=http%3A%2F%2Fwww.rlocman.ru%2Freview%2Farticle.html%3Fdi%3D39581&hl=en&ie=UTF8&sl=ru&tl=en

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

ในช่วงท้ายๆ มีกล่าวถึง LPC1000 ซึ่งเป็น ARM Cortex-M3 ว่าจะออกในปี 2008 นี้

วันพุธที่ 11 มิถุนายน พ.ศ. 2551

LPC1000 - NXP ARM Cortex-M3 based

หลังจากที่มีข่าวว่า NXP (Phillips Semi) ได้ไลเซนต์ Cortex-M3
เมื่อต้นปีที่ผ่านมา ล่าสุดมีข่าวลืออกมาว่า MCU
รุ่นใหม่ที่อยู่บนพื้นฐาน ARM Cortex-M3 นั้น จะเป็นซีรีส์ ที่มีชื่อ
LPC1000 ซึ่งจะออกมาให้เห็นกันราวๆ ครึ่งปีหลังจนถึงต้นปีหน้า

วันอังคารที่ 10 มิถุนายน พ.ศ. 2551

Low-cost ARM Cortex-A8

http://beagleboard.org/

- High performance with newest ARM (Cortex-A8)
- Built-in DSP
- DVI-D LCD Monitor interface
- Low cost 149 USD @ Single Qty. (Rev. B)
- Open both hardware and software (Linux-based)

Next stable hardware revision (Rev. C) will be available Q3'2008

Embedded 7'' LCD Touch Panel Computer

http://www.embeddedarm.com/products/board-detail.php?product=TS-TPC-7390

- ARM9 based Cirrus Logic MCU
- a few second Linux boot
- ...

Intelligent Display Module

http://www.luminarymicro.com/products/mdl-idm.html

- ARM Cortex-M3
- 2.8" Color LCD with Touch Screen
- PoE
- Open source hardware & firmware
- Ready product available @ Digi-Key @ 199 USD

วันเสาร์ที่ 7 มิถุนายน พ.ศ. 2551

FCC, CE and NCC Certification

OpenMoko Neo FreeRunner Hardware info.

http://wiki.openmoko.org/wiki/Neo_FreeRunner_GTA02_Hardware

สิ่งที่น่าสนใจคือ รายงานการทดสอบ FCC, CE และ NCC (อยู่ในส่วนท้ายๆ)

ป.ล. มีตัวอย่างการทดสอบแบตเตอรี่ด้วย