背景
最近老是记不住一些事情,写到备忘录有时候忘记看手机也白扯。想着是否用一些更明显的”提醒动作”来告知自己要做什么了。
想法
“明显的提醒动作”,在工位上的话,无非就是闪烁的灯光+刺耳的声音。那么满足这个的,树莓派就非常合适,顺便把尘封已久的技能拿出来擦亮一波。
那么有了这个方向,简单规划一下:
- 利用树莓派做基础环境支撑
- 利用
rgb led hat
做灯光提醒展示 - 利用3.5mm小喇叭做音频输出
- 写点python脚本
成果
先展示一波成果吧,编写的程序中,rgd led阵列灯可以展示多种图形,从而来区分到底我该干什么事情了。
- 比如这个笑脸,就是代表早上站会要开始了
- 比如这个感叹号,就代表要写运营报告了
- 等等
还有很多模型,也可以自己写一些模型,不过8x8的阵列限制比较多,所以没啥特别好看的。除非你买一些其他的显示屏接上。
开始
首先我们做这个之前,简单规划一下步骤:
- 给树莓派刷好系统
- 外接一个rgb led hat
- 外接一个3.5mm小喇叭
- 编写程序
- 增加定时任务
给树莓派刷好系统
这个不说了,我的就是一个树莓派4B,网上刷机教程多的不行,不浪费时间写这玩意了。
外接一个rgb led hat
买了一个rgb led hat
,本来想买一个sense hat
,最后想想其实用不到这么多功能和额外的传感器,干脆买一个最简单的led阵列就好了。
我直接买的就是支持gpio的hat,所以直接对接起来就好,非常简单。如下图:
最终我们给树莓派插上电,连接上网络大概就这样吧:
外接一个3.5mm小喇叭
对于播放声音,3.5mm的耳机音响,最合适不过了。不用额外的配置,插上就能用。
编写程序
首先确认一下需求:
- 支持展示不同模型(图案)
- 支持控制显示的时长、频率等
- 支持自定义提醒声音
- 支持增加定时任务
有了上面的内容,我写了代码,没啥难度,就是一些简单的逻辑:
1 | https://github.com/gsgs-libin/raspberrypi-remind |
手动运行
可以先看一下他的运行帮助:
1 | (remind) root@raspberrypi:/www/remind# python remind_index.py -h |
那么开始运行吧:
1 | (remind) root@raspberrypi:/www/remind# python remind_index.py -t output_weekly_report -m exclamation -v false |
效果展示
声音提醒
这个需要接入百度的api,然后个人申请的有调用限制,我白嫖了一个无限制的,放到github上了,想要用的可以直接用。
另外这个可以有妹子音
,还是非常不错哦!
定时任务
利用crontab,增加自己一系列提醒事项,举个简单例子吧
每天早上10点提醒我写日报:
1 | 0 10 * * * root python remind_index.py -t output_weekly_report -m smile -v false |