01 ตุลาคม 2557

บันทึกการเล่นสี่ขา QuadCopter ตอนที่ 1

แรงบันดาลใจ

หลายปีก่อนผมได้มีโอกาสไปสัมผัสเครื่องสี่ขา QuadCopter ตัวเป็นๆครั้งแรกตอนกลับบ้าน ตวจ.แล้วได้ไปเยี่ยมบ้านเพื่อนของคุณแม่ แล้วพบว่าลูกเขยเค้ากำลังประกอบเครื่อง MultiRotor อยู่ ในตอนนั้นมันทำให้เกิดความประทับใจเล็กๆ เนื่องจากเครื่องเล่น RC เป็นเครื่องเล่นในฝันมาตั้งแต่เด็ก แต่ไม่มีโอกาสได้เป็นเจ้าของสักที ถามพี่เค้าก็บอกว่าแต่ละเครื่องนี้ต้องสั่งอุปกรณ์จากนอกเข้ามาประกอบเอง ราคาก็สูงพอสมควร เครื่องละหลายหมื่นอยู่ ตอนนั้นก็เลยยังไม่ค่อยได้สนใจมากนักเพราะคิดว่ามันเป็นของเล่นราคาแพงเกินไป

DJI Phantom?

อยู่มาวันนึงเมื่อปีที่แล้ว เกิดนึกครึ้มอกครึ้มใจอยากลองหา QuadCopter มาลองเล่นดูบ้างจึงเริ่มหาข้อมูลจากในเว็บ ในที่สุดก็เจอเข้ากับเจ้า DJI Phantom แต่ด้วยความที่มันราคาค่อนข้างสูง (หลักหมื่น) กลัวเล่นไม่เป็นแล้วทำพัง ก็เลยหาข้อมูลต่อ เห็นมีการแนะนำว่าถ้ายังไม่เคยเล่นมาก่อน ควรจะหา QuadCopter ตัวเล็กๆ ราคาถูกๆ มาฝึกดูก่อน ถ้าพังหรือสุดท้ายแล้วไม่ชอบจะได้ไม่เจ็บตัวมาก อิอิ

WLToys V959 & RCThai

หาข้อมูลมาเรื่อยจนในที่สุดก็มาติดใจ WLToys V959 เนื่องจากดูแล้วราคาไม่แพงมาก และมีหลายๆ รีวิวก็เชียร์ว่าเหมาะกับคนที่จะลองเล่นเป็นครั้งแรก แถมยังมีกล้องติดมาด้วย ใช้ถ่ายรูปและถ่ายวีดีโอได้อีกตะหาก และแล้วเมื่อต้นปีที่แล้วผมก็ได้เครื่อง V959 มาเล่นโดยซื้อมาจากร้านค้าในเว็บ RCThai.net สนนราคาประมาณ 1800 บาท โดยในช่วงแรกๆ ที่ยังบังคับได้ไม่ค่อยเป็นนักก็จะมีชนรั้วชนกำแพงหรือว่าตกค่อนข้างบ่อย บางทีก็ไปติดต้นไม้บ้าง ชิ้นส่วนที่พังบ่อยที่สุดก็คือใบพัดกับขาบูม แต่ตัว canopy ซึ่งหลุดออกมาบ่อยๆ กลับทนมาก ที่หนักสุดก็แค่ไฟ LED หลุดออกมาเท่านั้น เอากาวติดกลับเข้าไปใหม่ก็ใช้ได้ต่อสบาย :)

BangGood & HobbyKing

ช่วงแรกๆก็อาศัยซื้ออะไหล่จากร้านใน RCThai เช่นเดิม จนวันนึงบังเอิญไปเจอเว็บนอก BangGood.com มีอุปกรณ์ RC ขายเยอะมาก และเทียบราคาดูแล้วถูกกว่าซื้อในประเทศพอสมควร ก็เลยเปลี่ยนมาใช้บริการซื้ออะไหล่จากที่นี่เรื่อยมา ทั้ง มอเตอร์, ใบพัด, canopy, ขาสกี, เฟือง และไฟ LED ประดับ (เป็นของ V949 แต่ใช้ด้วยกันได้ ติดแล้วสวยดีเหมือนกัน)

