首页
关于
Search
1
N1盒子做旁路由刷OpenWRT系统
1,633 阅读
2
4G模块ME909移植指南
628 阅读
3
移植Python3.6到i.MX6ULL
522 阅读
4
欢迎使用 Typecho
462 阅读
默认分类
嵌入式
登录
Search
标签搜索
N1
OpenWRT
旁路由
Python3
imx6ull
imx6ull移植
4G
ME909
TD Tech
Typecho
累计撰写
4
篇文章
累计收到
47
条评论
首页
栏目
默认分类
嵌入式
页面
关于
搜索到
4
篇与
pone
的结果
2021-03-17
4G模块ME909移植指南
4G模块ME909移植指南移植 TD-Tech 公司的 ME909s-805p 4G模块参考资料 《ME909s-805g LTE LGA模块Linux内核驱动集成指南(USB).V1.1.pdf》 《鼎桥 ME909S-805G LTE LGA模块AT命令手册-V100R001_01-CHINESE.V1.0_0225.pdf》添加AT指令的支持添加option.c(drivers/usb/serial/option.c)文件对805p模组的支持。 在static const struct usb_device_id option_ids[]数组中增加模组USB的PID和VID。之后系统已经可以对接4G模块的USB-AT通道,可以和系统进行AT通信了。{ USB_DEVICE(0x2ECC, 0x3010) }, /* TD TECH ME909S-805P */确保Linux的配置arch/arm64/configs/imx_v8_defconfig中加入了关于OPTION的驱动。 在配置文件中检查是否有如下配置项,有则不作修改,没有则在合适位置加入。CONFIG_USB_SERIAL=y CONFIG_USB_SERIAL_WWAN=y CONFIG_USB_SERIAL_OPTION=yRNDIS方式上网配置添加Linux对RNDIS驱动的支持。在配置arch/arm64/configs/imx_v8_defconfig中添加如下配置:CONFIG_USB_USBNET=y CONFIG_USB_NET_DRIVERS=y CONFIG_USB_CONFIGFS_RNDIS=y CONFIG_USB_NET_RNDIS_HOST=y完成上述工作后编译Linux内核烧录到板卡上即可支持805p模组。如果是ECM方式则生成的网络设备是rndis_host。(选配)ECM方式上网配置ECM和RNDIS属于两种上网方式,两种上网方式选择任意一种即可。添加Linux对ECM驱动的支持。在配置arch/arm64/configs/imx_v8_defconfig中添加如下配置:CONFIG_USB_USBNET=y CONFIG_NETDEVICES=y CONFIG_USB_NET_CDCETHER=y如果是ECM方式则生成的网络设备是cdc_ether。驻网完成上述工作后系统即可支持4G模组上网。驻网方式如下:stty -F /dev/ttyUSB1 -echo #去除tty终端的回显功能,针对805p模组,如果不执行此步骤则会造成模组指令识别问题,陷入死循环 echo -e "AT^SYSINFOEX\r" > /dev/ttyUSB1 #使用-e参数,转义转义字符\r。查询服务状态命令 #^SYSINFOEX: 2,3,0,1,0,6,"LTE",101,"LTE" # PS 分组交换 数据 ;CS 电路交换 语音 ;MO 上行 ;MT 下行 echo -e "AT+CGDCONT?" > /dev/ttyUSB1 #查询PDP上下文 #+CGDCONT: 1,"IPV4V6","3gnet.MNC001.MCC460.GPRS" #+CGDCONT: 2,"IP","3gnet","10.128.130.99",0,0,,,, #+CGDCONT: 8,"IPV4V6","IMS","fe80::166c:bca0:9de9:f1ab",0,0,0,2,1,1 #NDISDUP拨号时用CID2,CID1目前是是作为默认承载用的 echo -e "AT^NDISDUP=2,1,"CTNET"" > /dev/ttyUSB1 #命令拨号 #3GNET #CMNET #CTNET ifconfig eth0 down #关闭其他网络节点,未验证是否有必要这么做 udhcpc -ieth1 #动态获取之后可以正常上网。关于805p的专有说明设备tty端口含义ttyUSB0:DIAG ttyUSB1:AT ttyUSB2:MODEM LTE的信号质量如何查看 在3/4g下查询当前RSCP/RSRP,当小于-105dBm的时候,数据业务很难成功。^HCSQ: "LTE",31,71,0,13也就是上述的信息中看信号的第二个值。范围如下:0 rsrp < -140 dBm 1 -140 dBm ≤ rsrp < - 139 dBm 2 -139 dBm ≤ rsrp < -138 dBm ... 71 -70 dBm ~ -69 dBm 95 -46 dBm ≤ rsrp < -45 dBm 96 -45 dBm ≤ rsrp < -44 dBm 97 -44 dBm ≤ rsrp 255 未知或不可测 说明上述 71信号还是不错的补充当CREG、CGREG没有注册上时,是无法做相关业务的。 当CSQ、HCSQ信号值过低的时候也是无法做相关业务的。 当业务掉线后,必须重新查询CREG、CGREG、CSQ、HCSQ,当满足做业务的基本要求时,在发起相关操作。
2021年03月17日
628 阅读
17 评论
0 点赞
2021-02-22
移植Python3.6到i.MX6ULL
移植Python3.6到i.MX6ULL前期准备ARM平台: imx6ull linux 4.1.15主机环境: Ubuntu 18.04 x86_64 (虚拟机)移植流程确定配置好交叉编译环境。 注意:如果未安装则安装SDKsudo ./fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.0.0.shPython官网下载Python3.6。 下载地址:Python Source将压缩包Python-3.6.9.tgz解压到Ubuntu18系统下的目录下。 tar xvf Python-3.6.9.tgz进入到Python-3.6.9文件夹下,并创建两个文件夹build-arm和build-install。cd Python-3.6.9 mkdir build-arm build-install编译安装PC端的Python3.6.9。(Ubuntu18默认自带Python3.6.9,可以跳过此步,此文在移植的时候没有跳过这一步。如果系统安装的Python版本高于需要编译的版本则可以跳过,如果系统版本低于将要编译的版本则不能跳过)./configure make sudo make install 注意:make无需使用sudo,而make install需要sudo,不然没有权限安装Python到系统。清除编译产生的临时文件。 sudo make clean交叉编译-配置Makefile.cd build-arm . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi # 此处CONFIG_SITE环境变量如果不加入则会在configure的时候打印出错 "#error LONG_SIZE" echo ac_cv_file__dev_ptmx=no > config.site echo ac_cv_file__dev_ptc=no >> config.site export CONFIG_SITE=config.site # 配置参数 # --build=编译该软件所使用的平台,交叉编译环境根据系统而定,Ubuntu18选择x86_64-linux,如果系统使用的是Ubuntu的32位版本,可以配置成i386 # --host 该软件将运行的平台 # --target 该软件所处理的目标平台 # --prefix 文件安装的位置 # --silent 选项配置后终端不会打印详细的过程。 ../configure \ --host=arm-poky-linux-gnueabi \ --build=x86_64-linux \ --target=arm-poky-linux-gnueabi \ --disable-ipv6 \ --prefix=/home/neo/Desktop/fcu1104/Python-3.6.9/build-install \ --enable-shared --enable-optimizations添加ssl及zlib依赖的支持。已经在yocoto中拷贝出相应的文件。修改Setup文件vi Modules/Setup修改如下。#替换相关字段 SSL=/home/neo/Desktop/fcu1104/python3/openssl/usr _ssl _ssl.c \ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ -L$(SSL)/lib -lssl -lcrypto mypath=/home/neo/Desktop/fcu1104/python3/zlib zlib zlibmodule.c -I$(prefix)/include -L$(mypath)/lib -lz编译并安装。make # make install过程中 make install问题汇总问题:使用交叉编译环境编译时报错error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." 解答:是因为没有配置CONFIG_SITE环境变量导致数据类型中的long型在configure时配置成了8Byte,而ARM环境上long型占用4Byte。参考:LONG_BIT问题:make install命令时报错subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.解答:执行命令rm -rf /usr/bin/lsb_release可以解决这个问题,此时需要make clean下,然后再次执行make & make install进行编译安装。参考链接python交叉编译移植到ARM python移植到arm的单板交叉编译Python3.6python3.7移植到ARM开发板
2021年02月22日
522 阅读
11 评论
2 点赞
2021-01-02
欢迎使用 Typecho
如果您看到这篇文章,表示您的 blog 已经安装成功.
2021年01月02日
462 阅读
9 评论
0 点赞
2020-03-29
N1盒子做旁路由刷OpenWRT系统
N1做旁路由刷入OpenWRT系统为什么要用N1盒子现如今新上市的路由器,市面上能买到的300元以内的路由器大多数都是双频(5G Hz和2.4G Hz)和几年前相比无论是速度还是性能都有大幅度提升,作为普通用户已经能满足上网需求。但是由于部分用户对网络环境有其他需求,例如,本地NAS存储,可以实现为一台不限速的网络存储,省去随身携带U盘;亦或是实现某些网站的自动签到;再或者实现去广告上网等等,普通路由器已经不能满足上述的部分功能。使用普通路由器不可以吗? 由于需要的功能较多,现有路由器在运算和存储容量上都已经无法满足需求,就需要有一台本地的高性能路由器,软路由应运而生,既能解决特殊需求,也不影响网络质量。直接买软路由不就得了,N1盒子有什么优势? 由于软路由使用基本上是针对企业或者电子发烧友,普通家庭宽带要求速率不是很高,500M带宽用起来也是绰绰有余,家里也没有特别多的网络设备,一来使用多口软路由有些浪费,而来软路由低配基本也要300元左右,耗电量高不说,多余的网络接口也没啥用,个头也大等等诸多原因,N1对于一般玩家完全够用。N1盒子是什么N1盒子是2018年初斐讯公司推出的一款天天链终端,用来做本地NAS(矿机)使用的,由于某些原因公司倒闭,N1盒子也无法使用,淘宝、京东等平台纷纷下架。由于设计N1的时候是为了计算,所以N1盒子在同领域算是性能较高且第三方源码及维护也比较及时,可以说是当今一款性价比较高的产品。N1盒子配置如下:分辨率 - 支持4K输出 SoC - Allogic S905D 64bit 4Core Cortex-A53 1.5G Hz GPU - Mali-450 RAM - 2GB ROM - 8GB eMMC WIFI - 2.4G/5G 蓝牙 - BT4.1 电源 - 5V/2A x1 网口 - 千兆网口 x1 HDMI - x1 USB - USB2.0 x2刷机前准备电脑N1盒子HDMI线显示器或者电视路由器(将路由器提前改为123网段:网关IP:192.168.123.1)USB公对公线(可能用不到,最好备上一条)USB2.0 U盘网线一根N1盒子电源OpenWRT固件介绍固件的特性及固件相关信息。百度网盘下载密码(6n4k);或者谷歌网盘降级工具+设置U盘启动工具N1盒子刷入OpenWRT系统方法接通连线如下:降级:开机后记录下N1盒子上被路由器DHCP分配的IP地址。按照降级教程操作降级。注意:一定保证电脑和N1在同一个网段里。制作镜像U盘:使用[balenaEtcher]工具将OpenWRT镜像写入U盘里,U盘里的东西会被格式化,请做好备份。设置盒子U盘启动:将写好系统的U盘插入靠近HDMI口的U盘,然后使用U盘启动工具提示输入N1盒子的地址,大部分情况还是最初路由器DHCP分配的IP地址。之后N1会自动重启,屏幕会显示OpenWRT启动信息,此时即可在浏览器输入192.168.123.2即可进入后台界面。设置eMMC启动:进入下图的TTYD界面,输入用户名:root密码:password。按照OpenWRT固件文末方法设置将OpenWRT从U盘写入到eMMC。重启拔掉U盘浏览器输入192.168.123.2进入网页管理后台N1配置为旁路有上网连接图: 浏览器输入192.168.123.1进入路由器后台,关闭DHCP服务(不同路由器设置网上查一查)浏览器输入192.168.123.2进入N1后台,做如下操作:网络 - 接口 - Lan口 1. 把Lan口的IPV4地址改到与AP一样的网段(默认是IP192.168.123.2,如果不是可以设置成此IP) 2. 把Lan口的DNS服务器、网关都填写为AP的静态网络地址IP:192.168.123.1 3. 下面的DHCP,点到第二个选项卡,把“强制”勾上,强制用N1作为DHCP服务器 网络 - 防火墙 - 自定义规则 4.增加一条规则:iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE结束本文只介绍了将N1设置为旁路由的方法,N1还可以作为电视盒子、游戏主机等多种玩法,感兴趣的网友再自行研究。后续将介绍OpenWRT的使用方法,针对文章有疑问的地方请联系。 email: bkxr#outlook.com
2020年03月29日
1,633 阅读
9 评论
3 点赞