前些天看到用esp8266开发的小盒子,按照教程https://www.instructables.com/3D-Printer-Monitor-Wemos-D1-Mini-ESP8266/操作了一下。
3D打印的外壳
作者提供了3D模型 https://www.thingiverse.com/thing:2884823, 我是使用速加网打印的, 质量和价格还不错,大概20元左右不含运费。
可能芯片规格不一样, 如果有打印机的话可以根据芯片尺寸,把盒子厚度加大一些。
相关芯片联接
主要是两个芯片:
- ESP8266 D1 Mini:这个普通就可以, 10元左右。
- 0.96 OLED : 这个建议买老款的, 新款的屏幕有些小。10元左右。
芯片链接及焊接:
焊接完成后
这里需要注意的是看好GND和5V接口,8266与OLED对接时线不要接错了, 将5V接到GND上, 烧坏了一块OLED的板子。
焊接:由于是第一次弄,大概来回焊接了3,4次,温度太高容易烧到板子, 太低焊锡又化不了。最好能固定一下, 我是拿透明胶固定了一下。
应用刷新
1 开发环境
- 使用Arduino IDE,配置附加的电路板的配置链接http://arduino.esp8266.com/stable/package_esp8266com_index.json ,
- 开发版选择“WeMos D1 R2 & mini”
2 相关库选择
- WiFiManager
- Json:arduinojson
- OLED:esp8266-oled-ssd1306
3 源码应用下载
https://github.com/Qrome/printer-monitor
源码及配置调整地方:
- Settings.h,注释掉以下几行。
//#include <WiFi.h> //#include <WiFiClient.h> //#include <WiFiServer.h> //#include <WiFiUdp.h>
- 配置选择了, “WeMos D1 R2 & mini”, 工具菜单中关于flash的选项。选择“Flash Size->3M (1M SPIFFS)”, 如果选择,(NO SPIFFS), 应用无法启动,会提示文件打开失败。
SPIFFS 是一个嵌入式文件系统, 由于应用中会生成配置文件, 保存相关配置信息, 配置文件生成所以该文件系统支持。
关于应用启动时提示打开文件失败相关帖子https://github.com/esp8266/Arduino/issues/5699
- 编译以及安装。
使用一头USB-A 接口,另一头是 Micro-USB 接口,连接8266编译下载了。
USB转串口的驱动可以到这个网站下载https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
原来版本有一个简单天气的DEMO,新版本IDE没找到。
这个程序是可以监控3D打印机的, 所以可以链接到3D打印上获取信息及时间。天气信息是到http://openweathermap.org/网站获取。
网络配置
- 联网配置,启动后会在屏幕上显示wifi热点信息, 使用电脑,链接盒子的wifi,可以对盒子进行网络配置, 也就是它联网使用的wifi名/密码
- 应用配置,盒子接入wifi后网络后, 回显示一个IP, 可以登录这个IP,进行应用配置, 配置完毕后通过保存到本地文件conf.txt,进行持久化。
其他问题
- 日志, 可以通过putty链接串口,读取日志,开始应用 使用Flash Size No SPIFFS时,无法显示, 链接串口就看到“无法打开文件”的提示。
- 验证OLED是否有问题,还安装了 Microtpyhon, 参考了 Simple MicroPython Alarm Clock 快速验证了一下。
相比较Arduino, Micropython开发上手快。
下面是介绍整个过程的完整视频
参考及引用
图片来源 twitter Ice Angel @addyiceangel
Comments are closed.