ปัญหาต่อมาก็คือ แบตเตอรี่ที่มีอยู่แค่ก้อนเดียวทำให้ เล่นได้ราว 10 นาทีก็หมด แถมต้องรอชาจอีกเป็นชั่วโมงกว่าจะได้เล่นต่อ ก็เลยตัดสินใจสั่งซื้อแบตเพิ่มเติมจาก banggood.com โดยเลือกยี่ห้อ Tiger ซึ่งตอนนั้นมีขายเป็นแพ็ค 5 ก้อน ในราคาที่ถูกมาก แต่พอเอามาใช้ก็พบว่ามันคุณภาพไม่ค่อยดีนัก เป็นแบต 600mAh ก็จริงแต่ใช้งานแล้วแทบไม่รู้สึกแตกต่างจาก 500mAh ก้อนที่แถมมากับเครื่องเลย แถมตอนท้ายๆ มีอาการ "เหี่ยว" อย่างเห็นได้ชัด (น่าจะเป็นเพราะค่า C discharge ต่ำแค่ 15C) ลองดูร้านใน RCThai เห็นแนะนำแบต Turnigy Nanotech 600mAh ที่มีค่า C discharge สูง 35-70C จะลองสั่งมาลองใช้ดูก็เห็นว่าราคาค่อนข้างแพง ก็เลยไปหาดูในเว็บนอกว่าขายกันเท่าไหร่ ในที่สุดก็ไปเจอที่ร้าน HobbyKing.com ก็เลยจัดการสั่งมาลองใช้อีก 5 ก้อน พบว่าใช้งานได้ดีมากก็เลยก็ใช้มาตลอด

DeviationTX

ในระหว่างนั้นก็หาข้อมูลเพิ่มเติมไปด้วยว่ามีอะไรให้เล่นอีกบ้างไหม แล้วก็พบว่าน่าจะเปลี่ยนตัววิทยุบังคับใหม่ เพื่จะได้ควบคุมได้นุ่มนวลมากขึ้น ลองหาข้อมูลดูก็มาสะดุดใจกับวิทยุตระกูล Devo ของ Walkera เนื่องจากมี unofficial firmware ที่เป็นแบบ opensource ซึ่งเมื่อนำมาลงแล้ว ทำให้วิทยุ Devo สามารถใช้บังคับ V959 ได้ด้วย นอกเหนือไปจากที่ใช้บังคับ RC ของ Walkera เอง!

Firmware ที่ว่านี้ก็คือ DeviationTX นั่นเอง มีเว็บไซต์หลักสำหรับนักพัฒนาอยู่ที่ deviationtx.com โดย firmware นี้พัฒนาโดยนาย PhracturedBlue ซึ่งเป็น programmer ที่เก่งโคดและมีความรู้เกี่ยวกับวงจรอิเลกทรอนิกส์และโปรโตคอลของคลื่นวิทยุในระบบ RC เป็นอย่างดี ลองอ่านโค้ดของเค้าแล้วรู้สึกทึ่งและประทับใจมาก นอกจากจะเขียนได้ efficient มาแล้วยังอ่านไม่ยากเท่าไหร่ ดูแล้วเราน่าจะพอแก้ไขอะไรเล็กๆน้อยๆเองได้บ้างถ้าจำเป็น เจ้า firmware นี้สามารถใช้ได้กับวิทยุตระกูล Devo เกือบทั้งหมด โดยตัวถูกสุดที่ลงได้คือ Devo7E

Devo7E & CopterBase

