1、在layer1层添加了解析sniffer的代码

参考http://git.osmocom.org/osmocom-bb/log/?h=luca/gsmmap)osmocom-bb/src/target/firmware/layer1/prim_sniff.c

2、关于改不改滤波器的一点个人见解(没找理论支持的,纯属yy)

在原装手机情况下,不改滤波器是也能够收到uplink的数据;

对于为什么要修改滤波器,估计原因是:因为gsm 通信上行和下行频率相差几十M的频率,估计修改了滤波器后就能通过更宽的频率.

修改滤波器后,很多手机信号是很不好的.测试没改的手机,都是60db左右,改了后,很多都变为90db 100db了~

对于tdma对时序要求很严格,导致很多改了后的机器软件各种不稳定也不奇怪;

RF的器件,大部分人都是按照网上那几个电容溶值进行修改的,其实那两个电容容值是国外作者在修改的时候用的值而已,不同的硬件,应该使用不同的电容~电容差别一点点,可能信号差别很大...这个估计需要一个懂rf电路的哥们实际测试,才能弄出一个改了以后信号蛮好的手机玩玩;

3、代码学习

http://blog.mohism.org/technology/2012/09/15/osmocombb-code-view-1.html

http://blog.mohism.org/technology/2012/09/16/osmocombb-code-view-2.html

这两篇文章对于代码到调制相关的框架流程都解析了,仔细对照代码里面.

4、理论与其它分享

4.1 理论

帧的结构,代码都是围绕这个流程来跑的

下面两个文章都讲解的比较清楚

http://www.sharetechnote.com/html/FrameStructure_GSM.html

http://www.pitt.edu/~dtipper/2720/2720_Slides8.pdf

4.2 时隙问题

由于origin/luca/gsmmap 这个分支只是一个demo类型的软件,它只对ts0做了处理;

所以很多人反映根本收不到自己在同一个频点发的sms;

下面的连接讨论了这个多TS的问题;

http://baseband-devel.722152.n3.nabble.com/Working-of-ccch-scan-and-capturing-the-SDCCH-td4025206.html

https://www.facebook.com/rootpid001/posts/552211568160704

gprs多时隙代码补丁参考.

wget http://srlabs.de/dl/gprs_multi.patch

可以支持4个ts的补丁,因为是针对gprs的,需要参考代码,自己修改;我按照代码部分进行了修改测试,发确实可以收到多个时隙的sms,但是可能由于dsp处理能力的问题,和代码没有做相关优化,系统基本没法使用,经常挂;

主要原因在于,Frame 是以中断的方式触发的,tdma对时序要求比较高,处理了多个ts的时候会占用太多cpu的资源,而且osmocombb里面对于数据处理也没做很好的优化,导致第一个frame还没处理完成,第二个frame中断又触发了frame的处理,多次积累后,有些资源没做clean然后数据都解析不了了,然后系统就挂了.

有很多通过修改了默认ts0 为ts2 ts4 ts6的办法.采用4个手机可以抓一个频点的50%(ts 1 3 5 7 这几个好像dsm patch里面也没处理,但是看讨论好像也能抓.宅在研究过程中......)的sms数据...

