在嵌入式Linux開發中,設備上云是核心需求之一。RK3588作為性能強勁的嵌入式平臺,搭配中國移動CMCC Express SDK,可快速實現基于MQTT協議的OneNET云平臺接入,兼顧穩定性與高效性。本文將詳細拆解部署全過程,附實戰驗證結果,助力開發者快速落地!
一、核心方案介紹
CMCC Express SDK是基于C語言開發的輕量級上云工具,專為嵌入式Linux設計,支持5G/4G網絡接入,核心優勢如下:
?雙協議協同:HTTP自動注冊獲取三元組,MQTT/MQTTS上報數據,適配OneNET平臺規范
?多線程架構:數據采集、通信任務獨立運行,支持多字段并行上報
?靈活擴展:支持shell/自定義接口開發,兼容32/64位系統,適配openssl加密通信
?狀態可視化:實時監控網絡狀態、信號質量、設備數據,問題可追溯
本次部署目標:RK3588平臺通過4G模塊接入網絡,借助SDK實現設備狀態、信號參數等數據向OneNET云平臺的穩定上報。
二、部署前準備
1.硬件環境:RK3588開發板+ Quectel 4G模塊(已正常識別)
2.軟件環境:嵌入式Linux系統(本文基于debian11)、CMake 3.10+、交叉編譯工具鏈
3.資源準備:CMCC_Express_SDK包(含源碼、第三方依賴、證書文件)、OneNET平臺產品信息(產品ID、設備密鑰)
三、分步部署教程
1. SDK目錄結構梳理
解壓SDK后,核心目錄如下(重點關注需配置文件):

2.關鍵配置修改
(1)數據采集接口適配
修改cmcc_express_intf.sh腳本,適配RK3588硬件接口,核心要求:
?接口函數名固定為cmcc_express,需包含GetOneBoxInfo02、GetDevStatus等標準接口
?輸出格式:字段用~分隔,不允許結尾帶分隔符,多行數據用n拆分
?示例:信號參數輸出band:1~sinr:29~rsrp:-73~rsrq:-6~rssi:-46

(2)編譯參數配置(CMakeLists.txt)
根據RK3588平臺調整:
?指定交叉編譯鏈:set(CMAKE_C_COMPILER 你的交叉編譯器路徑)
?系統位數配置:-DCONFIG_PLAT_ARCH_64BIT=1(RK3588為64位)
?功能開關:啟用openssl(MQTTS加密):-DOPENSSL=1
?鏈接依賴庫:添加openssl庫路徑,確保MQTTs通信正常
(3)4G撥號配置
確保4G模塊驅動正常,撥號服務自動啟動:
?核心命令:busybox udhcpc -f -n -q -t 5 -i wwan0(獲取動態IP)
?路由配置:ip -4 route add default via 10.2.47.65 dev wwan0(網關指向4G模塊)

3.編譯與部署
1.進入build目錄執行編譯:
cdbuildcmake ../ # 生成編譯文件make # 編譯源碼make install # 安裝到bin目錄
2.部署文件到RK3588:
?復制bin目錄下的cmcc_express、cmcc_express_intf到開發板/usr/bin
?復制certificate.pem到/etc/cmcc_express/(MQTTS證書路徑)
?復制系統服務文件到/etc/systemd/system/(4g-info.service、cmcc_express.service)
4.服務啟動與狀態驗證
1.啟動4G監控服務:
systemctlenable4g-info.service # 設置開機自啟systemctl start4g-info.service # 啟動服務驗證:
systemctl status 4g-info.service,顯示Active(running),且日志輸出信號參數(sinr、rsrp等)及鏈路狀態為4G。
2.啟動MQTT上云服務:
systemctlenablecmcc_express.servicesystemctl start cmcc_express.service
驗證:systemctl status cmcc_express.service,顯示Active(running),無報錯日志。
四、上云驗證結果
1.設備側狀態
?4G撥號成功:獲取IP [10.2.47.64](10.2.47.64),租期7200秒
?網絡鏈路穩定:4G模塊服務持續運行,CPU占用低(24.6s)
?MQTT服務正常:多線程運行(13個任務),內存占用僅6.8M


2. OneNET平臺側驗證
登錄OneNET控制臺,在設備詳情頁可查看:
?設備在線狀態:已接入(基于MQTT長連接)
?實時數據上報:card_info(ICCID)、cell_info(信號參數)、dev_info(設備信息)等
?數據更新頻率:按配置周期上報,字段與設備側一致(如rssi:-46、dnn:3gnet)

五、常見問題排查
1.4G撥號失敗:檢查wwan0設備是否存在,udhcpc腳本路徑是否正確(/usr/share/udhcpc/或/etc/udhcpc)
2.MQTT連接失敗:確認證書路徑配置正確,OneNET三元組(產品ID、設備密鑰)無誤
3.數據采集失敗:檢查接口腳本輸出格式(分隔符、字段名),確保與物模型定義一致(tm_user.h)
六、總結
RK3588 + CMCC_Express_SDK的組合,實現了嵌入式設備的快速上云,無需復雜的MQTT協議開發,通過配置化和腳本適配即可完成部署。該方案兼顧了輕量化與穩定性,適用于工業物聯網、智能硬件等場景的上云需求。
審核編輯 黃宇
-
MQTT
+關注
關注
5文章
734瀏覽量
25205 -
OneNET
+關注
關注
1文章
53瀏覽量
13958 -
RK3588
+關注
關注
8文章
571瀏覽量
7464
發布評論請先 登錄
RK3588操控終端
OPi RK3588/RK3588S系列產品全面適配Openclaw,智能體“人人可及”時代正式開啟
RK3588 CPU?隔離:AB/非?AB?系統雙方案適配實戰
RK3588采集Cameralink圖像快速搭建系統辦法
【技術分享】RK3588如何搭建xenomai3+ethercat
一文搞懂?RK3588 PCIe:從硬件資源到拆分配置?+?避坑指南(含腦圖)
開發者必備,10 分鐘搞定 RK3588 PCIE 拆分!
RK這2款旗艦芯片RK3588 PK RK3576,誰是最優選
干貨分享 | RK3588 Ubuntu系統Docker容器使用指南
RK3588S和RK3588S2差異說明
RK3588快速上云OneNET!CMCC_Express_SDK MQTT部署實戰
評論