OpenLinux ngati gawo la ma module a SIM7600E-H

OpenLinux ngati gawo la ma module a SIM7600E-H

Njira yopangira pulogalamu yokhazikika ndikuyiyika mu gawoli imapezeka pansi pa Linux ndi Windows. M'nkhaniyi tiwona mwatsatanetsatane momwe, pogwiritsa ntchito zitsanzo za SDK zomwe zaperekedwa SIMCom Wireless Solutions phatikiza ndi kuyika pulogalamu yokhazikika mu module.

Ndisanalembe nkhaniyi, mnzanga wina, yemwe anali kutali ndi Linux, adandifunsa kuti ndifotokozere momwe ndingapangire gawo langa la gawo la SIM7600E-H mwatsatanetsatane momwe ndingathere. Njira yowunika kupezeka kwa nkhaniyo inali mawu akuti "kuti ndimvetse."

Ndikukupemphani kuti mudziwe zimene zinachitika.

Nkhaniyi imawonjezeredwa ndikusinthidwa pafupipafupi

Kuwonetseratu

Nthawi zambiri, ma module olumikizirana ma cell amagwiritsidwa ntchito potumiza deta, kuyimba mawu, kutumiza ma SMS ndi zina zotero. Zonsezi zimachitika kudzera mu malamulo a AT otumizidwa kuchokera ku microcontroller yakunja. Koma pali gulu la ma module omwe amakulolani kuti mugwiritse ntchito ma code omwe atulutsidwa kunja. Nthawi zina, izi zimachepetsa kwambiri bajeti yonse ya chipangizocho, kukulolani kuti muyike microcontroller yosavuta (komanso yofanana) pa bolodi kapena kusiya zonse. Kubwera kwa ma module a LTE olamulidwa ndi Android kapena Linux OS ndi zida zawo zamphamvu, ndizotheka kuthetsa ntchito zilizonse zomwe zimapezeka kwa mapurosesa otchuka. Nkhaniyi ilankhula za SIM7600E-H, yoyendetsedwa ndi Linux OS. Tiwona momwe tingatsitsire ndikuyendetsa pulogalamu yomwe ingagwiritsidwe ntchito.

Munjira zambiri, nkhaniyi imachokera ku chikalata "SIM7600 Open Linux Development quide", koma zowonjezera zina, choyamba, Baibulo la Chirasha lidzakhala lothandiza. Nkhaniyi ithandiza omwe angoyamba kumene kuphunzira gawoli kumvetsetsa momwe angatsitse pulogalamu ya demo ndikupereka maluso ofunikira pantchito yotsatira.

Mwachidule za yemwe SIM7600E-H ndi

SIM7600E-H ndi gawo lomangidwa pa purosesa ya ARM Cortex-A7 1.3GHz yochokera ku Qualcomm, yokhala ndi makina opangira a Linux (kernel 3.18.20) mkati, omwe amatha kugwira ntchito ndi European (kuphatikiza Russian) frequency band 2G/3G/LTE yothandizira Cat. .4, yopereka liwiro lalikulu lotsitsa mpaka 150Mbps ndi liwiro lokweza mpaka 50Mbps. Zotumphukira zolemera, kuchuluka kwa kutentha kwa mafakitale komanso kupezeka kwa GPS/GLONASS navigation yomangidwa kumaphimba zofunikira zilizonse pakuyankhira kwamakono m'munda wa M2M.

Kachitidwe mwachidule

Module ya SIM7600E-H imachokera ku Linux opaleshoni system (kernel 3.18.20). Momwemonso, fayilo yamafayilo imamangidwa pamaziko a fayilo yolemba UBIFS (Unsorted Block Image File System).

Zofunikira za fayiloyi ndi izi:

  • amagwira ntchito ndi magawo, amakulolani kupanga, kuchotsa, kapena kusintha kukula kwake;
  • imawonetsetsa kulumikizidwa kwamtundu wonse wa media;
  • imagwira ntchito ndi midadada Yoyipa;
  • amachepetsa mwayi wa kutayika kwa deta panthawi yamagetsi kapena kulephera kwina;
  • kusunga zipika.

