自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 realtek wifi驱动常见问题-可优化调整点

当下国内使用的wifi、ble主要有如下几个芯片厂商:realtek(瑞昱),broadcom(博通),乐鑫,物奇,南方硅谷等等,wifi通常分两种开发方式,一种是soc芯片多用于iot(物联网产品),使用rtos,rthread等实时操作系统,可以基于wifi模组进行二次开发;

2024-03-28 16:34:20 595

原创 wpa_supplicant 扫描不全问题处理--链表学习

#include <stdio.h>#include <stdlib.h>#include <string.h>#include <stdbool.h>#define SIZE 20struct dl_list { struct dl_list *next; struct dl_list *prev;};//初始化链表,前驱等于后继static inline void dl_list_init(struct dl_list *list

2024-03-20 20:43:17 1110

转载 RTL8723DU蓝牙驱动及Bluez协议移植-转载

一般来说,当你想使用购买的WIFI或者蓝牙芯片时,直接问厂商要服务即可。但是这里我只是想简单玩玩学习一下,就在淘宝随便买了一个USB WIFI+蓝牙适配器,驱动这些只能自己搞搞。RTL8723DU是一个 WIFI+蓝牙 二合一芯片。WIFI部分的相关移植和使用大家用的比较多,资料也很丰富,自行搜索即可,这里只针对蓝牙部分做一下记录。我所使用的是arm开发板,Linux操作系统,交叉编译工具链为arm-[vender]-linux-uclibcgnueabihf。

2024-03-13 16:35:52 37

原创 wifi中继-sta和ap共存

前面自己做了设备做桥接的预研,后与同事讨论发现,但做桥接无法满足产品需求,于是又做了中继功能预研,本文主要讲述linux wifi做中继的通用方法wifi做中继,主要涉及wpa_supplicant、hostapd、udhcpc/udhcpd、iptables等开源库,修改主要分如下几部分。

2024-01-20 15:06:16 544

原创 iptables交叉编译及使用方法

本文主要讲述linux wifi做中继时使用iptables的方法,及iptables交叉编译时遇到的一些问题在编译以下开源库时不同编译工具链编译结果可能存在差异(其他编译器可能存在编译不过的情况)

2024-01-20 14:45:52 729

原创 hostapd学习之路

hostapd使用方法

2024-01-05 17:38:45 509 3

原创 wifi桥接-sta和ap共存

wifi常见的几个模式,sta,ap,monitor,中继,桥接,本文主要讲述linux wifi做中继的通用方法ps:这里问大家一个问题,你认为中继和桥接的区别是什么?本文最后会给出答案;wifi做中继,主要分为如下几步,

2023-12-27 10:15:13 533

原创 brctl (bridge-utils)交叉编译及常见问题处理

brctl 是一个用于配置和管理 Linux 网桥的命令行工具,它通常与 “bridge-utils” 包一起分发,本次我们已bridge-utils-1.7.1.tar.xz版本来记录,brctl交叉编译及遇到问题的解决方法;在编译以下开源库时不同编译工具链编译结果可能存在差异(其他编译器可能存在编译不过的情况)

2023-12-21 20:32:39 654

原创 路由表(route)详细介绍及常见问题处理

在学习中成长,在处理一个其他网络相关的产测问题时涉及到了路由相关的知识,正所谓好记性不如烂笔头,虽说现在经常与路由打交道,相关知识还算记得清楚,但人总是会老,总有记性不好的一天,因此在这里简单做下记录。

2023-09-25 20:36:03 223

原创 奇偶校验、CRC校验区别

奇偶校验只能检测出误,无法确定错误发生具体是哪一位(奇偶校验能够检测奇数位错误的原因是,校验位的设置是依赖于数据位中1的个数的,如果偶数个1发生错误,比如一次有两个1变成了0,这个时候1的奇偶个数并不发生变化,因此检测不出来)CRC校验码 = 原数据左移N位 ÷ 生成多项式的系数 得到的余数,这里N为G(X)的最大次幂,即5。是利用一个特定的校验位,使得数据的二进制位数中包含奇数个1或偶数个1来判断数据传输是否正常。二进制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1。

