同步操作将从 ClimbSnail/HoloCubic_AIO 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
Holocubic
原为稚晖君
大佬的开源项目,本项目则是运行在HoloCubic硬件
之上的第三方独立固件项目。
AIO意为All in one,目的将尽可能多的功能集成进Holocubic AIO固件中,并坚持开源。目前固件源码达2w+
行,上位机源码4k
行(均不含字库图片),诚邀大家共同开发AIO固件、上位机以及周边,让固件满足更多人的需求。
此外,本固件代码完全开源,共大家学习、把玩,若使用本项目二次开源或部分参考,请适当注明参考来源。
欢迎加入AIO内测QQ讨论群
一群群号 755143193 二群群号 860112883 三群群号 676732387 四群群号 749207817
APP介绍
B站功能操作演示视频链接 https://www.bilibili.com/video/BV1wS4y1R7YF/
下载群中的上位机进行刷机。
bootloader_dio_40m.bin
启动的bootloader
。partitions.bin
分区文件boot_app0.bin
HoloCubic_AIO_XXX.bin
其中HoloCubic_AIO_XXX.bin
文件随着每次版本更新而更新,其他三个文件基本不会变动。
将以上前三个文件与CubicAIO_Tool.exe
放在同一个目录下,双击运行CubicAIO_Tool.exe
,软件中选择最新的固件HoloCubic_AIO_XXX.bin
,即可刷写固件。
上位机操作演示视频链接 https://b23.tv/5e6uDh
本上位机与AIO固件一样,坚持开源,开源地址:https://github.com/ClimbSnail/HoloCubic_AIO_Tool
由于小电视使用的是MPU6050陀螺仪加速度计,通电前3秒需要保持小电视自然放置(不要手拿),等待传感器初始化,初始化完毕后RGB灯会完全亮起,之后就可以正常操作了。插不插内存卡都不影响正常开机,如果6050焊接有问题,初始化后姿态读取会错乱(现象:应用会不断切换)。
放置到内存卡
目录里的所有文件和文件夹都放在TF卡的根目录。0.5s
即可切换选择各类APP。1s
钟即可进入当前页的APP应用,今后还会整合更多功能,同样后仰1s即退出该APP。Web Sever Start
。小电视开启AP模式,建立在AP_IP
上(屏幕的服务界面有标注),AP模式的热点名为HoloCubic_AIO
无密码。HoloCubic
处于同一网络环境(同网段)。如果之前没连接过wifi则需要使用电脑连接HoloCubic放出的热点名为HoloCubic_AIO
无密码的wifi。Local_IP
或者AP_IP
( http://192.168.4.2 也支持域名直接访问 http://holocubic ),即可进入管理设置后台。推荐使用ip地址
访问。Web Server
中配置自启动APP
。作用:通过无线网络管理内存卡上的文件。
Holocubic
文件管理器后会自动连接已配置的wifi,并显示出IP地址。Holocubic
的IP地址(端口可以不用改),点击连接。注:目前文件管理器临时使用windows资源管理器
,在地址栏输入 ftp://holocubic:aio@192.168.123.241 (192.168.123.241为我的小电视上显示的IP地址,如果提示开启访问,就开启)
image/
目录(也可以使用Web Server服务
APP 通过浏览器上传照片),image/
目录下必须要有图片文件(jpg或者bin)。image/
目录中,图片文件名必须为英文字符或数字。image/
目录下的图片文件。WebServer
的网页端可以进行附加功能的设置。关于图片转换:使用附带的上位机转化(分辨率随意,软件会自动压缩到指定分辨率)。
movie/
目录。movie/
目录下,视频文件名必须为英文字符或数字。movie/
目录下的视频文件。WebServer
的网页端可以进行附加功能的设置。Web Server服务
app设置wifi密码(确保能连上路由器)。为避免wifi连接时,功率不够导致重启,请确保USB口供电充足。WebServer
的网页端可以进行附加功能的设置。一共有两款天气时钟APP
PuYuuu
模仿了misaka
的时钟界面。使用https://www.tianqiapi.com 天气API。tianqi_appid
、tianqi_appsecret
、tianqi 城市名(中文)
。tianqi_appid
、tianqi_appsecret
。(申请地址 https://www.yiketianqi.com/user/login )weather/
文件夹复制到tf卡根目录。心知天气 城市名
、key(私钥)
。(申请地址 https://seniverse.com 。程序默认使用的是v3版本的api)注:即使断网后,时钟也依旧运行。(开机最好连接wifi,这样会自动同步时钟。使用中会间歇尝试同步时钟)
注:移植群友"小飞侠"的功能,在此感谢!
2048
游戏由群友AndyXFuture
编写并同意,由ClimbSnail
合入AIO固件。原项目链接为https://github.com/AndyXFuture/HoloCubic-2048-anim
向上
和向下
操作由于与原进入
和退出
为同一个动作,系统已操作时长为区分动作,游戏中向上
和向下
正常操作即可,进入
和退出
需要倾斜1秒中方可触发。bilibili
的文件夹。必须是已经正常配置wifi。为避免wifi连接时,功率不够导致重启,请确保USB口供电充足。UID
查看方法:电脑浏览器上打开B站并登入账号,之后浏览器打开一个空白页粘贴回车这个网址 https://space.bilibili.com/ ,网址尾巴会自动多出一串纯数字码,此即为UID。WebServer App
的网页上填写UID
码。bilibili
的文件夹里添加一张名为avatar.bin
自己B站头像的图片,分辨率为100*100
的bin
文件(可以使用AIO上位机转换)。注:程序由cnzxo
编写。
WebServer App
的网页上填写纪念日名称和日期,目前可以设置两个纪念日。纪念日支持的字有生日还有毕业养小恐龙种土豆老婆女朋友爸妈爷奶弟妹兄姐结婚纪念
,如果纪念日名称包含的字不在这个范围内,请自行生成字体文件并替换src\app\anniversary\msyhbd_24.c
文件。日期格式如2022.5.8
,如果年份设置为0,则被认为是每年重复的纪念日(如生日)。注:纪念日和心跳都复现自LizCubic项目。程序由WoodwindHu
编写
WebServer App
的网页上填写配置。role可以选择0和1,分别代表互动的两个HoloCubic。client_id为设备的唯一标识,这里请将这两个Holocubic设置成同一个QQ号。mqtt_server填写自己的mqtt服务器地址,port填写端口号。用户名以及密码根据具体的服务器配置而定。注:纪念日和心跳都复现自LizCubic项目。程序由WoodwindHu
编写
WebServer App
的网页上修改自己想要的股票代码
。注:程序由redwolf
编写
WebServer APP
中这只PC的服务IP地址(具体看教程)。aida64_setting.rslcd
(在AIO_Firmware_PIO\src\app\pc_resource
目录下或者群文件中)注:具体操作步骤较长,见群文档。本应用由Jumping99
开发。
B站
找。推荐教程https://b23.tv/kibhGD
platformio.ini
文件中upload_port
字段成对应自己COMM口。AIO_Firmware_PIO\src\app\app_conf.h
中对应的APP宏
修改为0
即可屏蔽。lib
下单独放置了一个已经修改好了SPI引脚的SPI库。以下是此前版本的操作(可忽略)然后这里需要修改一个官方库文件才能正常使用(不然会导致内存卡读取失败):
PlatformIO和ArduinoIDE用户都需安装ESP32的Arduino固件支持包(百度有海量教程)。不管哪种开发方式都需要修改SPI
库中的MISO
默认引脚为26
,例如arduinoIDE的包路径为esp32\hardware\esp32\1.0.4\libraries\SPI\src\SPI.cpp
文件中,修改以下代码中的MISO为26:
if(sck == -1 && miso == -1 && mosi == -1 && ss == -1) {
_sck = (_spi_num == VSPI) ? SCK : 14;
_miso = (_spi_num == VSPI) ? MISO : 12; // 需要改为26
_mosi = (_spi_num == VSPI) ? MOSI : 13;
_ss = (_spi_num == VSPI) ? SS : 15;
这是因为,硬件上连接屏幕和SD卡分别是用两个硬件SPI,其中HSPI的默认MISO引脚是12,而12在ESP32中是用于上电时设置flash电平的,上电之前上拉会导致芯片无法启动,因此我们将默认的引脚替换为26。
AIO框架讲解链接 https://www.bilibili.com/video/BV1jh411a7pV?p=4
关于UI的设计可以自行关注下Edgeline
、gui-guider
等工具。
platformIO模拟器 https://github.com/lvgl/lv_platformio
应用图标(128*128):可以下载阿里矢量图 https://www.iconfont.cn/
调试过程中报错定位代码:xtensa-esp32-elf-addr2line -pfiaC -e 固件名.elf Backtrace地址信息
关于lvgl的学习参考:http://lvgl.100ask.org
、http://lvgl.100ask.net
lvgl的字体生成可以使用:LvglFontTool V0.4
已放置在Doc目录下
c文件中提取所有汉字:可以使用工程下的Script/get_font.py
脚本提取。python get_font.py 字模.c文件的路径
lib
目录下所用到的开源库相关的作者此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。