Kufotokozera kwatengedwa kuchokera pano, palinso kufotokozera mwatsatanetsatane za fayilo yotereyi.

Iwo. Mafayilo amtundu uwu ndi abwino kwa zovuta zogwirira ntchito za module komanso zovuta zamphamvu zomwe zingatheke. Koma izi sizikutanthauza kuti kusakhazikika kwa mphamvu kudzakhala njira yoyembekezeredwa yogwiritsira ntchito module; zimangowonetsa kutheka kwakukulu kwa chipangizocho.

chikumbukiro

Kugawidwa kwa malo okumbukira kumapangidwa motere:

OpenLinux ngati gawo la ma module a SIM7600E-H

Pali magawo atatu ofunika kuwunikira:

ubi0: mizu - werengani-pokha ndipo muli ndi Linux kernel yokha
uwu 0:usf - amagwiritsidwa ntchito makamaka pa pulogalamu ya ogwiritsa ntchito ndi kusungirako deta
ubi0:zonse - zosungidwa pazosintha za FOTA. Ngati malo omwe alipo sikokwanira kutsitsa zosinthazo, makinawo amachotsa mafayilo osagwiritsidwa ntchito motero amamasula malo. Koma pazifukwa zachitetezo, simuyenera kuyika mafayilo anu pamenepo.

Magawo onse atatu amagawidwa motere:

Mafilimu
kukula
ntchito
Mukhozanso
Gwiritsani%
Wokwezedwa

ubi0: mizu
40.7M
36.2M
4.4M
89%
/

uwu 0:usf
10.5M
360K
10.1M
3%
/ deta

ubi0: cachefs
50.3M
20K
47.7M
0%
/ cache

Zomwe zilipo

Monga tafotokozera pamwambapa, gawoli limamangidwa pa Cortex A7 chipset kuchokera ku Qualcomm. Zingakhale zolakwika kusapereka maziko apamwamba kwambiri kuti agwiritse ntchito pulogalamu ya ogwiritsira ntchito ndikutsitsa purosesa yayikulu ya chipangizocho potsitsa gawo lina la pulogalamuyo ku module.

Pa pulogalamu ya ogwiritsa ntchito, njira zotsatirazi zolumikizira zizipezeka kwa ife:

Pin no.
dzina
Sys GPIO No.
Zochita zofikira
Func1
Func2
Kokani
Kudzuka kusokoneza

6
SPI_CLK
-
UART1_RTS
-
-
B-PD
-

7
SPI_MISO
-
UART1_Rx
-
-
B-PD
-

8
SPI_MOSI
-
UART1_Tx
-
-
B-PD
-

9
SPI_CS
-
UART1_CTS
-
-
B-PD
-

21
SD_CMD
-
SD-Khadi
-
-
B-PD
-

22
SD_DATA0
-
SD-Khadi
-
-
B-PD
-

23
SD_DATA1
-
SD-Khadi
-
-
B-PD
-

24
SD_DATA2
-
SD-Khadi
-
-
B-PD
-

25
SD_DATA3
-
SD-Khadi
-
-
B-PD
-

26
SD_CLK
-
SD-Khadi
-
-
B-PN
-

27
SDIO_DATA1
-
WLAN
-
-
B-PD
-

28
SDIO_DATA2
-
WLAN
-
-
B-PD
-

29
SDIO_CMD
-
WLAN
-
-
B-PD
-

30
SDIO_DATA0
-
WLAN
-
-
B-PD
-

31
SDIO_DATA3
-
WLAN
-
-
B-PD
-

32
SDIO_CLK
-
WLAN
-
-
B-PN
-

33
Chithunzi cha GPIO3
GPIO_1020
MIFI_POWER_EN
GPIO
MIFI_POWER_EN
B-PU
-

34
Chithunzi cha GPIO6
GPIO_1023
MIFI_SLEEP_CLK
GPIO
MIFI_SLEEP_CLK
B-PD
-

