DIY esp8266 小盒子

前些天看到用esp8266开发的小盒子,按照教程https://www.instructables.com/3D-Printer-Monitor-Wemos-D1-Mini-ESP8266/操作了一下。

3D打印的外壳

作者提供了3D模型 https://www.thingiverse.com/thing:2884823, 我是使用速加网打印的, 质量和价格还不错,大概20元左右不含运费。

可能芯片规格不一样, 如果有打印机的话可以根据芯片尺寸,把盒子厚度加大一些。

相关芯片联接

主要是两个芯片:

  1. ESP8266 D1 Mini:这个普通就可以, 10元左右。
  2. 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

  1. 编译以及安装。

使用一头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,进行持久化。

 

其他问题

  1. 日志, 可以通过putty链接串口,读取日志,开始应用 使用Flash Size No SPIFFS时,无法显示, 链接串口就看到“无法打开文件”的提示。
  2. 验证OLED是否有问题,还安装了 Microtpyhon, 参考了 Simple MicroPython Alarm Clock 快速验证了一下。

相比较Arduino, Micropython开发上手快。

下面是介绍整个过程的完整视频

参考及引用

图片来源 twitter Ice Angel @addyiceangel

 

Comments are closed.