หลังจากหาข้อมูลจากหลายๆที่ สุดท้ายก็เจอตัวแทนจำหน่ายในไทยคือร้าน CopterBase.com ของคุณโบว์ลิ่ง บริการประทับใจมากครับ ก็เลยจัดการสั่งมาลองเล่นซะเลย และแล้วก็ได้ค้นพบว่าเจ้าวิทยุตัวนี้มันโมได้เยอะมาก ด้วยความคันไม้คันมือ ก็เลยจัดการโมไปซะเต็มที่ตามนี้ (ไว้มีโอกาสจะเขียนเพิ่มเติม)

  • เพิ่มโมดูล A7105 เพื่อให้ใช้บังคับ V959 ได้
  • เปลี่ยนมาใช้แบตแบบ LiFePO4 แทน 4 x AAA  ทำให้ใช้เวลาชาจน้อยลงมาก
  • ช๊อตไดโอดใน TX module CYRF บนบอร์ดของ Devo7E เพื่อเพิ่มกำลังส่งเป็น 20dB (จาก 10mW เป็น 100mW) โดยได้วิธีการมาจากหน้าเว็บ WALKERA DEVO 7E TRANSMITTER INCREASE RANGE MOD ของนาย Daryoon
  • เพิ่มสวิทซ์ 2 ทางอีก 2 ตัว (AIL/DR กับ ELE/DR) โดยใช้วิธีการตามโพสนี้ Add two switches to the Devo 7e ในฟอรั่ม Tutorials ของ DeviationTX
  • ทำ patch ให้ DeviationTX เพื่อให้โปรโตคอล V959 ทำ flip ได้ (อันนี้แอบภูมิใจเล็กๆ เพราะว่านาย PhracturedBlue รับไป commit เข้า repository ของเขาด้วย!! :)

Walkera QR W100S

ในระหว่างที่หาข้อมูล Devo7E นั้น ก็บังเอิญไปเห็นเจ้า QR W100S ในหน้าเว็บของร้าน CopterBase.com ก็ติดใจที่มันสามารถบังคับได้ด้วย smartphone และส่ง live video มาแสดงบนมือถือได้ด้วย!! แค่นี้ก็ได้ FPV ราคาถูกมาลองเล่นแล้ววว .... สุดท้ายก็ไม่รอด ได้ QR W100S มาครอบครองอีกหนึ่งเครื่อง :) และแน่นอนมีปัญหาเรื่องแบตก้อนเดียวเหมือนเดิม เลยต้องสั่งแบต Turnigy Nanotech 750mAh จาก HobbyKing มาเพิ่มอีก 4 ก้อน เพื่อให้เล่นได้ต่อเนื่องนานขึ้น

ส่วนตัวแล้วไม่ค่อยประทับใจเจ้าตัวนี้เท่าไหร่ คือถึงมันจะบังคับได้ด้วย smartphone แต่ก็ไม่ค่อยสะดวกมาก บังคับผ่าน Devo7E คล่องตัวกว่าเยอะ ใช้ smartphone เป็นแค่จอแสดงวีดีโอ FPV ก็พอ แต่เนื่องจากมันตัวเล็ก จึงค่อนข้างมีปัญหาสู้ลมไม่ค่อยได้ และ response ต่อ stick ค่อนข้างช้า เวลาคับขันมักเอาไม่ค่อยอยู่ ... อะไหล่เดินง่ายมาก :) หลังๆ ก็เลยไม่ค่อยได้เล่นตัวนี้นัก

Hubsan X4 H107L / H107C

เท่าที่ติดตามอ่านโพสในกระทู้ตามเว็บ RC ต่างๆ เห็นมีการพูดถึงเจ้าตัวจิ๋ว Hubsan X4 กันค่อนข้างมาก ด้วยความสนใจก็เลยสั่งรุ่น H107L v2 จาก banggood.com มาลองเล่นดู ตอนลองบินครั้งแรก รู้สึกเสียงมันเหมือนแมงหวี่แมงวันตัวใหญ่ๆ บินยังงัยยังงั้น แต่ในเรื่องการควบคุมแล้วก็สมคำร่ำลือ รู้สึกได้ถึงความคล่องตัวปราดเปรียวที่มีมากกว่าทั้ง V959 และ QR W100S ค่อนข้างมาก ข้อเสียที่ชัดเจนที่สุดคือมัน flip ยาก ผมชอบวิธีการของ V959 มากกว่าคือต้องกดปุ่ม flip ก่อน แล้วค่อยดัน stick roll หรือ elevator ไปจนสุดมันถึงจะ flip ในขณะที่ H107L ใช้วิธีโยก stick ไปด้านตรงข้ามกับที่จะ flip ให้สุดก่อนแล้ว โยกกลับไปด้านที่จะ flip จนสุด ซึ่งในทางปฏิบัติแล้วมันค่อนข้างจะไม่สะดวก ทำให้เครื่องเสียการทรงตัวได้ง่ายและมีโอกาส flip โดยไม่ได้ตั้งใจง่ายมากๆ อีกทั้งเมื่อ flip แล้วบางทีจะมีอาการทรงตัวไม่ค่อยอยู่ กระแทกพื้นบ่อยๆ (ซึ่งเรื่องนี้ H107C แก้ไขมาแล้ว) แต่ถ้าใช้บินเล่นเฉยๆ ไม่ flip ก็ถือว่าบินได้สนุกทีเดียว ตอบสนองต่อการควบคุมได้ดี ยิ่งเมื่อควบคุมด้ัวยรีโมท Devo7E ยิ่งรู้สึกสนุกมากขึ้น

