Плата розробки tekmodul BG95M3-QPython EVB

Відмінності від MicroPython
QuecPython — це, по суті, MicroPython, що працює на модулях Quectel. Через відсутність вичерпної стандартної специфікації в MicroPython, вбудовані бібліотеки та використання різних функцій можуть відрізнятися залежно від розробників і апаратних платформ. Деякі користувачі QuecPython можуть мати попередній досвід розробки з MicroPython на таких модулях, як ESP32, ESP8266 і STM32. Щоб полегшити міграцію для цих користувачів, відомі відмінності між QuecPython і MicroPython перераховані нижче:
- Деякі стандартні або спеціальні бібліотеки MicroPython, такі як framebuf і network, не реалізовані або вбудовані в QuecPython.
- Деякі стандартні бібліотеки MicroPython, такі як utime, можуть мати різні реалізації та повноту функцій у QuecPython порівняно з такими модулями, як ESP32, що призводить до відмінностей у продуктивності чи інших детальних характеристиках.
- Організація певних функцій у QuecPython може відрізнятися від MicroPython. наприкладample, функції ADC зазвичай включені в бібліотеку машини в MicroPython, але в QuecPython вони включені в бібліотеку misc.
- API, пов’язані з певними апаратними інтерфейсами, такими як UART, I2C і SPI, мають значні відмінності між MicroPython і QuecPython і не можуть використовуватися як взаємозамінні.
- QuecPython наразі не містить функції upip, тому швидке онлайн-встановлення бібліотек неможливе. Потрібне ручне перенесення.
- Сумісність із такими інструментами MicroPython IDE, як Thonny та uPyCraft, не гарантується.
- Таким чином, код MicroPython, який успішно виконується на таких модулях, як ESP32, зазвичай не можна безпосередньо скопіювати та запустити в середовищі QuecPython без будь-яких змін. Тому доцільно уникати безпосереднього застосування документації та досвіду розробки інших апаратних модулів MicroPython до розробки QuecPython.
Відмінності від CPython (звичайний 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 мс. Після виконання вищевказаних операцій зачекайте, доки загориться індикатор живлення на головній платі (світлодіод PWR світиться синім, PWM світиться зеленим, тоді EVB має бути розпізнано в диспетчері пристроїв).
Вибір SIM-карти
Для BG95 EVB слід використовувати SIM-карту NB-IoT. Для тестування ми використовували 1NCE SIM (він повинен розпізнавати мережу Telekom, надсилати SMS і підтримувати національний роумінг).
Інструменти
QPYcom. Цей інструмент використовується для налагодження коду, аналізу журналів, завантаження сценаріїв python до модуля, завантаження мікропрограм, об’єднання мікропрограм тощо. Не можна змінювати скрипти Python!

VSCode: Для написання скриптів Python. Пізніше скрипти Python, написані VSCode, потрібно імпортувати в QPYcom.
Прошивка прошивки
Стандартне мікропрограмне забезпечення AT або мікропрограмне забезпечення QuecOpen зазвичай завантажується в модуль, коли модуль залишає завод. Якщо ви хочете розробити модуль на основі QuecPython, вам потрібно вручну повторно завантажити в нього спеціальне мікропрограмне забезпечення QuecPython. https://python.quectel.com/en/download
Примітка: Для QuecPython потрібна спеціальна прошивка! Його потрібно прошивати окремо. Після перепрошивання цієї мікропрограми плату НЕ МОЖНА використовувати для командного середовища AT. Якщо потрібна розробка за допомогою AT-команд, необхідно знову прошити відповідну мікропрограму.
Example: BG95_M3 QPython Firmware Flash:

Порт підключення BG95M3
Порт REPL: REPL означає Read-Eval-Print-Loop (інтерактивний інтерпретатор). Ви можете налагоджувати програми QuecPython у REPL. Kann python Befehle eingeben (zB 5+3) REPL, скорочення від Read-Eval-Print Loop, — це просте інтерактивне середовище програмування. REPL зазвичай надає інтерфейс командного рядка (CLI), який отримує дані користувача, аналізує та виконує їх, а потім повертає результати користувачеві. З точки зору функціональності та використання, він схожий на командний рядок (CMD) у Windows або оболонку в macOS/Linux.
DM Порт: цифровий медіапорт. Для перепрошивання прошивки.
Функції та команди запуску Qpython
Реєстрація мережі (в QPYcom, порт REPL)
Імпорт нетто
- net.operatorName() отримує інформацію про оператора поточної реєстрації мережі.
- net.getModemFun() Цей метод використовується для отримання поточного функціонального режиму модуля.
- net.getState() отримує інформацію про реєстрацію мережі. AT+CREG=?
Встановіть DataCall
Імпорт данихCall
dataCall.getInfo(profileID, ipType)
- # професіоналfileID – PDP ID, діапазон 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 має бути встановлено відповідно до виробника SIM-карти. (У нашому випадку виробником SIM-карти є 1NCE, тому потрібно шукати налаштування APN для 1NCE).
Таблиця:
Значення налаштування
- APN: iot.1nce.net
- Ім'я користувача: Не обов’язково, залиште порожнім
- Пароль: Не обов’язково, залиште порожнім
- Аутентифікація метод: Протокол автентифікації пароля (PAP)
- Інтернет Протокол: Інтернет-протокол версії 4 (IPv4)
dataCall.getPDPContext(1) -> повернення: 0 = успішно
dataCall.activate(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
Документи / Ресурси
![]() |
Плата розробки tekmodul BG95M3-QPython EVB [pdfІнструкція з експлуатації BG95M3-QPython EVB Development Board, BG95M3-QPython, EVB Development Board, Development Board, Board |





