-
-
Notifications
You must be signed in to change notification settings - Fork 43
Framework ThreadX
Georgi Angelov edited this page Nov 29, 2019
·
86 revisions
Quectel BG96 Framework for PlatformIO
- ThreadX is default API for user applications inside the modules with Qualcomm chipset
- Module BG96 (GPRS + CAT/NB + GPS)
- Quectel Support
- SDK2 used by default ( recommended ) (2.7.3.3) firmwares labeled with BG96...R02...
-
- BG96MAR02...ALL
-
- BG96MAR02A09M1G_01.011.01.011 ( recommended )
- SDK2831 ( see SDK2 )
- SDK325 ( in progress ) MMU Enabled (..R03..)
-
- BG96MAR03A03M1G_01.002.01.002 ( in progress )
- SDK424 ( not tested ) MMU Enabled (..R04..)
- Integrated application uploader ( Windows & Unix-like )
- QFlash ( Windows )
- QEFS Explore ( Windows )
- PlatformIO Home - New Project
-
- Name: { project-name }
-
- Board: bg96 ( search bg96 )
-
- Framework: ThreadX
-
- Тhe platform will create as template main.c
[env:bg6]
platform = quectel
framework = threadx
board = bg96
; select DM COM Port
upload_port = COM12
; select module uart
monitor_port = COM34
monitor_speed = 115200
;board_build.base =
; empty is 0x40000000 or 0x43000000
;board_build.sdk =
; empty is SDK2 or SDK2831 SDK325 SDK424
;board_build.heap =
; empty is -D HEAP=1048576
#include <txm_module.h>
__attribute__((section(".library"))) int TXM_MODULE_THREAD_ENTRY(void) {
while (1) {
tx_thread_sleep(1000); // USE ONLY HERE
}
}
remark: attribute section library is used only for 'sorting' ... can be removed
- From SDK 3 LINK
Sometimes user application crash on developing ( MMU, NULL, allocate ... etc )
and application can not be removed or upload new ...
Solution 1
Use SIM card as "key"
begin project with wait SIM ready ... qapi_Device_Info_Get(QAPI_DEVICE_INFO_SIM_STATE_E ... )
and next allocate resources. If app crash, remove sim, reset module and upload new app ...
Solution 2
- Full Reflash ( slow )
- Reflash only EFS ( fast )
-
- Download this python scrypt
-
- and read the scrypt beginning for instructions
note: in process, there may be bugs
Video https://www.youtube.com/watch?v=OjdAD0WR6vw
- PlatformIO Home - New Project
-
- Name: { project-name }
-
- Board: bg96 ( search bg96 )
-
- Framework: Arduino
[env:bg6]
platform = quectel
framework = arduino
board = bg96
; select DM COM Port
upload_port = COM34
; select module uart
monitor_port = COM24
monitor_speed = 115200
; empty is 0x40000000 or 0x43000000
;board_build.base =
; empty is SDK2 or SDK2831 SDK325 SDK424
;board_build.sdk =
; empty is -D HEAP=1048576
;board_build.heap =
- ( will more ) LINK
WizIO 2018 Georgi Angelov