ข้อจำกัดอีกอย่างของ H107L ก็คือมันไม่มีกล้องติดมาด้วย ทำให้เป็นที่มาของ H107C ซึ่งเป็นรุ่นปรับปรุงติดกล้องถ่ายวีดีโอจิ๋วมาให้ด้วย โดยในรุ่นแรกที่ซื้อมาจาก banggood.com อีกเช่นเคย เป็นกล้อง SD ธรรมดา และอีกไม่นานก็มีโมดูลกล้อง HD ออกมา (แต่จริงๆ คุณภาพภาพไม่น่าถึง HD แต่ก็ถือดีกว่ากล้องรุ่น SD มาก) ต้องบอกว่าเครื่อง H107C ถือเป็นเครื่องโปรดเครื่องนึงของผมในช่วงนั้น นั่นก็เพราะว่าเครื่องมีขนาดเล็กพกสะดวกมากเอาไปเล่นได้เกือบทุกที่ ทำเอาลืมทั้ง V959, QR W100S และ H107L ไปเลยทีเดียว

ปัจจุบันนี้ได้ขาย H107L ไปแล้วบนเว็บ RCThai เนื่องจากไม่ได้บินเลย ต้องขอบคุณเว็บ RCThai ที่เป็นทั้งแหล่งข้อมูลและแหล่งซื้อขายให้กับชาว RC ในเมืองไทย

06 กรกฎาคม 2553

ลองแก้ปัญหากดลิ้งค์ภาษาไทยใน Android 2.1 ไม่ได้

หลังจากได้ Samsung Galaxy S มาเล่นอาทิตย์กว่าๆ ก็เจอปัญหาเรื่องการกดลิ้งค์ที่เป็นภาษาไทยใน browser คือมันจะขึ้นกรอบไม่ตรงกับลิ้งค์ ทำให้ถ้าจะไปลิ้งค์นั้นจะลำบากมาก หรือไปไม่ได้เลย

เท่าที่ลองหาดูใน google ก็เจอว่ามันเป็นปัญหาของ webkit ซึ่งจากที่ไปดูใน source code ของ android ก็เห็นว่าใน froyo มี commit แก้ไขไปแล้ว แต่ทีนี้ Galaxy S ของเรามันดันเป็น eclair อยู่ แล้ว Samsung ก็ยังไม่มีทีท่าว่าจะออก firmware fix มาซะที ดังนั้นเรามาแก้เอาเองดีกว่า!!! :)

อ่านดูตามเว็บบอร์ดเห็น android ยี่ห้ออื่นเค้ามีวิธีแก้โดยไป compile webkit ใหม่แล้วเอาไฟล์ libwebcore.so ไปทับของเดิมใน /system/lib แล้วก็รีบูต... ท่าทางง่ายดี หุหุหุ

เริ่มต้นก็ไปโหลด source code ของ android มาก่อน โดยทำตามหน้านี้ http://source.android.com/source/download.html อย่าลืมว่าต้องลง required packages ให้ครบ

mkdir mydroid
cd mydroid
repo init -u git://android.git.kernel.org/platform/manifest.git -b android-2.1_r1
repo sync

อันนี้คือใช้ tag android-2.1_r1 ไม่รู้ว่าตรงหรือเปล่า เห็นมี 2.1 หลาย tag เหมือนกัน
จากนั้นก็แก้ไฟล์ ใน external/webkit/WebCore/platform/graphics/android/FontAndroid.cpp ด้วย patch นี้

