Saveไลบรารี ESP_AT_WIFIMANAGER นี้ขึ้นอยู่กับการแก้ไขข้อผิดพลาดและปรับปรุงจาก:
Tzapu WiFiManagerKen Taylor WiFiManagerKhoi Hoang's ESP_WiFiManagerเพื่อรองรับ NRF52, SAM DUE, SAMD, STM32F/L/H/G/WB/MP1, RASPBERRY_PI_PICO ฯลฯ บอร์ดโดยใช้ Shields ESP8266/ESP32-AT-Command
บอร์ดที่ใช้ RP2040 เช่น NANO_RP1040_CONNECT, RASPBERRY_PI_PICO ปัจจุบันได้รับการสนับสนุนโดยใช้ Arduino-Pico Core ของ Earle Philhower หรือ Arduino-Mbed RP2040 Core พร้อมคุณสมบัติ Blynk /Wifimanager
บอร์ด AVR-Family (mega, uno, nano ฯลฯ ) ไม่ได้รับการสนับสนุน เนื่องจากไม่มีหน่วยความจำเพียงพอที่จะเรียกใช้เว็บเซิร์ฟเวอร์ config
นี่คือตัวจัดการการเชื่อมต่อข้อมูลรับรอง / WiFi ที่มีพอร์ทัลการกำหนดค่าเว็บทางเลือก
พอร์ทัลการกำหนดค่าเว็บที่ให้บริการจาก ESP8266/ESP32-AT-command shields ทำงานเป็นจุดเชื่อมต่อ (AP) พร้อมที่อยู่ IP แบบคงที่ที่กำหนดค่าได้หรือใช้ที่อยู่ IP เริ่มต้นที่ 192.168.4.1
นอกจากนี้คุณยังสามารถระบุ AP และ STA IP แบบคงที่ พอร์ทัล config จะได้รับการปรับอัตโนมัติเพื่อให้ตรงกับจำนวนพารามิเตอร์ที่กำหนดเองแบบไดนามิก ข้อมูลประจำตัวจะถูกบันทึกไว้ใน EEPROM, FlashStorage_SAMD , FlashStorage_STM32 , DueFlashStorage หรือ NRF52/RP2040 LITTLEFS
ปัจจุบันไลบรารี ESP_AT_WIFIMANAGER นี้รองรับบอร์ดต่อไปนี้:
บอร์ด NRF52 เช่น Adafruit Feather NRF52832, NRF52840 Express, Bluefruit Sense, Itsy-Bitsy NRF52840 Express, Metro NRF52840 Express, NINA_B302_ublox, Nina_B112_ublox
แซมครบกำหนด
SAMD21
Teensy (4.1, 4.0, 3.6, 3.5, 3,2, 3.1, 3.0, LC)
บอร์ด STM32F/L/H/G/WB/MP1 (พร้อมแฟลช 64+K)
บอร์ดที่ใช้ RP2040 เช่น Nano RP2040 Connect โดยใช้ Arduino Mbed OS สำหรับบอร์ดนาโน
บอร์ดที่ใช้ RP2040 เช่น RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040 และ GENINIC_RP2040 โดยใช้ Arduino-Mbed RP2040 Core หรือ Arduino-Pico ของ Earle Philhower
wiznet_wizfi360_evb_pico โดยใช้ Arduino-pico ของ Earle Philhower