46
Chithunzi cha ADC2
-
ADC
-
-
-
-

47
Chithunzi cha ADC1
-
ADC
-
-
B-PU
-

48
SD_DET
GPIO_26
GPIO
GPIO
SD_DET
B-PD
X

49
STATUS
GPIO_52
kachirombo
GPIO
kachirombo
B-PD
X

50
Chithunzi cha GPIO43
GPIO_36
MIFI_COEX
GPIO
MIFI_COEX
B-PD
-

52
Chithunzi cha GPIO41
GPIO_79
BT
GPIO
BT
B-PD
X

55
SCL
-
I2C_SCL
-
-
B-PD
-

56
S.D.A.
-
I2C_SDA
-
-
B-PU
-

66
RTS
-
UART2_RTS
-
-
B-PD
-

67
CTS
-
UART2_CTS
-
-
B-PD
-

68
RxD
-
UART2_Rx
-
-
B-PD
-

69
RI
-
GPIO (RI)
-
-
B-PD
-

70
DCD
-
GPIO
-
-
B-PD
-

71
TxD
-
UART2_Tx
-
-
B-PD
-

72
Zamgululi
-
GPIO (DTR)
-
-
B-PD
X

73
PCM_OUT
-
PCM
-
-
B-PD
-

74
PCM_IN
-
PCM
-
-
B-PD
-

75
Maofesi a Mawebusaiti
-
PCM
-
-
B-PD
-

76
Zamgululi
-
PCM
-
-
B-PU
-

87
Chithunzi cha GPIO77
Chithunzi cha GPIO77
BT
GPIO
BT
B-PD
-

Gwirizanani, mndandandawu ndi wochititsa chidwi komanso zindikirani: gawo la zotumphukira limagwiritsidwa ntchito kugwiritsa ntchito gawo ngati rauta. Iwo. Kutengera gawo loterolo, mutha kupanga rauta yaying'ono yomwe idzagawa intaneti kudzera pa Wi-Fi. Mwa njira, pali yankho lokonzeka lopangidwa lotchedwa SIM7600E-H-MIFI ndipo ndi miniPCIE khadi yokhala ndi gawo la soldered SIM7600E-H ndi zikhomo zingapo za mlongoti, imodzi mwa izo ndi mlongoti wa Wi-Fi. Komabe, uwu ndi mutu wankhani ina.

Lachitatu (osati tsiku la sabata)

SIMCom Wireless Solutions perekani mwayi kwa opanga kuti asankhe malo odziwika bwino a Linux kapena Windows. Ngati tikukamba za ntchito imodzi yomwe ingagwiritsidwe ntchito pa gawo, ndiye kuti ndibwino kusankha Windows, idzakhala yachangu komanso yosavuta. Ngati mapangidwe ovuta a mapulogalamu ndi kukonzanso kotsatira akuyembekezeredwa, ndibwino kugwiritsa ntchito Linux. Timafunikiranso Linux kuti ipange mafayilo otheka kuti alowe nawo mu gawo; makina enieni ndi okwanira kuphatikizira.

Zomwe mukufunikira sizipezeka kwaulere - SDK, yomwe mungapemphe kwa wogawa.

Kuyika zida zogwirira ntchito ndi module

Pambuyo pake, tigwira ntchito pansi pa Windows ngati OS yodziwika bwino kwa ogwiritsa ntchito ambiri.

Tidzafunika kukhazikitsa mapulogalamu ofunikira munjira zingapo zosavuta kuti tigwire bwino ntchito ndi gawoli:

  1. GNU / Linux
  2. Cygwin
  3. Oyendetsa
  4. ADB

Kuyika GNU/Linux

Kuti mupange pulogalamuyi, mutha kugwiritsa ntchito compiler iliyonse yogwirizana ndi ARM-Linux. Tigwiritsa ntchito SourceryCodeBenchLiteARM GNU/Linuxtranslater yomwe ikupezeka kuti titsitse pa kugwirizana.

Kuonetsetsa kuti zigawo zonse zaikidwa molondola, ine ndisiya zithunzi zochepa za ndondomeko yoyikapo. Kwenikweni, palibe chovuta pakuyika.

