วันเสาร์ที่ 12 มีนาคม พ.ศ. 2559

ENC28J60, Ethernet Shield V1.0 ของ Deek-Robot

สั่ง Ehternet Shield จาก ArduilAll.com มาชิ้นหนึ่ง ด้วยความเร่งรีบ ก็ดาวน์โหลดไลบรารีมาใช้งานเลย ตามตัวอย่างก็ใช้งานได้เป็นอย่างดี แต่ไม่มีส่วนของ DHCP ที่จะรับให้กับตัวบอร์ด จึงไปค้นหาจากเน็ตก็เจอ EtherCard มาใช้เพราะมีตัวอย่าง testDHCP แต่ใช้ไม่ได้ ทำอย่างไรก็แล้ว ไม่สามารถจะรับไอพีจากเราท์เตอร์ได้ ลง-ลบ ไดร์เวอร์หลายก็ไม่ได้

ENC28J60 กับบอร์ด Arduino NANO มีขนาดพอๆ กับแป้นพิมพ์


สุดท้ายลองเข้าไปอ่านในเว็บ Tweaking4All.com เดิมคลิกลิงค์ตามเว็บที่สั่งของก็ไม่ได้ เลยไม่สนใจ

Ethernet Shield V1.0 for arduino compatible Nano 3.0



วันศุกร์ที่ 11 มีนาคม พ.ศ. 2559

รายละเอียดการติดตั้ง PiTFT บน Raspi A+ เพื่อให้เป็นเครื่องสแกนลายนิ้วมือ

บันทึกนี้เขียนขึ้นเพื่อเก็บรายละเอียดเกี่ยวกับการติดตั้งโปรแกรม และระบบต่างๆ บน Raspberry Pi A+ กับ PiTFT 2.8" Capacitive เพื่อทำเป็นเครื่องสแกนลายนิ้วมือ โดยจะใช้ Fingerprint Reader FZ1035 (China)

Raspberry Pi A+ ต่อ PiTFT 2.8" Capacitive และโปรแกรมตัวอย่าง

วันพฤหัสบดีที่ 10 มีนาคม พ.ศ. 2559

ทดสอบ MCP3008 กับบอร์ด Raspberry Pi A+

ตัวอย่างโปรแกรมใช้งาน IC หมายเลข MCP3008 โดยโปรแกรมนี้จะอ่านค่าจาก สวิทช์ 5 ปุ่มที่ ขา Ch0 และอ่านค่า VR 10k ที่ขา Ch1 แล้วแปลงค่าเป็น Digital Input ไปยัง Raspberry Pi

Switch ของ DFRobot 5 ปุ่ม แต่ใช้สายไฟแค่ 3 เส้น Vcc, Gnd และ Output

PiTFT 2.8" จอภาพขนาด 320x240 จาก Adafruit

หลังจากที่มองๆ อุปกรณ์หลายๆ ตัวเพื่อนำมาใช้งานเกี่ยวกับ Fingerprint Scan สุดท้ายมีแนวโน้มที่จะใช้ Raspberry Pi ในการพัฒนาเพราะสะดวก รวดเร็วกว่า ถึงแม้ว่าราคาต้นทุนจะแพงขึ้นกว่าการใช้บอร์ดคอนโทรลเลอร์ทั่วไป แต่วินาทีนี้ต้องเร่งมือก่อน แล้วค่อยมาพัฒนาทีหลัง

ช่วงนี้ศึกษาการเขียนโปรแกรมด้วย Python อยู่อย่างต่อเนื่อง และเห็นวิธีการเขียนโปรแกรมผ่าน GUI โดยใช้ Tkinter แล้วก็มองเห็นช่องทาง ซึ่งจะรวดเร็วในการพัฒนา จึงคิดต่อไปถึงหน้าจอ ว่าจะใช้แบบไหน หากใช้แบบ LCD หรือ OLED ก็ต้องเขียนคำสั่งในการจัดการหน้าจอกันอีก ดูเหมือนจะใช้เวลา จึงตัดสินใจซื้อจอ PiTFT 2.8" ของ AdaFruit แต่ราคาก็สูงพอสมควร แบบ Resistive ราคา 1,950 และ Capacitive ราคา 2,150 บาท ที่ร้าน ThaiEasyElec แต่ถ้าที่ร้าน GravitechThai จะราคาอยู่ที่ 1,750 บาท สำหรับจอแบบ Capacitive แต่ยังไม่ได้บัดกรีขา และไม่มีสวิทช์มาให้ เลยตัดสินใจซื้อที่ง่ายที่สุด

