很久没折腾 Home Assistant 了,近期从范老师那里收到了一款很好玩的内测产品 Sleepal,可以通过 Matter 协议接入 HA,通过非接触的方式监测睡眠状态。可以在 HA 拿到入睡状态,近而实现一些原来不能实现的自动化,非常有趣,分享一下。

包装盒不错!

首先说一下 Sleepal AI Lamp

不知道中文名叫啥,睡宝?睡灯?… 睡登?😂

之前 Webto 还在范老师那搬砖的时候参与过这款产品,那时我正被睡眠问题困扰,之前听他聊起来就非常感兴趣:

  • 放在床头,不需要佩戴,即可像 Apple Watch 一样跟踪睡眠。
  • 睡眠分析:通过手机的数据结合 AI 给出睡眠的改善建议。(最早我记得是说基于 CBTi,这部分还没体验到。)
  • 哄睡功能和无痛唤醒,具有 RGB 氛围灯和白噪音音箱。

具体的原理是通过配备的毫米波雷达点阵热阵列传感器声学传感器来跟踪身体数据,同时通过收集环境光温湿度信息评估睡眠环境。

“MI Style” 的设计风格

我拿到的测试版,实际用起来的感受就是睡觉不用佩带 Apple Watch,也能拿到和 Apple Watch 一样的睡眠数据了,数据也可以同步到 Apple Health。准确度上我感觉和 Apple Watch 差不多,同时会提供一些比 Apple Watch 更详细一些的维度,比如睡姿、睡眠环境分析等。我测试的重点主要是 HA 连动,更详细的功能介绍可以去看产品的众筹页面官网

Sleepal 传感器图 via KickStarter
传感器原理图,图源 KickStarter

首个可以接入 HA 的非接触入睡传感器

先加足够定语叠个甲,因为接触式的似乎有 Withings Sleep 以及个别自制方案。非接触式做到 Apple Watch 精准度的完整产品应该是头一个?

睡的还行,但好像暴露了昨晚打鼾的事实好羞耻… 😳

Sleepal 支持 Matter,可以通过 Matter 方式接入 HomeKit 和 Home Assistant。具体方式是通过 Sleepal App > 我的 > 我的 Sleepal > Matter ,打开配对即可开启。因为目前 Matter 功能还在内测,所以传感器还没有整理,目前可以得到有效的 HA 实体:

  • 一个light实体:控制 Sleepal 的灯光,目前支持亮度、冷暖调节,RGB 的部分还没有接入。
  • 一组binary_sensor实体:入睡状态、在床状态、起夜监测、助眠状态、闹钟和 Snooze,以及还有一些不知道作用的实体
  • 一组sensor实体:环境温度、湿度、照度

Matter 进 HomeKit 时,表现为灯光和一组人在传感器

目前 Matter 与 HA 的开发还比较早期,可以看到 Vendor 和 Device Name 还是 TEST

目前对我比较有用的实体就是入睡状态在床状态

入睡传感器,是一个非常有用的自动化 Trigger!

一天最重要的生活场景转化发生在卧室,我的卧室就有非常多的自动化,它们围绕着入睡与醒来。比如入睡前播放助眠音乐,调暗卧室灯光,开启环境家电与卧室外的监控摄像头。或者醒来时开启窗帘,调整灯光场景等。

其中一些场景可以主动触发(如语音指令或按钮),或者做基于时间触发的自动化。但一些场景就比较麻烦,比如睡着后关闭助眠音乐 – 因为你无法在睡着的时候告诉 HA 你睡着了 >_<!

之前有关人的状态就只有人在传感器与运动传感器,它们都无法分辨入睡状态,有了入睡/醒来状态,思路一下就打开了。分享几个我最近用的有趣的场景。

Sleepal 入睡传感器 HA 截图
入睡 / 醒来 状态的二元传感器

💤 睡着后,关闭 🎵助眠音乐,关闭 💡主卧灯光

之前失眠耳鸣给自己找到的哄睡办法是 HomePod 播放助眠音乐,同时主卧将灯光调到舒适的暗调。通过一个倒计时逐渐调低音量和灯光。Time Based Rule 的问题就是有时没睡着音乐停了,或者睡着了又给吵醒了。入睡传感器完美解决了这个问题。

 睡着后,关闭 助眠音乐,关闭 主卧灯光 Home Assistant 截图
推荐我一直用的一个 Apple Music 助眠歌单:Sound Bath 非常好睡…
再推荐一下我的 Nanoleaf 木纹奇光板吧!我用它模拟睡前摇曳的烛火氛围。

💤 入睡后,开启摄像头。🛏️ 起夜 或 🌞醒来时,关闭摄像头

