เวอร์ชัน 6.2.0, ข้อมูล: 29 มกราคม, 2020
ผู้แต่ง: M. Westenberg ([email protected])
ลิขสิทธิ์: M. Westenberg ([email protected])
สงวนลิขสิทธิ์ โปรแกรมนี้และวัสดุประกอบมีให้ภายใต้ข้อกำหนดของใบอนุญาต MIT ซึ่งมาพร้อมกับการกระจายนี้และมีให้ที่ https://opensource.org/licenses/mit-license.php
โปรแกรมนี้มีการแจกจ่ายด้วยความหวังว่าจะมีประโยชน์ แต่ไม่มีการรับประกันใด ๆ โดยไม่มีการรับประกันโดยนัยเกี่ยวกับความสามารถในการค้าหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ
ดูแลโดย Maarten Westenberg ([email protected])
ก่อนอื่น: โปรดอ่านไฟล์และเอกสารนี้ควรมีข้อมูลส่วนใหญ่ที่คุณต้องการ น่าเสียดายที่ฉันไม่มีเวลาติดตามอีเมลทั้งหมดและเนื่องจากข้อมูลส่วนใหญ่รวมถึง pin-outs ฯลฯ มีอยู่ในหน้าเหล่านี้ฉันหวังว่าคุณจะมีเวลาอ่านและโพสต์คำถามที่เหลืออยู่
ฉันมีบอร์ด Mini Wemos D1 มากกว่า 10 ตัวบางตัวฉันสร้างตัวเองขึ้นมาเอง 10+ บน Hallard, 3 บน Comresult และ 4 กระดาน ESP32 พวกเขาทั้งหมดทำงานโดยไม่มีปัญหาในรหัสนี้ ฉันพบว่าข้อต่อการบัดกรีที่ดีและการเดินสายทำให้เกิดความแตกต่างดังนั้นหากคุณได้รับการรีเซ็ต/ข้อผิดพลาดที่คุณไม่สามารถอธิบายได้โปรดดูการเดินสายของคุณครั้งที่สอง
พื้นที่เก็บข้อมูลนี้มีการพิสูจน์แนวคิดเกี่ยวกับแนวคิดของเกตเวย์ Lorawan ช่องทางเดียวสำหรับ ESP8266 รุ่นเริ่มต้น 5.2 รองรับ ESP32 ของ TTGO (และอื่น ๆ ) ซอฟต์แวร์ใช้เกตเวย์ LORA มาตรฐานพร้อมข้อยกเว้นและการเปลี่ยนแปลงดังต่อไปนี้:
เกตเวย์ Lora นี้ไม่ใช่เกตเวย์เต็มรูปแบบ แต่ใช้เพียงเกตเวย์ความถี่เดียว/หนึ่งช่อง ปริมาณความถี่ขั้นต่ำที่รองรับโดยเกตเวย์เต็มรูปแบบคือ 3 ส่วนใหญ่รองรับความถี่ 9 หรือมากกว่า ซอฟต์แวร์นี้เริ่มต้นจากการพิสูจน์แนวคิดเพื่อพิสูจน์ว่าชิป RRFM95 ราคาประหยัดเดียวซึ่งมีอยู่ในเกือบทุกโหนด LORA ในยุโรปสามารถใช้เป็นทางเลือกราคาถูกสำหรับเกตเวย์เต็มราคาที่แพงกว่าที่ใช้ประโยชน์จากชิป SX1301
เนื่องจากซอฟต์แวร์ของเกตเวย์นี้มักจะถูกใช้ในระหว่างขั้นตอนการพัฒนาของโครงการหรือในสถานการณ์การสาธิตซอฟต์แวร์มีความยืดหยุ่นและสามารถกำหนดค่าได้ง่ายตามสภาพแวดล้อมหรือความต้องการของลูกค้า มีสองวิธีในการโต้ตอบกับซอฟต์แวร์:
เอกสารเต็มรูปแบบของเกตเวย์ช่องสัญญาณเดียวพบได้ที่ Things4U.github.io โปรดดูที่คู่มือฮาร์ดแวร์ภายใต้บทที่เกตเวย์
เกตเวย์ช่องทางเดียวได้รับการทดสอบบนเกตเวย์กับ Wemos D1 Mini โดยใช้ตัวรับส่งสัญญาณ Hoperf RFM95W การทดสอบเสร็จสิ้นใน LORA รุ่น 868 และการทดสอบบางอย่างใน 433 MHz โหนด LORA ทดสอบอีกครั้งเกตเวย์นี้คือ:
รหัสดังกล่าวได้รับการทดสอบบนบอร์ดเกตเวย์อย่างน้อย 8 ตัวทั้งสองตาม Hallard และ Comresult Boards ฉันยังคงทำงานกับ ESP32 PIN-OUT และฟังก์ชั่น (คาดว่าจะเร็ว ๆ นี้)
ขอแนะนำให้รวบรวมและเริ่มเกตเวย์ช่องเดียวด้วย modificatons น้อยที่สุดเท่าที่จะทำได้ ซึ่งหมายความว่าคุณควรใช้การตั้งค่าเริ่มต้นในไฟล์การกำหนดค่า 2 ไฟล์ให้มากที่สุดและเปลี่ยน SSID/รหัสผ่านสำหรับการตั้งค่า WiFi ของคุณและพินของ ESP8266 ที่คุณใช้ใน Loramodem.h ส่วนนี้อธิบายถึงขั้นต่ำของการกำหนดค่าที่จำเป็นเพื่อให้ได้เกตเวย์ทำงานซึ่งสามารถกำหนดค่าได้เพิ่มเติมโดยใช้เว็บเพจ
ผ่าน Library Manager:
ตอนนี้เกตเวย์ของคุณควรทำงาน ใช้เว็บเพจเพื่อตั้งค่า "การดีบัก" เป็น 1 และคุณควรจะเห็นแพ็คเกจที่เข้ามาในจอภาพอนุกรม
มีสองวิธีในการเปลี่ยนการกำหนดค่าของเกตเวย์ช่องเดียว:
ที่ที่คุณมีตัวเลือกตัวเลือก 2 เป็นมิตรและมีประโยชน์มากกว่า
ไฟล์ configgway.h มีการตั้งค่าเกตเวย์ที่กำหนดค่าได้ของผู้ใช้ ทั้งหมดมีคำจำกัดความของพวกเขาที่กำหนดผ่านคำสั่ง #Define โดยทั่วไปการตั้งค่า #Define เป็น 1 จะเปิดใช้งานฟังก์ชันและการตั้งค่าเป็น 0 จะปิดการใช้งาน
นอกจากนี้การตั้งค่าบางอย่างสามารถเริ่มต้นได้โดยการตั้งค่าของพวกเขาด้วย #Define แต่สามารถเปลี่ยนแปลงได้ที่รันไทม์ในเว็บอินเตอร์เฟส สำหรับการตั้งค่าบางอย่างการปิดใช้งานฟังก์ชั่นด้วย #Define จะลบฟังก์ชั่นออกจากเว็บเซิร์ฟเวอร์ด้วย
หมายเหตุเกี่ยวกับการใช้หน่วยความจำ: ESP8266 มีหน่วยความจำจำนวนมหาศาลสำหรับพื้นที่โปรแกรมและระบบไฟล์ Spiffs อย่างไรก็ตามหน่วยความจำที่มีอยู่สำหรับกองและตัวแปรนั้น จำกัด อยู่ที่ประมาณ 80K ไบต์ (สำหรับ ESP-32 ซึ่งสูงกว่า) ผู้ใช้ควรปิดฟังก์ชั่นที่ไม่ได้ใช้เพื่อบันทึกการใช้งานหน่วยความจำ หากฮีปลดลงต่ำกว่า 18 kbytes ฟังก์ชั่นบางอย่างอาจไม่ทำงานตามที่คาดไว้ (ในกรณีที่รุนแรงโปรแกรมอาจผิดพลาด)
ไฟล์ confignode.h ใช้ในการตั้งค่าจุดเชื่อมต่อ WiFi Teh และโครงสร้างของเซ็นเซอร์ที่รู้จักไปยังเกตเวย์ 1 ช่อง การตั้งค่าจุดเชื่อมต่อ WiFi ที่รู้จัก (SSID และรหัสผ่าน) ที่รู้จักจะต้องทำในเวลาคอมไพล์
เมื่อเกตเวย์ไม่ได้ใช้เป็นเกตเวย์เท่านั้น แต่ยังรวมถึงการดีบักการใช้งานสามารถระบุไม่เพียง แต่ชื่อของโหนดเซ็นเซอร์ แต่ยังถอดรหัสสำหรับโหนดบางข้อความ
ผู้ใช้สามารถพิจารณาได้ว่าใช้คอนโซล USB สำหรับข้อความเอาต์พุตหรือไม่ เมื่อตั้งค่า _DUSB เป็น 0 เอาต์พุตทั้งหมดโดยอนุกรมจะถูกปิดใช้งาน (จริง ๆ แล้วคำสั่งอนุกรมจะไม่รวมอยู่ในรหัส)
#define _dusb 1
กำหนดคลาสของการดำเนินการที่รองรับโดยเกตเวย์ รองรับ Class A และมีการทำงานพื้นฐานสำหรับเซ็นเซอร์แบตเตอรี่
คลาส B มีโหมดการทำงานของ Beacon/แบตเตอรี่ เกตเวย์จะส่งสัญญาณไปยังเซ็นเซอร์ที่เชื่อมต่อซึ่งช่วยให้พวกเขาสามารถซิงโครไนซ์ downlink messagating
โหมดการทำงานของคลาส C (ต่อเนื่อง) มีการรองรับอุปกรณ์ที่อาจไม่ได้ใช้งานแบตเตอรี่และจะฟังเครือข่ายตลอดเวลา เป็นผลให้เวลาแฝงของอุปกรณ์เหล่านี้สั้นกว่าอุปกรณ์คลาส A อุปกรณ์ Class C ไม่ได้ขึ้นอยู่กับกำลังแบตเตอรี่และจะขยายหน้าต่างรับจนกว่าหน้าต่างส่งสัญญาณถัดไป ในความเป็นจริงมีเพียงการส่งสัญญาณเท่านั้นที่จะทำให้อุปกรณ์ยกเลิกการฟังตราบเท่าที่ tranmission นี้มีอายุการใช้งาน อุปกรณ์ Class C ไม่สามารถดำเนินการคลาส B ได้
#define _class "A"
อุปกรณ์ทั้งหมดจะเริ่มเป็นอุปกรณ์ Class A และอาจตัดสินใจ "อัพเกรด" เป็นคลาส B หรือ C นอกจากนี้เกตเวย์อาจหรือไม่รองรับคลาส B ซึ่งเป็น superset ของคลาส A หมายเหตุ: รองรับคลาส A เท่านั้น
เรารองรับการกำหนดค่า PIN-OUT สองแบบนอกกรอบ: Hallard และ Compresult หากคุณใช้หนึ่งในสองนี้ให้ตั้งค่าพารามิเตอร์เป็นค่าที่ถูกต้อง หากคำจำกัดความของ PIN ของคุณแตกต่างกันให้อัปเดตไฟล์ loramodem.h เพื่อสะท้อนการตั้งค่าเหล่านี้ 1: Hallard 2: Comresult pin out 3: esp32 pin out 4: อื่น ๆ , กำหนดของคุณเองใน loramodem.h
#define _pin_out 1
พารามิเตอร์ shoudl ต่อไปนี้ถูกตั้งค่าเป็น 0 ภายใต้สถานการณ์ปกติ ช่วยให้ระบบสามารถจัดรูปแบบ FOCE ของระบบไฟล์ Spiffs
#Define Spiff_Format 0
ตั้งค่าปัจจัย _spreading เป็นค่า SF7, SF8 - SF12 ที่ต้องการ โปรดทราบว่าค่านี้เกี่ยวข้องอย่างใกล้ชิดกับค่าที่ใช้สำหรับ _CAD หากเปิดใช้งาน _CAD ค่าของ _spreading จะไม่ถูกใช้โดยเกตเวย์เนื่องจากมีการเปิดใช้งานปัจจัย sreading ทั้งหมด
#define _spreading SF9
โปรดทราบว่าความถี่เริ่มต้นที่ใช้คือ 868.1 MHz ซึ่งสามารถเปลี่ยนแปลงได้ในไฟล์ loramodem.h ผู้ใช้ไม่ควรเปลี่ยน etting นี้และใช้ความถี่ 868.1 MHz เริ่มต้นเท่านั้น
การตรวจจับกิจกรรมช่องสัญญาณ (CAD) เป็นฟังก์ชั่นของชิป LORA RFM95 เพื่อตรวจจับข้อความที่เข้ามา (กิจกรรม) ข้อความที่เข้ามาเหล่านี้อาจมาถึงปัจจัยการแพร่กระจายที่รู้จักกันดี SF7-SF12 โดยการเปิดใช้งาน CAD เกตเวย์สามารถรับข้อความของปัจจัยการแพร่กระจายใด ๆ
ที่จริงแล้วมันถูกใช้ในการดำเนินการปกติเพื่อบอกผู้รับว่าสัญญาณอื่นใช้ช่องแล้ว
ฟังก์ชั่น CAD มาในราคา (น้อย): ชิปจะไม่สามารถรับสัญญาณที่อ่อนแอมากได้เนื่องจากฟังก์ชั่น CAD จะใช้การตั้งค่าการลงทะเบียน RSSI ของชิปเพื่อตรวจสอบว่าได้รับสัญญาณหรือไม่ (หรือเพียงเสียงรบกวน) เป็นผลให้ไม่ได้รับสัญญาณที่อ่อนแอมากซึ่งหมายความว่าช่วงของเกตเวย์จะลดลงในโหมด CAD
#Define _CAD 1
จากเวอร์ชัน 4.0.6 เกตเวย์อนุญาตให้อัปเดตอากาศได้หากการตั้งค่า A_OTA เปิดอยู่ ซอฟต์แวร์ Air Over ต้องใช้เมื่อตั้งค่าเวอร์ชัน 4.0.6 ผ่าน USB ไปยังเกตเวย์หลังจากที่ซอฟต์แวร์เปิดใช้งาน (เริ่มต้น) สำหรับการใช้งาน
รุ่นแรกรองรับฟังก์ชั่น OTA โดยใช้ IDE ซึ่งในทางปฏิบัติหมายถึง IDE จะต้องอยู่ในส่วนเครือข่ายเดียวกันกับเกตเวย์
หมายเหตุ: คุณต้องใช้ซอฟต์แวร์ Bonjour (Apple) บนเครือข่ายของคุณที่ไหนสักแห่ง เวอร์ชันมีให้สำหรับแพลตฟอร์มส่วนใหญ่ (จัดส่งด้วย iTunes สำหรับ Windows) ซอฟต์แวร์ Bonjour ช่วยให้เกตเวย์สามารถใช้ MDNS เพื่อแก้ไข ID เกตเวย์ที่ตั้งค่าโดย OTA หลังจากนั้นพอร์ตดาวน์โหลดจะปรากฏขึ้นใน IDE
TODO: ซอฟต์แวร์ OTA ยังไม่ได้รับการทดสอบร่วมกับซอฟต์แวร์ Wifimanager
#define a_ota 1
การตั้งค่านี้ช่วยให้เว็บเซิร์ฟเวอร์ แม้ว่าเว็บเซิร์ฟเวอร์นั้นใช้หน่วยความจำจำนวนมาก แต่ก็ช่วยกำหนดค่าเวลาทำงานของ Gatewayat และตรวจสอบพฤติกรรมของมัน นอกจากนี้ยังมีสถิติของข้อความล่าสุดที่ได้รับ พารามิเตอร์ A_refresh กำหนดว่าเว็บเซิร์ฟเวอร์ควรต่ออายุทุก ๆ วินาทีหรือไม่
#Define A_SERVER 1 // กำหนดเว็บเซิร์ฟเวอร์ท้องถิ่นเฉพาะเมื่อตั้งค่าการกำหนดนี้
#define a_refresh 1 // เว็บเซิร์ฟเวอร์เปิดใช้งานเพื่อรีเฟรชใช่/ไม่? (ใช่ก็โอเค) #define a_serverport 80 // พอร์ตเว็บเซิร์ฟเวอร์ท้องถิ่น
#Define A_MAXBUFSIZE 192 // ต้องมีขนาดใหญ่กว่า 128 แต่เล็กพอที่จะทำงานได้
พารามิเตอร์ A_Refresh กำหนดว่าเราสามารถตั้งค่าการรีเฟรชใช่/ไม่ใช่การตั้งค่าใน WebBrowser หรือไม่ การตั้งค่าใน WebBrowser จะถูกวางไว้บน "ไม่" เป็นค่าเริ่มต้น แต่เราสามารถออกจากการกำหนดไว้ใน "1" เพื่อเปิดใช้งานการตั้งค่านั้นใน WebBrowser
เพื่อให้เกตเวย์ส่งข้อความ Downlink บนปัจจัยการแพร่กระจายที่ตั้งไว้ล่วงหน้าและในความถี่เริ่มต้นคุณต้องตั้งค่าพารามิเตอร์ _strict_1ch เป็น 1 โปรดทราบว่าเมื่อไม่ได้ตั้งค่าเป็น 1 เกตเวย์จะตอบสนองต่อคำขอ downlink ด้วยความถี่และปัจจัยการแพร่กระจายที่ตั้งค่าโดยเซิร์ฟเวอร์แบ็คเอนด์ และในขณะที่ TTN ตอบกลับข้อความ downlink สำหรับ SF9-SF12 ใน RX2 timeslot และด้วยความถี่ 869.525MHz และบน SF12 (ตามมาตรฐาน LORA เมื่อส่งใน RX2 timeslot)
#define _strict_1ch 0
คุณควรไม่เปลี่ยนการตั้งค่าเริ่มต้นของพารามิเตอร์นี้
โดยการตั้งค่า OLED คุณจะกำหนดค่าระบบให้ทำงานกับแผง OLED มากกว่า I2C บางแผงทำงานโดยทั้ง SPI และ I2C โดยที่ I2C เป็นตัวทำละลาย อย่างไรก็ตามเนื่องจาก SPI ใช้สำหรับการสื่อสารตัวรับส่งสัญญาณ RFM95 คุณจึงเป็น discouvared อย่างแน่นอนโดยใช้หนึ่งในสิ่งเหล่านี้เนื่องจากพวกเขาจะไม่ทำงานกับซอฟต์แวร์นี้ เลือกโซลูชัน OLED ที่ใช้งานได้มากกว่า I2C
#Define OLED 1
ค่าต่อไปนี้ถูกกำหนดไว้สำหรับ OLED:
เมื่อสิ่งนี้ถูกกำหนด (== 1) เราจะรวบรวมสถิติของทุกข้อความและส่งออกไปยังระบบไฟล์ Spiffs เราตรวจสอบให้แน่ใจว่าเราใช้ไฟล์จำนวนหนึ่งที่มีจำนวนเร็กคอร์ดคงที่แต่ละรายการสำหรับสถิติ หมายเลข REC บอกเราว่าได้รับอนุญาตจำนวนเท่าใดในแต่ละไฟล์สถิติ ทันทีที่หมายเลข REC สูงกว่าจำนวนระเบียนที่อนุญาตเราจะเปิดไฟล์ใหม่ เมื่อจำนวนไฟล์เกินจำนวนไฟล์สถิติจำนวนจำนวนแล้วเราจะลบไฟล์ที่เก่าแก่ที่สุดและเปิดไฟล์ใหม่ เมื่อเลือกปุ่ม "บันทึก" ที่ด้านบนของหน้าจอ GUI ไฟล์บันทึก RTHE ทั้งหมดจะเป็น ouptu ไปยังอุปกรณ์อนุกรม USB ด้วยวิธีนี้เราสามารถตรวจสอบบันทึกได้มากกว่าการปรับหน้าจอ GUI หรือเอาต์พุตอนุกรม
#define stat_log 1
การตั้งค่าพิน I2C SDA/SCL จะทำในไฟล์ configgway.h ทันทีหลังจาก #Define ของ OLED มาตรฐาน ESP8266 ใช้ PINS D1 และ D2 สำหรับสาย I2C BUS SCL และ SDA แต่ผู้ใช้สามารถเปลี่ยนแปลงได้ โดยปกติแล้วจะไม่จำเป็น ฟังก์ชั่น OLED พบได้ในไฟล์ _loramodem.ino และสามารถปรับให้เข้ากับฟิลด์อื่น ๆ ได้ ฟังก์ชั่นจะถูกเรียกเมื่อได้รับข้อความ (!) ดังนั้นโดยทั่วไปแล้วสิ่งนี้จะเพิ่มความไม่แน่นอนของ ESP เนื่องจากฟังก์ชั่นเหล่านี้อาจต้องใช้เวลามากกว่าที่คาดไว้ ถ้าเป็นเช่นนั้นให้ปิดฟังก์ชั่น OLED หรือสร้างในฟังก์ชั่นในลูปหลัก () ที่แสดงในเวลาผู้ใช้ (ไม่ใช่ขัดจังหวะ)
เกตเวย์อนุญาตให้เชื่อมต่อกับเซิร์ฟเวอร์ 2 ตัวในเวลาเดียวกัน (เช่นเดียวกับเกตเวย์ Lora ส่วนใหญ่ทำ BTW) คุณต้องเชื่อมต่อกับเราเตอร์ LORA มาตรฐานอย่างน้อยหนึ่งตัวในกรณีที่คุณใช้เครือข่ายสิ่งต่าง ๆ (TTN) มากกว่าตรวจสอบให้แน่ใจว่าคุณตั้งค่า:
#define _ttnserver "Router.eu.thethings.network"
#define _ttnport 1700
ในกรณีที่คุณตั้งค่าเซิร์ฟเวอร์ของคุณเองคุณสามารถระบุได้ดังนี้โดยใช้ URL เราเตอร์ของคุณเองและพอร์ตของคุณเอง:
#define _thingserver "your_server.com" // URL เซิร์ฟเวอร์ของโปรแกรมเซิร์ฟเวอร์ LORA UDP.JS
#define _ThingPort 1701 // เซิร์ฟเวอร์ UDP ของคุณควรฟังพอร์ตนี้
ตั้งค่าพารามิเตอร์ข้อมูลประจำตัวสำหรับเกตเวย์ของคุณ:
#define _description "esp-gateway"
#Define _EMAIL "[email protected]"
#define _platform "esp8266"
#define _lat 52.00
#define _lon 5.00
#Define _ALT 0
เป็นไปได้ที่จะใช้เกตเวย์เป็นโหนด ด้วยวิธีนี้จะมีการรายงานค่าเซ็นเซอร์ท้องถิ่น/ภายใน นี่คือฟังก์ชั่นที่เข้มข้นของ CPU และหน่วยความจำในการสร้างข้อความเซ็นเซอร์เกี่ยวข้องกับฟังก์ชั่น EAS และ CMAC
#Define GatewayNode 0
เพิ่มเติมด้านล่างในไฟล์การกำหนดค่า configgignode.h เป็นไปได้ที่จะตั้งค่าที่อยู่และข้อมูล LORA อื่น ๆ ของโหนดเกตเวย์
วิธีที่ง่ายที่สุดในการกำหนดค่าเกตเวย์บน WiFi คือการใช้ฟังก์ชัน wifimanager ฟังก์ชั่นนี้ใช้งานได้นอกกรอบ Wifimanager จะวางเกตเวย์ไว้ในโหมด AscessPoint เพื่อให้คุณสามารถเชื่อมต่อกับมันเป็นจุดเชื่อมต่อ WiFi
#define _wifimanager 0
หากเปิดใช้งาน WiFi Manager ตรวจสอบให้แน่ใจว่าได้กำหนดชื่อของจุดเชื่อมต่อหากเกตเวย์อยู่ในโหมด AscontPoint และรหัสผ่าน
#define ap_name "esp8266-gway-things4u"
#Define AP_PASSWD "TTNAUTOPW"
ชื่อจุดเชื่อมต่อมาตรฐานที่ใช้โดยเกตเวย์คือ "ESP8266 GWAY" และรหัสผ่านของมันคือ "TTNAUTOPW" หลังจากเชื่อมโยงกับจุดเชื่อมต่อด้วยโทรศัพท์มือถือหรือคอมพิวเตอร์ของคุณไปที่ htp: //192.168.4.1 ในเบราว์เซอร์และบอกเกตเวย์ที่เครือข่าย wifi ที่คุณต้องการเชื่อมต่อและระบุรหัสผ่าน
เกตเวย์จะรีเซ็ตและผูกกับเครือข่ายที่กำหนด หากทุกอย่างเป็นไปด้วยดีคุณได้รับการตั้งค่าแล้วและ ESP8266 จะจดจำเครือข่ายที่ต้องเชื่อมต่อ หมายเหตุ: ตราบใดที่จุดเชื่อมต่อที่เกตเวย์ถูกผูกไว้อยู่แล้วเกตเวย์จะไม่ทำงานกับรายการ WPA ของจุดเชื่อมต่อที่รู้จักอีกต่อไป หากจำเป็นคุณสามารถลบจุดเชื่อมต่อปัจจุบันในเว็บเซิร์ฟเวอร์และวงจรพลังงานเกตเวย์เพื่อบังคับให้อ่านอาร์เรย์ WPA อีกครั้ง
#ถ้า gatewayNode == 1
#define _devaddr {0x26, 0x01, 0x15, 0x3d}
#define _appskey {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
#define _nwkskey {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
#define _sensor_interval 300
#endif
เว็บเซิร์ฟเวอร์ในตัวสามารถใช้เพื่อแสดงสถานะและการดีบักข้อมูล เว็บเซิร์ฟเวอร์ยังอนุญาตให้ผู้ใช้เปลี่ยนการตั้งค่าบางอย่างในเวลาทำงานเช่นระดับการดีบักหรือเปิดและปิดฟังก์ชั่น CAD สามารถเข้าถึงได้ด้วย URL ต่อไปนี้: http: //: 80 IP ที่เราเตอร์มอบให้กับ ESP8266 เมื่อเริ่มต้นอยู่ที่ไหน มันอาจจะเป็นบางอย่างเช่น 192.168.1.xx เว็บเซิร์ฟเวอร์แสดงการตั้งค่าการกำหนดค่าต่างๆรวมถึงการจัดหาฟังก์ชั่นในการตั้งค่าพารามิเตอร์
พารามิเตอร์ต่อไปนี้สามารถตั้งค่าได้โดยใช้เว็บเซิร์ฟเวอร์
ซอฟต์แวร์นี้ขึ้นอยู่กับซอฟต์แวร์หลายชิ้น Arduino IDE สำหรับ ESP8266 เป็นสิ่งสำคัญที่สุด โปรแกรมนี้ใช้ไลบรารีอื่น ๆ อีกหลายห้องตรวจสอบให้แน่ใจว่าคุณติดตั้งไลบรารีเหล่านั้นด้วย IDE:
เพื่อความสะดวกห้องสมุดจะพบได้ในที่เก็บ GitHub นี้ในไดเรกทอรีไลบรารี โปรดทราบว่าพวกเขาไม่ได้เป็นส่วนหนึ่งของ ESP 1 Channel Gateway และอาจมีใบอนุญาตของตัวเอง อย่างไรก็ตามไลบรารีเหล่านี้ไม่ได้เป็นส่วนหนึ่งของซอฟต์แวร์เกตเวย์ช่องเดียว
ดู http://things4u.github.io ในส่วนฮาร์ดแวร์สำหรับการสร้างและคำแนะนำการเชื่อมต่อ
การพึ่งพาต่อไปนี้ใช้ได้สำหรับเกตเวย์ช่องเดี่ยว:
สิ่งต่อไปนี้ยังคงอยู่ในรายการความปรารถนาของฉันที่จะทำกับเกตเวย์ช่องเดี่ยว:
ไฟล์ต้นฉบับของเกตเวย์สเก็ตช์ในที่เก็บนี้มีให้ภายใต้ใบอนุญาต MIT ห้องสมุดที่รวมอยู่ในที่เก็บนี้รวมอยู่ในความสะดวกเท่านั้นและทุกคนมีใบอนุญาตของตัวเองและไม่ได้เป็นส่วนหนึ่งของรหัสเกตเวย์ ESP 1CH