蓝牙 SPP:蓝牙 SPP Pro (Android) 与 Microchip SmartData (iOS)



All,

我正在尝试通过 SPP 配置文件与连接到微控制器的 RN4678 蓝牙芯片进行通信。

我从来没有遇到过安卓应用程序的问题。我总是可以配对(如果没有配对(、连接、向芯片发送消息和断开连接。下面是一个示例会话:

%CONNECT,AB9876543210%
%RFCOMM_OPEN%
%TEST%    <-- Message sent using the keyboard ("Byte Stream Mode" option)
%RFCOMM_CLOSE%
%DISCONN%

使用 iOS 应用程序,我始终可以配对(如果未配对(、连接和断开连接。但是,如果我无法向芯片发送消息。下面是一个示例会话:

%LCONNECT,499B107AB1B5,1%
%LSECURED%
<-- Here I try to send a message, but it is never received
%DISCONN%

有趣的是,如果我首先使用Android连接/断开连接,然后使用iPhone/iPad连接,则接收成功!!!

%LCONNECT,499B107AB1B5,1%
%LSECURED%
%TEST%      <-- Yeah !!! Microcontroller receives the message
%DISCONN%

据我所知,处理的路径是相同的......换句话说:

if(msg equals "RFCOMM_OPEN" or msg equals "LSECURED")
go to state that monitors incoming messages

因此,我恳请以下几点:

1 - 你遇到过类似的事情吗?你有什么提示吗?Android应用程序可能做什么iPhone应用程序没有做的事情?我忽略或不理解什么?

2 - 您是否知道适用于iOS和Android的应用程序?我的意思是,由同一个人/公司设计?

如果您需要更多信息,请询问。我只是不想太"啰嗦"。

感谢您的协助。

真诚地 文森佐

全部,

在我的工作中,我们一直在使用两个RN模块:RN4677(我们从这个模块开始(和RN4678。

该模块允许用户进入(和退出(命令模式。RN4677 允许在仍处于命令模式时与管理器进行双向通信。RN4678 不允许在仍处于命令模式时与管理器进行双向通信。

我需要做的就是退出命令模式(通过发出命令'---\r'(。现在这两个模块都可以与Windows/Android/iOS一起使用...

总结一下:

command "$$$r" to enter command mode
various commands, requests for settings, ...
command "---r" to exit command mode (a must for RN4678)

现在两个模块都可以正常工作

我必须说...故障排除很痛苦...

真诚地

文森佐

最新更新