Kuonetsetsa kuti zigawo zonse zaikidwa molondola, ine ndisiya zithunzi zochepa za ndondomeko yoyikapo. Kwenikweni, palibe chovuta pakuyika.

  1. Timavomereza mgwirizano wa laisensi
    OpenLinux ngati gawo la ma module a SIM7600E-H
  2. Tchulani foda yoyika
    OpenLinux ngati gawo la ma module a SIM7600E-H
  3. Timasiya zigawo zofunikira zosasinthika
    OpenLinux ngati gawo la ma module a SIM7600E-H
  4. Zisiyeni momwe zilili
    OpenLinux ngati gawo la ma module a SIM7600E-H
  5. Kangapo "Kenako", "Ikani" ndipo kwenikweni ndi momwemo
    OpenLinux ngati gawo la ma module a SIM7600E-H

Kukhazikitsa Cygwin

Kupitilira apo, pakukulitsa, mudzafunika ma library ndi zofunikira kuchokera pazomwe zaperekedwa Cygwin. Chilichonse ndi chosavuta pano, mtundu waposachedwa wa Cygwin ukhoza kutsitsidwa kwaulere patsamba lovomerezeka la polojekitiyi; pa nthawi yolemba, mtundu wa 3.1.5 unalipo, womwe ndi womwe tidagwiritsa ntchito pokonzekera nkhaniyi.

Palibe chovuta pakuyika Cygwin, chinthu chokhacho chomwe muyenera kusankha ndi galasi pomwe woyikirayo amatsitsa mafayilo ofunikira, sankhani iliyonse ndikuyiyika, komanso mndandanda wazinthu zofunikira ndi malaibulale, ndikusiya malaibulale onse omwe alipo. zida zosankhidwa.

Kuyika kwa driver

Pambuyo polumikizidwa ndi PC, muyenera kukhazikitsa madalaivala. Izi zitha kupemphedwa kwa wogawa wanu (zovomerezeka). Sindikupangira kuti mufufuze nokha pa intaneti, chifukwa ... Zingatenge nthawi yambiri kuti tipeze zomwe zidayambitsa mkangano wa chipangizocho.

OpenLinux ngati gawo la ma module a SIM7600E-H

Pakati pa madoko osankhidwa tikuwona zotsatirazi:

Windows
Linux
mafotokozedwe

SimTech HS-USB Diagnostics
USB siriyo
Diagnostic Interface

SimTech HS-USB NMEA
USB siriyo
GPS NMEA Interface

SimTech HS-USB AT Port
USB siriyo
AT port Interface

SimTech HS-USB Modem
USB siriyo
Modem port Interface

SimTech HS-USB Audio
USB siriyo
USB Audio Chiyankhulo

SimTech HS-USB WWAN Adapter
USB Net
NDIS WWAN Interface

Android Composite ADB Interface
USB ADB
Android onjezerani debug port

Monga momwe mwawonera, palibe USB ADB pakati pa madoko omwe ali pazithunzi, izi ndichifukwa choti doko la ADB mu gawoli latsekedwa mwachisawawa ndipo muyenera kuyiyambitsa potumiza lamulo la 'AT+CUSBADB=1' ku AT. doko la gawo ndikuyiyambitsanso (izi zitha kuchitika ndi lamulo la 'AT + CRESET').

Zotsatira zake, timapeza mawonekedwe omwe tikufuna mu woyang'anira chipangizocho:

OpenLinux ngati gawo la ma module a SIM7600E-H

Tamaliza ndi madalaivala, tiyeni tipite ku ADB.

Kukhazikitsa ADB

Pitani ku tsamba lovomerezeka la Android Developer kugwirizana. Sititsitsanso Android Studio yayikulu; tikungofunika mzere wolamula, womwe ukupezeka kuti utsitsidwe kudzera pa ulalo wa "Download SDK Platform-Tools for Windows".

OpenLinux ngati gawo la ma module a SIM7600E-H

