那么,他究竟是什么呢?

简单的来说,他就是一个平常静静地盯着你的小东西,当然,他盯着的是你周围的无线电信号。

比如,我手上戴着的手表,只要它开着机,就无时无刻地在向周围发射无线电信号,通过这些无线电信号,或许就能推断出你的大致位置,和大概的行进方向。

又比如,根据你手机到你家 Wifi 的每分钟数据包速度,推断出你的一些状态,比如深夜,无线信号突然不那么繁忙了,那么就可以推断出你已经睡了(对于我来说),或者说蛮想睡了,帮你关下灯,把无线网络关闭什么的。

总之,这些无线信号间所蕴藏的信息员比你想象的丰富,要是应用起来,那也是蛮有趣的一件事。

好,下面就来介绍一下这个项目,不过,由于最近比较忙,所以导致这个项目还处于一个非常初期的阶段。

首先是硬件部分,WRTONODE 和拓展版,很简单,一个 USB BLE 适配器,之前弄其他的东西的时候,20块钱左右买到的。然后就是一个 U盘,我做了 extroot.

837976567320618135

145426827459500997

然后是外部设备,一只土曼手表,和一套幻腾智能家居,当然要是能继续做下去的话,以后可以支持蛮多的设备。

然后是系统上的准备,运行以下的命令,准备一下所需要的依赖(目前)

            opkg update && opkg install jamvm bluez-libs bluez-hcidump bluez-utils kmod-bluetooth   aircrack-ng 

然后把这个下载下来,

            screen -S java

这样就开了一个能一直运行的东西。

然后,把这个拖下来。

                git clone https://git.zhaojin97.cn/glzjin/WirelessTrigger

编辑 src/wt/main.java 将开头

                private static String BluetoothMac="D0:31:2D:4F:84:0B";//你的蓝牙设备 MAC 地址
                private static int BluetoothIn=-75;//蓝牙进入阈值
                private static int BluetoothOut=-85;蓝牙脱出阈值,在这两个值之间才会触发
                private String MobilePhoneWifiMac="";//移动网络 SSID,
                private static String HuanTengBase64="";//Base64(UserName:Password); 需要将幻腾账户和密码 用 用户名:密码 的格式 生成base64 串,参考基本认证。
                private static String bullid="4117";//由幻腾 API (http://huantengsmart.com/doc/api_v1)通过获取灯泡信息获得,灯泡ID。

填好之后,编译,生成 jar 文件。

上传到 wrtnode 的 /root ,

然后,回到之前那个 screen 那,就可以输入

            jamvm -jar wt.jar //(你生成的 jar 文件名称)

然后,拿着你的手表来回走,你的灯泡就会根据你的距离远近,有规则地亮暗灯泡,这就是 trigger 被触发了。

视频:http://v.youku.com/v_show/id_XMTQ1NTY5ODgzNg==.html?from=y1.7-1.2

查看密码:wt

当然,最近很忙,所以也只抽了点时间做了点这些微小的东西,很感谢 云汉电子社区 能给这个机会,让我有机会把玩一下 Wrtnode ,同时也很惭愧,只做了那么点微小的东西,而且还很粗糙,并没有完成,权当抛砖引玉,之后有空再继续了,同时也欢迎各位来我的博客的这篇博文 https://www.zhaojin97.cn/read-3119.html 下和我进行交流,谢谢各位~

源代码地址:https://git.zhaojin97.cn/glzjin/WirelessTrigger