Osmocom-BB 相关资源、知识分享
1、在layer1层添加了解析sniffer的代码
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的问题;
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 相关资源、知识分享的更多相关文章
- XML的相关基础知识分享(二)
前面我们讲了一下XML相关的基础知识(一),下面我们在加深一下,看一下XML高级方面. 一.命名空间 1.命名冲突 XML命名空间提供避免元素冲突的方法. 命名冲突:在XML中,元素名称是由开发者定义 ...
- XML的相关基础知识分享
XML和Json是两种最常用的在网络中数据传输的数据序列化格式,随着时代的变迁,XML序列化用于网络传输也逐渐被Json取代,前几天,单位系统集成开发对接接口时,发现大部分都用的WebService技 ...
- MemoryStream相关知识分享
一.简单介绍一下MemoryStream MemoryStream是内存流,为系统内存提供读写操作,由于MemoryStream是通过无符号字节数组组成的,可以说MemoryStream的性能可以算比 ...
- 分享一些JAVA相关资源
前言 以前在学习JAVA时,因为搜索相关资源过于不便,所以在搜集了一些好用的资源之后,将此分享. 文档主要包括面试文档, JAVA的技术文档(如JAVA并发实战.设计模式之类),LINUX的相关文档以 ...
- 【RAC】RAC相关基础知识
[RAC]RAC相关基础知识 1.CRS简介 从Oracle 10G开始,oracle引进一套完整的集群管理解决方案—-Cluster-Ready Services,它包括集群连通性.消息和锁. ...
- JAVA相关基础知识
JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...
- 【DB宝47】企业知识分享+团队协作神器之Confluence
目录 一.Confluence简介 二.知识库软件对比 三.快速安装confluence 7.4.6版本 四.confluence基本操作简介 4.1.创建空间(Space) 4.2.配置空间权限 4 ...
- .NET同步与异步之相关背景知识(六)
在之前的五篇随笔中,已经介绍了.NET 类库中实现并行的常见方式及其基本用法,当然.这些基本用法远远不能覆盖所有,也只能作为一个引子出现在这里.以下是前五篇随笔的目录: .NET 同步与异步之封装成T ...
- iOS之在写一个iOS应用之前必须做的7件事(附相关资源)
本文由CocoaChina--不再犹豫(tao200610704@126.com)翻译 作者:@NIkant Vohra 原文:7 Things you must absolutely do befo ...
- 《玩转D语言系列》二、D语言现状、基本规定和相关资源介绍
这算是本系列文章的一个序吧,主要是为以后的学习做铺垫,文本分为三个部分,第一部分是对于网上一些比较旧的资料的问题的一些更正,当然我也不可能看过所有的资料,难免会有遗漏.第二部分是D语言最基本的规定,第 ...
随机推荐
- python 练习 27
ython continue 语句跳出本次循环,而break跳出整个循环. continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环. continue语句用在whil ...
- Android 子activity关闭 向父activity传值
使用startActivity方式启动的Activity和它的父Activity无关,当它关闭时也不会提供任何反馈. 可变通的,你可以启动一个Activity作为子Activity,它与父Activi ...
- js 数组的判断
<javascript语言精粹>中的 var is_array = function(value){ return value && //判断值是否为真,不接受null和其 ...
- 你不知道的JavaScript--面向对象高级程序设计
转载http://blog.csdn.net/i10630226/article/details/51088841 1. JS是基于原型的程序 建立一个简单的面向对象的类.有属性,有方法. funct ...
- OC 实例变量(instance var)与属性(@property)的关系 isa指针
实例变量(instance var)与属性(@property)的关系 Objective-C 2.0之后,声明一个@property name自动产生一个实例变量,名为_name,因此省去实例变量和 ...
- C++统计一段文字中各单词出现的频率
#include <iostream> using namespace std; /* run this program using the console pauser or add y ...
- WebDataTree 使用XML做数据源绑定数据
英文版原文链接:http://www.infragistics.com/help/topic/e5f07b51-ee2d-4a33-aaac-2f43cffff327 所使用的控件版本为:Infrag ...
- java入门第三步之数据库连接【转】
数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...
- oracle查锁表SQL
SELECT l.session_id sid, s.serial#, l.locked_mode, l.oracle_username, s.user#, l.os_user_name,s.mach ...
- js控制html文字提示语的出现和隐藏
有时我们需要在点击html输入框的时候,旁边会出现提示语.在输入字符的时候,输入框下边会出现输入了多少字符的提示. 请看下面实例. <!DOCTYPE html> <html> ...