LINE BEACON from ESP32 {NODE32 LITE}

Chawanwit Poolsri
Dec 21, 2018 · 3 min read

สร้าง LINE BEACON อย่างง่าย ด้วย NODE32 LITE (ESP32)

สวัสดีครับ สำหรับ EP นี้ เรียกได้ว่าเป็น EP พิเศษ เนื่องจากทางกระผมได้รับมอบ บอร์ด NODE32 LITE (ESP32) ซึ่งเป็นบอร์ดน้องเล็กตัวล่าสุดจากครอบครัว NODE32 ที่เพิ่งเปิดตัวไปไม่นานมานี้ แบบสดๆร้อนๆ โดยคุณสมบัตรของบอร์ดดังกล่าวจัดได้ว่าไม่ได้ทิ้งห่างกับบอร์ดรุ่นพี่แต่อย่างใด แต่สามารถจับจองได้ในราคาสบายกระเป๋า

https://gravitechthai.com/product_detail.php?d=3318

ซึ่งวันนี้ทางผมจะนำมาใช้เป็นวัตถุดิบในการสร้าง LINE BEACON เพื่อใช้ทำงานร่วมกับ LINE CHATBOT ในไม่กี่ขั้นตอน สำหรับใครที่ยังไม่รู้จัก LINE BEACON ว่ามีคุณสมบัติอย่างไร ใช้สร้างระบบอะไรได้บ้าง สามารถศึกษาเพิ่มเติมได้ผ่านทาง slide จากงาน LINE DEVELOPER MEETUP #3 ที่

เมื่อทุกท่านทำความรู้จักกับ LINE BEACON และเริ่มคันไม้คันมือ อยากมี LINE BEACON เป็นของตัวเองเพื่อใช้พัฒนาบ้าง ทุกท่านก็มีทางเลือกหลากหลายมาก อย่างง่ายสุดคือ “ซื้อ” ณ ขณะนี้ ทางผมเพียงแหล่งเดียวที่สามารถซื้อได้ คือ

โดยจะมีราคาอยู่ราวๆ 5,400 เยน ตีเป็นเงินไทยก็จะอยู่ที่ประมาณ 1,579.25 บาท (ณ วันที่ 20/12/2018) ถือว่าราคาไม่สูงมาก แต่ราคาดังกล่าวยังไม่รวมการจัดส่งและประสานงานเนื่องจากทางเว็บไม่ได้รองรับการจำหน่ายภายนอกประเทศ มูลค่ารวมๆก็น่าจะไม่ได้จบที่ตัวเลขกลมๆเบื้งต้นอย่างแน่นอน

เริ่มพอจะเห็นความยุ่งยากขึ้นมารำไรกันแล้วใช่ไหมครับ คราวนี้เกิดอยากใช้จริงจังจะทำยังไงดี ไม่ต้องห่วงครับเพราะทาง LINE ก็ไม่ได้ใจไม้ไส้ระกำเสียทีเดียวเพราะเขาก็ได้เปิดช่องทางให้เราๆสามารถสร้าง LINE BEACON กันขึ้นมาเองได้ โดยจะใช้ในส่วนของ LINE SIMPLE BEACON สำหรับใครที่เป็น LINE DEVELOPER อยู่แล้วสามารถเข้าใช้และสร้าง LINE Simple Beacon ได้เองทั้งหมด 5 ตัวด้วยกัน ผ่านช่องทาง https://admin-official.line.me/beacon/register

เมื่อเข้ามาแล้ว เราจะเข้าไปในส่วนของ “Issue LINE Simple Beacon Hardware ID” จะพบกับหน้าสำหรับเลือก LINE BOT (Messaging API) ตัวที่เราต้องการจะสร้าง LINE Beacon ให้ทำงานด้วย

ตรงนี้เราจะสามารถสร้าง key นั่นก็คือ Hardware ID ที่เราจะนำไปใช้กำหนดให้กับอุปกรณ์ที่ต้องการให้ทำงานเป็น Beacon โดยการกดที่ ปุ่ม “Issue Hardware ID” (1) ระบบจะสร้าง Hardware ID มาตามภาพ (2)

เมื่อเราได้ค่าสำหรับใช้กำหนดค่าแล้วต่อไปจะเป็นการนำค่าไปกำหนดให้กับ อุปกรณ์ที่จะใช้สร้างเป็น Beacon ในที่นี้คือ บอร์ด NODE32 LITE โดยทำการเปิดตัวอย่าง source code ที่เตรียมไว้ให้ขึ้นมา สำหรับใครที่ไม่มีสามารถเข้าไปโหลดได้ที่ https://github.com/godda/LINE_Simple_Beacon_ESP32

