导语

越来越多的IOT应用场景中需要使用4G模块,而在有些特定的场合需要把4G上网能力转化wifi功能,比如说无人机中视频传输,以及打印机行业中都有类似的应用案例,以便更好的提供给更多的客户端去使用。为了更节省成本,我们把4G模块中Opencpu 利用起来,结合硬件的SDIO接口去实现wifi上网功能。

本文将基于EC20 EC20CEFAG Opencpu Linux 3.18.20版本硬件搭载高通QCA9377来实现WIFI上网功能。

OPENCPU简介

OPENCPU是一个基于高通MDM9x07为用户提供的二次开发平台,节省成本,目的是帮助客户更快的开发部署应用程序,并提供更加丰富的外设接口,同时可简化应用程序的开发工作。

1.1系统框架

OPENCPU平台系统架构如下,分为Linux Distribution 和 Development Environment两部分,其中LINUX Distribution为平台底层相关,而Development Environment主要是用于平台上层应用开发所用,用户程序可以通过调用高通所提供的中间适配层或直接调用C Runtime Library相关库函数实现相关功能。

系统框架图

接下来就是讲解如何移植QCA9377 wifi驱动。

1.2  SDK开发包介绍

SDK开发包包含如下图内容:

模块提供2个SDIO接口(SDC1和SDC2),都是4-bit 双向传输,其中SDC1可以作为Wi-Fi接口,而SDC2是专用的SD卡接口。

1.3程序编译及运行调试

在SDK目录下:cd ql-ol-crosstool/

设置编译环境:source  ql-ol-crosstool-env-init

检查是否设置成功:arm-oe-linux-gnueabi-gcc -v

修改配置

第一步:进入配置环境

$make kernel_menuconfig

选择支持wifi支持的相关配置,最后.config 的配置如下:

这里CONFIG_CFG80211=y  这里wifi驱动端编译不需要backports。

编译测试

以上操作完成后就是编译源码了。

$ make -j8

Linux 内核编译成功,下一步就是编译高通wifi QCA9377 wifi 驱动。

WIFI驱动编译

QCA9377编译:

进入wifi驱动目录:修改

进入qcacld-2.0  修改Makefile

KERNEL_SRC ?=

/home/dhwang/work/Linux_kernel/Quectel_KERNEL/quectel_ol_kernel/

以及

MOD_PATH ?=

/home/dhwang/work/Linux_kernel/Quectel_KERNEL/wlan/qcacld-2.0/

后进行make 编译成功后,在image 目录下生成wlan.ko

同时在把对应的固件放置在如下位置:在系统中/lib/firmware目录下存放如下:

bdwlan30.bin  //模块对应校准文件

qwlan30.bin

otp30.bin

wifi 配置文件:对应目录为:

/lib/firmware/wlan目录

cfg.dat

qcom_cfg.ini

WIFI加载测试

测试驱动是否加载成功:

驱动版本

有以上信息表示驱动配置成功,接下来就是测试STA功能,启动station连接热点。

测试上网功能:

一切正常,4G模块Opencpu下加载wifi 成功。

文章来源:润欣科技Fortune微信公众号

