
บอร์ดพัฒนา Tekmodul BG95M3-QPython EVB

ความแตกต่างจาก MicroPython
QuecPython โดยพื้นฐานแล้วคือ MicroPython ที่ทำงานบนโมดูล Quectel เนื่องจากขาดข้อกำหนดมาตรฐานที่ครอบคลุมใน MicroPython ไลบรารีในตัวและการใช้งานฟังก์ชันต่างๆ อาจแตกต่างกันไปขึ้นอยู่กับนักพัฒนาและแพลตฟอร์มฮาร์ดแวร์ ผู้ใช้ QuecPython บางรายอาจเคยมีประสบการณ์ในการพัฒนาด้วย MicroPython บนโมดูล เช่น ESP32, ESP8266 และ STM32 มาก่อน เพื่ออำนวยความสะดวกในการโยกย้ายสำหรับผู้ใช้เหล่านี้ ความแตกต่างที่ทราบระหว่าง QuecPython และ MicroPython มีดังต่อไปนี้:
- มาตรฐาน MicroPython หรือไลบรารีเฉพาะบางรายการ เช่น framebuf และเครือข่าย ไม่ได้ถูกนำมาใช้หรือติดตั้งมาใน QuecPython
- ไลบรารีมาตรฐาน MicroPython บางตัว เช่น utime อาจมีการใช้งานที่แตกต่างกันและฟีเจอร์ที่สมบูรณ์ใน QuecPython เมื่อเปรียบเทียบกับโมดูล เช่น ESP32 ส่งผลให้เกิดความแตกต่างในด้านประสิทธิภาพหรือคุณลักษณะโดยละเอียดอื่นๆ
- การจัดระเบียบคุณสมบัติบางอย่างใน QuecPython อาจแตกต่างจาก MicroPython สำหรับเช่นampโดยทั่วไปแล้ว ฟังก์ชัน ADC จะรวมอยู่ในไลบรารีเครื่องใน MicroPython แต่ใน QuecPython จะรวมอยู่ในไลบรารีเบ็ดเตล็ด
- API ที่เกี่ยวข้องกับอินเทอร์เฟซฮาร์ดแวร์เฉพาะ เช่น UART, I2C และ SPI มีความแตกต่างอย่างมีนัยสำคัญระหว่าง MicroPython และ QuecPython และไม่สามารถใช้แทนกันได้
- ขณะนี้ QuecPython ไม่มีฟังก์ชัน upip ดังนั้นจึงไม่สามารถติดตั้งไลบรารีออนไลน์อย่างรวดเร็วได้ จำเป็นต้องมีการย้ายพอร์ตด้วยตนเอง
- ไม่รับประกันความเข้ากันได้กับเครื่องมือ MicroPython IDE เช่น Thonny และ uPyCraft
- โดยสรุป โค้ด MicroPython ที่ทำงานสำเร็จบนโมดูล เช่น ESP32 มักจะไม่สามารถคัดลอกและรันโดยตรงในสภาพแวดล้อม QuecPython โดยไม่มีการแก้ไขใดๆ ดังนั้นจึงแนะนำให้หลีกเลี่ยงการใช้เอกสารและประสบการณ์การพัฒนาจากโมดูลฮาร์ดแวร์ MicroPython อื่นๆ กับการพัฒนา QuecPython โดยตรง
ความแตกต่างจาก CPython (Normale Python)
- ต่างจากการพัฒนา CPython แบบดั้งเดิม QuecPython มีไลบรารีในตัวจำนวนน้อยกว่ามาก (ไลบรารีมาตรฐาน) แม้ว่า QuecPython จะมีไลบรารีพื้นฐานสำหรับงานต่างๆ เช่น การตั้งเวลาและ file การจัดการปริมาณลดลงอย่างมากเมื่อเทียบกับ CPython ชื่อและวิธีการใช้งานของไลบรารีมาตรฐานเหล่านี้มีความแตกต่างกันมากมายและเข้ากันไม่ได้อย่างสมบูรณ์
- QuecPython ไม่มีฟังก์ชัน pip ในตัว ดังนั้นจึงไม่สามารถติดตั้งไลบรารีออนไลน์อย่างรวดเร็วได้ จำเป็นต้องมีการย้ายพอร์ตด้วยตนเอง
- เนื่องจากความแตกต่างทางไวยากรณ์ระหว่าง QuecPython และ CPython รวมถึงความจริงที่ว่าไลบรารี QuecPython ส่วนใหญ่ไม่สามารถทำงานบนคอมพิวเตอร์เดสก์ท็อปได้ เครื่องมือเช่น VSCode และ PyCharm บนเดสก์ท็อปจึงสามารถใช้เพื่อแก้ไขโค้ดอย่างง่ายเท่านั้น จำเป็นต้องดาวน์โหลดสคริปต์ที่เสร็จสมบูรณ์ไปยังโมดูลด้วยตนเองเพื่อดำเนินการและแก้ไขจุดบกพร่อง
- คุณสมบัติการเน้นไวยากรณ์และการเติมโค้ดให้สมบูรณ์โดยเครื่องมือเช่น VSCode และ PyCharm นั้นอิงตาม CPython และอาจไม่สามารถใช้ได้กับ QuecPython อย่างสมบูรณ์ ดังนั้น สำหรับผู้เริ่มต้นที่ไม่เคยมีประสบการณ์กับภาษา Python มาก่อน ไม่แนะนำให้ใช้เครื่องมือ IDE ที่ชาญฉลาดมากเกินไปในขณะที่เขียนโค้ด เนื่องจากคำแนะนำในตัวอาจทำให้เข้าใจผิด
การเชื่อมต่อ EVB
- ขั้นตอนที่ 1: เชื่อมต่อ EVB
เชื่อมต่อพอร์ต EVB Type-C เข้ากับพอร์ต USB ของพีซีของคุณด้วยสายเคเบิล USB Type-C สำหรับจ่ายไฟ - ขั้นตอนที่ 2: เปิด EVB
ลัดวงจรพิน PWK_AUTO สองตัวที่มีฝาปิดจัมเปอร์เพื่อเปิดบอร์ด จากนั้นบอร์ดจะเปิดโดยอัตโนมัติ หรือกดปุ่ม PWK ค้างไว้หลังจากเปิดเครื่อง ขอแนะนำว่าช่วงเวลาระหว่างการเปิดเครื่องและการกดปุ่ม PWK ควรมีอย่างน้อย 30 ms หลังจากดำเนินการข้างต้นแล้ว ให้รอให้ไฟแสดงสถานะเพาเวอร์บนเมนบอร์ดสว่างขึ้น (LED PWR สว่างเป็นสีน้ำเงิน, PWM สว่างเป็นสีเขียว จากนั้นควรรู้จัก EVB ในตัวจัดการอุปกรณ์)
ทางเลือกของซิม
สำหรับ BG95 EVB ควรใช้ซิมการ์ด NB-IoT สำหรับการทดสอบ เราใช้ 1NCE SIM (ควรจดจำเครือข่าย Telekom, ส่ง SMS และรองรับ National Roaming)
เครื่องมือ
คิวพีวายคอม- เครื่องมือนี้ใช้สำหรับการแก้ไขโค้ด วิเคราะห์บันทึก การอัปโหลดสคริปต์ Python ไปยังโมดูล ดาวน์โหลดเฟิร์มแวร์ การรวมเฟิร์มแวร์ และอื่นๆ ไม่สามารถแก้ไขสคริปต์ Python ได้!

