索尼相机现在支持基于蓝牙低功耗 (BLE) 的控制协议。该接口允许客户端控制以及从支持 BLE 的遥控器获取状态。
遙控器
对于启用了索尼 BLE 的相机,发现过程相当简单。应用程序如何发现相机是通过在广告制造商数据中搜索索尼的蓝牙制造商:
ID 0x012D (Little Endian)。(这里是因为上面换行了,这里回分开)
捕获的信息
SONY制造商的bit意思
总而言之,我们搜索其制造数据包含以下内容的tag包:
0x2D 0x01 0x03 0x 00 0x64 0x 00
我们不一定要搜索特定的型号代码,但可以搜索你的特定应用程序。我们的相机是 e-mount,因此传输 ASCII 'E1'ModelCode = 'E1'
标签
最后,我们通过<00>寻找相机的状态。每个tag可以添加多个标签。
Tag 22H
例如
Tag 21H
这个标签似乎主要由Send to Smartphone Func .-> Cnct 设置。电源关闭选项期间。
设备名称
设备名称是用户可配置的,并作为广告数据包发送。
UUID
唯一的 UUID 也在 a7c 上发送,但不在 a7m4 上。这可能是每个相机独有的。例如 ILCE-7C 有8E3F7E15-AF80-1567-D946-A9190C2Cf98A
服务
支持的摄像机有多种操作模式,可确定哪些服务可操作。我们将专注于 DIRC 服务,但为了完整起见,这里有各种模式。
相机控制服务
该服务支持对 BLE 的各种相机控制。相信这个服务比 DIRC 有更多的功能,但它的使用目前受到客户的限制。一旦客户端开始使用此接口,您就可以确定我们会窥探该接口。如果“Bluetooth Rmt Cnt”被激活,Camera Control Service 将被禁用。
相机控制服务目前正被索尼应用程序用于 BLE 到 Wifi 切换。它的许多特征似乎是为了支持FTP 服务器,但这并没有得到证实。CC40确实包含所有 FTP 用户提供的服务器名称,因此我们希望处理的特征适用于9个FTP 服务器。
仅限ILCE-7C
相机定位服务
这个特性似乎是为了让您的移动设备主动将位置和时间数据推送到您的相机。这在“位置信息。链接设置”时启用。
相机配对服务
此特性似乎允许相机不受限制地配对和关闭。
命令(未经测试)
相机遥控服务
该服务提供了一种通过一小部分功能来控制相机的方法。
命令
回应
如果存在协议错误,IRC 将返回 0x0185 GATT 状态。如果拍摄照片或开始录制等过程,将发送各种通知。
原生的遥控器260元,有了协议,几十块钱就可以做一个,而且功能可以做的更多。
至于实现,我应该是写过。大家感兴趣的去翻翻。
外面拍了天空
代码语言:javascript复制https://gethypoxic.com/blogs/technical/sony-camera-ble-control-protocol-di-remote-control