ในบทที่ 2 นี้ เราก็จะมาพูดถึงเรื่องโมดูล และบอร์ดพัฒนา ESP32 กันครับ เนื่องจากตัว ESP32 นั้น เป็นเพียงชิปไอซีแบบ SMD ตัวถัง QFN-48 ทำให้การใช้งานนิยมซื้อโมดูลสำเร็จรูปที่ต่อวงจรพร้อมใช้งานมาแล้ว แต่ในโมดูลนั้นยังไม่มีส่วนของการอัพโหลดโปรแกรม ทำให้เราต้องนำโมดูลไปใช้ร่วมกับบอร์ดพัฒนาอีกครั้ง โดยบอร์ดพัฒนาแต่ละรุ่น แต่ละผู้ผลิตนั้น จะมีความแตกต่างกันทั้งเรื่องขนาด เรื่องชิปไอซี USB to UART และฟิเจอร์พิเศษอื่น ๆ ซึ่งเราจะมาเจาะลึกกันในบทนี้ครับ
อย่างที่ได้กล่าวไปในบทแรก โมดูล ESP32 จะมีทั้งรุ่นที่ออกแบบสำเร็จจนผลิตออกขาย และรุ่นที่ออกแบบผิดพลาด แต่ผมจะยกมาเฉพาะโมดูลที่สามารถทำงานได้จริง และออกวางขายแล้วครับ
โมดูล ESP32 รุ่นนี้ ผลิตโดยบริษัท Espressif ที่เป็นผู้ผลิตชิปไอซี ESP32 (ผู้ผลิตไอซี ผลิตโมดูลขายเอง) จะมีอยู่ด้วยกัน 2 เวอร์ชั่น โดยมีเวอร์ชั่นที่เป็นโลโก้ของบริษัท Espressif และมีคำว่า ESP-WROOM-32 แต่เมื่อได้รับใบรับรองต่าง ๆ จึงได้ออกรุ่นที่มีหมายเลขใบรับรองออกมา ซึ่งเป็นรุ่นปัจจุบัน
รูปที่ 2.1 โมดูล ESP-WROOM-32 ก่อนผ่านการรับรอง (รูปซ้าย) และ ESP-WROOM-32 ในปัจจุบัน (รูปขวา)
โครงสร้างโดยละเอียดของ ESP-WROOM-32 มีดังนี้
รูปที่ 2.2 โครงสร้างของ ESP-WROOM-32
ตัวโมดูลมาพร้อมกับเสาอากาศแบบ PCB บนตัว มีกรอบคุมอุปกรณ์ทั้งหมดบนโมดูล ทำให้สัญญาณรบกวนน้อยลง และทำให้การทำงานโดยรวมมีเสถียรภาพมากยิ่งขึ้น ESP-WROOM-32 ได้รับความนิยมอย่างมากในการใช้งาน เนื่องจากสามารถผลิตได้ทันความต้องการ และมีราคาถูกกว่าโมดูลที่ผลิตโดยผู้ผลิตอื่น ๆ มาก นอกจากนี้ ตำแหน่งขาต่าง ๆ ของ ESP-WROOM-32 ยังถือเป็นมาตรฐานที่โมดูลจากผู้ผลิตอื่นทำตามอีกด้วย
รูปที่ 2.3 วงจรของ ESP-WROOM-32
รูปที่ 2.4 หน้าตาของโมดูล ESP32S
เป็นโมดูล ESP32 ที่ผลิตโดย Ai-Thinker โดยในช่วงแรกร่วมมือกับร้านค้าออนไลน์อย่าง Seeed Studio ในการวางจำหน่ายในช่วงแรก ภายหลังร้านค้าต่าง ๆ เช่น ElectroDragon ก็ได้นำมาจัดจำหน่ายด้วย ในราคาที่ถูกกว่า Seeed Studio ประมาณ $2
รูปที่ 2.5 หน้าเว็บของ Seeed Studio ที่เปิดให้สั่งซื้อ ESP32S ได้
ขาใช้งาน รวมถึงขนาดของตัวถัง ลายวงจรต่าง ๆ เหมือนกับ ESP-WROOM-32 ทุกประการ ทำให้สามารถนำไปใช้แทนกันได้เลย แต่ ESP32S ยังมีราคาที่แพงกว่า ESP-WROOM-32 ทำให้ได้รับความนิยมในการนำไปใช้บนโมดูลน้อยกว่า ESP-WROOM-32 ESP32-Bit
รูปที่ 2.6 หน้าตาของโมดูล ESP32-Bit ด้านหน้า (รูปซ้าย) และด้านหลัง (รูปขวา)
ด้วยความร่วมมือของ eBox และ Widora (ผู้ผลิตบอร์ดไมโครคอมพิวเตอร์ในจีน) ทำให้โมดูล ESP32-Bit เกิดขึ้นมา ข้อดีของโมดูล ESP32-Bit นี้ คือมีขนาดเล็กกว่า ESP-WROOM-32 ทำให้เมื่อนำไปออกแบบเป็นบอร์ดพัฒนา จะทำให้บอร์ดมีขนาดที่เล็กลงได้ แต่ข้อเสียคือมีการตัดขาใช้งานบางส่วนออกไป จึงอาจจะทำให้ไม่สามารถ ESP32 ได้เต็มที่มากนัก โมดูล ESP32-Bit เท่าที่ผู้จัดทำได้ค้นหาข้อมูลดูแล้ว พบว่าตัวโมดูลมักไม่มีแยกขาย หากต้องการจะซื้อ จะต้องซื้อพร้อมบอร์ดพัฒนา ESP32-T แต่ตัวบอร์ดไม่ได้บัดกรี ESP32-Bit มาเลย ผู้ซื้อสามารถเลือกได้ว่าจะบัดกรี ESP32-Bit หรือ ESP-WROOM-32 / ESP32S ลงไปในบอร์ดพัฒนา
รูปที่ 2.7 บอร์ด ESP32-T
ข้อดีอีกข้อของโมดูล ESP32-Bit คือ สามารถเลือกได้ว่าจะใช้เสาเพิ่มโดยใช้คอนเนคเตอร์แบบ IPEX หรือเลือกใช้เสาอากาศแบบเซรามิคบนตัวโมดูล ซึ่ง ESP-WROOM-32 / ESP32S จะไม่สามารถทำได้
รูปที่ 2.8 โครงสร้างของ ESP32-Bit (รูปซ้าย) และตำแหน่งขาต่อใช้งาน (รูปขวา)
รูปที่ 2.9 เปรียบเทียบโมดูลรุ่น IntoRobot-W32 และรุ่น IntoRobot-W33
เป็นโมดูล ESP32 ที่ผลิตโดย IntoRobot มีอยู่ 2 รุ่นคู่กัน คือรุ่น W32 และ W33 ข้อแตกต่างของทั้ง 2 รุ่น คือรุ่น W32 จะใช้เสาอากาศแบบ PCB ส่วนรุ่น W33 จะมีเสาแบบเซรามิคเป็นเสาหลักในการรับสัญญาณ และสามารถเปลี่ยนไปใช้คอนเนคเตอร์แบบ IPEX สำหรับต่อเสาเพิ่มเติมภายนอกได้ ตำแหน่งขา และจนาด จะมีความแตกต่างจากโมดูลทุกรุ่นที่กล่าวมา คือมีขาต่อใช้งานทั้งหมด 31 ขา น้อยกว่า ESP-WROOM-32 / ESP32S แต่มากกว่า ESP32-Bit และมีความกว้าง 16 มิลิเมตร เล็กกว่า ESP-WROOM-32/ESP32S แต่ใหญ่กว่า ESP32-Bit
รูปที่ 2.10 ตำแหน่งขาต่าง ๆ และโครงสร้างของ IntoRobot-W32/W33
หลังจากชิปไอซี ESP32 เปิดตัวได้ไม่นาน ก็มีผู้ผลิตหลายรายที่ให้การตอบรับโดยการผลิตบอร์ดพัฒนา ESP32 ออกมา ช่วยให้ ESP32 สามารถนำมาพัฒนาได้ง่ายมากขึ้น ในแต่ละบอร์ดก็จะมีความแตกต่างกันในเรื่องของฟิเจอร์เพิ่มเติม เช่น เซ็นเซอร์วัดอุณหภูมิที่เพิ่มขึ้นมา มีคลิสตอล 32.768kHz สำหรับจ่ายสัญญาณนาฬิกาให้วงจร RTC ภายใน ESP32 เรื่องขนาด และรุ่นของโมดูล ESP32 ที่เลือกใช้ บอร์ดพัฒนา ESP32 เกิดขึ้นมาใหม่ทุก ๆ วัน ทำให้ผู้เขียนไม่สามารถยกบอร์ดพัฒนาที่มีอยู่บนโลกนี้ขึ้นมาพูดถึงได้หมด จึงเลือกบอร์ดที่จะมานำเสนอเฉพาะบอร์ดที่เป็นนิยมในหลาย ๆ ประเทศ หรือเป็นบอร์ดที่คนไทยสามารถหาซื้อมาใช้งานได้
รูปที่ 2.11 บอร์ด ESP32-DevKitC เวอร์ชั่นแรก
รูปที่ 2.12 บอร์ด ESP32-DevKitC เวอร์ชั่นที่สอง และเป็นเวอร์ชั่นที่จำหน่ายในปัจจุบัน
บอร์ดพัฒนา ESP32 ที่ผลิตโดยบริษัท Espressif ที่เป็นผู้ผลิตชิปไอซี ESP32 (ผู้ผลิตไอซี ผลิตโมดูล และผลิตบอร์ดพัฒนาเอง) เป็นบอร์ดพัฒนา ESP32 บอร์ดแรก ทำให้ตำแหน่งขาต่าง ๆ ของ ESP32-DevKitC ถูกใช้เป็นมาตรฐาน บอร์ดพัฒนา ESP32 ส่วนใหญ่จะมีขนาด และมีตำแหน่งขาเท่าบอร์ด ESP32-DevKitC ดังนั้นหากไม่สามารถหาซื้อบอร์ด ESP32-DevKitC ได้ ก็สามารถนำบอร์ดจากผู้ผลิตอื่น ๆ มาเสียบแทนกันได้เลย บอร์ดพัฒนา ESP32-DevKitC มีอยู่ด้วยกัน 2 รุ่น คือ
บอร์ด ESP32-DevKitC ใช้โมดูลรุ่น ESP-WROOM-32 ที่บริษัท Espressif เป็นผู้ผลิตขึ้นเอง และใช้ชิปไอซีแปลง USB เป็น UART เบอร์ CP2102 จาก Silicon Labs สามารถเข้าโหมดอัพโหลดโปรแกรมแบบอัตโนมัติโดยใช้วงจรแบบ nodemcu มีรอม 4MB (หรือ 32Mbit) ใช้ไอซีเรกกูเลเตอร์แบบ LDO เบอร์ AMS1117-3.3 รองรับแรงดันเข้าสูงสุด 7V และจ่ายกระแสได้สูงสุด 700mA ใช้พลังงานไฟฟ้าและสื่อสารผ่านพอร์ต MicroUSB มีขาต่อใช้งานทั้งหมด 38 ขา เรียงขาแบบเดียวกับบนโมดูล ESP-WROOM-32 เมื่อนำไปเสียบลงโพรโต้บอร์ด จะเหลือช่องให้ใช้งานเพียงด้านเดียว 1 ช่อง
รูปที่ 2.13 บอร์ด ESP32-DevKitC เมื่อเสียบลงโพรโต้บอร์ด
บอร์ด ESP32-DevKitC จัดจำหน่ายผ่านตัวแทนจำหน่ายต่าง ๆ ร้าน Adafruit วางขายอยู่ที่ $15 USA ไม่ร่วมค่าจัดส่ง หรือประมาณ 550 บาท ไม่รวมค่าจัดส่ง
รูปที่ 2.14 ตำแหน่งขาบนบอร์ด ESP32-DevKitC
รูปที่ 2.15 บอร์ด SparkFun ESP32 Thing
บอร์ดพัฒนา ESP32 ที่ผลิตโดยบริษัท SparkFun จากสหรัฐอเมริกา ความพิเศษของบอร์ดนี้ คือมีวงจรชาร์จแบตเตอรี่ลิโพบนบอร์ด ทำให้บอร์ดสามารถใช้งานกับแบตเตอรี่ได้โดยตรงผ่านการเชื่อมต่อแบตเตอรี่โดยใช้ JST คอนเนคเตอร์ และมีคลิสตอล 32.768kHz สำหรับจ่ายสัญญาณนาฬิกาให้วงจร RTC ภายในชิปไอซี ESP32
SparkFun นิยมออกแบบบอร์ดพัฒนาโดยการใช้ชิปไอซีโดยตรง ทำให้ตัวบอร์ด SparkFun ESP32 Thing ไม่ใช้โมดูล ESP32 จากผู้ผลิตรายต่าง ๆ และเลือกใช้การวางชิปไอซี ESP32 ลงบนบอร์ดของตนเอง ข้อดีของการไม่เลือกใช้โมดูลคือสามารถควบคุมขนาดของบอร์ดได้ความต้องการ แต่ก็อาจจะทำให้วงจรทำงานไม่เสถียรเท่าการใช้โมดูลเนื่องจากไม่มีฝาครอบที่จะมากำจัดสัญญาณรบกวนเข้าวงจร
ตัวบอร์ดใช้เสาอากาศแบบ PCB ใช้ชิปไอซีรอมขนาด 4MB ตัวถังแบบ SOIC-8 เชื่อมต่อผ่าน SPI เลือกใช้ชิปไอซีแปลง USB เป็น UART เบอร์ FT231X จากบริษัท FTDI ใช้ชิปไอซีเรกกูเลเตอร์แบบ LDO เบอร์ AP2112K-3.3V ตัวถังแบบ SOT-23 รองรับแรงดันอินพุตสูงสุด 6V และจ่ายกระแสเอาต์พุตได้ไม่เกิน 600mA ส่วนวงจรชาร์จแบตเตอรี่ใช้ชิปไอซีเบอร์ MCP73831 กำหนดกระแสชาร์จไว้ที่ 500mA หลอด LED สีแดง บอกสถานะชิป ESP32 มีไฟเลี้ยง 3.3V และหลอด LED สีเหลือง บอกสถานะการชาร์จแบตเตอรี่ มีคลิสตอล 32.768kHz สำหรับจ่ายสัญญาณนาฬิกาให้วงจร RTC ในชิปไอซี ESP32 สามารถเข้าโหมดอัพโหลดโปรแกรมได้อัตโนมัติโดยจัดวงจรแบบ nodemcu ใช้พลังงานไฟฟ้าและสื่อสารผ่านพอร์ต MicroUSB มีขาต่อใช้งานทั้งหมด 40 ขา เมื่อนำไปเสียบลงโพรโต้บอร์ด จะเหลือช่องให้ใช้งานด้านละ 1 ช่อง
รูปที่ 2.16 บอร์ด SparkFun ESP32 Thing เมื่อเสียบลงโพรโต้บอร์ด
บอร์ด SparkFun ESP32 Thing จำหน่ายในเว็บของ SparkFun เอง โดยเปิดให้สั่งซื้อได้เพียงบางประเทศเท่านั้น ในราคา $19.95 ไม่รวมค่าจัดส่ง หรือประมาณ 730 บาท ไม่รวมค่าจัดส่ง
รูปที่ 2.17 Pinout ของบอร์ด SparkFun ESP32 Thing
รูปที่ 2.18 บอร์ด NodeMCU-32S
ผลิตโดย Ai-Thinker ผู้ผลิตโมดูล ESP32S มีตำแหน่งขาที่ตรงกับ ESP32-DevKitC แต่มีความกว้างที่เล็กกว่า ทำให้ไม่สามารถใช้งานแทนกันได้โดยตรง ข้อดีของโมดูลนี้คือมีขนาดเล็ก ไม่มีส่วนของเสาอากาศบนโมดูลยื่นออกมาจากบอร์ดหลัก ใช้เรกกูเลเตอร์ที่รองรับแรงดันไฟฟ้าเข้าได้ถึง 7V แต่มีข้อเสียที่บนบอร์ดไม่มีสกรีนตำแหน่งขา แต่มีสกรีนตำแหน่งขาด้านล่างบอร์ดแทน ทำให้การใช้งานอาจจะไม่สะดวกนัก
รูปที่ 2.19 บอร์ด NodeMCU-32S ด้านหลัง
บอร์ด NodeMCU-32S ปัจจุบันมีจำหน่ายอยู่ 2 รุ่น คือรุ่นที่ผลิตโดย Ai-Thinker ใช้โมดูล ESP32S และรุ่นที่ผลิตโดยผู้ผลิตเจ้าอื่นที่นำบอร์ด NodeMCU-32S มาใส่โมดูล ESP-WROOM-32 ลงไปแทน ทำให้มีราคาที่ถูกลงมาก
รูปที่ 2.19 บอร์ด NodeMCU-32S ที่ไม่ได้ผลิตโดย Ai-Thinker ใช้โมดูล ESP-WROOM-32
บอร์ด NodeMCU-32S ใช้ชิปแปลง USB เป็น UART เบอร์ CP2102 จากบริษัท Silicon Labs สามารถเข้าโหมดอัพโหลดโปรแกรมแบบอัตโนมัติจัดวงจรแบบ nodemcu มีรอม 4MB (หรือ 32Mbit) ใช้ไอซีเรกกูเลเตอร์แบบ LDO เบอร์ AMS1117-3.3 รองรับแรงดันเข้าสูงสุด 7V และจ่ายกระแสได้สูงสุด 700mA หลอด LED สีแดงแสดงสถานะการจ่ายไฟเลี้ยงให้โมดูล ESP32S / ESP-WROOM-32 และหลอด LED สีฟ้าเชื่อมต่อกับ GPIO2 สวิตซ์กดติดปล่อยดับจำนวน 2 ตัว เชื่อมต่อกับขา CHP_PU ของโมดูล ESP32S / ESP-WROOM-32 ใช้สำหรับรีเซ็ตบอร์ด จำนวน 1 ตัว และเชื่อมต่อกับ GPIO0 เพื่อใช้เข้าโหมดโปรแกรมด้วยตัวเองอีก 1 ตัว ใช้พลังงานไฟฟ้าและสื่อสารผ่านพอร์ต MicroUSB มีขาต่อใช้งานทั้งหมด 38 ขา เรียงขาแบบเดียวกับบอร์ด ESP32-DevKitC เมื่อนำไปเสียบลงโพรโต้บอร์ด จะเหลือช่องให้ใช้งานด้านละ 1 ช่อง บอร์ด NodeMCU-32S ที่ผลิตโดย Ai-Thinker มีจำหน่ายอยู่ที่เว็บ ICStation ในราคา $14.99 ฟรีค่าจัดส่ง หรือประมาณ 560 บาท แต่สำหรับโมดูลที่ไม่ได้ผลิตโดย Ai-Thinker ใช้โมดูล ESP-WROOM-32 ร้าน IOXhop : www.ioxhop.com นำมาจำหน่ายในราคา 350 บาท ทำให้บอร์ด NodeMCU-32S มีราคาถูกกว่าบอร์ดอื่น ๆ มากและมีจำหน่ายในประเทศไทย ในชุดบทความนี้ จึงเลือกใช้บอร์ด NodeMCU-32S เป็นหลัก
รูปที่ 2.20 Pinout ของบอร์ด NodeMCU-32S
รูปที่ 2.21 บอร์ด WEMOS LOLIN32 ด้านหน้า (รูปซ้าย) และด้านหลัง (รูปขวา)
เป็นบอร์ดจากผู้ผลิต WeMos ที่มีชื่อเสียงด้านการทำบอร์ดพัฒนา ESP8266 ที่มีขนาดเล็ก และถูก รวมถึงมีบอร์ดเสริมต่าง ๆ ช่วยให้สามารถใช้งานได้ง่ายขึ้น ต่อจากการทำบอร์ดพัฒนา ESP8266 แบรนด์ WeMos ก็ได้หันมาทำบอร์ดพัฒนา ESP32 เป็นครั้งแรก และเปิดตัวมาในราคาเพียง $6.9 ไม่รวมค่าจัดส่ง ทำให้สินค้าหมดอย่างรวดเร็ว นอกราคาเรื่องราคาที่ถูกมาก ๆ แล้ว ตัวบอร์ดยังรองรับการ ชาร์จ ใช้ พลังงานไฟฟ้าจากแบตเตอรี่ลิโพผ่าน คอนเนคเตอร์แบบ JST และแตกต่างจากทุกบอร์ดตรงที่ใช้ชิปไอซีแปลง USB เป็น UART เบอร์ CP2104 จากบริษัท Silicon Labs ที่มีขนาดเล็กกว่าชิปไอซี CP2102 และตามสไตล์ของ WeMos คือไม่มีปุ่มควบคุม GPIO0 ทำให้ไม่สามารถกดเข้าโหมดอัพโหลดโปรแกรมด้วยตนเองได้ บอร์ด WEMOS LOLIN32 ใช้โมดูล ESP-WROOM-32 มีรอม 4MB (หรือ 32Mbit) ใช้ไอซีเรกกูเลเตอร์แบบ LDO ไม่ทราบเบอร์ หลอด LED แสดงสถานะการชาร์จแบตเตอรี่ และหลอด LED เชื่อมต่อกับ GPIO5 สวิตซ์กดติดปล่อยดับเชื่อมต่อกับขา CHP_PU ของโมดูล ESP-WROOM-32 ใช้สำหรับรีเซ็ตบอร์ด ชิปไอซีจัดการ ๆ ชาร์จแบตเตอรี่ถูกตั้งไว้ให้จ่ายกระแสชาร์จที่ 500mA ใช้พลังงานไฟฟ้าและสื่อสารผ่านพอร์ต MicroUSB มีขาต่อใช้งานทั้งหมด 40 ขา น้ำหนัก 5.8 กรัม เมื่อนำไปเสียบลงโพรโต้บอร์ด จะเหลือช่องให้ใช้งานด้านละ 1 ช่อง
รูปที่ 2.22 บอร์ด WEMOS LOLIN32 เมื่อเสียบลงโพรโต้บอร์ด
ข้อมูลส่วนใหญ่ของบอร์ด WEMOS LOLIN32 ยังไม่ถูกปล่อยออกมา เช่น วงจร Pinout และเอกสารวิธีใช้ ในหน้ารายละเอียดสินค้ามีเพียงให้ดาวน์โหลดไดร์เวอร์ และข้อมูลสเปคของบอร์ดคร่าว ๆ เท่านั้น
รูปที่ 2.21 บอร์ด Nano32
ด้วยความร่วมมือของบริษัทกราวิสเทค และ MakerAsia ได้ร่วมกันจัดทำบอร์ดพัฒนา ESP32 เป็นบอร์ดแรกของโลกขึ้นมา โดย MakerAsia ทำหน้าที่ออกแบบและพัฒนาบอร์ด ส่วนกราวิสเทคทำหน้าที่หาอุปกรณ์และผลิต โดยสถานที่ผลิตบอร์ด Nano32 อยู่ที่อุทยานวิทยาศาสตร์ประเทศไทย จังหวัดปทุมธานี แม้บอร์ด Nano32 ถูกผลิตขึ้นในประเทศไทย แต่สามารถให้คนที่อยู่ต่างประเทศสามารถสั่งซื้อได้ด้วย ผ่านช่องทางของกราวิสเทคเอง และในประเทศสิงคโปร์สามารถหาซื้อได้ผ่าน MakerAsia บอร์ด Nano32 มีข้อมูลที่เปิดเผยออกมาค่อนข้างน้อย ไม่แจกวงจร และลายวงจรพิมพ์ออกมาเป็นสาธารณะ ทำให้สเปคของบอร์ด Nano32 จะถูกจำกัดอยู่แค่หมายเลขของอุปกรณ์บนบอร์ด ไม่สามารถระบุการจัดวงจรใด ๆ ได้ บอร์ด Nano32 ใช้ชิปไอซี ESP32 บัดกรีลงบอร์ดโดยตรง ใช้คลิสตอลความถี่ 40MHz และมีคลิสตอลสำหรับจ่ายให้วงจร RTC ภายในชิปไอซี ESP32 ความถี่ 13.768kHz ใช้เสาอากาศแบบเซมิค ใช้ชิปไอซีรอมพื้นที่ 4MB ใช้ชิปไอซี USB to UART เบอร์ FT231X จากบริษัท FTDI มีหลอด LED แสดงสถานะการจ่ายไฟ หลอด LED แสดงสถานะการสื่อสารผ่าน UART และหลอด LED ต่ออยู่กับขา GPIO16 สวิตซ์กดติดปล่อยดับจำนวน 2 ตัว ใช้รีเซ็ตบอร์ด และอีก 1 ตัว ต่อกับ GPOI0 สำหรับเข้าโหมดอัพโหลดโปรแกรมด้วยตนเอง เรกกูเลเตอร์ระบุว่าสามารถรองรับกระแสไฟฟ้าได้ถึง 1A ใช้พลังงานไฟฟ้าและสื่อสารผ่านพอร์ต MicroUSB มีขาต่อใช้งานทั้งหมด 40 ขา เมื่อนำไปเสียบลงโพรโต้บอร์ด จะเหลือช่องให้ใช้งานด้านละ 1 ช่อง
รูปที่ 2.22 บอร์ด Nano32 เมื่อเสียบลงโพรโต้บอร์ด
บอร์ด Nano32 มีจำหน่ายผ่านหน้าร้าน Home of Maker สาขาต่าง ๆ และหน้าเว็บออนไลน์ gravitechthai.com และ gravitech.us รุ่นรอม 4MB ราคา 690 บาท ไม่ร่วมภาษีและค่าจัดส่ง รุ่นรอม 8MB ราคา 890 บาท ไม่รวมภาษีและค่าจัดส่ง ความเห็นของผู้เขียน: สำหรับ Nano32 จะมีรุ่นที่ใส่ชิปไอซีรอมขนาด 4MB กับรุ่น 8MB โดยราคาของรุ่น 8MB จะสูงกว่ารุ่น 4MB 200 บาท หากพิจารณาระยะห่างของราคาแล้ว รุ่นรอม 4MB ดูจะคุ้มค่ามากกว่า
รูปที่ 2.23 Pinout ของบอร์ด Nano32
รูปที่ 2.24 บอร์ด Ayarafun/LamLoei Node32S
บอร์ด Node32S เป็นบอร์ดในความร่วมมือของเว็บไซต์ Ayarafun และบริษัท LamLoei (แล่มเลย) โดยบริษัท LamLoei เป็นผู้พัฒนาบอร์ด และ Ayarafun ดูแลด้านการทำกราฟฟิก และเอกสารวิธีใช้ต่าง ๆ บอร์ด ตัวบอร์ดผลิตและจัดจำหน่ายโดยบริษัทกราวิสเทค บอร์ด Node32S มีช่อง JST คอนเนคเตอร์สำหรับเสียบชาร์จแบตเตอรี่ มีคลิสตอล 32.768kHz และมีอยู่ด้วยกัน 2 รุ่น คือ Node32S และ Node32S Plus ข้อแตกต่างของรุ่น Plus คือมีเซ็นเซอร์วัดอุณหภูมิบนบอร์ดด้วย
รูปที่ 2.25 บอร์ด Ayarafun/LamLoei Node32S Plus
ตัวบอร์ดใช้โมดูล ESP-WROOM-32 มีรอม 4MB มีคลิสตอล 32.768kHz สำหรับจ่ายสัญญาณนาฬิกาให้วงจร RTC ภายในชิปไอซี ESP32 ใช้ชิปไอซีแปลง USB เป็น UART เบอร์ FT231XS สามารถเข้าโหมดอัพโหลดโปรแกรมได้อัตโนมัติโดยจัดวงจรแบบ nodemcu ใช้เรกกูเลเตอร์เบอร์ AP2112K-3.3 รองรับแรงดันเข้าสูงสุด 6V และจ่ายกระแสไฟฟ้าได้สูงสุด 600mA ชิปไอซีชาร์จแบตเตอรี่เบอร์ MCP73831 ตัวถัง SOT-23 จำกัดกระแสชาร์จอยู่ที่ 500mA มีหลอด LED จำนวน 3 หลอด โดยหลอดสีแดง แสดงสถานะกำลังชาร์จแบตเตอรี่ หลอดสีเขียว แสดงสถานะแบตเตอรี่เต็ม และหลอดสีเหลือง ต่อกับ GPIO2 มีสวิตซ์กดติดปล่อยดับจำนวน 2 ตัว ตัวแรกเป็นปุ่มรีเซ็ต และตัวที่สอง ต่อกับ GPIO0 สำหรับเข้าโหมดอัพโหลดโปรแกรมด้วยตนเอง ใช้แรงดันไฟฟ้าและสื่อกับคอมพิวเตอร์ผ่านช่อง MicroUSB มีฟิวส์ชนิด PTC จำกัดกระแสรวมทั้งบอร์ดอยู่ที่ 500mA มีขาต่อใช้งานทั้งหมด 19 ขา วางตำแหน่งขาแบบเดียวกับ ESP32-DevKitC เมื่อเสียบลงโพรโต้บอร์ด จะมีช่องเหลือให้ใช้งานด้านละ 1 ช่อง สำหรับรุ่น Plus ใช้ชิปไอซีวัดอุณหภูมิและความชื้นเบอร์ HTS221 ต่อใช้งานแบบ I2C
รูปที่ 2.26 บอร์ด Ayarafun/LamLoei Node32S เมื่อเสียบลงโพรโต้บอร์ด (รูปจากโปรแกรม Fritzing)
บอร์ด Node32S ขณะนี้มีจำหน่ายอยู่ที่เว็บไซต์ของกราวิสเทค gravitechthai.com ในราคา 690 บาท ไม่รวมภาษี และค่าจัดส่ง ส่วนรุ่น Plus ราคา 790 บาท ไม่รวมภาษี และค่าจัดส่ง
รูปที่ 2.27 Pinout ของบอร์ด Node32S
รูปที่ 2.28 วงจรของบอร์ด Node32S
บอร์ดพัฒนา ESP32 มีอยู่ด้วยกันหลายผู้ผลิต หลายราคา ซึ่งแต่ละบอร์ดจะมีจุดเด่น และฟิเจอร์เสริมที่แตกต่างกัน สำหรับในชุดบทความนี้ จะเลือกใช้บอร์ด NodeMCU-32S ในการสอนใช้งาน ESP32 ในบทถัด ๆ ไป สำหรับบอร์ดพัฒนาที่มีอยู่ในชุดบทความนี้เป็นเพียงบอร์ดที่ยกมาแค่ส่วนหนึ่งเท่านั้น หากต้องการดูรายชื่อบอร์ดพัฒนา ESP32 ทั้งหมด สามารถเข้าไปดูได้ที่เว็บไซต์ esp32.net