【LC实战派】小智固件编译

这篇写给立创吴总,是节前答应他配合git代码的说明;也给所有对小智感兴趣的小伙伴。

请多提意见,让这份文档更有价值 -

第一当然是拉取源码 -

git clone https://github.com/78/xiaozhi-esp32.git

完成后,先查看固件中实际的分区表 -

然后对照着看项目根目录的excel中的分区表partitions_16M,发现格局小了 -

在立创实战派上,你有16M Bytes的内存(0x0100 0000)还不用完,这么扣扣索索的干嘛呢? 这里的0x0038 0000相当于是,3.5MBytes;如果算最终的存储占用,是0x0048 0000+0x0038 0000,等于8MBytes;这个应该是给小一点存储的开发板用的,但是名字写错了。那我们直接参考固件,把容量拉满吧(虽然也只用了13MBytes还不到一点逼死强迫症,但为了兼容官方忍了) -

然后menuconfig中选择自定义分区表,并给出文件名 -

例行clean一下,最好fullclean一下,避免git下来的文件夹中有不需要的玩意,茫茫多的莫名其妙多多编译错误与此相关 -

当然,如果用vsc插件,并且刚打开文件夹的话,记得重新选择一下器件型号,这实际上是重新设施一下编译环境,避免后面编译参数莫名出错;也可以用命令。

但是这个操作,会造成sdkconfig被覆盖(自动备份到sdkconfig.old),所以如果你不是用的默认的sdkconfig,还需要恢复一下这个文件。

其他menuconfig设置 -

flash:

开发板:

RAM:

上面的需要修改,其他设置简单看了一下,应该都是默认,如果后面发现有遗漏的再补上。

需增加启用LV_FONT_FMT_TXT_LARGE支持,否则海量报错 -

需增加启用LV_USE_IMGFONT,否则报错 -

修改编译选项,增加异常处理,然后别忘了fullclean再编译 -

解决i2c驱动兼容问题,否则i2c driver NG 或者 i2c driver not installed - 这里的方法是兼容,其实彻底的方法是修改i2c驱动的文件 i2c -> i2c_maser,API使用2.0替代1.0,因为官方在6.0版本会放弃对老版本兼容,不过这里偷个懒先 -

使用了64位的字体,相应的增加lvgl的内存使用,并且对齐内存,同时使用RTOS的malloc函数分配内存 -

比想象的花了更多的时间,终于编译完成拉!

效果 -

完结撒花~后续在评论上git/gitee,还有立创开发板的官方链接。为爱发电,有问题的小伙伴可以留言,不过不确定什么时间上线看评论;所以还是建议去官方提issue。

看都看到这里了,小伙伴给三连一下呗!

相关推荐
TinyEcho8393 天前
ESP32-S3 智能语音助手项目(语音识别+播放)
esp32-s3· 离线语音识别· esp-sr
硬汉嵌入式6 天前
国产新品:乐鑫推出三频ESP32-E22,兆易创新推出750MHz的GD32H7型号,极海推出M52内核的G32R430
乐鑫·兆易创新·极海
spice19 天前
ESP32-S3 做 AI 人脸追踪机器人
esp32-s3·边缘ai·人脸追踪
火柴棍mcu19 天前
立创EDA专业版 设置阻抗线的铜距
立创·铺铜间隙·阻抗线
liwulin050619 天前
【ESP32-S3】对接豆包端到端实时语音
esp32-s3·豆包端到端
程序员Linc1 个月前
2025年MCP协议发展及其在xiaozhi-esp32中的落地实践分析
ai·mcp·小智·xiaozhi-esp32·2025年度征文
无垠的广袤2 个月前
【工业树莓派 CM0 NANO 单板计算机】小智语音聊天
人工智能·python·嵌入式硬件·语言模型·树莓派·智能体·小智
小叮当⇔3 个月前
安信可(Ai-Thinker)WiFi系列模块全解析:选型指南与应用洞察
人工智能·物联网·wifi·乐鑫
大志若愚YYZ5 个月前
兴趣爱好——虾哥开源小智AI机器人搭建(丐版—最低成本)ESP32开发板 MicroPython V1.0.0 Rev1
ai·小智
时光の尘6 个月前
ESP32入门开发·VScode空白项目搭建·点亮一颗LED灯
c语言·ide·vscode·freertos·led·esp32-s3·esp32-idf