ติดตั้ง ESP-IDF กับ node32s (esp32)

Posted by | January 2, 2017 | Arduino, Embeded System, ESP32 | No Comments

ESP-IDF คืออะไร

เป็นชุดคอมไพล์เลอร์ ESP32 ที่พัฒนาโดยบริษัท Espressif ผู้ที่ออกแบบ SOC ตัวนี้ขึ้นมา โดยในตอนแรกๆ เลยทาง Espressif เปิดตัว ESP-IDF ออกมาก่อน ซึ่งใน Arduino และ Platform IO เป็นตัวที่ตามมาที่หลังนะครับ และ ใช้ ESP-IDF นี้ล่ะที่เป็นตัวคอมไพล์โค๊ดเช่นกัน แต่เพิ่มเติมการเขียนโปรแกรมแบบ Arduino เข้าไป ซึ่งหมายความว่า ต้องรอคน เขียน Lib ขึ้นมาก่อน อาจจะใช้งานได้ทั้งหมด

ความน่าสนใจของ ESP-IDF คือ

  • ความสามารถ Code Optimism ได้ดีกว่า โดยใช้ sdkconfig
  • สามารถใช้งานส่วนใหม่ๆ ได้ก่อนใคร

วิธีติดตั้ง ESP-IDF บน Windows 10

ทาง Espressif ได้จัดเตรียม Toolchain และ MSYS32 สำหรับ ESP-IDF บน Windows ไว้ชื่อ msys32 ซึ่งรวมเครื่องมือสำหรับคอมไพล์ไว้แล้ว สำหรับคนที่กลัวว่าจะ ทำเองไม่ work แนะนำติดตั้ง msys32 ดีกว่า ศึกษาเพิ่มเติมได้จาก https://github.com/espressif/esp-idf/blob/master/docs/windows-setup.rst

ขั้นตอน 1. การติดตั้ง

ดาวน์โหลด ESP-IDF และ Toolchain ได้ที่

https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20160816.zip

แตกไฟล์ออกมา แล้ววางไปที่โฟลเดอร์ C:\msys32

รูปโฟลเดอร์ C:\msys32

  • home – โฟลเดอร์เริ่มต้นของยูสเซอร์ home/admin
  • msys2_shell.cmd – โปรแกรม msys32

ขั้นตอนที่ 2 ติดตั้ง esp-idf

ใน เครื่องมือนี้ จะได้ติดตั้ง msys32 เป็น bash command ที่รันบน windows ไว้ จึงทำให้เราใช้คำสั่งต่างๆ แบบระบบ Linux บน Windows ได้ครับ

ไปที่โฟลเดอร์ C:\msys32 คลิกขวาที่ msys2_shell.cmd แล้วคลิกซ้าย Run as administrator

รูป คลิกขวาที่ msys2_shell.cmd แล้วคลิกซ้าย Run as administrator

จากนั้นย้ายไปยัง ไดเรกทรอรี ที่ต้องการ Clone SDK โดยการพิมพ์คำสั่ง cd “C:/pathe/to/dir/” หรือพิมพ์ cd

จากนั้นพิมพ์คำสั่ง

git clone –recursive https://github.com/espressif/esp-idf.git

ดังภาพ

ขั้นตอนที่ 3 เริ่มต้นสร้าง Project

วิธีที่ง่ายที่สุดในการเริ่มต้นสร้างโปรเจค ให้ดาวน์โหลดจาก Github โดยวิธี เหมือนกันในขั้นตอนที่ 2 นะครับ แต่เรา clone ตัวอย่างโปรเจคมาแทน

พิมพ์คำสั่งว่า

git clone https://github.com/espressif/esp-idf-template.git

ดังภาพ

จากนั้น พิมพ์คำสั่ง “ls -l”

จะเห็นเรามี โฟลเดอร์ใหม่ดังภาพ

ข้อควรระวัง: esp-idf ไม่สนับสนุนให้มา ช่องว่าง (space) ใน PATH esp-idf

ขั้นตอนที่ 4 การตั้งค่าโปรเจค

เปิด MSYS2 Terminal โดยการรัน C:\msys32\msys2_shell.cmd จะเป็นการรัน Bash Shell ขึ้นมาบนวินโดว์

พิมพ์คำสั่ง เพื่อทำการตั้งค่า PATH ของ ESP-IDF ที่เราได้ติดตั้งไว้

export IDF_PATH=”C:/path/to/esp-idf”

ดังภาพ

ถ้าคุณไม่ต้องการพิมพ์คำสั่ง export ทุกครั้ง สามารถเอาคำสั่ง script export ไปใส่ในไดเรกทรอรี่ /etc/profile.d หรือ ใส่ใน .bashrc ก้อได้เช่นกัน

จากนั้นย้ายไปยังไดเรกทรอรีของโปรเจค พิมพ์คำสั่งว่า

Make menuconfig

จะขึ้นดังภาพ

หลังจากพิมพ์คำสั่ง menuconfig จะขึ้นหน้าต่างดังภาพ

  • ให้เลือก Serial flasher config ตั้งค่า Serial Port ให้ถูกต้อง แล้ว กด Save จะได้ SDKConfig

  • make app เพื่อคอมไพล์ แนะนำว่า เครื่องควรแรงๆนะครับ จะได้ไม่ต้องรอนานน ฮ่าๆ

ถ้า สำเร็จ ไม่เจอ error ใดๆ จะมาถึง บรรทัดสุดท้ายว่า เอาไป flash ได้ แต่เราสามารถ พิมพ์คำสั่ง make flash  สำหรับ Flash ลง Board

เอาล่ะครับ ใคร flash ได้ไม่มีปัญหา ลองเอาตัวอย่างอื่นๆ ของ esp32 ใน github มาลองครับ

https://github.com/espressif/esp-idf/tree/master/examples

มันยังมีตัวอย่างการใช้งานของ Bluetooth และ ทำให้ ESP32 เป็น เครื่องเล่นเกมส์อีก ที่ได้ลองประสิทธิ์ภาพ ที่เหนือล้ำกว่าบน Arduino มากนัก ซึ่งเดี่ยวจะมาแนะนำในตอนหน้าครับ

About chang

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