วีเอสโค้ด: ในการเขียนสคริปต์ Python สคริปต์หลามที่เขียนโดย VSCode จะต้องนำเข้าไปยัง QPYcom ในภายหลัง
แฟลชเฟิร์มแวร์
โดยปกติเฟิร์มแวร์ AT มาตรฐานหรือเฟิร์มแวร์ QuecOpen จะถูกดาวน์โหลดลงในโมดูลเมื่อโมดูลออกจากโรงงาน หากคุณต้องการพัฒนาโมดูลโดยใช้ QuecPython คุณจะต้องดาวน์โหลดเฟิร์มแวร์ QuecPython เฉพาะลงไปอีกครั้งด้วยตนเอง https://python.quectel.com/en/download
บันทึก: QuecPython ต้องการเฟิร์มแวร์พิเศษ! มันจะต้องมีแฟลชแยกกัน หลังจากกระพริบเฟิร์มแวร์นี้ บอร์ดจะไม่สามารถใช้กับสภาพแวดล้อมคำสั่ง AT ได้ หากต้องการการพัฒนาด้วยคำสั่ง AT จะต้องแฟลชเฟิร์มแวร์ที่เกี่ยวข้องอีกครั้ง
Exampเลอ: BG95_M3 QPython เฟิร์มแวร์แฟลช:

การเชื่อมต่อพอร์ต BG95M3
พอร์ต REPL: REPL ย่อมาจาก Read-Eval-Print-Loop (ล่ามแบบโต้ตอบ) คุณสามารถดีบักโปรแกรม QuecPython ใน REPL ได้ Kann python Befehle eingeben (zB 5+3) REPL ย่อมาจาก Read-Eval-Print Loop คือสภาพแวดล้อมการเขียนโปรแกรมเชิงโต้ตอบที่เรียบง่าย โดยทั่วไป REPL จัดเตรียมอินเทอร์เฟซบรรทัดคำสั่ง (CLI) ที่รับอินพุตจากผู้ใช้ แยกวิเคราะห์และดำเนินการ จากนั้นจึงส่งคืนผลลัพธ์ให้กับผู้ใช้ ในแง่ของฟังก์ชันและการใช้งาน จะคล้ายกับ Command Prompt (CMD) ใน Windows หรือ Shell ใน macOS/Linux
DM ท่าเรือ: พอร์ตสื่อดิจิทัล สำหรับการกระพริบเฟิร์มแวร์
ฟังก์ชั่นและคำสั่งเริ่มต้น Qpython
การลงทะเบียนเครือข่าย (ใน QPYcom, พอร์ต REPL)
นำเข้าสุทธิ
- net.operatorName() รับข้อมูลผู้ให้บริการของการลงทะเบียนเครือข่ายปัจจุบัน
- net.getModemFun() วิธีการนี้ใช้เพื่อรับโหมดการทำงานปัจจุบันของโมดูล
- net.getState() รับข้อมูลการลงทะเบียนเครือข่าย AT+CREG=?
สร้าง DataCall
นำเข้า dataCall
dataCall.getInfo(โปรfileรหัส, ประเภทไอพี)
- #โปรfileรหัส – รหัส PDP,ช่วง 1~3。
- # ipType – ประเภท IP,0:IPV4 1:IPV6 2:IPV4&IPV6
- หากเอาต์พุตเป็น (1, 0, [0, 0, '0.0.0.0', '0.0.0.0', '0.0.0.0']) แสดงว่าเครือข่ายได้รับการลงทะเบียนแล้ว แต่ไม่ได้ตั้งค่าการเรียกข้อมูล ขึ้น. dataCall.setPDPContext (1,0, 'iot.1nce.net',”,”, 1) -> ส่งคืน: 0 = สำเร็จ
- ต้องตั้งค่าบริบท PDP พร้อม APN ที่เหมาะสมตามผู้ผลิตซิมการ์ด (ในกรณีของเรา ผู้ผลิตซิมการ์ดคือ 1NCE ดังนั้นคุณต้องค้นหาการตั้งค่า APN สำหรับ 1NCE)
โต๊ะ:
ตั้งค่าค่า
- เอพีเอ็น: iot.1nce.net
- ชื่อผู้ใช้: ไม่จำเป็น ปล่อยว่างไว้
- รหัสผ่าน: ไม่จำเป็น ปล่อยว่างไว้
- การรับรองความถูกต้อง วิธี: โปรโตคอลการตรวจสอบรหัสผ่าน (PAP)
- อินเทอร์เน็ต โปรโตคอล: อินเทอร์เน็ตโปรโตคอลเวอร์ชัน 4 (IPv4)
dataCall.getPDPContext (1) -> กลับ: 0 = สำเร็จ
dataCall.เปิดใช้งาน(1) -> กลับ: 0 = สำเร็จ
dataCall.getInfo(1,0) -> ส่งคืน: (1, 0, [1, 0, '100.69.60.50', '8.8.8.8', '8.8.4.4'])
นำเข้า checkNet
checkNet.waitNetworkReady (60) -> กลับ: (3,1) เครือข่ายพร้อมแล้ว
อ้างอิง
https://python.quectel.com/doc/Getting_started/en/index.html
https://python.quectel.com/doc/Application_guide/en/background/iot-and-low-code.html
https://python.quectel.com/doc/API_reference/en/iotlib/dataCall.html
www.tekmodul.de
quectel@tekmodul.de
089-904118290
เอกสาร / แหล่งข้อมูล
![]() | บอร์ดพัฒนา BG95M3-QPython EVB |
อ้างอิง
- iot.1nce.netiot.1nce.net
- dataCall - การโทรข้อมูล - QuecPythonpython.quectel.com
- ข้อมูลเบื้องต้นเกี่ยวกับ IoT และการพัฒนาโค้ดต่ำ - QuecPythonpython.quectel.com
- เริ่มต้นใช้งาน QuecPython - QuecPythonpython.quectel.com
- ดาวน์โหลด | QuecPythonpython.quectel.com
- mailto:quectel@tekmodul.detekmodul.de
- tekmodul GmbH | การเชื่อมต่อสิ่งต่าง ๆ รองรับการฝังตัวwww.tekmodul.de
- tekmodul GmbH | การเชื่อมต่อสิ่งต่าง ๆ รองรับการฝังตัวwww.tekmodul.de
- คู่มือการใช้งานmanual.tools

