低成本DIY可编程WIFI像素时钟Awtrix

在解决树莓派吃灰这一问题的时候偶然看到了AWTRIX这个项目,虽然半年前就有关注过,但是当时觉得成本太高就放弃了,上个星期刚好又看到了,并且淘宝一搜发现简简单单做一个其实也用不了多少钱,于是就有了这篇文章。AWTRIX是一个德国作者的开源项目,基于这个开源项目,只需自行购买基础的硬件、简单搭建服务端和客户端软件,就可以拥有一个可玩性很强的像素时钟。

硬件购买

本次DIY可编程WIFI像素时钟MATRIX成本100软妹币。

  • 8*32可编程像素屏 (淘宝搜索WS2812B)

  • ESP8266开发板(D1 mini)

  • 杜邦线(母对母、公对公、公对母)

  • DC电源及供电线

  • 光敏电阻(用于自动亮度功能)、1K 电阻 配合光敏电阻使用、1000uF 10V电容 (用于稳定电源)

  • AWTRIX格栅、均光板、有机玻璃面板(因为没有3D打印机只能买现成的了,全网就找到这一家。淘宝搜索:像素弯)

  • 外壳(外壳是妹子送我的积木拆下来拼的,就算零成本了)

配置服务端(树莓派)

因为刚好有个树莓派就直接用树莓派做为服务端了。不一定要用树莓派,如果刚好有能24小时跑 Java 或 Docker 的机器也可以用。

打开官网,地址如下:https://awtrixdocs.blueforcer.de/#/en-en/

在树莓派SSH终端中输入以下命令进行自动安装
wget -N https://blueforcer.de/awtrix/awtrix.sh ; sudo sh awtrix.sh

启动后不久,可以通过 http://awtrix_ip:7000 访问 Web 界面。

启动AWTRIXSudo service awtrix start
停止AWTRIXSudo service awtrix stop
重新启动Sudo service awtrix restart

Linux服务器上搭建(CentOS7)

可能有人会问,为什么不直接用docker,因为docker容器有个时间差,我不会调emmm。

1
2
3
yum list java-1.8*        //检查 yum 中有没有 java1.8 包
yum install java-1.8.0-openjdk* -y //开始安装JAVA
wget -N https://blueforcer.de/awtrix/awtrix.sh ; sudo sh awtrix.sh //自动安装Awtrix与自动启动

安装完成后去防火墙开放7000/7001端口,然后就可以在http://服务器IP:7000访问了。

烧写固件

首先准备好刷机软件和固件

刷机软件:https://blueforcer.de/downloads/ESP8266Flasher.exe

ESP8266固件:https://blueforcer.de/awtrix/stable/firmware.bin

用数据线连接ESP8266和电脑,安装ESP8266对应的驱动。

打开ESP8266Flasher ,如果驱动安装成功,Operation界面COM Port会显示已经连接到电脑的ESP8266端口,选择Config,引入固件即可点击Flash刷入

刷入成功后且组装成功后,断开连接,接通电源,使用手机连接 AWTRIX Controller 的 WiFi,该WIFI密码是 awtrixxx ,然后使用浏览器访问172.217.28.1,或者浏览任意联网的页面会弹出wifi配置界面,输入家用WIFI名和密码即可,底部AWTRIX Server输入服务器IP,默认端口号7000,如需修改在IP后添加端口号。

接线

因为我电容还没拿到,简单接一下开机测试一下。

像素屏ESP8266
DIND2
GNDGND
5V3V3

官方的图对于我这种小白来说多少还是有点看不懂,于是我自己画了下面这张WS2812B的接线图,简洁明了照着接就行了(PS:这里只用到了右边的三个接口,左边和中间的目前用不上,可以用电烙铁把线取下来然后用电工胶布粘住。):

以下是官方给的接线图(这里记录了两个我用到的,官方文档还有许多好玩的扩展,需要的可以自行探索:

基本版

用于亮度控制的光传感器(可选)

亮度传感器可以选装。这确保了,例如在黑暗的房间中,像素屏不会因调暗亮度而眼花缭乱。另一方面,如果房间非常明亮,像素屏会变暗,以便仍然可以读取像素屏的内容。

组装

按照上面的图把线接好,大概就是下面这样(因为我是积木拼的外壳,不太好把dc电源口留在外面,于是决定直接放在内部,然后把电源线插上最后固定在面板上。)。我做的是基本版,稍微控制了一下成本,没有安装光敏电阻。先通电测试一下,确保没问题后给所有接口都套上热缩管,套不了的粘上电工胶布,为了防止电容外壳和DC电源模块在里面乱动,我全用积木和电工胶布进行了双重固定,确保没问题之后盖上盖板就大功告成了。

懒得继续写了,最后放一张效果图,这篇文章就水完了。