การใช้งาน ESP32 ด้วย ESP-IDF และ Eclipse IDE บน Windows
ESP-IDF เป็นชุดคอมไพล์เลอร์ ESP32 ที่พัฒนาโดยบริษัท Espressif ผู้ผลิตและออกแบบ ESP32 การพัฒนาโค้ด ESP32 สำหรับ Arduino นั้น จะทำควบคู่ไปกับการพัฒนา ESP-IDF โดยที่ ESP-IDF จะเป็นแกนหลัก โดยเมื่อมีการเพิ่มฟีเจอร์ใหม่ๆ ให้ ESP-IDF แล้ว จึงจะมีการเพิ่มใน Arduino IDE โดยใช้ ESP-IDF เป็นตัวคอมไพล์โค๊ด แต่เพิ่มเติมการเขียนโปรแกรมแบบ Arduino เข้าไป ซึ่งหมายความว่า ต้องรอคน เขียน ไลบรารี่ ขึ้นมาก่อน Arduino IDE ถึงจะทำงานได้
ขั้นตอนการทํางาน
1. ติดตั้ง Java 8 หรือ เวอร์ชั่นที่สูงกว่า
Java Platform (จาว่าแพ็ตฟอร์ม) คือ การพัฒนาโปรแกรมภาษาจาว่าบนเครื่อง Platform (แพ็ตฟอร์ม) ต่างๆประกอบไปด้วย Java Platform, Standard Edition (J2SE)
https://www.oracle.com/java/technologies/javase-jdk14-downloads.html


2. ติดตั้ง Python 3.5 หรือ เวอร์ชั่นที่สูงกว่า
Python คือชื่อภาษาที่ใช้ในการเขียนโปรแกรมภาษาหนึ่ง ซึ่งถูกพัฒนาขึ้นมาโดยไม่ยึดติดกับแพลตฟอร์ม กล่าวคือสามารถรันภาษา Python ได้ทั้งบนระบบ Unix, Linux , Windows หรือแม้แต่ระบบ FreeBSD
ในตัวอย่างติดตั้งเวอร์ชั่น 3.7.4 โดยคลิกที่ [ Download Windows x86 executable installer]


หลังจากนั้นจะได้ไฟล์ชื่อ python-3.X.X.exe ในคอมพิวเตอร์ของคุณ ให้ดับเบิ้ลคลิกที่ไฟล์เพื่อเปิด

เลือก “Add Python 3.X to PATH“

คลิกที่ “Install Now”

รอจนกระทั่งติดตั้งเสร็จ แล้วคลิก Close


3. ติดตั้ง Git บน Windows
Git คือ Version Control แบบ Distributed ตัวหนึ่ง เป็นระบบที่ใช้จัดเก็บและควบคุมการเปลี่ยนแปลงที่เกิดขึ้นกับไฟล์ชนิดใดก็ได้ ไม่ว่าจะเป็น Text File หรือ Binary File


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

คลายซิป แล้ว เลือกไปไว้ตามที่ต้องการ
5. ติดตั้ง Eclipse Installer 2020‑03 R หรือ เวอร์ชั่นที่สูงกว่า
Eclipse คือโปรแกรมที่ใช้สำหรับพัฒนาภาษาได้หลายภาษา ซึ่งโปรแกรม Eclipse เป็นโปรแกรมหนึ่งที่ใช้ในการพัฒนา Application ได้อย่างมีประสิทธิภาพ และเนื่องจาก Eclipse เป็นซอฟต์แวร์ Open Source ที่พัฒนาขึ้นเพื่อใช้โดยนักพัฒนาเอง ทำให้ความก้าวหน้าในการพัฒนาของ Eclipse เป็นไปอย่างต่อเนื่องและรวดเร็ว



ติดตั้ง และ เลือกเป็น Eclipse IDE for C/C++ Developers






6. ปรับแต่ง ให้ Eclipse IDE ใช้งานกับ ESP-IDF
ไปที่ Help -> Install New Software

ที่ Work with: ป้อน https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/ -> Add

Neme: ตั้งชื่อเป็น Espressif IDF Plugins for Eclipse -> Add

เลือกทั้งหมด -> Next

Next >

เลือก I accept the terms of the license agreement -> Finish


ไปที่ Help > Espressif IDF Tools Manager > Install Tools

ESP-IDF Directory : เลือกไปที่โฟลเดอร์ที่ติดตั้ง ESP-IDF (ติดตั้งในขั้นตอนที่ 4)
Git Executable Locations : เลือกไปที่ไฟล์ git.exe (ติดตั้งในขั้นตอนที่ 3)
Choose Python version : ซึ่งในตัวอย่างจะขึ้นให้โดยอัตโนมัติ (ติดตั้งในขั้นตอนที่ 2)
คลิก Install Tools >

รอจนกระทั่งติดตั้งเสร็จ

ไปที่ Window > Perspective > Reset Perspective


ตรวจสอบที่ File > New > จะพบ Espressif IDF Project เพิ่มเข้ามา แสดงว่า Eclipse IDE พร้อมใช้งานกับ ESP-IDF แล้ว

7. ตรวจสอบการเชื่อมต่อ ระหว่างคอมพิวเตอร์ กับ ESP32
เชื่อมต่อสาย USB ระหว่าง คอมพิวเตอร์ กับ ESP32

ตรวจสอบการติดตั้งไดร์เวอร์ ของ ชิปแปลง USB to UART เบอร์ CP2102 โดย คลิกขวา Computet -> Properties -> Device Manager
ที่ Ports (COM & LPT) จะพบ ไดร์เวอร์ ของชิป CP2102
ในตัวอย่างเป็น Silicon Labs CP210x USB to UART Bridge (COM20)

8. โปรแกรมแรกกับ ESP32 ESP-IDF
ไปที่ File > New > Espressif IDF Project

ตัวอย่างตั้งชื่อเป็น hello_world_esp32 > Next

เลือก Create a project using one of the templates > hello_world > Finish

ปิดหน้า Welcome ลงไป

คลิก Dropdown ที่ Local > New Launch Target

เลือก ESP Target > Next

์Name : esp32
IDF Target : esp32
Serial Port : COM20 (แต่ละเครื่องไม่เหมือนกัน ให้เลือกข้อมูลจาก ขั้นตอนที่ 7 )
คลิก Finish

เลือกโปรเจค hello_world_esp32 แล้วคลิก รูปค้อน เพื่อ Build โปรแกรม

รอจนกระทั่ง ขึ้น Build complete (0 errors, 0 warnings):

คลิก Launch เพื่ออัพโหลดโค้ดไปยัง ESP32

รอจนกระทั่ง ขึ้น Done

คลิก Open a Terminal

เลือก Serial Terminal > OK

ที่ Terminal จะนับถอยหลัง จาก 10 – 0 แล้วจะแสดงข้อความ Hello world! แสดงว่าโปรแกรมแรกของคุณสำเร็จแล้ว

credit : https://github.com/espressif/idf-eclipse-plugin/blob/master/README.md