close
今天要来介绍 Punch Through 所推出的 LightBlue Bluetooth BLE 方案的 start kit,目前推出的两种装置,都是透过 BLE 方式进行连结。
[caption id="" align="aligncenter" width="245"] 出處:Punch Through[/caption]
Bean 和 Bean+ (土豆和土豆进化版?)都是透过募资平台,然后经过一连串的研发、制作、测试,最后量产的产品,基本上去年年底下单到出货,大概也历经半年之久。
[caption id="" align="aligncenter" width="257"] LightBlue Bean+[/caption]
Bean 与 Bean+ 最大的差别,应该就是支持的 I/O 以及加入了 Grove 接口,并且从原本 Bean 使用的不能充电的钮扣电池,改为可充电式锂电池。另外最大的差别,我想就是 Bean 之前并没有提供快速接口,甚至要使用还必需先准备烙铁,把需要用的节点先焊上才可以使用。
[caption id="" align="aligncenter" width="308"] 出处:https://socialwearablesciid2015.wordpress.com/[/caption]
软件方面,Bean 系列都可以透过任何平台来进行开发,甚至还可以透过手机进行程序的修改,可以说非常的方便使用。至于 Bluetooth 最重要的 profile 竟然还支持多种类型,包含:
[caption id="" align="aligncenter" width="377"] 出处:Punch Through[/caption]
让我们开始整合 Bean/Bean+ 到 NAS 吧!
在开始与 Bean/Bean+ 进行联机之前,需要先准备 BLE USB 装置,在这边我使用的是 SENSE 推出的 BLE 装置,记得一定要有支持 BLE (Bluetooth LE) 功能的喔!
[caption id="" align="aligncenter" width="319"] USB BLE + NAS[/caption]
如果要确定是否有安装成功,可以透过 SSH 进到 NAS,利用 lsusb 将目前的 USB 装置列出,目前我使用的是 “Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)"
[~] # lsusb
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 003 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 003 Device 004: ID 1005:b155 Apacer Technology, Inc.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
确认 USB 正确安装成功后,接着安装 Bean + Node-Red 的 docker image,此连结的 image 主要是已经将所需要的 Bean SDK 和 Node-Red 怖署完成的版本(连结包含相关教学)。
在这边需要特别注意的是,无法直接透过 Container Station 的管理页面进行 image 的布署,要直接透过下面的指令去产生 image,最主要是要将 USB 相关装置的信息 pass-through 到 image 里使用。
[~] # docker run -t -i --name qbean_test --cap-add=SYS_ADMIN --privileged --net=host -v /dev/bus/usb:/dev/bus/usb -v /run/dbus:/run/dbus -v /var/run/dbus:/var/run/dbus jarvischung/qbean bash
建立完成后的 image,可以透过 http://your-nas-ip:1880 开启 Node-Red,并且可以看到已经默认安装好的 LightBlue Bean Node-Red 模块。从下面的 node 模块可以发现,Bean/Bean+ 默认是支持温度、三轴以及 RGB LED 传感器的功能,下面会一一介绍。
[caption id="" align="aligncenter" width="177"] 安装好的LightBlue Bean模组[/caption]
除了已经安装好的相关模块外,为了快速取得目前手上的 Bean/Bean+ 装置相关的 UUID,可以透过 http://your-nas-ip:1880/bleScan/ 已经透过 Node-Red 建立好的 BLE Scan API 取得现有的装置信息。
[caption id="" align="aligncenter" width="643"] 預設產生好的 BLE Scan API[/caption]
呼叫此 API 后,需要等待约 30s 的时间,如果 USB BLE 与 Bean/Bean+ 有正确开启,基本上会取得 Bean/Bean+ 相关装置的信息(此 API 并不会列出非 Bean/Bean+ 装置)。
[caption id="" align="aligncenter" width="722"] 透过 Node-Red 产生 BLE Scan API[/caption]
取得 Bean/Bean+ 装置的 UUID 后,我们要开始来设定 Bean node。下图是新增 Bean node 的页面,UUID 部份就是刚刚透过 BLE API 取得的信息; Connection部份有两种模式:
[caption id="" align="aligncenter" width="372"] 新增 Bean config[/caption]
为什么要分两种联机方式呢?
主要是 BLE 虽然省电,毕竟并不是每一种状况都需要让 startkit 都在工作模式下,透过此方式也可以让 Bean/Bean+ 更省电喔!
下图是直接使用 Node-Red 拉好的 flow,可以快速的取得 Bean/Bean+ 装置内建的温度传感器信息。
[caption id="" align="aligncenter" width="674"] 透过 Node-Red 取得 Bean/Bean+ 温度资讯[/caption]
换试另一个三轴传感器的 node,可以马上取得信息。
[caption id="" align="aligncenter" width="618"] 透过 Node-Red 取得 Bean/Bean+ 三轴感测器资讯[/caption]
如果想要改变 Bean/Bean+ 装置上 RGB LED 的颜色,直接将 inject node 改送 red string 即可以改变状置的 RGB LED 颜色。支持的格式有:
是不是觉得 NAS 整合 start kit 很方便啊!未来会分享更多 Bean/Bean+ 相关装置的应用,像是:
[caption id="" align="aligncenter" width="279"] 改变 Bean+ 的 RGB LED[/caption]
同步发表于:I’m RD.
[caption id="" align="aligncenter" width="245"] 出處:Punch Through[/caption]
Bean 和 Bean+ (土豆和土豆进化版?)都是透过募资平台,然后经过一连串的研发、制作、测试,最后量产的产品,基本上去年年底下单到出货,大概也历经半年之久。
[caption id="" align="aligncenter" width="257"] LightBlue Bean+[/caption]
Bean 与 Bean+ 最大的差别,应该就是支持的 I/O 以及加入了 Grove 接口,并且从原本 Bean 使用的不能充电的钮扣电池,改为可充电式锂电池。另外最大的差别,我想就是 Bean 之前并没有提供快速接口,甚至要使用还必需先准备烙铁,把需要用的节点先焊上才可以使用。
[caption id="" align="aligncenter" width="308"] 出处:https://socialwearablesciid2015.wordpress.com/[/caption]
软件方面,Bean 系列都可以透过任何平台来进行开发,甚至还可以透过手机进行程序的修改,可以说非常的方便使用。至于 Bluetooth 最重要的 profile 竟然还支持多种类型,包含:
- iBeacon: 支援 Apple 的 iBeacon
- MIDI: 可将 MIDI 讯号导入至 Bean
- HID: 可透过无线键盘、鼠标,甚至还可以透过支持 HID 的蓝芽游戏手把来进行控制
- ANCS: 可以接收 iOS 的讯息,类似 iWatch 的方式
- OBSERVER: 用来传送讯息到各种不同的装置
[caption id="" align="aligncenter" width="377"] 出处:Punch Through[/caption]
让我们开始整合 Bean/Bean+ 到 NAS 吧!
在开始与 Bean/Bean+ 进行联机之前,需要先准备 BLE USB 装置,在这边我使用的是 SENSE 推出的 BLE 装置,记得一定要有支持 BLE (Bluetooth LE) 功能的喔!
[caption id="" align="aligncenter" width="319"] USB BLE + NAS[/caption]
如果要确定是否有安装成功,可以透过 SSH 进到 NAS,利用 lsusb 将目前的 USB 装置列出,目前我使用的是 “Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)"
[~] # lsusb
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 003 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 003 Device 004: ID 1005:b155 Apacer Technology, Inc.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
确认 USB 正确安装成功后,接着安装 Bean + Node-Red 的 docker image,此连结的 image 主要是已经将所需要的 Bean SDK 和 Node-Red 怖署完成的版本(连结包含相关教学)。
在这边需要特别注意的是,无法直接透过 Container Station 的管理页面进行 image 的布署,要直接透过下面的指令去产生 image,最主要是要将 USB 相关装置的信息 pass-through 到 image 里使用。
[~] # docker run -t -i --name qbean_test --cap-add=SYS_ADMIN --privileged --net=host -v /dev/bus/usb:/dev/bus/usb -v /run/dbus:/run/dbus -v /var/run/dbus:/var/run/dbus jarvischung/qbean bash
建立完成后的 image,可以透过 http://your-nas-ip:1880 开启 Node-Red,并且可以看到已经默认安装好的 LightBlue Bean Node-Red 模块。从下面的 node 模块可以发现,Bean/Bean+ 默认是支持温度、三轴以及 RGB LED 传感器的功能,下面会一一介绍。
[caption id="" align="aligncenter" width="177"] 安装好的LightBlue Bean模组[/caption]
除了已经安装好的相关模块外,为了快速取得目前手上的 Bean/Bean+ 装置相关的 UUID,可以透过 http://your-nas-ip:1880/bleScan/ 已经透过 Node-Red 建立好的 BLE Scan API 取得现有的装置信息。
[caption id="" align="aligncenter" width="643"] 預設產生好的 BLE Scan API[/caption]
呼叫此 API 后,需要等待约 30s 的时间,如果 USB BLE 与 Bean/Bean+ 有正确开启,基本上会取得 Bean/Bean+ 相关装置的信息(此 API 并不会列出非 Bean/Bean+ 装置)。
[caption id="" align="aligncenter" width="722"] 透过 Node-Red 产生 BLE Scan API[/caption]
取得 Bean/Bean+ 装置的 UUID 后,我们要开始来设定 Bean node。下图是新增 Bean node 的页面,UUID 部份就是刚刚透过 BLE API 取得的信息; Connection部份有两种模式:
- “connection on event": 代表当有事件时,才会进行 Bean/Bean+ 的联机(使用此方式,还需要设定 Timeout 的时间,也就是 event 结束后,多久的时间会自动断线)。
- “constantly connected": 一旦 deploy 后,Bean/Bean+ 会直接联机,不会断开。
[caption id="" align="aligncenter" width="372"] 新增 Bean config[/caption]
为什么要分两种联机方式呢?
主要是 BLE 虽然省电,毕竟并不是每一种状况都需要让 startkit 都在工作模式下,透过此方式也可以让 Bean/Bean+ 更省电喔!
下图是直接使用 Node-Red 拉好的 flow,可以快速的取得 Bean/Bean+ 装置内建的温度传感器信息。
[caption id="" align="aligncenter" width="674"] 透过 Node-Red 取得 Bean/Bean+ 温度资讯[/caption]
换试另一个三轴传感器的 node,可以马上取得信息。
[caption id="" align="aligncenter" width="618"] 透过 Node-Red 取得 Bean/Bean+ 三轴感测器资讯[/caption]
如果想要改变 Bean/Bean+ 装置上 RGB LED 的颜色,直接将 inject node 改送 red string 即可以改变状置的 RGB LED 颜色。支持的格式有:
- 格式 1: 送进 node 的字符串可以有 “Red", “Green", “Blue" 以及 “Off"
- 格式 2: 送进 node 的字符串可以是 RGB 数值的组合,例如:0,255,255 或是255,0,255
是不是觉得 NAS 整合 start kit 很方便啊!未来会分享更多 Bean/Bean+ 相关装置的应用,像是:
[caption id="" align="aligncenter" width="279"] 改变 Bean+ 的 RGB LED[/caption]
- 如何透过手机简单的使用 Bean/Bean+
- 如何自定义scratch,更方便的取得其它传感器的信息
同步发表于:I’m RD.
全站熱搜
留言列表