版主: wanchong , wangyu , eepwwp , firedom

分享到:
共10条 1/1 1   

intel_Edison使用自带蓝牙

    [您是本帖的第1664位阅读者]
iamacb1
我是MM
普通会员

最后登陆时间:2015-01-13 22:09:50

直达楼层
1# 发表于 2015-04-24 23:49:03

 intel Edison官方系统只开放了HID和PAN权限,HID指的像键盘鼠标之类的人机交互设备,PAN是蓝牙局域网,其他协议需要等到第二版更新才会支持,下图为intel官方PPT介绍


 过年这段时间对Edison自带的蓝牙进行了调试试验,现在已经可以与HC04, HC05, HC06蓝牙模块进行通信(理论上只要是蓝牙透明串口的模块都支持),但不算完美,就边完善边更新帖子了。
      我使用的Edison是刷入Debian系统(刷入debian教程),因为现在没有yocto系统进行调试,所以yocto系统需要等待下次更新。
     

蓝牙模块与arduino连接,我使用的是HC04
     
硬件连接
HC04   ARDUINO
TXD->     10
RXD->     11


下面是蓝牙模块连接arduino运行的代码

[C] 纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <SoftwareSerial.h>
 
SoftwareSerial mySerial(10, 11);// RX, TX
 
voidsetup()
{
 
  Serial.begin(9600);
  while(!Serial) {
 
  }
 
  mySerial.begin(9600);
}
 
voidloop()
{
  if(mySerial.available())
    Serial.write(mySerial.read());
  if(Serial.available())
    mySerial.write(Serial.read());
}




对Edison操作

       首先打开putty以管理员账户登录
       输入”apt-get update"回车
       输入”apt-get install libusb-dev libdbus-1-dev libglib2.0-dev automake libudev-dev libical-dev libreadline-dev rfkill“回车
       输入“ 
apt-get install bluetooth bluez-utils "回车       输入“ wgethttp://www.kernel.org/pub/linux/bluetooth/bluez-5.28.tar.xz "回车
       输入 " tar xf bluez-5.28.tar.xz "回车
       输入 " cd bluez-5.28 "回车
       输入 " ./configure –disable-systemd ”回车,手工输入命令,不要复制
       输入 ”make -j 2"回车
       输入 ”make install "回车
       下载附件  所需文件.rar (306.55 KB, 下载次数: 28) 解压缩,然后使用winscp把文件按照相应路径复制到Edison,权限设置为0755。
       输入”mkdir /etc/firmware"回车
       输入" cp /lib/firmware/bcm43341.* /etc/firmware/"回车
       输入”bluetooth_rfkill_event &"回车,按Ctrl+C
       输入" rfkill unblock bluetooth"回车,按Ctrl+C
       输入"hcitool scan”回车,搜索蓝牙模块
 
       输入“nano /etc/bluetooth/rfcomm.conf”回车,编辑配置文件,
修改成下面这样,注意,需要去掉几个注释,请认真对比。

# RFCOMM configuration file.
#

rfcomm0 {
#       # Automatically bind the device at startup
        bind yes;
#
#       # Bluetooth address of the device
        device 98:D3:31:30:0E:E6;  #替换成刚才搜索到模块的MAC地址
#
#       # RFCOMM channel for the connection
        channel 1;
#
#       # Description of the connection
        comment "BC04-B";   #修改成刚才搜索到模块的名称
}

修改完以后输入“Ctrl+X保存


     输入”echo "xx:xx:xx:xx:xx:xx 1234" >> /var/lib/bluetooth/xx:xx:xx:xx:xx:xx/pincodes “回车
     XX:XX 替换成刚才搜索到的地址    1234替换成你的模块PIN码       xx:xx:xx:xx:xx:xx/pincodes里的XX替换成Edison蓝牙的地址


     输入"/etc/init.d/bluetooth restart"回车,重启蓝牙服务

     输入”cat /dev/rfcomm0 " 回车,在arduino的串口输入任意字符都会显示到Edison 控制台上,
按"Ctrl +C 退出接收

给HC04蓝牙模块发送消失
     输入“ echo "test">/dev/rfcomm0" 就会在arduino串口控制台显示出来




Edison重启以后需再次激活Edison自带模块,命令为:
      输入”bluetooth_rfkill_event &"回车,按Ctrl+C
       输入" rfkill unblock bluetooth"回车,按Ctrl+C
结束


        蓝牙调试的时候用了很多的命令,可能有些命令在我的Edison上有操作,但我没写出来,麻烦论坛的朋友按照上面操作的时候反馈一下与什么错误没有, 只有一个Edison,所以没办法把Edison初始化,我也就没办法测试了。


RE:by zpeng

lacv
我是MM
普通会员

最后登陆时间:2015-01-14 10:41:16

2# 发表于 2015-04-25 09:23:44
外围模块到不错

RE:by zpeng

damei
我是MM
普通会员

最后登陆时间:2015-01-14 11:10:51

3# 发表于 2015-04-26 07:22:40
学习了

RE:by zpeng

meixiuer
我是MM
普通会员

最后登陆时间:2015-01-14 11:06:32

4# 发表于 2015-04-26 19:13:09
很不错的经验贴。赞

RE:by zpeng

fulinlongtom
我是MM
普通会员

最后登陆时间:2015-01-14 11:08:16

5# 发表于 2015-04-27 09:15:40
楼主大神

RE:by zpeng

chaoyuer
我是MM
普通会员

最后登陆时间:2015-01-14 11:06:44

6# 发表于 2015-04-27 12:29:27
坐等更新

RE:by zpeng

asdfghjkl123
我是MM
普通会员

最后登陆时间:2015-01-14 10:52:30

7# 发表于 2015-04-27 20:21:44
谢谢分享,有你们好幸福

RE:by zpeng

lswork
我是MM
普通会员

最后登陆时间:2015-01-14 11:03:08

8# 发表于 2015-04-28 13:03:04
赞呐!

RE:by zpeng

wu554992
我是MM
普通会员

最后登陆时间:2015-01-14 10:56:45

9# 发表于 2015-04-29 09:19:23
楼主,能否请教几个问题啊

RE:by zpeng

bxk311a
我是MM
普通会员

最后登陆时间:2015-01-14 11:10:04

10# 发表于 2015-05-10 15:02:31
问一下,作为初学者做这个上手合适吗?
共10条 1/1 1   
快速回复主题
  • 匿名不能发帖!请先 [ 登陆 注册 ]