Osmocom-BB 相关资源、知识分享的更多相关文章

  1. XML的相关基础知识分享(二)

    前面我们讲了一下XML相关的基础知识(一),下面我们在加深一下,看一下XML高级方面. 一.命名空间 1.命名冲突 XML命名空间提供避免元素冲突的方法. 命名冲突:在XML中,元素名称是由开发者定义 ...

  2. XML的相关基础知识分享

    XML和Json是两种最常用的在网络中数据传输的数据序列化格式,随着时代的变迁,XML序列化用于网络传输也逐渐被Json取代,前几天,单位系统集成开发对接接口时,发现大部分都用的WebService技 ...

  3. MemoryStream相关知识分享

    一.简单介绍一下MemoryStream MemoryStream是内存流,为系统内存提供读写操作,由于MemoryStream是通过无符号字节数组组成的,可以说MemoryStream的性能可以算比 ...

  4. 分享一些JAVA相关资源

    前言 以前在学习JAVA时,因为搜索相关资源过于不便,所以在搜集了一些好用的资源之后,将此分享. 文档主要包括面试文档, JAVA的技术文档(如JAVA并发实战.设计模式之类),LINUX的相关文档以 ...

  5. 【RAC】RAC相关基础知识

    [RAC]RAC相关基础知识 1.CRS简介    从Oracle 10G开始,oracle引进一套完整的集群管理解决方案—-Cluster-Ready Services,它包括集群连通性.消息和锁. ...

  6. JAVA相关基础知识

    JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...

  7. 【DB宝47】企业知识分享+团队协作神器之Confluence

    目录 一.Confluence简介 二.知识库软件对比 三.快速安装confluence 7.4.6版本 四.confluence基本操作简介 4.1.创建空间(Space) 4.2.配置空间权限 4 ...

  8. .NET同步与异步之相关背景知识(六)

    在之前的五篇随笔中,已经介绍了.NET 类库中实现并行的常见方式及其基本用法,当然.这些基本用法远远不能覆盖所有,也只能作为一个引子出现在这里.以下是前五篇随笔的目录: .NET 同步与异步之封装成T ...

  9. iOS之在写一个iOS应用之前必须做的7件事(附相关资源)

    本文由CocoaChina--不再犹豫(tao200610704@126.com)翻译 作者:@NIkant Vohra 原文:7 Things you must absolutely do befo ...

  10. 《玩转D语言系列》二、D语言现状、基本规定和相关资源介绍

    这算是本系列文章的一个序吧,主要是为以后的学习做铺垫,文本分为三个部分,第一部分是对于网上一些比较旧的资料的问题的一些更正,当然我也不可能看过所有的资料,难免会有遗漏.第二部分是D语言最基本的规定,第 ...

随机推荐

  1. hdu----(1671)Phone List(Trie带标签)

    Phone List Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  2. OID,主键生成策略,PO VO DTO,get和load区别,脏检查,快照,java对象的三种状态

    主键生成策略 sequence 数据库端 native 数据库端 uuid  程序端 自动赋值 生成的是一个32位的16进制数  实体类需把ID改成String 类型 assigned  程序端 需手 ...

  3. 漫谈iOS Crash收集框架

    漫谈iOS Crash收集框架   Crash日志收集 为了能够第一时间发现程序问题,应用程序需要实现自己的崩溃日志收集服务,成熟的开源项目很多,如 KSCrash,plcrashreporter,C ...

  4. C#语言基础——7月21日

    C#语言基础 一.语言基础 (一).函数的四要素:      名称,输入,输出,加工(二).主函数.输出语句.输入语句:     Static void Main(string[] args)//下划 ...

  5. 小心buffer的拼接问题 --转

    最近遇见一个从前没有遇见的陷阱,就是data里的chunk拼接. 由于本人身为前端工程师,对buffer的概念实在是认识不足.这次的场景是我要通过http.get去抓取远端的网页文件,很不小心的是对方 ...

  6. vsto publish后无法弹出winform窗口

    http://www.cnblogs.com/xiyang1011/archive/2011/06/07/2074025.html - - 没有调用form.show()...

  7. 部署步骤“回收 IIS 应用程序池”中出现错误: <nativehr>0x80070005</nativehr><nativestack></nativestack>拒绝访问。

    解决方法:以sharepoint管理员身份进入主站点,修改站点的网站集管理员.

  8. 设置正确的post数据格式

    之前一直使用苏飞的HttpHelper类来访问网络,用起来一直感觉很爽.使用其工具直接生成访问代码很是方便.直到昨天下午做到需要使用wpf来post两个字段数据到服务器,服务器使用ASP.NET MV ...

  9. ios 定位获取当前位置信息

    啊,倦怠的人生啊~~ 什么事情都没做一眨眼就2点半了啊!!赶紧爬起来写博客啊. 诸位看官会鄙视我么,表示我真心不是把这当技术文章写的啊. 啊,下午我们来第二篇.获取地理位置信息.嗯嗯,秘籍上说叫逆向地 ...

  10. Java 多线程中run() 与 start() 的不同

    区别:调用start方法实现多线程,而调用run方法没有实现多线程 Start: 用start方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码.通过调 ...