有人知道如何建立从自编的iOS应用程序到蓝牙连接的蓝牙连接 全新LEGO Mindstorms EV3可编程砖?
我尝试通过scanForPeripheralsWithServices:options:CBCentralManager的方法执行此操作, 但砖块不被识别。
但如果我在iPhone的设置中启用蓝牙,则会在那里显示EV3设备。 LEGO(“Commander”)的AppStore中还有一个应用程序通过蓝牙与砖块对话,所以我认为这应该是可能的(因为我知道,以前的Mindstorms NXT砖块是不可能的)。 / p>
有人知道我该怎么做吗?
谢谢!
答案 0 :(得分:3)
如上所述,设备未使用CoreBluetooth列出,使用EAcessory框架获取它,您需要在App-Info.plist中的UISupportedExternalAccessoryProtocols中使用“COM.LEGO.MINDSTORMS.EV3”项:
<EAAccessory: 0x15567180> {
connected:YES
connectionID:18565483
name: MFI Accessory
manufacturer: LEGO
modelNumber: DM240411
serialNumber:
firmwareRevision: 1.0.0
hardwareRevision: 1.0.0
protocols: (
"COM.LEGO.MINDSTORMS.EV3"
)
delegate: (null)
}
与乐高应用程序一样,您需要先使用设置应用程序连接到EV3。 然后,查看Apple EADemo示例,它展示了如何使用EASession(封装读/写流)。
也许发送从monobrick.dk源代码中收集的C#等数据(在Mailerdaimon回答中说)将起作用......我将通过Wifi尝试(在将C#移植到ObjC,长期工作之后),之后,写作到EASession可能会更容易。完成后我会更新这个答案。
答案 1 :(得分:1)
您必须等到乐高发布SDK,希望其中包含有关协议的信息。 有可能使用NXT,我认为可以使用EV3。
与此同时,您可以尝试通过Wifi possible right now发送消息。
答案 2 :(得分:0)
请注意,EV3有两种协议可通过蓝牙进行通信。一个用于iPhone上的LEGO EV3应用程序,另一个用于通过USB-HID和WiFi提供,部分由Communication developer manual和source code指定。后一种协议是您应该使用的协议。
您可以致电/链接/查看my uploader c4ev3的源代码,了解如何实现连接。
HTH。
答案 3 :(得分:-1)