2023-09-13 16:27:03 357

原创 DHCP学习之路

dhcp问题分析

2023-07-18 15:42:07 177

原创 findBackTrace

该py脚本用于gdb–在另外一篇文章https://editor.csdn.net/md/?articleId=124853547 有说明。

2023-06-06 16:01:34 106

原创 wpa_supplicant讲解

wpa_supplicant简介

2023-04-07 17:27:53 587 2

原创 source insight 工程创建工具

在创建kernel工程时,常常遇到代码加不全,一个内核中包含多个平台代码,不知道使用的是哪个的问题。同事wj分享了一个很好用的脚本工具,在这里给大家分享一下1.将下方代码保存为 xxx.sh ,执行 ./xxx.sh 工程目录 目标文件 例如“./PF_Prj_Gen.sh ./Linux-3.10.108/src/ output”2.执行完成后,脚本会根据工程目录中产物,将本次编译到的所有文件名字放在目标文件中。3.使用source insight创建工程,添加工程文件时根据 “add from

2023-03-15 14:16:57 285

原创 TCP 常见问题处理

TCP常见问题分析

2022-11-23 15:45:53 1341

原创 WiFi 射频测试指标学习之路

WIFI 性能调试分析方向

2022-11-22 16:23:29 6255 3

原创 hello world驱动(二)-初级版

helloworld驱动(二)讲述了一个简单helloworld驱动的实现,本次在原基础上新增文件操作接口的实现及应用。

2022-07-25 11:33:20 198

原创 fopen、fwrite、fseek、ftell、fread使用demo

fopen、fwrite、fseek、ftell、fread使用demo

2022-07-21 19:36:39 209

原创 hello world驱动(一)--基础版

记录自己学习linux驱动的成长之旅。(2022/07/162203)

2022-07-16 22:16:21 235

原创 tcp demo

TCP 用于tcp调试

2022-06-29 22:22:22 556

原创 WIFI MAC地址规则常见问题(WIFI MAC)

wifi mac

2022-06-01 11:47:07 4051

原创 常见死机定位方法gdb addr2line objdump

常见死机定位方法 Gdb addr2line objdump

2022-05-19 00:44:25 1114

原创 基于华硕AX3000 WPA2-Personal认证方式,设备连接失败问题处理

1 问题背景最近在XXX项目上,测试在做路由器兼容性测试,发现XX设备在连接ASUS TUF-AX3000型号路由器的WPA2-personal认证方式时,出现必现连接不上的现象,最后排查发现居然跟有多种Wpa2-personal有关。本文主要结合该问题,分享下排查和分析的思路,以及设计到的相关的知识点。通过本文的阅读,你可以了解到,a)如何抓取连接过程的空中包?(后续补)b)sta连接ap的过程是怎样的?扫描阶段ap和sta间交互空口包里面包含了什么?(后续补)2 问题描述我们先来看下当

2022-05-14 13:31:00 4169 3

原创 linux基础知识积累

1.GUN、GCC、gcc、g++区别。(GUN包含GCC,GCC包含gcc、g++、ICC)GNU:可以看作一个开源平台。里面有大量开源项目。GCC:GNU中的编译器项目。集成了多种语言的编译器,包括有gcc、g++。g++:GCC中的c++编译器。gcc:GCC中的c编译器...........................

2022-03-22 09:37:59 371

原创 80211协议错误码解析

802.11 Deauthentication Reason CodesClient Reason Code Description Meaning Poor Man Explaination 0 noReasonCode Normal operation. 1 unspecifiedReason Client associated but no longer authorized. We don’t know what’s wrong 2

2022-03-04 09:49:38 1230

原创 Git工具的学习之路

除了常用的git命令外,日常使用git时我们通常还会遇到一些各种各样的问题,本篇文章主要记录个人在使用git时遇到的一些问题,和解决方法1.PC与UNIX换行符不一致导致问题描述:git status,发现很多文件没有修改 但却显示修改了。网上查了下是因为UNIX和PC换行符不一致导致的。 按教程搞敲了命令不生效。后请教同事使用下面命令可行解决办法:git config core.filemode false......

