开源 | 内嵌图形化编程环境,LiClock多功能墨水屏【天气+时钟+电子书…】

描述

 

 

合宙通信

合宙通信

 

 

想要扩展性强,易用易开发,功能全且成本低的墨水屏天气时钟……寻寻觅觅难合意,那就自己做一个!

合宙通信

 

LiClock多功能墨水屏天气时钟
- 开源分享 -

 

 

今天特别分享@小李电子实验室大佬的开源佳作——LiClock多功能墨水屏天气时钟,一款DIY过程对新手友好,功能全且成本低的墨水屏天气时钟。

基于ESP32的2.9寸墨水屏天气时钟,使用PlatformIO/Arduino开发,内嵌图形化编程环境(Lua语言解释器和Google Blockly开发环境,兼具易用性与扩展性。

 

1

当前主要功能

 

合宙通信

演示视频链接

https://www.bilibili.com/video/BV1Ey4y1P7jp

主要设计功能如下:

  • 通过彩云天气API获取本地天气并显示;

  • 使用ESP32内部RTC提供时钟信号,经过两次NTP同步进行线性偏移补偿,可做到日误差小于2秒;

  • 内置Web服务器用于配置天气位置,管理内部文件等;

  • 内置GUI框架,包括对话框、菜单等;

  • 简易电子书功能;

  • Bilibili粉丝显示器;

  • 完善的设置菜单;

  • 通过蜂鸣器播放经过转码的Midi音乐;

  • 简易的闹钟;

  • 内置Blocky图形化开发环境,只要有浏览器就能为它添加功能。

 

 

2

项目特色要点

 

此项目以易用性和可二次开发为核心目标,兼顾节能高效等应用特性。

2.1 自动识别

系统框架与APP解耦,每个“APP”源码为单个CPP文件,复制到APP目录后自动识别编译并添加到APP列表,无需其它修改操作。

合宙通信

TF卡、传感器等外设在第一次开机时自动识别,由系统统一管理,不使用时自动断电(传感器进入省电模式)。

合宙通信

2.2 易用节能

APP为事件驱动,有较为完善的GUI框架,可以快速实现想要的功能。另外,电子书等内置APP在不刷新屏幕时和关机状态耗电量相同(注意:GUI框架在等待用户输入时,不会进入休眠模式)。

合宙通信

2.3 便捷设置

无需配置API KEY,无需手动设置时钟误差修正,无需手动配置Bilibili UID(手机扫码登录),只需填写天气GPS坐标(GCJ-02)和WiFi密码。

合宙通信

2.4 快速上手

对于不会配置环境的小伙伴,提供全功能二进制文件,直接烧录运行也可体验所有功能。

固件烧录/更新

https://diylxy.github.io/LiClockWebFlash/

2.5 高效开发

内置Lua语言解释器和Google Blockly开发环境,可通过Lua语言编写APP,网页端上传后直接运行,同时可以无缝添加到APP列表,设置为主屏幕APP等。

 

 

3

Blockly IDE简介

 

合宙通信

合宙通信

合宙通信

 

开发这个功能也是为了解决自定义表盘的问题:

可以随时修改代码、互相分享工程、减少调试所需的编译上传时间;网页端(可以在左边使用“积木”编程,或者直接编辑Lua代码,但不支持Lua反向转化为Blockly);使用WebSocket实现终端功能,Lua的输出和报错将被重定向到这里。

3.1 Lua运行结果:

合宙通信

3.2 APP创建:

创建的APP,除了能卸载或从TF卡安装,用起来和内置APP完全没有区别(内置APP是基于C++的)。

详细程序编写说明请看Github Readme:

合宙通信

3.3 文件管理:

合宙通信

预览“lbm”图像文件(实质上是xbm二进制版,可用GIMP保存为xbm格式,然后使用GitHub仓库tools目录下xbm转lbm工具)。

合宙通信

 

合宙通信

3.4 其他功能

Lua已实现相对目录(如果需要访问资源文件,请将其放在webtmp文件夹下,创建APP时会一并复制,支持.表示当前目录,不支持..文件夹);SD卡挂载到/sd/,内置littlefs挂载到/littlefs;蜂鸣器支持播放.buz文件(midi转buz的python程序同样放在GitHub的tools目录下)。

更多Lua函数添加中,也欢迎大家贡献自己的代码或工程文件。

 

4

最新开源资料

 

合宙通信

开源协议:CC BY-SA 3.0(未经作者授权,本文禁止转载)

目前成本最低可以做到40到41元(tb购物车无优惠价格,不含电池和外壳),本文演示墨水屏型号为E029A01;ESP32买esp32-wroom-32(flash4mb就够,更大容量暂时用不到),相关配件具体购买教程和3D模型等资料都在Github仓库里。

后续项目相关最新信息也会在Github发布,需要的朋友可关注。

开源仓库

https://github.com/diylxy/LiClock

工程链接

https://oshwhub.com/lxu0423/ESP32-duo-gong-neng-mo-shui-ping

相关DIY注意事项,详见工程链接最新说明。

   

 

特别感谢@小李电子实验室
期待更多精彩作品

合宙通信 

  -  往期推荐 -    

开源 | ESP32开发板+墨水屏DIY创意小摆件

开源 | ESP32自制创意"像素盒子"

开源 | ESP32自制像素时钟&音乐频谱

开源 | MicroPython开发,自制ESP32蓝牙遥控车
开源 | 9.9元自制树莓派逻辑分析仪
开源 | 合宙Air001自制炫酷“地球名片”

合宙通信

 

合宙通信

 

合宙通信

 

 


原文标题:开源 | 内嵌图形化编程环境,LiClock多功能墨水屏【天气+时钟+电子书…】

文章出处:【微信公众号:合宙LuatOS】欢迎添加关注!文章转载请注明出处。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分