卧室外有几个小米摄像头做出差看家。有了入睡检测后,可以在睡着后也自动开启。醒来时关闭,避免拍下衣衫不整的自己 😳。

看家模式的脚本,会打开卧室以外的所有摄像头,并给手机发送通知已告知摄像头打开了。

🌞 起床后,关闭环境电器,自动开灯

原来我的主卧新风、加湿器与空调都是基于定时关闭的,现在可以时间更酷的自动化。我的厨房和餐厅是我早起洗漱后第一个要去的地方,我新家了一个自动化:起床后,如果阴天的话,帮我开启餐厅的射灯。新的一天还是要有一个明亮的开始!

脚本说明:我餐厅四个角有 4 盏射向天花板的,我让它们根据太阳的入射角sensor.sun_solar_azimuth 来独立调整亮度,让光源模拟真实太阳光的方向,以实现更好的清晨唤醒效果。✌️

variables:
  solar_azimuth: "{{ states('sensor.sun_solar_azimuth') | int}}"
  is_evening: >-
    {{ ( solar_azimuth >= 0 and solar_azimuth < 90 ) or ( solar_azimuth > 270
    and solar_azimuth < 360 )}}
  light_1_brightness: "{{ ((solar_azimuth - 270)/180) | abs if is_evening else 0 }}"
  light_2_brightness: "{{ (1 - light_1_brightness) | abs if is_evening else 0 }}"
  light_3_brightness: "{{ 0 if is_evening else ((solar_azimuth - 90) / 180) | abs}}"
  light_4_brightness: "{{ 0 if is_evening else (1 - light_3_brightness) | abs }}"

更多好玩的可能性…

还有更多的可玩之处,还没有来得及实验,准备旅行回来试试。比如:

  • ❄️ 空调控制:根据入睡时长动态调整温度风速。Sleepal 的温度传感器离你最近,所以也可以代替空调自身的温度传感器,实现更接近体感的空调温控。加湿器同理。
  • 💡夜灯模式:起夜离床时,提前打开卫生间夜灯,甚至提前掀开可红外遥控的马桶盖(如 Toto 的 CES802CS),躺床后自动复原,实现更前置灵敏的夜间卫生间整备。

目前的内测版上随着 Matter 接入 HA 的实体有好几个保留项未被定义,不知道未来是否会开放更多。心率呼吸应该是在设备端比较容易,睡眠评分可能是在 app 端生成,不知道是否能够同步 HA。它们能够开放的话,甚至可以通过睡眠质量来进行自动化控制,比如“睡的不好的话,早餐 BGM 自动挑选更轻松的唤醒歌单”。