2022-03-03 14:53:04 366

原创 交叉编译wpa_supplicant常见问题总结

由于单篇文章篇幅过长 发布会失败,故在此记录平时不同项目中使用wpa时遇到的问题及解决方法常见问题:a) 编译wpa_supplicant时提示libnl库中依赖的部分函数未实现如下所示libnl-3.5.0/_install/lib/libnl-3.a(libnl_3_la-socket.o): undefined reference to symbol 'pthread_rwlock_wrlock@@GLIBC_2.4'解决办法:缺少依赖库。解题思路度娘,其次在wpa_supplicant M

2022-02-19 15:24:00 1152

转载 spinor flash和spinand flash的区别

最近学习flash时,说W25Q64是NOR flash。这个NOR flash和NAND flash的概念一直搞不清,下面是查询的相关资料。1、结构方面:NORflash采用内存的随机读取技术。各单元之间是并联的,对存储单元进行统一编址,所以可以随机访问任意一个字。既然是统一编址,NORflash就可以芯片内执行,即应用程序可直接在flash内运行,而无需先拷贝到RAM。NANDflash数据线和地址线共用I/O线,需额外联接一些控制的输入输出。2、NOR flash有更快的读取速度NAND

2022-01-13 09:36:20 1974

转载 Linux shell文件属性判断

-d file 检查file是否存在并是一个目录-e file 检查file是否存在-f file 检查file是否存在并是一个文件-r file 检查file是否存在并可读-s file 检查file是否存在并非空-w file 检查file是否存在并可写-x file 检查file是否存在并可执行-O file 检查file是否存在并属当前用户所有-G file 检查file是否存在并且默认组与当前用户相同file1 -nt file2 检查file1是否比file2新file1 -

2022-01-10 20:24:04 267

原创 wifi 80211常见问题及相关知识

本文主要讲解如何从Beacon帧中区分AP的认证方式,其他内容日后慢慢填充(无法上传图片,日后补充)Beacon 802.11 Management - Beacon [0-32]中若包含WPA:则表示为WPA认证方式RSN:表示为WPA2认证方式WPS:支持WPS连接WEP:表示为WEP认证方式另加密方式如: CCMP(AES)、TKIP等也均可看到...

2022-01-10 16:51:07 1104

原创 epoll问题总结