ESP8266-AT-command shieldESP32-AT-command ShieldW600 และ WIS600-01S AT-Command ShieldWizFi360 AT-Command Shield 
Arduino IDE 1.8.19+ สำหรับ ArduinoArduino AVR core 1.8.6+ สำหรับ Arduino (ใช้ ARDUINO Board Manager) สำหรับบอร์ด AVRArduino Core for STM32 v2.4.0+ สำหรับบอร์ด STM32F/L/H/G/WB/MP1 (นิวเคลียส -144 นิวเคลียสนิวเคลียสนิวเคลียสนิวเคลียสนิวเคลียสนิวเคลียสนิวเคลียส 64 ฯลฯ )Teensy core v1.57+ สำหรับ Teensy 4.1Arduino SAM DUE core v1.6.12+ สำหรับบอร์ด SAM ARM Cortex-M3Arduino SAMD core 1.8.13+ สำหรับ SAMD ARM Cortex-M0+ บอร์ดAdafruit SAMD core 1.7.11+ สำหรับ SAMD ARM Cortex-M0+ และ M4 บอร์ด (Nano 33 IoT ฯลฯ )Seeeduino SAMD core 1.8.3+ สำหรับบอร์ด SAMD21/SAMD51 (Xiao M0, Wio Terminal ฯลฯ )Adafruit nRF52 v1.3.0 สำหรับบอร์ด NRF52 เช่น Adafruit NRF52840_Feather, NRF52832_Feather, NRF52840_FEATHAR_SENSE, NRF52840_ITSYBITSY NRF52840_METRO, NRF52840_PCA10056, PARTICLE_XENON, NINA_B302_UBLOX ฯลฯArduino mbed_rp2040 core 3.5.4+ สำหรับบอร์ดที่ใช้ Arduino RP2040 เช่น Arduino Nano RP2040 Connect, Raspberry_Pi_Pico ฯลฯEarle Philhower's arduino-pico core v2.7.1+ สำหรับบอร์ดที่ใช้ RP2040 เช่น Raspberry_Pi_Pico, Adafruit_feather_RP2040 และ Generic_RP2040 ฯลฯESP8266_AT_WebServer library v1.7.1+ เพื่อให้สามารถรองรับโล่ ESP32-AT ในการติดตั้งตรวจสอบFlashStorage_SAMD library v1.3.2+ สำหรับบอร์ด SAMD21 และ SAMD51 (ศูนย์, MKR, Nano_33_Iot, M0, M0 Pro, Adafruit Itsy-Bitsy M4 ฯลฯ ) - หรือ Platform.io FlashStorage_SAMD library v1.0.0+ สำหรับบอร์ด SAMD21 และ SAMD51 (ศูนย์, MKR, Nano_33_Iot, M0, M0 Pro, Adafruit Itsy-Bitsy M4 ฯลฯ )FlashStorage_STM32 library v1.2.0+ สำหรับกระดาน STM32F/L/H/G/WB/MP1 เพื่อติดตั้ง ตรวจสอบDueFlashStorage library v1.0.0+ สำหรับ SAM ครบกำหนด ในการติดตั้งตรวจสอบAdafruit's LittleFS/InternalFS สำหรับบอร์ด NRF52Ai-Thinker AT Firmware v1.5.4 หรือ AT Firmware v1.7.4.0 สำหรับ esp8266-at shieldsAT version_2.1.0.0_dev สำหรับ ESP32-AT ShieldsAT version_1.1.4 สำหรับ WIS600-01S และ W600-at WiFi Shields Ai-Thinker AT Firmware v1.5.4
AT version: 1.1.0.0 (May 11 2016 18 : 09 : 56 )
SDK version: 1.5.4 (baaeaebb)
Ai-Thinker Technology Co. Ltd.
Jun 13 2016 11 : 29 : 20 AT Firmware v1.7.4.0
AT version: 1.7.4.0 (May 11 2020 19 : 13 : 04 )
SDK version: 3.0.4 (9532ceb)
compile time:May 27 2020 10 : 12 : 17
Bin version (Wroom 02 ):1.7.4 WIS600-01S และ W600 โดยใช้คำสั่ง ESP8266 หรือ ESP32-AT และเฟิร์มแวร์สต็อก
AT version: 1.1.4 (Dec 05 2018 11 : 06 : 45 )
SDK version: 3.0.0
Dec 05 2018 11 : 06 : 45 AT version_2.1.0.0_dev
AT version: 2.1.0.0 -dev(4f6b92c - Jun 10 2020 10 : 36 : 54 )
SDK version:v4 .0.1 - 193 -ge7ac221b4
compile time (b85a8df):Jun 18 2020 14:00:59
Bin version:2.0.0(WROOM- 32 )ดูคำแนะนำที่ AT Command Core และ ESP_AT_GET_STARTED
AT Firmware v1.7.4.0 ไฟล์ bin ไปยังตำแหน่งที่ถูกต้องดังนี้: # BOOT MODE
### Flash size 8Mbit: 512KB+512KB
boot_v1.2+.bin 0x00000
user1.1024.new.2.bin 0x01000
esp_init_data_default.bin 0xfc000
blank.bin 0x7e000 & 0xfe000
### Flash size 16Mbit-C1: 1024KB+1024KB
boot_v1.2+.bin 0x00000
user1.2048.new.5.bin 0x01000
esp_init_data_default.bin 0x1fc000
blank.bin 0xfe000 & 0x1fe000
วิธีที่ดีที่สุดและง่ายที่สุดคือใช้ Arduino Library Manager ค้นหา ESP_AT_WiFiManager จากนั้นเลือก / ติดตั้งเวอร์ชันล่าสุด คุณยังสามารถใช้ลิงค์นี้สำหรับคำแนะนำโดยละเอียดเพิ่มเติม
ESP_AT_WiFiManager-master.zipESP_AT_WiFiManager-masterESP_AT_WiFiManager-master ไปยังไดเรกทอรีของ Arduino Libraries เช่น ~/Arduino/libraries/เพื่อให้สามารถคอมไพล์รันและตรวจจับและแสดง board_name โดยอัตโนมัติบนบอร์ด NRF52840/NRF52832 คุณต้องคัดลอกไดเรกทอรี NRF52 ทั้งหมด _Patches ลงในไดเรกทอรี ADAFRUIT NRF52 (~/.ARDUINO15/แพ็คเกจ
สมมติว่า Adafruit NRF52 เวอร์ชันคือ 1.3.0 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/platform.txt~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/boards.txt~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/cores/nRF5/Udp.h~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/cores/nRF5/Print.h~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/cores/nRF5/Print.cpp~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/variants/NINA_B302_ublox/variant.h~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/variants/NINA_B302_ublox/variant.cpp~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/variants/NINA_B112_ublox/variant.h~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/variants/NINA_B112_ublox/variant.cpp~/.arduino15/packages/adafruit/hardware/nrf52/1.3.0/cores/nRF5/Udp.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์เหล่านี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.z ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/platform.txt~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/boards.txt~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/cores/nRF5/Udp.h~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/cores/nRF5/Print.h~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/cores/nRF5/Print.cpp~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/variants/NINA_B302_ublox/variant.h~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/variants/NINA_B302_ublox/variant.cpp~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/variants/NINA_B112_ublox/variant.h~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/variants/NINA_B112_ublox/variant.cpp~/.arduino15/packages/adafruit/hardware/nrf52/x.yy.z/cores/nRF5/Udp.hเพื่อให้สามารถรวบรวมและทำงานบนบอร์ด Teensy คุณต้องคัดลอกไฟล์ใน Packages_Patches สำหรับไดเรกทอรี Teensy ลงในไดเรกทอรีฮาร์ดแวร์วัยรุ่น (./arduino-1.8.19/hardware/teensy/avr/boards.txt)
สมมติว่าเวอร์ชัน Arduino คือ 1.8.19 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
./arduino-1.8.19/hardware/teensy/avr/boards.txt./arduino-1.8.19/hardware/teensy/avr/cores/teensy/Stream.h./arduino-1.8.19/hardware/teensy/avr/cores/teensy3/Stream.h./arduino-1.8.19/hardware/teensy/avr/cores/teensy4/Stream.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
./arduino-x.yy.zz/hardware/teensy/avr/boards.txt./arduino-x.yy.zz/hardware/teensy/avr/cores/teensy/Stream.h./arduino-x.yy.zz/hardware/teensy/avr/cores/teensy3/Stream.h./arduino-x.yy.zz/hardware/teensy/avr/cores/teensy4/Stream.hเพื่อให้สามารถรวบรวมและทำงานบนบอร์ด SAM ได้ คุณต้องคัดลอกไดเรกทอรี SAM ทั้งหมดลงในไดเรกทอรี Arduino Sam (~/.ARDUINO15/แพ็คเกจ/Arduino/Hardware/SAM/1.6.12)
สมมติว่าเวอร์ชัน Arduino Sam Core คือ 1.6.12 ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/sam/1.6.12/platform.txtเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/sam/x.yy.zz/platform.txtเพื่อให้สามารถคอมไพล์เรียกใช้และตรวจจับและแสดง board_name โดยอัตโนมัติบนบอร์ด Arduino SAMD (Nano-33-Iot ฯลฯ ) คุณต้องคัดลอกไดเรกทอรี ARDUINO SAMD ทั้งหมด _Patches ทั้งหมดลงในไดเรกทอรี Arduino Samd (~/.Arduino15/แพ็คเกจ
สมมติว่าเวอร์ชัน Arduino SAMD คือ 1.8.13 ตอนนี้จะต้องคัดลอกไฟล์เดียวลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/samd/1.8.13/platform.txtเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz
ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/samd/x.yy.zz/platform.txtสมมติว่าเวอร์ชัน Arduino SAMD คือ 1.8.9 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/samd/1.8.9/platform.txt~/.arduino15/packages/arduino/hardware/samd/1.8.9/cores/arduino/Arduino.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์เหล่านี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.z
ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/samd/x.yy.z/platform.txt~/.arduino15/packages/arduino/hardware/samd/x.yy.z/cores/arduino/Arduino.hนี่เป็นข้อบังคับในการแก้ไข ข้อผิดพลาดของคอมไพเลอร์ Arduino SAMD ที่มีชื่อเสียง ดูปรับปรุงความเข้ากันได้ของ Arduino กับ STL (Min และ Max Macro)
...arm-none-eabiincludec++7.2.1bitsstl_algobase.h:243:56: error: macro "min" passed 3 arguments, but takes just 2
min(const _Tp& __a, const _Tp& __b, _Compare __comp)
เมื่อใดก็ตามที่ปัญหาข้อผิดพลาดของคอมไพเลอร์ที่กล่าวถึงข้างต้นได้รับการแก้ไขด้วยการเปิดตัว Arduino SAMD ใหม่คุณไม่จำเป็นต้องคัดลอกไฟล์ Arduino.h อีกต่อไป
เพื่อให้สามารถคอมไพล์รันและตรวจจับและแสดงผล board_name โดยอัตโนมัติบนบอร์ด Adafruit SAMD (itsy-bitsy m4 ฯลฯ ) คุณต้องคัดลอกไดเรกทอรี Adafruit SAMD ทั้งหมด _patches ลงในไดเรกทอรี Adafruit SAMD (~/.Arduino15/แพ็คเกจ
สมมติว่า Adafruit SAMD Core เวอร์ชันคือ 1.7.11 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/adafruit/hardware/samd/1.7.11/platform.txt~/.arduino15/packages/adafruit/hardware/samd/1.7.11/cores/arduino/Print.h~/.arduino15/packages/adafruit/hardware/samd/1.7.11/cores/arduino/Print.cppเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/adafruit/hardware/samd/x.yy.zz/platform.txt~/.arduino15/packages/adafruit/hardware/samd/x.yy.zz/cores/arduino/Print.h~/.arduino15/packages/adafruit/hardware/samd/x.yy.zz/cores/arduino/Print.cppเพื่อให้สามารถคอมไพล์เรียกใช้และตรวจจับและแสดง board_name โดยอัตโนมัติบนกระดาน Seeeduino Samd (Xiao M0, Wio Terminal, ฯลฯ ) คุณต้องคัดลอกไดเร็กทอรี Seeeduino SAMD ทั้งหมดของ Seeeduino SAMD _patches ลงในไดเรกทอรี Seeeduino SAMD (~/.Arduino15/แพ็คเกจ
สมมติว่ารุ่นหลักของ Seeeduino SAMD คือ 1.8.3 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/samd/1.8.3/platform.txt~/.arduino15/packages/Seeeduino/hardware/samd/1.8.3/cores/arduino/Arduino.h~/.arduino15/packages/Seeeduino/hardware/samd/1.8.3/cores/arduino/Print.h~/.arduino15/packages/Seeeduino/hardware/samd/1.8.3/cores/arduino/Print.cppเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/platform.txt~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/cores/arduino/Arduino.h~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/cores/arduino/Print.h~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/cores/arduino/Print.cppเพื่อใช้ LAN8720 บนกระดาน STM32 บางตัว
คุณต้องคัดลอกไฟล์ STM32F4XX_HAL_CONF_DEFAULT.H และ STM32F7XX_HAL_CONF_DEFAULT.H ลงในไดเรกทอรี STM32 STM32 (~/.ARDUINO15/PACKAGES/STM32/ฮาร์ดแวร์/STM32/2.3.0/ระบบ)
สมมติว่ารุ่น Core STM32 STM32 คือ 2.3.0 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/STM32/hardware/stm32/2.3.0/system/STM32F4xx/stm32f4xx_hal_conf_default.h สำหรับ STM32F4~/.arduino15/packages/STM32/hardware/stm32/2.3.0/system/STM32F7xx/stm32f7xx_hal_conf_default.h สำหรับนิวเคลียส -144 STM32F7เมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกไปยังไดเรกทอรีที่เกี่ยวข้อง:
~/.arduino15/packages/STM32/hardware/stm32/x.yy.zz/system/STM32F4xx/stm32f4xx_hal_conf_default.hในการใช้ serial1 บนกระดาน STM32 บางตัวโดยไม่มีคำจำกัดความ serial1 (นิวเคลียส -144 nucleo_f767zi, นิวเคลียส -64 nucleo_l053r8, ฯลฯ ) บอร์ด คุณต้องคัดลอกไฟล์ STM32/stm32) คุณต้องแก้ไขไฟล์ที่สอดคล้องกับบอร์ดของคุณนี่เป็นเพียงภาพประกอบวิธีการทำ
สมมติว่ารุ่น Core STM32 STM32 คือ 2.3.0 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/STM32/hardware/stm32/2.3.0/variants/STM32F7xx/F765Z(GI)T_F767Z(GI)T_F777ZIT/NUCLEO_F767ZI/variant.h~/.arduino15/packages/STM32/hardware/stm32/2.3.0/variants/STM32L0xx/L052R(6-8)T_L053R(6-8)T_L063R8T/NUCLEO_L053R8/variant.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกไปยังไดเรกทอรีที่เกี่ยวข้อง:
~/.arduino15/packages/STM32/hardware/stm32/x.yy.zz/variants/STM32F7xx/F765Z(GI)T_F767Z(GI)T_F777ZIT/NUCLEO_F767ZI/variant.h~/.arduino15/packages/STM32/hardware/stm32/x.yy.zz/variants/STM32L0xx/L052R(6-8)T_L053R(6-8)T_L063R8T/NUCLEO_L053R8/variant.hเพื่อให้สามารถตรวจจับและแสดง board_name โดยอัตโนมัติบนบอร์ดที่ใช้ RP2040 (Raspberry_Pi_Pico, Adafruit_feather_RP2040, boards generic_rp2040, ฯลฯ ) คุณต้องคัดลอกไฟล์ RP2040 (~/.ARDUINO15/แพ็คเกจ/RP2040/ฮาร์ดแวร์/RP2040/1.4.0)
สมมติว่ารุ่น RP2040 CORE คือ 1.4.0 ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/rp2040/hardware/rp2040/1.4.0/platform.txtเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/rp2040/hardware/rp2040/x.yy.zz/platform.txtด้วย Core After V1.5.0 ขั้นตอนนี้ไม่จำเป็นอีกต่อไปด้วยการเพิ่ม PR -dboard_name = "{build.board}" #136
ห้องสมุดบางแห่งเช่น Adafruit DHT-Sensor-Library ต้องการคำจำกัดความของ MicrosecondStoclockCycles () เพื่อให้สามารถรวบรวมและทำงานบนบอร์ดที่ใช้ RP2040 คุณต้องคัดลอกไฟล์ใน RP2040 Arduino.h ลงในไดเรกทอรี RP2040 (~/.ARDUINO15/แพ็คเกจ/RP2040/ฮาร์ดแวร์/RP2040/1.4.0)
สมมติว่ารุ่น RP2040 CORE คือ 1.4.0 ไฟล์นี้จะต้องคัดลอกเพื่อแทนที่:
~/.arduino15/packages/rp2040/hardware/rp2040/1.4.0/cores/rp2040/Arduino.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์นี้จะต้องคัดลอกเพื่อแทนที่:
~/.arduino15/packages/rp2040/hardware/rp2040/x.yy.zz/cores/rp2040/Arduino.hด้วย Core หลังจาก v1.5.0 ขั้นตอนนี้ไม่จำเป็นอีกต่อไปเนื่องจาก PR เพิ่ม defs สำหรับความเข้ากันได้ #142
เพื่อให้สามารถอัพโหลดเฟิร์มแวร์ไปยัง portenta_h7 โดยใช้ Arduino ide ใน Linux (Ubuntu ฯลฯ ) คุณต้องคัดลอกไฟล์ portenta_post_install.sh ลงในไดเรกทอรี mbed_portenta (~/.ARDUINO15/PORKAGES/Arduino/Hardware
จากนั้นเรียกใช้คำสั่งต่อไปนี้โดยใช้ sudo
$ cd ~/.arduino15/packages/arduino/hardware/mbed_portenta/3.4.1
$ chmod 755 portenta_post_install.sh
$ sudo ./portenta_post_install.sh
สิ่งนี้จะสร้างไฟล์ /etc/udev/rules.d/49-portenta_h7.rules ดังนี้:
# Portenta H7 bootloader mode UDEV rules
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="035b", GROUP="plugdev", MODE="0666"
สมมติว่า Arduinocore-Mbed Core เวอร์ชันคือ 3.4.1 ตอนนี้จะต้องคัดลอกไฟล์เดียวลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/mbed_portenta/3.4.1/portenta_post_install.shเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz
ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/arduino/hardware/mbed_portenta/x.yy.zz/portenta_post_install.shเพื่อหลีกเลี่ยงข้อผิดพลาดในการรวบรวมที่เกี่ยวข้องกับ ProGMEM คุณต้องคัดลอกไฟล์ Realtek AMEBAD CORE PGMSPACE.H ลงในไดเรกทอรี Realtek AMEBAD (~/.ARDUINO15/แพ็คเกจ/realtek/ฮาร์ดแวร์/amebad/3.1.4/cores/ambd/avr/pgmspace.h)
สมมติว่า Realtek AMEBAD CORE เวอร์ชันคือ 3.1.4 ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/realtek/hardware/AmebaD/3.1.4/cores/ambd/avr/pgmspace.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/realtek/hardware/AmebaD/x.yy.zz/cores/ambd/avr/pgmspace.h เพื่อหลีกเลี่ยงข้อผิดพลาดในการรวบรวมที่เกี่ยวข้องกับ SAMD21/SAMD51 คุณต้องคัดลอกไฟล์ Arduinocore-fab-sam pgmspace.h ลงในไดเรกทอรี ArduinoCore-fab-sam Samd (~/.ARDUINO15/แพ็คเกจ/FAB_SAM_ARDUINO
สมมติว่ารุ่นหลักของ ArduinoCore-fab-sam SAMD คือ 1.9.0 ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Fab_SAM_Arduino/hardware/samd/1.9.0/boards.txtเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์นี้จะต้องคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Fab_SAM_Arduino/hardware/samd/x.yy.zz/boards.txtเพื่อให้สามารถคอมไพล์รันและตรวจจับและแสดงผล board_name โดยอัตโนมัติบน SeeDuino RP2040 (Xiao RP2040, บอร์ด WIO RP2040 MINI) คุณต้องคัดลอก SeeDuino RP2040 Packages_Patches ทั้งหมดลงในไดเรกทอรี SEEEDUINO SAMD (/.ARDUINO15
สมมติว่ารุ่น Core Seeeduino RP2040 คือ 2.7.2 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/rp2040/2.7.2/boards.txt~/.arduino15/packages/Seeeduino/hardware/rp2040/2.7.2/variants/Seeed_XIAO_RP2040/pins_arduino.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์นี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.zz ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/boards.txt~/.arduino15/packages/Seeeduino/hardware/samd/x.yy.zz/variants/Seeed_XIAO_RP2040/pins_arduino.hเพื่อให้สามารถรวบรวมและทำงานบนบอร์ด Xiao NRF52840 คุณต้องคัดลอกไดเรกทอรี NRF52 1.0.0 ทั้งหมดลงในไดเรกทอรี Seeeduino NRF52 (~/.ARDUINO15/แพ็คเกจ/Seeeduino/Hardware/NRF52/1.0.0)
สมมติว่ารุ่น Seeeduino NRF52 คือ 1.0.0 ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/nrf52/1.0.0/platform.txt~/.arduino15/packages/Seeeduino/hardware/nrf52/1.0.0/cores/nRF5/Print.h~/.arduino15/packages/Seeeduino/hardware/nrf52/1.0.0/cores/nRF5/Print.cpp~/.arduino15/packages/Seeeduino/hardware/nrf52/1.0.0/cores/nRF5/Udp.hเมื่อใดก็ตามที่ติดตั้งเวอร์ชันใหม่อย่าลืมคัดลอกไฟล์เหล่านี้ลงในไดเรกทอรีเวอร์ชันใหม่ ตัวอย่างเช่นเวอร์ชันใหม่คือ x.yy.z ไฟล์เหล่านี้จะต้องถูกคัดลอกลงในไดเรกทอรี:
~/.arduino15/packages/Seeeduino/hardware/nrf52/x.yy.z/platform.txt~/.arduino15/packages/Seeeduino/hardware/nrf52/x.yy.z/cores/nRF5/Print.h~/.arduino15/packages/Seeeduino/hardware/nrf52/x.yy.z/cores/nRF5/Print.cpp~/.arduino15/packages/Seeeduino/hardware/nrf52/x.yy.z/cores/nRF5/Udp.hESP8266/ESP32-AT shield ใหม่จะเริ่มต้นพอร์ทัลการกำหนดค่า WiFi เมื่อเปิดตัวและบันทึกข้อมูลการกำหนดค่าในหน่วยความจำที่ไม่ลบเลือนของโฮสต์ หลังจากนั้นพอร์ทัลการกำหนดค่าจะเริ่มขึ้นอีกครั้งหากกดปุ่มบนบอร์ดโฮสต์SaveESP8266/ESP32-AT shield จะพยายามเชื่อมต่อ หากประสบความสำเร็จ DHCP แบบไดนามิกหรือที่อยู่ IP แบบคงที่ที่กำหนดค่าจะแสดงในพอร์ทัลการกำหนดค่าESP8266/ESP32-AT shield WIFI Config Portal Network และเว็บเซิร์ฟเวอร์จะปิดตัวลงเพื่อส่งคืนการควบคุมไปยังรหัสร่าง // Select depending on board
# define EspSerial Serial1
// Must be before #include <ESP_AT_WiFiManager.h>
// To store Credentials / WiFi Data
# define EEPROM_START 0
# include < ESP_AT_WiFiManager.h > // https://github.com/khoih-prog/ESP_AT_WiFiManager
// Your Board <-> ESP8266 baud rate:
# define ESP8266_BAUD 115200
String ssid = " ESP_AT_ " + String( 0x1ABCDEF , HEX);
const char * password = " ESP_AT_PW " ;
IPAddress staticAP_IP = IPAddress( 192 , 168 , 100 , 1 );
// SSID and PW for your Router
String Router_SSID;
String Router_Pass;
// Onboard LED I/O pin on board
const int LOCAL_PIN_LED = 13 ; // Pin 13, Controls the onboard LED.
# define LED_ON HIGH
# define LED_OFF LOWESP_AT_WiFiManager ESP_AT_wiFiManager;ESP_AT_wiFiManager.setAPChannel(newChannel);ESP_AT_WiFiManager-> setAPChannel ( 0 );ESP_AT_wiFiManager.setSTAStaticIPConfig(IPAddress(xxx,xxx,xxx,xxx));192.168.4.1 ) โทร ESP_AT_wiFiManager.setAPStaticIPConfig(IPAddress(xxx,xxx,xxx,xxx));ESP_AT_XXXXXX เริ่มต้นโทร ESP_AT_wiFiManager.startConfigPortal()ESP_AT_wiFiManager.startConfigPortal(( const char *) ssid.c_str(), password); ในขณะที่อยู่ในโหมด AP ให้เชื่อมต่อกับมันโดยใช้ SSID (ESP_AT_XXXXXX) / Password ("ESP_AT_PW") จากนั้นเปิดเบราว์เซอร์ไปยังพอร์ทัล AP IP เริ่มต้น 192.168.4.1 กำหนดค่า wifi จากนั้นบันทึก ข้อมูลการเชื่อมต่อข้อมูลรับรอง / wifi จะถูกบันทึกในหน่วยความจำที่ไม่ระเหย จากนั้นจะเชื่อมต่อ autoconnt
เมื่อข้อมูลเครือข่ายข้อมูลรับรอง / WiFi ถูกบันทึกไว้ในหน่วยความจำที่ไม่ระเหยโฮสต์มันจะพยายามเชื่อมต่อกับ WiFi อัตโนมัติทุกครั้งที่เริ่มต้นโดยไม่ต้องใช้ฟังก์ชั่นใด ๆ ในร่าง
ใน Configuration Portal Mode จะเริ่ม AP ที่เรียกว่า ESP_AT_XXXXXX เชื่อมต่อกับมันโดยใช้ configurable password คุณสามารถกำหนดในรหัส ตัวอย่างเช่น ESP_AT_PW (ดูตัวอย่าง):
// SSID and PW for Config Portal
String ssid = " ESP_AT_ " + String( 0x1ABCDEF , HEX);
const char * password = " ESP_AT_PW " ; หลังจากที่คุณเชื่อมต่อโปรดไปที่ http://192.168.4.1 หรือ AP IP ที่กำหนดค่าใหม่คุณจะเห็นหน้า Main นี้:

เลือก Information เพื่อเข้าสู่หน้าข้อมูลที่จะแสดงข้อมูลบอร์ด

เลือก Configuration เพื่อเข้าสู่หน้านี้ซึ่งคุณสามารถเลือก AP และระบุข้อมูลรับรอง WiFi

ป้อนข้อมูลรับรองของคุณจากนั้นคลิก Save ข้อมูลประจำตัว WiFi จะถูกบันทึกและบอร์ดเชื่อมต่อกับ WiFi AP ที่เลือก
หากคุณเชื่อมต่อกับ WiFi AP ที่ระบุไว้แล้วและไม่ต้องการเปลี่ยนแปลงอะไรเลยเพียงเลือก Exit จากหน้า Main เพื่อรีบูตบอร์ดและเชื่อมต่อกับ AP ที่จัดเก็บไว้ก่อนหน้านี้ ข้อมูลประจำตัว WiFi ยังคงไม่บุบสลาย
คุณสามารถใช้รหัสผ่านป้องกันการกำหนดค่า AP เพียงเพิ่ม SSID เป็นพารามิเตอร์แรกและรหัสผ่านเป็นพารามิเตอร์ที่สองเพื่อ startConfigPortal ดังนี้:
ESP_AT_wiFiManager.startConfigPortal(SSID , password);ใช้รหัสผ่านที่มี 8+ อักขระ
แนวทางคือรหัสผ่าน wifi ต้องประกอบด้วยอักขระ 8 ถึง 63 ascii ที่เข้ารหัสในช่วง 32 ถึง 126 (ทศนิยม)
คุณสามารถตั้งค่าการหมดเวลา (ในไม่กี่วินาที) เพื่อให้ ESP8266/ESP32-AT shield ไม่แขวนรอการกำหนดค่าตลอดไป
ESP_AT_WiFiManager.setConfigPortalTimeout( 60 );ซึ่งจะรอ 1 นาที (60 วินาที)
เมื่อเวลาผ่านไปฟังก์ชั่น startConfigPortal จะกลับมาและดำเนินการต่อสเก็ตช์เว้นแต่คุณจะเข้าถึงพอร์ทัล config ในกรณีนี้ฟังก์ชั่น startConfigPortal จะยังคงอยู่จนกว่าคุณจะบันทึกข้อมูลการกำหนดค่าหรือออกจากพอร์ทัล config
แอปพลิเคชันจำนวนมากต้องการพารามิเตอร์การกำหนดค่าเช่น MQTT host and port , Blynk หรือ EmonCMS โทเค็น ฯลฯ ในขณะที่เป็นไปได้ที่จะใช้ ESP_AT_WiFiManager เพื่อรวบรวมพารามิเตอร์เพิ่มเติมจะเป็นการดีกว่าที่จะอ่านพารามิเตอร์เหล่านี้จากบริการเว็บเมื่อ ESP_AT_WiFiManager สิ่งนี้ทำให้ ESP_AT_WiFiManager ง่ายต่อการใช้รหัสและการใช้งานพารามิเตอร์สามารถแก้ไขได้บนเว็บเซิร์ฟเวอร์ปกติและสามารถเปลี่ยนแปลงได้จากระยะไกลหลังจากการปรับใช้
คุณสามารถตั้งค่า IP ที่กำหนดเองสำหรับทั้ง AP (จุดเชื่อมต่อโหมดกำหนดค่า) และ STA (โหมดสถานีโหมดไคลเอนต์สถานะโครงการปกติ)
สิ่งนี้จะตั้งค่าพอร์ทัลเชลยของคุณเป็น IP เฉพาะหากคุณต้องการ/ต้องการคุณสมบัติดังกล่าว เพิ่มตัวอย่างต่อไปนี้ก่อน startConfigPortal()
// Default AP IP is 192.168.4.1. Uncomment to use different AP IP
ESP_AT_wiFiManager.setAPStaticIPConfig(IPAddress( 192 , 168 , 100 , 1 ));สิ่งนี้จะใช้การกำหนดค่า IP ที่ระบุแทนการใช้ DHCP ในโหมดสถานี
// Set static STA IP
ESP_AT_wiFiManager.setSTAStaticIPConfig(IPAddress( 192 , 168 , 2 , 114 ));มีหลายวิธีที่คุณสามารถฉีด HTML, CSS หรือ JavaScript ที่กำหนดเองลงในพอร์ทัลการกำหนดค่า
ตัวเลือกคือ:
คุณสามารถใช้สิ่งนี้กับบิต HTML ใด ๆ กับหัวของพอร์ทัลการกำหนดค่า หากคุณเพิ่มองค์ประกอบ <style> ให้คำนึงถึงการเขียนทับ CSS ที่รวมอยู่ไม่ใช่แทนที่
ESP_AT_wiFiManager.setCustomHeadElement( " <style>html{filter: invert(100%); -webkit-filter: invert(100%);}</style> " );ESP_AT_WMParameter custom_text ( " <p>This is just a text paragraph</p> " );
ESP_AT_wiFiManager.addParameter(&custom_text);เพียงเพิ่มบิตที่คุณต้องการเพิ่มเป็นพารามิเตอร์สุดท้ายไปยังตัวสร้างพารามิเตอร์ที่กำหนดเอง
ESP_AT_WMParameter custom_mqtt_server ( " server " , " mqtt server " , " iot.eclipse " , 40 , " readonly " );คุณสามารถกรองเครือข่ายตามคุณภาพของสัญญาณและแสดง/ซ่อนเครือข่ายที่ซ้ำกัน
ESP_AT_wiFiManager.setMinimumSignalQuality( 10 );จะไม่แสดงเครือข่ายที่มีคุณภาพสัญญาณ 10% หากคุณละเว้นพารามิเตอร์ค่าเริ่มต้นถึง 8%;
ESP_AT_wiFiManager.setRemoveDuplicateAPs( false );esp_at_wifimanager/ตัวอย่าง/configonswitch/configonswitch.ino
บรรทัด 25 ถึง 241 ใน 4d54139
esp_at_wifimanager/ตัวอย่าง/configonswitch/defines.h
บรรทัดที่ 15 ถึง 395 ใน 4d54139
This is the terminal output when running ConfigOnSwitch example on Adafruit Itsy-BItsy nRF52840 with ESP8266-AT shield :
Start ConfigOnSwitch on NRF52840_ITSYBITSY
ESP_AT_WiFiManager v1.4.0
Opening Config Portal. *WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = SHD_ESP8266, SSID = HueNet1, PW = ****
*WM: Host Name =
*WM: CCSum=0x8df,RCSum=0x0
*WM: InitCfgFile,sz=108
*WM: SaveCfgFile
*WM: WCSum=0x7f4
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = blank, PW = blank
*WM: Host Name = blank
*WM: CCSum=0x7f4,RCSum=0x7f4
No stored Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: LoadCfgFile
*WM: OK
*WM: Handle WiFi
*WM: Scan Network
*WM: DUP AP:
*WM: DUP AP:
*WM: HueNet1 / -28
*WM: bacau / -74
*WM: guest_24 / -77
*WM: Sent config page
*WM: WiFi save
*WM: SaveCfgFile
*WM: WCSum=0x9c7
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = ****
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = ****
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HH
Save Start ConfigOnSwitch on NRF52840_ITSYBITSY
ESP_AT_WiFiManager v1.4.0
Opening Config Portal. *WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = ****
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = ****
*WM: Host Name = blank
Got stored Credentials. Timeout 60s
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Static IP : 192.168.2.114
*WM: Timeout, connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH
HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH
This is the terminal output when running ConfigOnStartup example using SAM-DUE with ESP32-AT shield . The ESP32-AT firmware is AT version:2.1.0.0-dev / SDK version:v4.0.1-193-ge7ac221b4:
Start ConfigOnStartup on SAM DUE
ESP_AT_WiFiManager v1.4.0
[ESP_AT] AT+RST
[ESP_AT] ATE0
[ESP_AT] Use ESP32-AT Command
[ESP_AT] AT+CWMODE=1
[ESP_AT] AT+CIPMUX=1
[ESP_AT] AT+CIPDINFO=1
[ESP_AT] AT+CWAUTOCONN=0
[ESP_AT] AT+CWDHCP=1,1
[ESP_AT] AT+GMR
[ESP_AT] Firmware Init OK - v4.0.
[ESP_AT] AT+CIPSTATUS
Opening Config Portal. *WM: CCSum=0x7f4,RCSum=0x0
*WM: CCSum=0x7f4,RCSum=0x0
No stored Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
[ESP_AT] AT+CWMODE=2
[ESP_AT] AT+CWDHCP=0,3
[ESP_AT] AT+CIPAP= 192.168.100.1
[ESP_AT] IP address set 192.168.100.1
[ESP_AT] AT+CWMODE= 3
AT+CWSAP= ESP_AT_ABCDEF ESP_AT_PW
AT+CWSAP= 1 3
[ESP_AT] AT+CWDHCP=1,3
[ESP_AT] Access point started ESP_AT_ABCDEF
*WM: AP IP: [ESP_AT] AT+CIPAP?
192.168.100.1
AT+CIPSERVER= 1 80
*WM: HTTP server on channel 1
*WM: Handle WiFi
*WM: Scan Network
[ESP_AT] AT+CWLAP
*WM: HueNet / -33
*WM: HueNet1 / -40
*WM: HueNetTek / -43
*WM: Sent config page
*WM: WiFi save
*WM: SaveDueFlash, CSum=2503
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = ****
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] AT+CWQAP
[ESP_AT] AT+CIPSTATUS
[ESP_AT] AT+RST
[ESP_AT] ATE0
[ESP_AT] Use ESP32-AT Command
[ESP_AT] AT+CWMODE=1
[ESP_AT] AT+CIPMUX=1
[ESP_AT] AT+CIPDINFO=1
[ESP_AT] AT+CWAUTOCONN=0
[ESP_AT] AT+CWDHCP=1,1
[ESP_AT] AT+CWDHCP=0,1
[ESP_AT] AT+CIPSTA= 192.168.2.114
[ESP_AT] IP address set 192.168.2.114
*WM: Static IP : 192.168.2.114
AT+CWJAP= HueNet1 ****
[ESP_AT] Connected to HueNet1
[ESP_AT] AT+CIPSTATUS
*WM: Connect result: WL_CONNECTED
[ESP_AT] AT+CIPSTATUS
WiFi connected...yeey
[ESP_AT] AT+CIPSTATUS
After waiting 0 secs in setup(), connect result is [ESP_AT] AT+CIPSTATUS
connected. Local IP: [ESP_AT] AT+CIFSR
192.168.2.114
[ESP_AT] AT+CIPSTATUS
H[ESP_AT] AT+CIPSTATUS
H
This is the terminal output when running ConfigOnStartup example using STM32 Nucleo-144 NUCLEO_F767ZI with ESP8266-AT shield .
Start ConfigOnStartup on NUCLEO_F767ZI
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal. *WM: EEPROMsz:1024
*WM: CCSum=0x65a0,RCSum=0xffffffff
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
No stored Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Info
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Sent info page
*WM: Handle root
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: EEPROMsz:1024
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Handle WiFi
*WM: Scan Network
*WM: HueNet / -22
*WM: HueNetTek / -36
*WM: HueNet1 / -46
*WM: Sent config page
*WM: WiFi save
*WM: SaveEEPROM,CSum=2503
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: EEPROMsz:1024
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHHHHH
This is the terminal output when running ConfigOnStartup example using Seeeduino SEEED_XIAO_M0 with ESP8266-AT shield .
Start ConfigOnStartup on SEEED_XIAO_M0
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal. *WM: CCSum=0x0,RCSum=0x0
*WM: CCSum=0x7f4,RCSum=0x0
No stored Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: CCSum=0x7f4,RCSum=0x0
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Info
*WM: CCSum=0x7f4,RCSum=0x0
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Sent info page
*WM: Handle root
*WM: CCSum=0x7f4,RCSum=0x0
*WM: CCSum=0x7f4,RCSum=0x0
*WM: Handle WiFi
*WM: Scan Network
*WM: DUP AP:
*WM: HueNetTek / -25
*WM: HueNet1 / -32
*WM: HueNet2 / -42
*WM: Sent config page
*WM: WiFi save
*WM: SaveFlash,CSum=2504
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: CCSum=0x9c8,RCSum=0x9c8
*WM: Header = ESP_AT, SSID = HueNet2, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHHHHH
This is the terminal output when running ConfigOnStartup example using STM32 Nucleo-144 NUCLEO_F767ZI with ESP8266-AT shield .
Start ConfigOnStartup with ESP8266-AT WiFi module on NUCLEO_F767ZI
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: EEPROMsz:1024
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
Got stored Credentials. Try to connect first
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
H
Start ConfigOnStartup with ESP8266-AT WiFi module on NUCLEO_F767ZI
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: EEPROMsz:1024
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_DISCONNECTED
Got stored Credentials but can't connect. Timeout 60s
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: WiFi save
*WM: SaveEEPROM,CSum=2503
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHH
This is the terminal output when running ConfigOnSwitch example using RASPBERRY_PI_PICO with ESP8266-AT shield .
Start ConfigOnSwitch with ESP8266-AT WiFi module on RASPBERRY_PI_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: LoadCfgFile
*WM: failed
*WM: LoadBkUpCfgFile
*WM: failed
*WM: ======= Start Stored Config Data =======
*WM: Header = , SSID = , PW =
*WM: Host Name =
*WM: CCSum=0x1df0,RCSum=0xffffffff
*WM: InitCfgFile,sz=140
*WM: SaveCfgFile
*WM: WCSum=0x7f4
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = blank, PW = blank
*WM: Host Name = blank
*WM: CCSum=0x7f4,RCSum=0x7f4
No stored or not valid Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = blank, PW = blank
*WM: Host Name = blank
*WM: CCSum=0x7f4,RCSum=0x7f4
*WM: Handle WiFi
*WM: Scan Network
*WM: DUP AP:
*WM: HueNet1 / -32
*WM: HueNetTek / -37
*WM: dlink-4F96 / -79
*WM: Sent config page
*WM: WiFi save
*WM: SaveCfgFile
*WM: WCSum=0x9c7
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHH
Start ConfigOnSwitch with ESP8266-AT WiFi module on RASPBERRY_PI_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
Got stored Credentials. Try to connect first
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
H
Config Portal requested.
Opening Config Portal.
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
Forced CP, No stored or not valid Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: Info
*WM: Sent info page
*WM: Handle root
*WM: Handle WiFi
*WM: Scan Network
*WM: DUP AP: Waterhome
*WM: HueNet1 / -30
*WM: HueNetTek / -34
*WM: HueNet2 / -55
*WM: Sent config page
*WM: WiFi save
*WM: SaveCfgFile
*WM: WCSum=0x9c7
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
H
Start ConfigOnSwitch with ESP8266-AT WiFi module on RASPBERRY_PI_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = blank
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
Got stored Credentials. Try to connect first
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
H
This is the terminal output when running ConfigOnStartup example using MBED RASPBERRY_PI_PICO with ESP8266-AT shield .
Start ConfigOnStartup with ESP8266-AT WiFi module on MBED RASPBERRY_PI_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: failed
*WM: LoadBkUpCfgFile
*WM: failed
*WM: CCSum=0x1d51,RCSum=0xd
*WM: InitCfgFile,sz=140
*WM: SaveCfgFile
*WM: WCSum=0x899
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: OK
*WM: CCSum=0x899,RCSum=0x899
No stored or not valid Credentials. No timeout
Start Config Portal, SSID = ESP_AT_ABCDEF, Pass = ESP_AT_PW
*WM: Configure AP: ESP_AT_ABCDEF
*WM: AP PW: ESP_AT_PW
*WM: Custom AP IP: 192.168.100.1
*WM: AP IP: 192.168.100.1
*WM: HTTP server on channel 1
*WM: Handle root
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: OK
*WM: CCSum=0x899,RCSum=0x899
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: OK
*WM: CCSum=0x899,RCSum=0x899
*WM: Handle WiFi
*WM: Scan Network
*WM: DUP AP:
*WM: DUP AP:
*WM: HueNetTek / -28
*WM: HueNet1 / -32
*WM: / -81
*WM: Sent config page
*WM: WiFi save
*WM: SaveCfgFile
*WM: WCSum=0xa6c
*WM: OK
*WM: SaveBkUpCfgFile
*WM: OK
*WM: Sent wifisave page
*WM: Connect to new AP
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: OK
*WM: CCSum=0xa6c,RCSum=0xa6c
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = MBED-RP2040
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
WiFi connected...yeey
After waiting 2 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHHHH HHHHHHHH
This is the terminal output when running AutoConnect example using MBED RASPBERRY_PI_PICO with ESP8266-AT shield .
Start AutoConnect with ESP8266-AT WiFi module on MBED RASPBERRY_PI_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Use ES8266-AT Command
Opening Config Portal.
*WM: LittleFS size (KB) = 64
*WM: LittleFS Mount OK
*WM: LoadCfgFile
*WM: OK
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = MBED-RP2040
*WM: CCSum=0x9c7,RCSum=0x9c7
*WM: Header = ESP_AT, SSID = HueNet1, PW = password
*WM: Host Name = MBED-RP2040
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Use ES8266-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
Got stored Credentials. Try to connect first
Exit Config Portal
HHHHHHHHH
This is the terminal output when running ConfigOnStartup example using WIZNET_WIZFI360_EVB_PICO with WIZFI360 shield .
Start ConfigOnStartup with ESP32-AT WiFi module on WIZNET_WIZFI360_EVB_PICO
ESP_AT_WiFiManager v1.4.0
[ESP_AT] Using ESP32-AT Command
Opening Config Portal.
*WM: LoadCfgFile
*WM: OK
*WM: CCSum=0x8f6,RCSum=0x8f6
*WM: ======= Start Stored Config Data =======
*WM: Header = ESP_AT, SSID = HueNet, PW = 12345678
*WM: Host Name = RP2040
*WM: Connect wifi with new params
*WM: Data cleared
[ESP_AT] Using ESP32-AT Command
*WM: Static IP : 192.168.2.114
*WM: Connect result: WL_CONNECTED
Got stored Credentials. Try to connect first
After waiting 0 secs in setup(), connect result is connected. Local IP: 192.168.2.114
HHHHHHHHH
Debug is enabled by default on Serial. To disable, add before startConfigPortal()
ESP_AT_wiFiManager.setDebugOutput( false ); If you get compilation errors, more often than not, you may need to install a newer version of the board's core, ESP8266/ESP32-AT shield AT-command or this library version.
Sometimes, the library will only work if you update the ESP8266/ESP32-AT shield core to the newer or older version because some function compatibility.
Submit issues to: ESP_AT_WiFiManager issues
WizFi360 , such as WIZNET_WIZFI360_EVB_PICO using arduino-pico core![]() tzapu | ![]() Ken Taylor | ![]() Miguel Wisintainer |
หากคุณต้องการมีส่วนร่วมในโครงการนี้:
Copyright (C) 2020- Khoi Hoang