--- a/WebCore/platform/graphics/android/FontAndroid.cpp
+++ b/WebCore/platform/graphics/android/FontAndroid.cpp
@@ -188,7 +188,7 @@ FloatRect Font::selectionRectForComplexText(const TextRun& run,
SkScalar spacing = paint.getFontMetrics(&metrics);

return FloatRect(point.x(),
- point.y() - floorf(SkScalarToFloat(-metrics.fAscent)),
+ point.y(),
roundf(SkScalarToFloat(width)),
roundf(SkScalarToFloat(spacing)));
}

แล้วก็ compile กันเลย!!

make

....ผล.....
compile ผ่านโลด ใช้เวลาประมาณชั่วโมงครึ่งบน Thinkpad คู่ใจ ได้ไฟล์ libwebcore.so ตามต้องการอยู่ใน out/target/product/generic/system/lib ก็เลยจัดการ copy ไปทับของเดิมในน้อง S แล้วก็ reboot ซะ

adb push out/target/product/generic/system/lib/libwebcore.so /sdcard
adb shell
su
cd /sdcard
cp /system/lib/libwebcore.so libwebcore.so-bak
cat libwebcore.so > /system/lib/libwebcore.so
reboot

ลองรัน browser ดูปรากฎว่าขึ้น...เฮ... แต่พอกดช่องใส่ URL เท่านั้นแหละ... ค้างไปซักแป๊บนึงแล้วก็ force close .... :~(

ไม่เป็นไร ไม่เป็นไร... ลองคุ้ยดูกันใหม่...คุ้ยไป คุ้ยมา (ใช้ readelf, objdump ช่วย) เจอว่าอันที่ compile ไปนั้นมัน target ไปที่ architecture arm5 (armv5te) แต่ไฟล์ที่อยู่ในน้อง S มันเป็น arm7 (armv7-a) ก็เลยจัดการเปลี่ยน architecture ซะโดยเปลี่ยนค่า TARGET_ARCH_VARIANT ในไฟล์ build/core/combo/linux-arm.mk b/core/combo/linux-arm.mk จาก armv5te เป็น armv7-a แล้วก็

make clean
make

รอ...รอ...รอ...อีกชั่วโมงครึ่ง...
.....ผล.....
เหมือนเดิมเด๊ะ :~( เปิด browser ได้แต่พอคลิกที่ช่องใส่ URL เท่านั้นแหละ เจอ force close เลย .. ทีนี้ก็เลยกด *#9900# เพื่ิิอ save log ออกมาดู

เท่าที่อ่านเข้าใจว่าเป็นเพราะ samsung มีการโม webkit ไปเยอะพอสมควร แล้วดันไม่ใส่มาให้ในไฟล์ opensource ที่โหลดได้จาก opensource.samsung.com ทีนี้ก็เลยจนปัญญาที่จะแก้ต่อ....เฮ้อออออ

12 มิถุนายน 2553

วิธีลง libflashplayer 32 บิต บน x86_64

วันนีเห็นข่าว FlashPlayer ออกเวอร์ชัน 10.1 มา แล้วโฆษณาว่าดีโง้นงี้ แต่กลายเป็นว่าไม่มีเวอร์ชัน x86_64 เหมือนเดิม ก็เลยลองหาข้อมูลบนเว็บดู ปรากฎว่ามีวิธีลง plugin เวอร์ชัน 32 บิต บนเครื่อง x86_64 ได้ ก็เลยลองซะหน่อย.. วิธีการก็ไม่ยาก ดังนี้
1. ดาวน์โหลดไฟล์ plugin ที่เป็น .tar.gz มา
2. mkdir ~/.mozilla/plugins ถ้ายังไม่มีไดเรกทอรี่นี้
3. untar ไฟล์ในข้อ 1. จะได้ไฟล์ libflashplayer.so แล้วเอาไปไว้ใน ~/.mozilla/plugins
4. nspluginwrapper -i ~/.mozilla/plugins/libflashplayer.so

เรียบโร้ย..

24 กุมภาพันธ์ 2553

การ recover ข้อมูลหลังจากฮาร์ดดิสก์ OS ของ Openfiler พัง

เมื่อวันก่อนมีปัญหาว่าฮาร์ดดิสก์ตัว OS ของเครื่อง Openfiler มันเดี้ยง ก็เลยทำให้ต้อง re-install Openfiler ลงบนฮาร์ดดิกสก์ตัวใหม่

โชคดีที่ฮาร์ดดิสก์ตัวเก็บ data ไม่พัง แต่ปัญหาก็คือว่าไม่ได้ backup configuration เอาไว้ ก็เลยต้องหาทาง recover เอาเอง เลยเอามาเขียนเก็บไว้ดังนี้
  1. ลง Openfiler ในฮาร์ดดิสก์ตัวใหม่
  2. หลังจากบูต Openfiler ขึ้นมาแล้ว ใช้คำสั่ง pvscan ซึ่งจะได้ output ประมาณนี้

    # lvs -a
    LV VG Attr LSize Origin Snap% Move Log Copy% Convert
    vol_share 500g -wi-a- 232.88G
    office2-iscsi md0raid1 -wi-ao 149.03G
    office3data office3 -wi-ao 78.12G
  3. ซึ่งก็คือเรามี volume group เดิมอยู่ 3 volume ได้แก่ 500g, office3 และ md0raid1
  4. ไป edit ไฟล์ /opt/openfiler/etc/volumes.xml ซึ่งถ้ายังไม่ได้มีการสร้าง volume อะไรในระบบ จะมีหน้าตาประมาณนี้

    <?xml version="1.0" ?>
    <volumes>
    </volumes>

  5. ให้เพิ่ม volume ของเราเข้าไปใน <volumes></volumes> ดังนี้

    <?xml version="1.0" ?>
    <volumes>
    <volume id="office3data" name="Office3 data volume" mountpoint="" vg="office3" fstype="iscsi" />
    <volume id="office2-iscsi" name="Office2 disk volume" mountpoint="" vg="md0raid1" fstype="iscsi" />
    </volumes>

    เป็นการเพิ่ม volume office3data และ office2-iscsi ให้กับ Openfiler
  6. จากนั้นก็ทำการสร้าง iSCSI Target ตามวิธีที่ http://www.techhead.co.uk/how-to-configure-openfiler-v23-iscsi-storage-for-use-with-vmware-esx
  7. ที่สำคัญคือหลังจากแก้ไขทั้งหมดแล้วควรจะ reboot openfiler ทีนึงก่อนทำงานต่อ

13 พฤษภาคม 2552

ลองใช้ Grails

พอดีผ่านไปอ่าน IBM developerWorks เจอบทความชุด Mastering Grails เข้า ก็เลยทำให้อยากลองใช้ Grails ดูบ้าง เห็นเค้าว่ามันง่ายดี โดยเริ่มจากบทความ Mastering Grails: Build your first Grails application ปรากฎว่าลองแล้วลองอีก แต่มันก็ดันติดตอนสั่ง grails generate-all Trip ทุกที โดยจะได้ error ประมาณนี้

$ grails generate-all Trip
Welcome to Grails 1.1 - http://grails.org/
Licensed under Apache Standard License 2.0
Grails home is set to: /home/aet/java/grails/grails-1.1

Base Directory: /home/aet/grails-app/trip-planner
Running script /home/aet/java/grails/grails-1.1/scripts/GenerateAll.groovy
Environment set to development
Domain class not found in grails-app/domain, trying hibernate mapped classes...
No domain class found for name Trip. Please try again and enter a valid domain class name

ลอง search หาใน google ก็พบว่า ปัญหาก็คือ ผมดันไปสร้างโปรเจกต์ (ด้วยคำสั่ง grails create-app) อยู่ภายใต้ไดเรกทอรี่ชื่อ grails-app ครับ... โอ้โห เล่นเอางงไปเลย พอเปลี่ยนเป็นไดเรกทอรี่อื่นก็ปรากฎว่าผ่านฉลุยครับ

07 เมษายน 2552

ปัญหาในการเขียน DVD ด้วย k3b บน Thinkpad R61

โปรแกรมเขียน DVD ที่ผมใช้อยู่เป็นประจำบน Linux คือ k3b ซึ่งก่อนหน้านี้ก็ใช้งานมาตลอด ไม่ค่อยมีปัญหาในการเขียนเท่าไหร่ แต่หลังจากที่ได้เครื่อง Thinkpad R61 มาใหม่ (มี dvd writer DVD-RAM UJ-850 z) และลง ubuntu 8.04 ลงไป พบว่า มักมีปัญหาในการเขียนแผ่น DVD เสมอ

ปัญหาก็คือ จะได้ error message ประมาณนี้ใน debug log

System
-----------------------
K3b Version: 1.0.5

KDE Version: 3.5.10
QT Version: 3.3.8b
Kernel: 2.6.24-23-generic
Devices
-----------------------
MATSHITA DVD-RAM UJ-850 z RB21 (/dev/scd0, ) [CD-R, CD-RW, CD-ROM, DVD-ROM, DVD-R, DVD-RW, DVD-R DL, DVD+R, DVD+RW, DVD+R DL] [DVD-ROM, DVD-R Sequential, DVD-R Dual Layer Sequential, DVD-R Dual Layer Jump, DVD-RAM, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-ROM, CD-R, CD-RW] [SAO, TAO, Restricted Overwrite, Layer Jump]

Burned media
-----------------------
DVD-R Sequential

K3bIsoImager
-----------------------
mkisofs print size result: 2268029 (4644923392 bytes)
Pipe throughput: 33683456 bytes read, 33667840 bytes written.

Used versions
-----------------------
mkisofs: 1.1.6
growisofs: 7.0.1

growisofs
-----------------------
Executing 'builtin_dd if=/dev/fd/0 of=/dev/scd0 obs=32k seek=0'
:-[ PERFORM OPC failed with SK=3h/ASC=73h/ACQ=03h]: Input/output error
...

ในตอนแรกๆ ก็ใช้วิธีถึกๆหน่อยคือ retry ไปหลายๆครั้ง เดี๋ยวก็ได้เอง แต่ว่าบางทีลอง retry เป็นสิบครั้งก็ยังไม่ได้ ทีนี้ก็เลยลองไปค้นหาใน google ดู บางคนแนะนำให้เลือก burnspeed เป็น "ignore" ซึ่งหลังจากลองทำดูบ้างก็ปรากฎว่าใช้ได้มั่ง ไม่ได้มั่งเหมือนเดิมแฮะ...หรือว่าแผ่น princo 16x มันห่วยแตกกันหว่า....

เอาไว้ลองหลายๆแผ่นแล้วจะมา update อีกทีว่าผลเป็นงัย

สรุปว่ายังมีปัญหาเหมือนเดิม...แหง่ว... ตัดปัญหาไปใช้ external usb dvd writer อันที่มีอยู่ดีกว่า... เขียนเร็วกว่าอีกตะหาก :)

31 มีนาคม 2552

วิธีลง HP Array Configuration Utility CLI (hpacucli) บน Ubuntu 8.10

หลังจากหาวิธีลง Array configuration utility ของ HP บนเครื่อง HP server มาพักนึง ก็ไปเจอข้อมูลที่ https://wiki.edubuntu.org/HPDL385 ก็เลยเอามาเก็บไว้เตือนความจำ มีการแก้ไขวิธีการเล็กน้อย...
1. ลง package ia32-libs
2. โหลด HP ACU CLI มาจากเว็บ HP ซึ่งมี package ของ debian etch (ยังไม่ได้ลอง lenny) ไฟล์ชื่อ hpacucli-7.80-3.linux.deb
3. ลง package ในข้อ 2 ด้วยคำสั่ง dpkg -i --force-architecture ต้องมีใส่ --force-architecture เพราะไม่งั้นจะโดนบ่นเรื่อง architecture ไม่ตรง
4. ไปหา libstdc++-libc6.2-2.so.3 จาก http://packages.ubuntu.com/ มาลง แต่เนื่องจากใน repository ของ Intrepid ไม่มี ดังนั้นจึงต้องไปเอาของ gutsy มาลงแทนจาก http://mirror.in.th/ubuntu/pool/universe/g/gcc-2.95/libstdc++2.10-glibc2.2_2.95.4-24_i386.deb
5. ลง package ในข้อ 4 ด้วยคำสั่ง dpkg -i --force-architecture เช่นกัน
6. ลองรัน hpacucli ได้เลย!! ;-)
7. เนื่องจากเครื่องที่ใช้ทดสอบเป็น DL360G4 มี internal SmartArray 6i ดังนั้นจึงอยู่ใน slot 0 ซึ่งกำหนดได้ด้วยคำสั่ง set target controller slot=0 ที่ prompt ของ hpacucli

เย... จบแล้ว