1.epoll failed: Bad file descriptor的原因可能是IO事件的socket描述符在epoll_ctl()处理之前关闭了。if(epoll_ctl(epollFd, EPOLL_CTL_DEL, ev->fd, &epv) < 0)  fprintf(stderr, “Event Del failed[fd=%d], epoll failed: %s\n”,ev->fd, strerror(errno));在删除事件 epoll_ctl(kd

2022-01-10 10:45:38 1528

原创 makefile学习之 -fshort-enums的使用

gcc -c -Wall -fshort-enums**多数编译器默认enum型长度等于int型,**很多人也把enum型变量等同于int,但C标准在这里留下了尾巴:“枚举型尺寸是能够容纳最大枚举子值的整数尺寸”,“枚举类型中枚举子的值必须要能用一个int型表述”。也就是说,枚举型的尺寸不能超过int型,但不必等于int型,只要能容纳最大枚举子就行enum也有一个隐含问题:enum变量占用的空间与编译器相关enum长度不确定会带来可移植性问题。比如上层应用编译时没有用-fshort-enums,默认用

2022-01-10 10:32:55 1107

转载 堆与栈的区分

堆与栈的区分实际很多简单,如下距举例说明,更容易懂//main.cppint a = 0; //全局初始化区int a = 0; //全局初始化区char *p1; //全局未初始化区main() { int b; //栈 char s[] = "abc"; //栈 char *p2; //栈 char *p3 = "123456"; //123456\0在常量区,p3在栈上。 static int c = 0; //全局(静态)初始化区 p1 =

2021-12-28 15:48:40 99

原创 samba挂载方法

1、PC开启文件共享 打开控制面板\所有控制面板项\网络和共享中心\高级共享设置\公共文件夹共享2、文件夹设置共享选中文件夹-属性-共享3、设置设备IPifconfig eth0 10.36.208.200 netmask 255.255.255.0;route add default gw 10.36.208.2544、挂载电脑10.99.89.99mount -t cifs -o username=电脑用户名,password=电脑密码 //10.99.89.99/public_dev /

2021-12-25 17:32:00 1198

原创 C 结构体大小计算-易懂篇

废话不多说,以下方例子讲解结构体大小的计算方法。#include <stdio.h>typedef struct { char a; //2字节 short b[2]; //short占2字节,char占1,字节对其故a、b共占用2+2*2=6字节 char *c;//指针占用8字节,a、b需字节对其,故ab+c共占8+8=16字节 int d;//int占4字节,单c指针占用8字节,字节对其,故abc+d共占用16+8=24 long e;//long占用8字节故,abcd+e

2021-12-25 14:53:35 457

转载 c语言中signal函数详细说明--举例

在signal.h头文件中还有以下几个定义#define SIG_ERR (void ()())-1#define SIG_DFL (void ()())0#define SIG_IGN (void (*)())1系统调用signal用来设定某个信号的处理方法。该调用声明的格式如下:void (*signal(int signum, void (*handler)(int)))(int);在使用该调用的进程中加入以下头文件:#include <signal.h>上述声明格式比较复杂

2021-12-17 10:52:44 1162

原创 Lora开发常见问题

LORA开发过程问题总结一、 概述1.1 开发过程使用的ICLora芯片:sx1268(最终使用LLCC68)主控芯片:新唐M483 (最终使用M482)1.2 芯片开发注意事项SX1268(LLCC68)需配置Reset、DIO、BUSY、SPI PIN脚其中SPI配置需注意:CLK < 16MHzMODE:CPOL=0 CPHA=0二、开发过程问题总结(1)M483 SPI发送与接收,数据传输正确率为93%原因分析:逻辑分析仪接线导致数据传输偶尔异常。(2)M483

2021-12-11 15:05:58 1453

转载 ioctl 获取网卡流量信息(ifconfig的实现)1

本文内容自己暂未做验证,内容来自http://www.360doc.com/content/15/0806/18/18945873_489944405.shtml主要临时记录下ifconfig 实际使用的ioctl cmd,方便日后查看SIOCGIFFLAGSSIOCGIFHWADDRSIOCGIFMETRICSIOCGIFMTUSIOCGOUTFILLSIOCGKEEPALIVESIOCGIFMAPSIOCGIFTXQLENSIOCGIFADDRSIOCGIFDSTADDRSIO

2021-11-29 10:00:44 205

转载 单位dbm db的关系与区别

所谓的dBw就是跟功率跟1瓦比,既10lg(功率/1瓦特)dBm就是功率跟1毫瓦比,既10lg(功率/1毫瓦)所以0dBw就是它跟1瓦比算出来的结果是0,即它也是1瓦。所以1瓦等于1000毫瓦,跟1毫瓦比算出来的结果就是30,所以0dBw=30dBm.db,表示一个相对值。当计算A的功率相比于B大或小多少个dB时,可按公式10 lg A/B计算。例如:A功率比B功率大一倍,那么10lgA/B = 10lg2 = 3dB。也就是说,A的功率比B的功率大3dB;如果A的功率为46dBm,B的功率为40dB

2021-11-24 09:13:53 1546

原创 WPA3功能开发及验证

本文基于《openssl/libnl/wpa_supplicant开源库交叉编译》总结文档https://blog.csdn.net/Bgm_Nilbb/article/details/120724443前提:WPA3的支持是需要wpa_supplicant的版本>2.7 (本次使用2.9版本)依赖库版本分别为(libnl-3.2.0、openssl-1.0.2r、wpa_supplicant2.9)1.首先交叉编译出wpa_supplicant注意:a)是否开启SAE; 默认是支持的可从wp

2021-10-28 16:00:37 4077 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除