总之,这是一个非常好玩的产品,也是目前我最能接受的睡眠监测的形态。同时可以带给我很多关于 Home Assistant 控制的新灵感和新思路。产品据说已经开发三年,团队也是「小米人在传感器」的开发者,非常靠谱。目前众筹中,应该可以邮国内,欢迎支持一下范老师哇。

  • 新年以来,在家闲了 2 个月,上周静下心来,忽然想写写 Blog。忽然发现上一次更新还是 5 年前。那么,随便聊聊最近在做什么吧。

    早春工作日的颐和园
    这周三下午和老梁在颐和园散步。初春的颐和园太美了:水面一半是薄冰,一半是流水。鸟类在冰面走着走着,然后泳入活水。

    更新了我的 Blog 以及 博客系统

    想写点东西还是在上周,打开万年没进来的 Blog 后台(竟然还在工作),发现一堆更新提醒,而且我的博客竟然还是基于 HTTP 的(而非 HTTPS)。然后就进入了一个支线,琢磨把系统更新一下。开始时想切换到基于Node.js 的 Ghost 系统,主要是支持 Markdown。在测试环境部署之后,才发现 Ghost 竟然不支持原生评论。我的 WordPress 上有上百条历史评论,于是重新折腾到 WordPress。

    琢磨这套模板貌似都用了快十年,要更新一下外观。Wordpress 目前支持了古腾堡 Block Theme 系统,是非常灵活的主题定义系统(几乎不用再写 PHP 代码),然后就发现进入了一个大坑!这货混身上下都是 bug 啊,我这一个礼拜,几乎就是在看文档和各种 Google。Wordpress 社区也非常让人无语,比如一个文章 Query 的 bug,非常常见,竟然快一年了都没有 Close。

    不过这个过程也非常有趣,重新熟悉了前端那一套东西,以及学习读懂部分 WordPress 的 PHP 代码。怎么说呢?想写一篇 5 年以来的更新,结果花了一个星期,但也挺有趣的。

    想要提高信息阅读质量,自建了一个 RSS 服务器

    去年下半年养成的一个特别好的习惯就是上网冲浪的时候,开始寻找高质量的长内容了。

    我发现,今天大家喜欢短文字和短视频,其实是和你的焦虑值相关的(并没有什么科学道理)。当你不再焦虑,你就不需要太多低质量的短内容(就像烦躁的时候想吃快餐)。反过来,增加高质量内容的获取,也会缓解你的焦虑值,同时为你节省很多时间。

    然而想获得高质量的内容在今天的中文互联网环境又非常麻烦。甚至在知乎这样的长内容平台,你也要花很多时间片来筛选信息,当然也避不开兴趣广告和算法茧房。

    于是,我琢磨,把 Reeder 下回来吧(这货竟然在中国区下架了)。同时,搭建了一个基于 FreshRSS 项目的自建 RSS 服务器。开始使用的是大家都推荐的 Tiny Tiny RSS,部署好了之后发现也是一堆 bug,比如与 Webkit 有严重的兼容性 bug。FreshRSS 则简单好用,并且 Reeder 对 FreshRSS 源有原生的支持。

    然而服务部署好之后,就遇到了一个新的问题,如今高质量的 RSS 源已经非常难找了,尤其是中文互联网。还看到另外一个开源项目叫做 RSSHub,可以将社交平台的内容转为 RSS 订阅源。如果你有推荐的 RSS 源,欢迎评论推荐给我。

    然后附上我近期对信息获取的一些看法:

    Kindle 最高质量的内容来自电子书(当然取决于书籍本身),可以给到你最详细、结构化、有因有果的内容。使用电子书阅读器的好处是它会简化读书行为的动作消耗,同时又能避免屏幕上各种推送打断你的注意力,沉浸阅读。同时支持标注功能,可以回看。然而让人难过的是,Kindle 很快就会停止在中国的服务。

    RSS 好处是你可以避开各种平台的推荐陷阱和广告,同时又能方便把所有信息放在同一个时间做深度阅读。比如,我原来只听机核的广播,很少看文章。订阅了 RSS 之后,我发现机核的文章都蛮不错的。

    知乎 在知乎,还是有很多深藏 Blue 的 Pro,以及很好的逻辑及 Paper 引用的风气氛围。然而你还是需要精力去辨别营销号,以及帮助推荐算法帮你开拓新视野。

    马家'微博' 可能是因为赚不到钱,所以真正非营销号的内容丰度就很高。我关注了一些开发者和艺术家,作为可以跟得上时髦的补充信源。

    微博 因为工作的原因,每天的工作内容之一就是看微博、写微博。最大的问题是(至少我的 Feeds)大部分的内容是营销内容,以及自媒体,非常多的搬运与断章取义,以及信息运作。另外一个问题就是过度娱乐化,找到 ‘useful’ 的信息非常困难,浪费时间。

    每周花两三个下午逛公园

    我发现比起在公司上班,日历精确到半小时,赋闲在家的时间管理要比上班困难很多。你会特别投入地做一件事情(比如折腾我的博客系统),然后不知不觉几个下午就没了(简单来说就是死宅)。

    由于缺乏锻炼以及肥胖缠身,我有一天突发奇想去透透气,找了离家里最近的一个山,然后我就开启了一个新的世界:原来工作日的公园,和周末的公园,是两个完全不同的副本!它没有人,它十块钱门票可以包场!

    走走路、散散步、登登高、望望远,心情非常舒畅。一高兴连着去了两周,每周两三个下午。偶尔约上同样待业在家的朋友,走路聊天,比吃饭喝酒什么的健康多了。

    于是抱着省钱的态度,办了一张京津翼公园年卡,特别要注意的是,主办单位是:中国老龄产业协会老年旅游产业促进委员会。😭

    努力把博客更新起来

    写写博客,还是很让人开心的一件事情。工作以后,基本就是 N 年一更,所以每一次回来看看几年前的自己写的文字,就觉得…. 矫揉造作、无病呻吟、幼稚可笑、胡言乱语!写这些破字的人真TM是我么?

    嗯,所以,写写博客,还是能帮你保存一下你的历史版本快照。年纪一大,就觉得人的成长就是每 5 年变成另外一个人,这是人生的乐趣也是悲剧。那么不妨把我的所见所想,以非常幼稚的文字记录下来吧。

    因为最近家里正在装修,所以可能过几个月,我会分享一些关于装修的经验和坑。

    然后,可能会分享一下过去一年我拥有过的有趣的小众电子产品,以及好玩的东西。

    也可能,发一些逛公园的打卡照,和一些即兴的想法。

    争取这一次更新博客,可以坚持个… 几个月!😓

    5年之后,我又更新了有2条评论