CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 9696|回复: 7

想做个蓝牙无线透传ttyS0终端,碰到问题[解决中]

[复制链接]
发表于 2013-9-24 12:28:26 | 显示全部楼层 |阅读模式
本帖最后由 soloforce 于 2013-11-8 15:52 编辑

因为以前做过Arduino的无线透传,用来下载代码很方便,所以想在CB上也做一个;既可以远程查看kernel信息,也可以远程登录过去操控CB。基本的思路如下:

CB端:
硬件方面:
  • 用一个蓝牙转串口模块接到CB的UART0(就是默认的四针串口),设置蓝牙模块的波特率为115200,密码随意;这样UART0进出的信息都可以从蓝牙模块上获取。
软件方面:
  • CB的内核输出信息应该从UART0走(不需要配置内核,因为默认配置已经是UART0)
  • uEnv.txt里面的内核引导参数要设定 console=ttyS0,115200
  • /etc/inittab 里面要有如下的可能选择(我还没搞清楚该怎么写)
          T0:12345:respawn:/sbin/agetty -h -t 120 ttyS0 115200 vt100
          T0:12345:respawn:/sbin/getty -L ttyS0 115200 vt100
  • 其他。。。。

电脑端:

硬件方面:
  • 如果笔记本之类的有内置蓝牙,所以不需要其他硬件了
  • 台机的话买一个USB蓝牙适配器,20多元
  • 担心蓝牙驱动问题的话也可以直接买个蓝牙转串口模块+USB串口dongle,稍微贵点要30多块。

软件方面:
  • 如果用的是蓝牙设备,应该写一个蓝牙设备通信程序,可以借助libbluetooth-dev这个库
  • 如果用的是USB串口+USB 蓝牙dongle,则要写一个串口通信程序,这个也简单



目前的问题
  • 用官方的A20 Linaro Server固件,用串口线接上CB后,可以通过 minicom/超级终端/gtkterm 连上 CB的ttyS0,输入输出都没问题;然而改用CB蓝牙模块做输入输出时,远程PC端只能接收到CB输出的信息,CB端却无法接受远程端PC发送过去的输入信息。原因不明。
  • 改用自己构造教程做的debian系统,结果更糟糕。用串口线连接CB后,发现 minicom/超级终端/gtkterm 只能接收CB的输出信息,而完全不理会键盘的输入,也就是说无论怎么按键盘,ttyS0木有动静【原因已经找到,见解决方法部分】。。。串口线检查过了,没有问题。原因不得其解。

希望各位大大帮忙看看,我哪里出问题了。


解决方法
  • 首先要确认minicom的hardware control & software control 已经选择为no,否则无法输入。

我写了一个文档,参考链接:
http://docs.cubieboard.org/tutor ... ireless_serial_port

回复

使用道具 举报

发表于 2013-9-26 23:04:51 | 显示全部楼层
你不会是只开 ttyS0 的 console,没开 /etc/inittab 中的 agetty ttyS0?

你有蓝牙、usb转TTL线、蓝牙串口模块,怎么不在电脑上组个回环测试下硬件?

仅供参考。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-27 06:25:32 | 显示全部楼层
yuruyi 发表于 2013-9-26 23:04
你不会是只开 ttyS0 的 console,没开 /etc/inittab 中的 agetty ttyS0?

你有蓝牙、usb转TTL线、蓝牙串口 ...

谢谢您的回复!
/etc/inittab里面已经打开了agetty ttyS0; 并且 /etc/securetty 里面也有了ttyS0;
蓝牙、串口通信已经测试过了没问题,因为以前一直都是正常的;

现在的问题是,为什么我用串口线连接CB后只能得到CB的输出信息,却不能往CB输入信息? 换言之,串口连接CB,要实现ttyS0 console的话要具备哪些要求?
回复 支持 反对

使用道具 举报

发表于 2013-9-28 16:33:15 | 显示全部楼层
确认硬件没问题,那你需要优先检查蓝牙串口模块到cb串口的接线。
回复 支持 反对

使用道具 举报

发表于 2013-9-28 17:38:47 | 显示全部楼层
刚想起来一点,以前用qemu-system-arm模拟器测试时,有那么几次也出现过类似现象,模拟串口有输出,重启一两次就好啦,一直没在意过。
回复 支持 反对

使用道具 举报

发表于 2015-4-14 14:55:42 | 显示全部楼层
我目前也在用蓝牙转串口模块+USB串口连接ct板子上的BT,配对上了,用minicom终端没点反应,不知道怎么搞,大神,能给点提示吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-15 15:34:47 | 显示全部楼层
本帖最后由 soloforce 于 2015-4-15 15:36 编辑

波特率设对没?就是蓝牙模块的波特率和CB USB2TTL端口(或者minicom里面的波特率)的波特率要一致, 另外, 要确认minicom的hardware control & software control 已经选择为no,否则无法输入。


回复 支持 反对

使用道具 举报

发表于 2015-4-21 16:16:10 | 显示全部楼层
soloforce 发表于 2015-4-15 15:34
波特率设对没?就是蓝牙模块的波特率和CB USB2TTL端口(或者minicom里面的波特率)的波特率要一致, 另外, ...

我设置的是ttyS1,38400;ttyUSB0,38400,我确认把minicom的hardware control & software control 选择为no.还有我用手机蓝牙连接ct内置蓝牙,只能单向传输文件,就是手机可以往开发板传,这怎么解
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|粤ICP备13051116号|cubie.cc---深刻的嵌入式技术讨论社区

GMT+8, 2024-11-22 18:59 , Processed in 0.024650 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc. | Style by Coxxs

返回顶部