ลองเปิด Window-X ก็พอดูได้ ถึงจะลำบากสักหน่อย

วันอังคารที่ 8 มีนาคม พ.ศ. 2559

Raspberry Pi 3

หลังจากได้รับโทรศัพท์จาก ThaiEasyElec แจ้งว่า Raspberry Pi 3 เข้ามาแล้ว แต่กระนั้นราคาก็แพงกว่า Raspberry Pi2 100 บาท คือ 1,750 บาท และหากซื้อจาก Gravitech ราคา 1,650 บาท แต่ก็ชอบที่จะซื้อจาก ThaiEasyElec เพราะอยู่ใกล้บ้าน พูดคุยถูกคอ ให้คำแนะนำดี น้องๆ ทุกคนต้อนรับลูกค้าด้วยมิตรภาพที่ดี จึงไม่รอช้าบึ่งรถจากบ้านหม้อ (ไปซื้อชุดศึกษา Pic มาลองเล่น) ไปที่ริมคลองประปาทันที

และแล้วก็เสียเงินค่าตัวน้อง Pi3 มา 1 ชุดประกอบด้วย

  1. Raspberry Pi3
  2. Adapter
  3. Case
Raspberry Pi3 กินกระแสมากกว่า Pi2 เนื่องจากเพิ่มอุปกรณ์ Wi-Fi และ Bluetooth เข้ามาด้วย อีกนัยหนึ่งก็สะดวกดี ไม่ต้องหาซื้อเพิ่มเติม 

Raspberry Pi 3 Model B

วันศุกร์ที่ 4 มีนาคม พ.ศ. 2559

ติดตั้ง Samba และ mDNS และ MPD, MPC เพื่อเล่นเพลงบน Raspberry Pi A+

การเชื่อมต่อผ่านเครือข่ายถือว่าเป็นสิ่งสำคัญสำหรับ Raspberry Pi หรืออุปกรณ์ที่ทำงานเกี่ยวกับ IoT ทั้งหลาย ซึ่งการเชื่อมต่อเข้ากับระบบเน็ตเวิร์คทุกครั้งจะต้องติดต่อผ่าน IP แต่การแจกจ่าย IP เป็นแบบ DHCP ทำให้เราไม่ทราบว่า IP ที่ได้นั้นเป็นอะไร หรือเปลี่ยนแปลงตลอดเวลา ดังนั้นหากจะให้ง่ายก็ต้องติดตั้ง DNS คือ ตัวแปลงชื่อให้เป็น IP

ใน Raspberry Pi จะมีระบบ mDNS ซึ่งทำให้อุปกรณ์นั้นสามารถกำหนดชื่อแล้วตามด้วย .local เพื่อให้ง่ายต่อการเข้าถึงเช่น

openelec.local/ หรือ volumio.local/

การเข้าถึงต้องใส่เครื่องหมาย / ต่อท้ายด้วย ไม่เช่นนั้นจะกลายเป็นการค้นหาในเว็บเบราเซอร์

เพิ่มรีโมทให้กับ Volumio

Volumio เป็นระบบเล่นไฟล์เสียงที่ทำให้ Raspberry Pi กลายเป็นเครื่องเล่น MP3 หลายคนอาจสงสัยว่า ทำไมถึงเล่นจาก RPi ทั้งๆ ที่เดี๋ยวนี้เราสามารถเล่นเพลงจากโทรศัพท์ หรือเครื่องเล่น MP3 มากมายในท้องตลาด และมีราคาที่ถูกแสนถูก โดยเฉพาะของจีนที่แพร่ตามท้องตลาดบางตัวราคาไม่ถึง 100 บาท

สำหรับนักฟังเพลงทั้งหลายคงเข้าใจเหตุผล หากบอกว่า เราสามารถ DIY (Do It by Yourselves) เพราะเราสามารถทำอะไรหลายๆ อย่างได้ด้วยตนเอง แต่ก็ไม่ง่าย และไม่ยากหากสนใจ

Volumio สามารถดาวน์โหลดได้ที่ https://volumio.org/ จะได้ไฟล์ .img วิธีการลงให้ดูจาก https://volumio.org/get-started หรือมีหลายเว็บลองค้นหาจาก google กันก่อนนะครับ