โดยเดิมนั้นตัวอย่างนี้ได้มีการเผยแพร่โดย คุณ Yohsuke Furuta ในเว็บของ LINE Engineering

ซึ่งตัวอย่างดังกล่าวได้ถูกถ่ายทอดไว้ได้อย่างครบครันในเวอร์ชั่นภาษาญี่ปุ่ม แต่นั่นไม่ใช่ปัญหาเพราะเรามีอากู๋ทานสเลด เป็นเพื่อนที่แสนดี แต่ที่จะไม่น่าอภิรมย์ คงจะเป็นในเรื่องของ code การทำงานภายในที่ดูท่าว่าเจ้าตัวน่าจะรีบอยู่พอสมควรตอนที่ปล่อยตัวอย่างออกมา เพราะจะมีบั๊คอยู่ประมาณสองจุดที่หากนำไปใช้จำเป็นต้องแก้ไขเพื่อให้การทำงานมีประสิทธิภาพสูงสุด ซึ่งแน่นอนว่า ในตัวอย่างที่ผมได้อัพโหลดไว้ให้นั้นได้แก้ไขเรียบร้อยแล้วส่วนใครอยากรู้ว่าส่วนไหนบ้างสามารถดูรายละเอียดในคำอธิบายใน GITHUB ได้เลยครับ เอาล่ะเพื่อไม่ให้เป็นการเสียเวลา เรามาเริ่มกันต่อเลย เปิดตัวอย่างขึ้นมาเลยครับ

จากตรงนี้ให้เราไปทำการสำเนา Hardware ID ที่เราสร้างไว้มาก่อนเพื่อนำมาใช้กำหนดลงในไฟล์ตัวอย่างโดยเราจะกำหนดค่า Hardware ID ในบรรทัดที่ 4 ดังภาพ

เสร็จไปแล้วหนึ่งส่วน หรืออีกหนึ่งส่วนที่จะพาทุกคนไปทำความรู้จักคือ ส่วนของ Device Message จะเป็นส่วนของข้อความที่จะมีการส่งไปพร้อมกับ Web hook เมื่อผู้ใช้งาน LINE ที่เป็นเพื่อนกับ LINE BOT ของเราเมื่อเขาเดินเข้ามาในระยะของ LINE BEACON ตัวที่เราสร้าง ตรงนี้นอกจากที่เราจะกำหนดเป็นข้อความธรรมดาแล้ว ด้วยความสามารถของ บอร์ด NODE32 LITE นั้นเป็นบอร์ด ไมโครคอนโทรลเลอร์ มันสามารถเชื่อมต่อกับเซนเซอร์ต่างๆและนำค่าเหล่านั้นมาใช้กำหนดเป็นค่าของ Device Message ได้อีกด้วย เอาไว้บทความหน้าผมจะพาเล่นอีกทีนึง รอบนี้เอาแบบพื้นๆกันไปก่อน โดยใครที่ต้องการกำหนดข้อความให้ไปกำหนดที่ บรรทัดที่ 163 ดังภาพ โดยมีข้อกำหนดว่าความยาวของตัวอักษรจะต้องไม่เกิน 13 ตัวอักษร (Byte)

จบขั้นตอนนี้ให้ทุกท่านอัพโหลดลงบอร์ด NODE32 LITE ได้เลย เพียงเท่านี้ LINE Simple Beacon ที่เราสร้างขึ้นก็พร้อมใช้งานแล้วดังภาพ

หลังจากนี้ทุกท่านสามารถทดลองตามตัวอย่างใน Slide ก่อนหน้าเกี่ยวกับการพัฒนา LINE Beacon จากงาน LINE Developer Meetup #3 ที่ผมแนบมาด้วยได้เลย ส่วนใครที่ต้องการพัฒนา LINE CHATBOT แต่ไม่ค่อยมีพื้นฐานการเขียน Code ซักเท่าไหร่คราวหน้าผมจะมาพาทุกท่านสร้าง LINE CHATBOT ด้วย Node RED Platform กัน จะสนุกสนานและง่ายดายแค่ไหนนั้นไว้ติดตามกันนะคร้าบ…สวัสดีครับ

LINE CHAT BOT by Node RED

ผู้ประกอบการที่นำ LINE Beacon ไปประยุกต์ใช้ในการทำตลาด