Tsitsani ndikumasula zomwe zasungidwa ku mizu ya drive C.

Zosintha Zachilengedwe

Mukakhazikitsa Cygwin, muyenera kuwonjezera njira ya Cygwin/bin/ pakusintha kwachitukuko (Classic Control Panel β†’ System β†’ Advanced system settings β†’ Advanced β†’ Environment Variables β†’ System Variables β†’ Njira β†’ Sinthani) monga momwe zasonyezedwera pa chithunzi pansipa:

OpenLinux ngati gawo la ma module a SIM7600E-H

Momwemonso, yonjezerani njira yosungiramo zakale za ADB zomwe zatsitsidwa ndi zosatulutsidwa ku muzu wa drive C.

OpenLinux ngati gawo la ma module a SIM7600E-H

Dinani Chabwino kangapo ndikuyambitsanso kompyuta.

Mukayambiranso, mutha kuwona ngati ADB ikugwira ntchito moyenera potsegula mzere wolamula (Win + R β†’ cmd) ndikulemba lamulo la 'adb version'. Timapeza zinthu monga izi:

OpenLinux ngati gawo la ma module a SIM7600E-H

Tiyeni tilumikize gawoli ku PC (ngati ilumikizidwa) ndikuwona ngati ADB ikuwona ndi lamulo la 'adb zida':

OpenLinux ngati gawo la ma module a SIM7600E-H

Zachitika, izi zimamaliza kasinthidwe ka kugwirizana kwa module ndipo tikhoza kuyambitsa chipolopolo kuti tigwire ntchito ndi module.

OpenLinux ngati gawo la ma module a SIM7600E-H

Kutsegula ndi kupanga SDK

Tsopano popeza tili ndi chipolopolo ndipo titha kuyamba kugwira ntchito ndi mzere wolamula wa module, tiyeni tiyese kupanga pulogalamu yathu yoyamba kuti tilowe mu module.

Anthu ambiri angakhale ndi vuto ndi izi! Chifukwa Gawoli limagwira ntchito pa Linux; kupewa kugundana mukamalemba ma code pansi pa Windows, ndi bwino kuphatikizira m'malo omwe amakhala - Linux.

Sitikhala mwatsatanetsatane momwe, pakalibe Linux komanso chikhumbo choyiyika pamakina anu, mutha kuyiyika pamakina enieni. Tidzagwiritsa ntchito VirtualBox, kukhazikitsa Ubuntu 20.04 (mtundu wapano panthawi yolemba) ndipo pansi pake tiyamba kugwira ntchito ndi ophatikiza, ma SDK, ndi zina zambiri.

Tiyeni tipite ku malo a Linux ndikutsegula zolemba zomwe talandira kuchokera kwa wogawa.

simcom@VirtualBox:~/Desktop/OpenLinux$ sudo tar -xzf MDM9x07_OL_2U_22_V1.12_191227.tar.gz 

Pitani ku sim_open_sdk chikwatu ndikuwonjezera chilengedwe:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ cd sim_open_sdk
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ source sim_crosscompile/sim-crosscompile-env-init 

Timakhalabe mufoda yomweyi ndikuchita malamulo otsatirawa tili momwemo.
Ikani laibulale ya libncurses5-dev ngati siyinayikepo:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get update && sudo apt-get install libncurses5-dev -y

Python, ngati sichinayikidwenso:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get install python -y

ndi gcc:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get install gcc

Kuphatikiza:

Tsopano tifunika kusonkhanitsa mafayilo angapo, timayendetsa malamulo otsatirawa motsatizana.

Ngati zenera la kasinthidwe ka kernel likuwonekera pakuphatikiza, ingosankha Tulukani ndikubwerera ku kontrakitala; sitiyenera kukonza kernel tsopano.

Timachita:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make

Pangani bootloader:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make aboot

Kupanga kernel:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel_menuconfig
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel

Konzani mizu yamafayilo:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make rootfs

Kwa ogwiritsa ntchito a Linux zidzakhala zofunikira kupanga dalaivala wa module:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel_module