หลังจากที่ติดตั้งแล้ว บูตขึ้นมาแล้วให้เสียบสายแลนไว้เลย ให้ใช้โปรแกรม Putty เชื่อมต่อไปยัง Volumio โดยไม่ต้องสนใจ IP โดยเชื่อมไปที่ volumio.local

หน้าจอเมื่อเรียก volumio.local/

วันพุธที่ 2 มีนาคม พ.ศ. 2559

Raspberry Pi A+ ข้อจำกัดบนบอร์ดขนาดเล็ก

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

จึงคิดจะซื้อบอร์ดมาเพิ่มสักตัว เดิมจะซื้อ Raspberry Pi B เพิ่มสักตัว แต่ก็คิดอยากลองตัวเล็กบ้าง เห็นแล้วอยากได้น่ารักดี บอร์ดเล็กๆ แต่พอไปดูสเปคแล้วก็ตกใจเหมือนกัน เพราะแรมแค่ 256M แต่ในใจก็คิดว่าเอามาทดลองพวก I/O ต่างๆ แค่นั้นไม่ต้องเปลืองอะไรมากนัก

เมื่อได้มาแล้วก็ลองลง Volumio ทันที ก็ไม่รอด ดูเหมือนจะมี Error หลายอย่าง และไม่สามารถใช้งาน UART ได้ พยายามหลายครั้งก็แล้ว ดูเหมือนจะถูกปิดหลายๆ อย่าง

กลับมาถึงบ้านลองติดตั้ง NOOBS 1.7 ก็ติดตั้งไม่ได้มีข้อความแจ้งระบบไม่ซัพพอร์ท สุดท้ายเหลือบไปเห็นเวอร์ชัน 1.4 เลยลองลงดู... ผ่านไม่มี Error อะไรเลย

จากนั้นก็เช่นเดิม ต่อใช้งาน UART เพราะจะได้ไม่ต้องใช้ USB Hub ต่อคีย์บอร์ดหรือเมาส์ และ WiFi การต่อก็ไม่ยากอะไร เพียงแต่ต้องเข้าไปเปิดการใช้งานใน raspi-config ก่อน


วันอังคารที่ 1 มีนาคม พ.ศ. 2559

ทดลองเขียน python: อ่านค่าจากสวิทช์

ได้บอร์ด Raspberry Pi มานานหลายเดือนแล้ว เดิมทีจะเอาไปทำระบบ Digital Signage เลยซื้อไว้ 2 ตัว แต่พอจะทำจริง xibo ยกเลิกโปรแกรมบน Ubuntu ทำให้ฝันสลายและงานเข้า เพราะเหลือแต่ไคลเอนท์จาก Android และ Windows สุดท้ายเลยเลือกซื้อ Android Box ไปแทน (แพงกว่าหลายร้อยบาท)

แล้ว Raspberry Pi ก็นอนค้างอยู่ที่โต๊ะจนฝุ่นเกาะ จนล่าสุดเลยเอามาดูหนังฟังเพลง โดยลง OpenElec สำหรับดูหนังตัวหนึ่ง ลง Volumio สำหรับฟังเพลงเครื่องหนึ่ง

รวมๆ ก็ถือว่าใช้ได้ดี แต่บังเอิญอยากทำปุ่มควบคุม Volumio โดยไม่ต้องเปิดเครื่องคอมพิวเตอร์ สุดท้ายก็ลองเขียนโปรแกรมควบคุมผ่าน Python ก็พอเขียนได้แต่ยังไม่สามารถประยุกต์ใช้ได้อย่างเต็มประสิทธิภาพ คงต้องอาศัยประสบการณ์สักพัก

บทความนี้ไม่ได้กล่าวถึงการติดตั้ง python ต้องอ่านและทำตามวิธีการติดตั้งที่ เว็บนี้


ใช้ GPIO Extension Board เพื่อสะดวกต่อการเชื่อมต่ออุปกรณ์อื่นๆ


Gtk4 ตอนที่ 6 Defining a Child object

Defining a Child object A Very Simple Editor ในบทความที่ผ่านมาเราสร้างโปรแกรมอ่านไฟล์ชนิดข้อความ และในบทความนี้ก็จะมาปรับแต่งโปรแกรมกันสักหน...