สำหรับนักฟังเพลงทั้งหลายคงเข้าใจเหตุผล หากบอกว่า เราสามารถ DIY (Do It by Yourselves) เพราะเราสามารถทำอะไรหลายๆ อย่างได้ด้วยตนเอง แต่ก็ไม่ง่าย และไม่ยากหากสนใจ
Volumio สามารถดาวน์โหลดได้ที่ https://volumio.org/ จะได้ไฟล์ .img วิธีการลงให้ดูจาก https://volumio.org/get-started หรือมีหลายเว็บลองค้นหาจาก google กันก่อนนะครับ
หลังจากที่ติดตั้งแล้ว บูตขึ้นมาแล้วให้เสียบสายแลนไว้เลย ให้ใช้โปรแกรม Putty เชื่อมต่อไปยัง Volumio โดยไม่ต้องสนใจ IP โดยเชื่อมไปที่ volumio.local
หน้าจอเมื่อเรียก volumio.local/ |
หน้าจอ ssh ให้เชื่อมไปที่ volumio.local |
User Name: pi
Password: raspberry
การติดตั้งครั้งแรกนั้นเราต้องอัพเดทระบบต่างๆ ให้เรียบร้อยด้วยคำสั่ง
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-update
และที่สำคัญให้อัพเดทเฟิร์มแวร์ด้วย (ถึงแม้บางที่จะไม่แนะนำ แต่สำหรับผู้เขียนเคยเจอปัญหาของ OpenElec และ Volumio ติดตั้งระบบบางอย่างไม่ได้พอ update firmware ก็ใช้ได้)
sudo rpi-updateคำสั่งเหล่านี้ต้องใช้เวลาพอสมควร และระหว่างอัพเดทถ้าระบบถามให้เปลี่ยนแปลงให้เลือก default ไว้ก่อน ไม่ต้องเปลี่ยนใหม่ให้เลือกคอนฟิกเดิมไว้ก่อน
และจะมีหน้าจอให้เลือกลบ locale ให้เลือกเอาภาษาที่ไม่เกี่ยวข้องออกให้หมด ให้เหลือเฉพาะ en. และ th. เหลือเฉพาะภาษาไทยและภาษาอังกฤษเท่านั้น
*** รายละเอียดจะแยกทำขั้นตอนไว้ในบทความหน้า รอบนี้ถือว่าทุกคนสามารถติดตั้งและดำเนินการปรับแต่งได้บ้างแล้ว
การเพิ่มรีโมทโดยใช้ Infared Sensor
IR, Infared sensor เป็นตัวรับที่จะรับค่าจากรีโมทที่จะกล่าวถึงในบทความนี้เป็นเบอร์ TSOP38238 ซื้อมาพร้อมกับ Sparkfun Remote Kit มีรีโมทให้เรียบร้อย พร้อมกับ R 10k อีกหลายตัว (ราคาก็แพงด้วย)
ผู้อ่านสามารถใช้ ตัวรับอินฟาเรดที่มีขายทั่วไปได้ (ปกติแล้วจะเป็นความถี่ 38kHz)
ภาพแสดงการต่อขา IR เข้ากับขาของ Raspberry Pi |
ส่วนด้านของฮาร์ดแวร์ก็มีเพียงแค่นี้ ที่เหลือก็เป็นเรื่องของซอฟท์แวร์ล้วนๆ และการตั้งค่าต่างๆ ต้องอยู่ใน user ชื่อ pi เท่านั้นถึงจะง่าย ถ้าเป็นผู้ใช้ root บางจุดจะไม่สามารถตั้งค่าได้ในบางจุด
ติดตั้งโปรแกรม lirc
สำหรับเฟิร์มแวร์ที่ใหม่กว่า 3.18 ให้แก้ไขแก้ไข Boot config เสียก่อนดังนี้
sudo nano /boot/config.txt
เพิ่มข้อความท้ายสุดดังนี้
dtooverlay=lirc-rpi,gpio_in_pin=18
พิมพ์ cd แล้วกดปุ่ม Enter เพื่อกลับไปหน้าหลักของ pi
sudo apt-get install lirc
เพิ่มโมดูลลงใน /etc/modules ดังนี้
lirc_devlirc_rpi gpio_in_pin=18
เปลี่ยนแปลงค่าใน /etc/lirc/hardware.conf ดังนี้
LIRCD_ARGS="--uinput"
DRIVER="default"
DEVICE="/dev/lirc0"
MODULES="lirc_rpi"
จากนั้นให้หยุดการทำงานของโปรแกรม lirc ก่อน ด้วยคำสั่ง
sudo /etc/init.d/lirc stop
เมื่อปิดเสร็จแล้วต่อไปก็เป็นการบันทึกค่าปุ่มต่างๆ ของรีโมท
irrecord -n -d /dev/lirc0 lircd.conf
หน้าจอเมื่อรันคำสั่ง irrecod |
แล้วทำตามขั้นตอนที่บอกในหน้าจอ (ภาษาอังกฤษเต็มไปหมดเลยอ่านถือว่าฝึกภาษาอังกฤษไปในตัว :D ) ดูจากรูปแล้วมีขั้นตอนตามลำดับตัวเลขดังนี้
- กดปุ่ม Enter 2 ครั้งจนหน้าจอให้เริ่มบันทึก ให้กดปุ่มใดปุ่มหนึ่งบนรีโมทค้าง จะมีจุดขึ้นมา ให้กดเรื่อยๆ จนกว่าจะมีข้อความการอ่านค่าจากรีโมทขึ้นมา และมีข้อความบอกให้กดปุ่มซ้ำอีกครั้งหนึ่ง (ขั้นตอนนี้เป็นการเรียนรู้ของรีโมท โดยจะอ่านค่าการกดไปเก็บไว้แล้วค่อยประมวลผล)
- กดปุ่มเดิมรอบนี้รีโมทบางตัวอาจจะกดค้างไม่ได้ต้อง กด-ปล่อย ไปเรื่อยๆ จนกว่าจะมีหน้าจอขึ้นมาให้ป้อนชื่อปุ่ม
- ป้อนชื่อปุ่มที่เราจะกำหนด เช่น vol_up สำหรับปุ่มเร่งเสียง vol_down สำหรับลดเสียง เมื่อป้อนแล้วและกดปุ่ม Enter หน้าจะจะให้กดปุ่มที่จะใช้เป็นปุ่ม vol_up กดค้างนิดหนึ่งก็จะมีข้อความบอกให้สร้างปุ่มต่อไป
- พิมพ์ชื่อปุ่มอื่นๆ ตามที่ต้องการ (ในตัวอย่างนี้สร้างเพียง 2 ปุ่มเท่านั้น)
ตัวอย่างไฟล์ lircd.conf ที่ได้
begin remotename /home/pi/lircd.conf
bits 16
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 100
header 9038 4410
one 611 1613
zero 611 511
ptrail 612
repeat 9038 2198
pre_data_bits 16
pre_data 0x10EF
gap 107279
toggle_bit_mask 0x0
begin codes
vol_up 0xA05F
vol_down 0x00FF
KEY_POWER 0x....
end codes
end remote
ตัวอักษรสีแดง คือ ปุ่มและค่าที่เรากำหนดไว้ ซึ่งจะใช้ในการสร้างผังในขั้นตอนต่อไป
ลำดับต่อไปให้คัดลอกไฟล์ lircd.conf ที่ได้ไปไว้ที่ /etc/lirc/ ด้วยคำสั่ง
sudo mv lircd.conf /etc/lirc/lircd.conf
เมื่อบันทึกและคัดลอกไฟล์คอนฟิกของรีโมทไปเก็บไว้แล้วให้สั่งรัน lircd อีกครั้งหนึ่งด้วยคำสั่ง
sudo /etc/init.d/lirc start
แล้วลองรีโมทด้วยคำสั่ง
irw
จากนั้นให้ลองกดปุ่มรีโมท หากไม่มีข้อผิดพลาดใดๆ จะได้ข้อความตอบกลับว่ากดปุ่มไหนบ้าง ตรงนี้จบขั้นตอนการติดตั้งรีโมทแล้ว ต่อไปจะกล่าวถึงการแม็พปุ่มกับโปรแกรม mpc
สร้างผังปุ่มกดกับโปรแกรม mpc
บอร์ดสามารถอ่านการกดปุ่มรีโมทได้แล้ว แต่ไม่สามารถใช้งานได้ทันที ไม่เหมือนใน OpenElec หากต่อรีโมทได้ก็สามารถใช้งานได้เลย ขั้นตอนการสร้างความสัมพันธ์ของปุ่มกดกับโปรแกรมให้สร้างไฟล์ .lircrc ไว้ใน /home/pi เน้นว่าต้องเป็น /home/pi เท่านั้น
nano /home/pi/.lircrc
begin
prog = irexec
button = vol_up
config = mpc volume +5
end
begin
prog = irexec
button = vol_down
config = mpc volume -5
end
begin
prog = irexec
button = play
config = mpc play
end
begin
prog = irexec
button = pause
config = mpc toggle
end
begin
prog = irexec
button = nextsong
config = mpc next;mpc play
end
begin
prog = irexec
button = prevsong
config = mpc prev;mpc play
end
begin
prog = irexec
button = stop
config = mpc stop
end
เพิ่มเติมปุ่ม Power ให้ปิดเครื่อง
begin
prog = irexec
button = KEY_POWER
config = sudo /sbin/shutdown -h now
endi
เมื่อบันทึกไฟล์แล้วให้รันคำสั่ง
irexec -d
แล้วลองกดปุ่มดู... ถ้าไม่ผิดพลาดอะไรเมื่อกดปุ่ม Play ต้องได้ยินเสียงเพลงแน่นอน
*** mpc เป็นโปรแกรมสำหรับเล่นไฟล์เสียง สามารถจัดการผ่านคอมมานด์ไลน์ได้ทันที จะเขียนถึงภายหลัง
*** mpc เป็นโปรแกรมสำหรับเล่นไฟล์เสียง สามารถจัดการผ่านคอมมานด์ไลน์ได้ทันที จะเขียนถึงภายหลัง
ตั้งค่าให้เรียกโปรแกรมตอนเปิดเครื่อง
เราต้องรันคำสั่ง irexec ในตอนเริ่มต้นระบบ โดยให้เพิ่มคำสั่งใน /etc/rc.local โดยให้พิมพ์เหนือบรรทัด exit 0 ดังนี้
(sleep 3;sudo -u pi irexec -d)&
เสร็จแล้วรีสตาร์ทครั้งหนึ่งด้วยคำสั่ง sudo restart แล้วลองเปิดเพลงและลองใช้งานดูครับ ได้ไม่ได้อย่างไรลองคอมเม้นท์ไว้ได้ครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น