Tiyeni tipange demo:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make demo

Pambuyo pake mafayilo angapo atsopano adzawonekera mu sim_open_sdk/output directory:

simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ ls output/
appsboot.mbn  boot.img  demo_app  helloworld  system.img

Chotsatsa

Tiyeni tiyese kukweza chiwonetserocho mu module yathu ndikuwona zomwe zimatulukamo.

Sakanizani

Mu sim_open_sdk chikwatu titha kuwona fayilo demo_app. Timachitenga ndikuchisamutsa ku muzu wa drive C pa PC yomwe gawoli limalumikizidwa. Kenako yambitsani mzere wolamula wa Windows (Win + R -> cmd) ndikulowa:

C:>adb push C:demo_app /data/

Console idzatiuza kuti:

C:demo_app: 1 file pushed, 0 skipped. 151.4 MB/s (838900 bytes in 0.005s)

Izi zikutanthauza kuti fayilo idatumizidwa bwino ku gawoli ndipo zomwe tiyenera kuchita ndikuyendetsa. Tisazengereze.

Timachita:

C:>adb shell

Timakulitsa ufulu wa fayilo yotsitsidwa:

/ # cdhmod 777 /data/demo_app

Ndipo timathamanga:

/ # /data/demo_app

Mu console yomweyi, gawoli litiuza izi:

SDK_VER : SIM_SDK_VER_20191205
DEMO_VER: SIM_SDK_VER_20191205

Please select an option to test from the items listed below.

1. WIFI                       2. VOICE CALL
3. DATA CALL                  4. SMS
5. WDS(APN)                   6. NAS
7. AT                         8. OTA
9. TTS                        10. GPIO
11. GPS                       12. Bluetooth
13. TCP/UDP                   14. Timer
15. ADC                       16. I2C
17. UIM(SimCard)              18. DMS(IMEI,MEID)
19. UART                      20. SPI
21. Version                   22. Ethernet
23. FTP                       24. SSL
25. HTTP(S)                   26. FTP(S)
27. MQTT(S)                   28. ALSA
29. DEV                       30. AUDIO
31. JSON                      32. LBS
99. EXIT
Option >   

Tiyeni tiwone IMEI ya gawoli, lowetsani 7 (kusintha kumachitidwe olamula) ndikulowetsa 5:

Please select an option to test from the items listed below.

1. WIFI                       2. VOICE CALL
3. DATA CALL                  4. SMS
5. WDS(APN)                   6. NAS
7. AT                         8. OTA
9. TTS                        10. GPIO
11. GPS                       12. Bluetooth
13. TCP/UDP                   14. Timer
15. ADC                       16. I2C
17. UIM(SimCard)              18. DMS(IMEI,MEID)
19. UART                      20. SPI
21. Version                   22. Ethernet
23. FTP                       24. SSL
25. HTTP(S)                   26. FTP(S)
27. MQTT(S)                   28. ALSA
29. DEV                       30. AUDIO
31. JSON                      32. LBS
99. EXIT
Option > 7

Please select an option to test from the items listed below.

1. get Module Version         2. get CSQ
3. get CREG                   4. get ICCID
5. get IMEI                   6. get CIMI
99. back
Option > 5
IMEI: 867584030090489

Please select an option to test from the items listed below.

1. get Module Version         2. get CSQ
3. get CREG                   4. get ICCID
5. get IMEI                   6. get CIMI
99. back
Option >

Mwanjira iyi tiwona IMEI ya module.

Monga chomaliza

Ndikukhulupirira kuti tinatha kudziwa bwino momwe tingayambitsire gawoli. M'nkhani zotsatirazi, tiwona momwe nsanja ya SIM7600E-H imapereka, komanso momwe mungasinthire patali ntchito yanu mu gawoli.

Ndikukupemphani kuti mufunse mafunso mu ndemanga, ndikuwonetsanso kuti ndi gawo liti la kuthekera kwa gawoli lomwe liyenera kuwonetsedwa m'nkhani zotsatila.

Source: www.habr.com

Kuwonjezera ndemanga