arm oe linux gnueabi 系统,【技术分享】Quectel 4G模块Opencpu中实现高通wifi功能相关推荐

  1. arm oe linux gnueabi 系统,[MDM9X07] ME3610/3630开发环境快速搭建

    说明 ME3610/3630基于Arm linux, 在上位机开发POC应用需要配置交叉编译环境 步骤 1 资料 基础包和依赖库环境都在百度网盘: ** 4G模块>ME3610 ME3630 * ...

  2. arm oe linux gnueabi 系统,OpenCV ARM移植(交叉编译opencv) arm-oe-linux-gnueabi-gcc编译opencv3.1.0...

     Cmake的安装 OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake. ubuntu下安装cmake比较简单, apt-get install cm ...

  3. arm oe linux gnueabi 系统,交叉编译移植openssl

    交叉编译openssl静态库步骤: 1.解压源码 tar xf openssl-1.1.1a.tar.gz 2.进入到解压后的源码目录 cd openssl-1.1.1a/ 3.配置Makefile ...

  4. 基于Arm板linux嵌入式系统RS485串口读写通讯

    最近在做基于Arm板linux嵌入式系统的RS485串口读写通讯首先参考 http://bbs.chinaunix.net/thread-3650543-1-1.html上的文章,该文章写道,读的时候 ...

  5. 迅为干货 | Linux系统移远EC20 4G模块移植方法

    硬件平台:迅为i.MX6Q开发板 1. 4G网络连接 对于嵌入式Linux而言,4G网络连接是一个比较容易实现的功能,大多数的4G模块接口都是MiniPCIE接口,但是深入了解一下就会发现,4G模块的 ...

  6. freescale imx6 编译 linux ltib,TQIMX6Q技术分享——LTIB安装配置(转)

    TQIMX6Q_BASEC开发板是天嵌科技在2015年重磅推出的顶级开发平台,采用飞思卡尔的I.MX6Q芯片,真四核运行,1G Hz主频,2G DDR3内存,8G EMMC FALSH.TQIMX6Q ...

  7. 嵌入式linux驱动开发之移远4G模块EC800驱动移植指南

    回顾下移远4G模块移植过程, 还是蛮简单的.一通百通,无论是其他4G模块都是一样的.这里记录下过程,分享给有需要的人.环境使用正点原子的imax6ul开发板,板子默认支持中兴和移远EC20的驱动,这里 ...

  8. linux v4l2 示例程序,linux驱动由浅入深系列:camera驱动之二(基于高通平台的V4L2结构及代码分析)...

    在上一篇文章中介绍了camera的基础知识和相关概念,我们一起来了解一下驱动相关的代码结构.本文以高通+android平台为示例,首先看一下整体框图: 这张图是从整体上来看的 1,图中最下面的是ker ...

  9. linux驱动由浅入深系列:camera驱动之二(基于高通平台的V4L2结构及代码分析)

    在上一篇文章中介绍了camera的基础知识和相关概念,我们一起来了解一下驱动相关的代码结构.本文以高通+android平台为示例,首先看一下整体框图: 这张图是从整体上来看的 1,图中最下面的是ker ...

最新文章

  1. 10 个 Python 工程师,9 个不合格!
  2. php采集分析,PHP采集程序原理分析篇
  3. JVM实战与原理---内存区域分配
  4. 【Python基础】超级详解系列-Python列表全面解析
  5. OpenCASCADE:Modeling Data之形状的属性
  6. burpsuite插件的使用
  7. js的with语句使用方法
  8. java和python对比----1:
  9. 通配符在DNS系统中的应用
  10. 高效神器!小目标检测迎来曙光!SSPNet金字塔网络!川大出品
  11. 谷歌拟收购Firework 火拼短视频应用市场
  12. Illumina联手IBM Watson Health解读癌症基因谱
  13. 土豆首页图片延迟加载的效果
  14. matlab建立子程序,怎么实现matlab子程序的放置以及调用
  15. 十五道Python小案例,学会这些,Python基础已过关!
  16. 最低成本DIY视频遥控车方案:ESP32-CAM视频遥控车
  17. error An unexpected error occurred: “https://registry.npmjs.org/react: ETIMEDOUT“.
  18. iPhone如何开启头部追踪功能 iPhone头部追踪功能使用方法
  19. css之“css3的新特性”
  20. 第四章:Android灯光系统(6)-背光灯

热门文章

  1. httpclient base64 文件上传_选择HttpClient还是OkHttp?
  2. python案例教程黄蔚答案_Python编程案例教程
  3. python设置路径_Python探索之修改Python搜索路径
  4. 启明云端分享|ESP32-C3选型参考
  5. linux 限制单个ip流量,centos 的單ip流量控制-CentOS下利用iptables限速及限制每IP連接數...
  6. Altium Designer中敷铜间距修改问题
  7. NXP I.MX6ULL 交叉编译工具链下载地址?
  8. 高焦耳贴片压敏电阻,有哪些?
  9. java简易计算器考察什么_练习:用java写一个简易计算器
  10. 正点原子stm32f407开发板pcb图_#试用名单公布#正点原子ARM Linux开发板I.MX6ULL