magic 2.0下使用杂牌蓝牙适配器并通过手机gprs上网

news/2024/11/24 11:12:45/
一、.安装
bluez-libs 2.24 http://download.chinaunix.net/download/0001000/990.shtml
bluez-utils 2.24 http://download.chinaunix.net/download/0001000/991.shtml
官方网站上有提供3.7版的下载。但经过小弟试验,好像因为3.x版的不支持kdebluetooth1.0-0.beta1版的kbluepin。导致无法与手机配对。我在ChinaUnix.net下载了这两个程序的源码包。(很奇怪,2.25版的在我的机器上无法编译.......)

二、.装完这两个程序后,插上蓝牙适配器。打开Konsole,su 取得root权限。

1. 运行命令 lsusb 应该可以看到: (如果没有请确认你的适配器有正确插入,usb插口跟适配器无损坏,还是没有的话,那以下就可以不用看了)

Bus 001 Device 002: ID 1131:1001 Integrated System Solution Corp. KY-BT100 Bluetooth Adapter <------不同型号显示有所不同,能认出就行

运行 hciconfig 可以看到:

hci0: Type: USB
BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:0 acl:0 sco:0 events:0 errors:0
TX bytes:0 acl:0 sco:0 commands:0 errors:0

没有激活。激活它。运行:

hciconfig hci0 up

2. 配置 Bluez
修改 /etc/bluetooth/hcid.conf 文件

*********************************************************************
#
# HCI daemon configuration file.
#

# HCId options
options {
# Automatically initialize new devices
autoinit yes;

# Security Manager mode
# none - Security manager disabled
# auto - Use local PIN for incoming connections
# user - Always ask user for a PIN
#
security user; <--------安全模式,需要手动输入密码

# Pairing mode
# none - Pairing disabled
# multi - Allow pairing with already paired devices
# once - Pair once and deny successive attempts
pairing multi;

# PIN helper
pin_helper /usr/lib/kdebluetooth/kbluepin; <--------pin_helper 的位置。

# D-Bus PIN helper
#dbus_pin_helper;
}

# Default settings for HCI devices
device {
# Local device name
# %d - device id
# %h - host name
name "BlueZ (%d)"; <---------设备名称,可以自己修改双引号内的内容为自己想要的名称

# Local device class
class 0xff0100;

# Default packet type
#pkt_type DH1,DM1,HV1;

# Inquiry and Page scan
iscan enable; pscan enable;

# Default link mode
# none - no specific policy
# accept - always accept incoming connections
# master - become master on incoming connections,
# deny role switch on outgoing connections
lm accept;

# Default link policy
# none - no specific policy
# rswitch - allow role switch
# hold - allow hold mode
# sniff - allow sniff mode
# park - allow park mode
lp rswitch,hold,sniff,park;

# Authentication and Encryption (Security Mode 3)
#auth enable;
#encrypt enable;
}

********************************************************************************

3. 打开手机的蓝牙。运行 hcitool scan 可以得到:

Scanning ...
00:13:70:2D:0E:08 Nokia 3230 <---------你的手机。偶的是“挪积压 3230”。前面是手机的MAC地址。

运行命令
sdpd
hcid start
kbluetoothd 或者是K菜单--->互联网--->kbluetoothd (蓝牙服务器)
然后在手机上进行蓝牙配对。成功后,就可以试试在电脑上右键点任一文件,动作-->通过蓝牙发送,将文件发送给手机。手机也可以传送文件进电脑了。

三、现在,要设置蓝牙连接手机WAP代理上网了 (忘记在哪个网看到的了,原文是E文的。)
所用的工具:
pppd(用来拨号的)
rfcomm(用来连接手机拨号服务)

1. 需要建立编辑的文件有2个:
第一个:/etc/ppp/peers/gprs
内容如下:

/dev/rfcomm0
230400
defaultroute
usepeerdns
user ''
password bobo
nodetach
crtscts
lock
noauth
local
debug
connect "/usr/sbin/chat -v -f /etc/ppp/chat-gprs"

第二个:/etc/ppp/chat-gprs
内容如下:

TIMEOUT 10
ABORT 'BUSY'
ABORT 'NO ANSWER'
ABORT 'ERROR'
"" 'ATZ'
OK 'AT+CGDCONT=1,"IP","cmwap" ' <---------如果你是使用cmnet节点的,可以将cmwap改成cmnet,那不用代理就能上网,不过钱就..贵啊!
ABORT 'NO CARRIER'
SAY 'Dialing..../n'
OK 'ATD*99#' <---------"*99#"这个号码各地都不一样,请自己查找地方移动的网站
CONNECT ''


2.运行 sdptool search DUN 搜索设备的DUN服务,即网络拨号服务。

Inquiring ...
Searching for DUN on 00:13:70:2D:0E:08 ...
Service Name: Dial-Up Networking
Service RecHandle: 0x10005
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2 <---------你手机RFCOMM的工作信道。记住了啊。不同机型是不同的
Language Base Attr List:
code_ISO639: 0x454e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

3. 修改/etc/bluetooth/rfcomm.conf

*******************************************************************************
#
# RFCOMM configuration file.
#

rfcomm0 {
# Automatically bind the device at startup
bind yes; <---------将 no 改为 yes

# Bluetooth address of the device
device 00:13:70:2D:0E:08; <---------改为你手机的MAC地址

# RFCOMM channel for the connection
channel 2; <---------改为你手机RFCOMM的工作信道。

# Description of the connection
comment "Example Bluetooth device";
}
**********************************************************************************

4. 绑定rfcomm0到手机上:

rfcomm bind /dev/rfcomm0 [MAC] [channel]

根据你手机的情况编写。这里的命令应该写成:

rfcomm bind /dev/rfcomm0 00:13:70:2D:0E:08 2

所谓绑定,类似于设定/dev/rfcomm0对应某个确定的蓝牙设备和它的某个channel。可以把它想像为将一条串口电缆连接到某台计算机上的某个串口上。

5. 运行命令进行拨号:

pppd call gprs

输出差不多如下的东东,那么恭喜你 ,成功了!!!
Dialing....
Serial connection established.
using channel 3
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x6df58d43> <pcomp> <accomp>]
rcvd [LCP ConfRej id=0x1 <magic 0x6df58d43> <pcomp> <accomp>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0>]
rcvd [LCP ConfReq id=0x0 <auth pap> <mru 1500> <asyncmap 0xa0000>]
sent [LCP ConfAck id=0x0 <auth pap> <mru 1500> <asyncmap 0xa0000>]
sent [PAP AuthReq id=0x1 user="MagicLinux" password=<hidden>]
sent [PAP AuthReq id=0x2 user="MagicLinux" password=<hidden>]
rcvd [PAP AuthAck id=0x2 ""]
PAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [IPCP ConfReq id=0x0 <addr 10.6.6.6>]
sent [IPCP ConfAck id=0x0 <addr 10.6.6.6>]
rcvd [LCP ProtRej id=0x0 80 fd 01 01 00 0c 1a 04 78 00 18 04 78 00]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 10.213.77.9> <ms-dns1 0.0.0.19> <ms-dns3 0.71.35.128>]
sent [IPCP ConfReq id=0x3 <addr 10.213.77.9> <ms-dns1 0.0.0.19> <ms-dns3 0.71.35.128>]
rcvd [IPCP ConfAck id=0x3 <addr 10.213.77.9> <ms-dns1 0.0.0.19> <ms-dns3 0.71.35.128>]
local IP address 10.213.77.9
remote IP address 10.6.6.6
primary DNS address 0.0.0.19
secondary DNS address 0.71.35.128
Script /etc/ppp/ip-up started (pid 3208)
Script /etc/ppp/ip-up finished (pid 3208), status = 0x0

6.打开firefox浏览器,(其它的浏览器请自己查找代理服器的设置)
编辑--->首选项--->高级--->网络--->连接--->设置--->手动配置代理
HTTP 代理 填上 10.0.0.172 端口为 80
OK!!现在可以上网了,速度跟用MODEM拨号差不多。。

PS:如果没有配对或是没有设置电脑为授权设备,会要求确认联接,另外,每次开机都要以root权限运行
hciconfig hci0 up
sdpd
hcid start
rfcomm bind /dev/rfcomm0 00:13:70:2D:0E:08 2
你可以将以上命令编成一个Shell脚本。嘿嘿。

注意:要退出系统时最好把kbluetoothd退出,并选择不要在系统启动时运行,不然下次启动系统会导致kbluetoothd出错并失去响应。 

http://www.ppmy.cn/news/562623.html

相关文章

游戏蓝牙耳机怎么选?游戏大神推荐四款好用的游戏蓝牙耳机

现如今&#xff0c;喜欢戴蓝牙耳机玩游戏的人越来越多&#xff0c;伴随着游戏蓝牙耳机市场越来越充盈&#xff0c;人们在选择蓝牙耳机时不免陷入纠结&#xff0c;一时不知道该选哪款。游戏蓝牙耳机怎么选&#xff1f;首先我们需要看蓝牙耳机的延迟是多少&#xff0c;延迟越低&a…

电竞玩家必备的配件|新生代蓝牙——电竞级音频发射器

目录 方案实现 硬件设计 ►场景应用图 ►展示板照片​编辑 ►方案方块图 ►核心技术优势 ►方案规格 随着最新一代蓝牙5.3 LE Auido规范的发布&#xff0c;各个芯片厂家纷纷发布自己符合新规范的蓝牙芯片&#xff0c;其中身为规范制定者的其中一方——高通&#xff0c;也…

WIN版手机充当电脑蓝牙键盘适配器

第二标题&#xff1a;SOCKET通讯与SENINPUT发送键盘消息 by the way&#xff0c;其实大部分代码都是抄抄抄&#xff0c;拼凑出来的简陋作品&#xff0c;连隐藏黑窗口都没做&#xff0c;高手们别见笑 咳咳&#xff0c;言归正传&#xff0c;事情起因是这样的—— PC用的键盘是五年…

你所不知道的蓝牙适配器的好处

你所不知道的蓝牙适配器的好处 目前办公室和家里的各种设备逐渐增多&#xff0c;各种数据线几乎要把我们的办公桌占满了&#xff0c;不仅摆放麻烦&#xff0c;要使用某个设备的时候还要亲自动手去插拔。 有了蓝牙适配器&#xff0c;没有蓝牙的台式电脑就可以直接连接蓝牙鼠标、…

Android 经典蓝牙(Classic Bluetooth)和低功耗蓝牙(BLE)

从蓝牙4.0开始包含两个蓝牙芯片模块&#xff1a;传统/经典蓝牙模块&#xff08;Classic Bluetooth,简称BT&#xff09;和低功耗蓝牙&#xff08;Bluetooth Low Energy,简称BLE&#xff09; 经典蓝牙是在之前的蓝牙1.0,1.2,2.0 EDR,2.1 EDR,3.0 EDR等基础上发展和完善起来的&am…

基于富芮坤fr8016 蓝牙5.0 芯片设计的BLE HID Joystick 游戏摇杆设备

文章目录 ble hid 学习笔记HID报告描述符与BLE HID profile之间关系1、HID报告描述符 富芮坤fr8016 设计Joystick例子1、描述X轴Y轴Z轴2、描述按钮3、Joystick 报告描述符4、程序修改5、win10测试6、android 测试 总结 ble hid 学习笔记 HID报告描述符与BLE HID profile之间关…

2023-06-25 LeetCode每日一题(圆和矩形是否有重叠)

2023-06-25每日一题 一、题目编号 1401. 圆和矩形是否有重叠二、题目链接 点击跳转到题目位置 三、题目描述 给你一个以 (radius, xCenter, yCenter) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2) &#xff0c;其中 (x1, y1) 是矩形左下角的坐标&#xff0c;而 (x2…

【PCB专题】Allegro中设置泪滴

PCB绘制完成后有时按需要对PCB进行添加泪滴的操作是非常必要的。 添加泪滴的作用主要是: 信号传输时平滑阻抗,减少阻抗的急剧跳变,避免高频信号传输时由于线宽突然变小而造成反射。 焊接时可以保护焊盘,避免多次焊接时焊盘的脱落,生产时可以避免蚀刻不均,以及过孔偏位出…