小智AI丐版 - ESP32开发板实现方案

小智AI丐版 - ESP32开发板实现方案

概述

小智AI丐版是一种使用早期版本ESP32开发板(非S3/C3)搭建的低成本AI聊天机器人解决方案。本文详细介绍了使用普通ESP32开发板搭建小智AI的全部步骤,包括硬件选择、接线方法、固件烧录和常见问题解决。相比使用ESP32-S3开发板,这种方案成本更低,适合入门用户体验。

ESP32开发板版本小智AI(丐版)

此ESP32非S3、C3系列,而是早期版本的ESP32系列开发板,基本上是4MB flash,没有外接PSRAM的开发板。俗称"丐版小智"或"畅玩版小智",让你花一个S3开发板的价钱玩上小智。

一、关于ESP32系列的说明

1.1 支持的硬件

  • 支持ESP32-S
  • 支持ESP32-DevKitC
  • 支持NodeMcu-32S
  • 支持4MB SPI Flash(2MB暂不支持)
  • 版本介绍: 群文件共享里提供,版本是向下兼容的,就是刷最新的也可以用纯丐版,即使没有高配版的配件

1.2 已支持的功能

  1. 屏幕显示 - 已支持

  2. 外接唤醒模组 - 已支持ASRPro模组(也可以选购其他的类似模组,代码上没有对模组做限制)

    • 外接唤醒模组的优点是可以有多种自定义唤醒词
    • 唤醒模组需要一个GPIO Pin,设置成输出模式+高电平
    • 对该Pin进行唤醒设置,1秒内的低电平脉冲,也就是小智的一个Click
    • 测试采用ASR-ProV1.0版本的唤醒模组,测试内容包括:自定义唤醒词,唤醒词打断,唤醒词回应
    • 此部分代码兼容其他型号的唤醒模组,没有限制模组型号
  3. LCD支持 - 支持ST7789-1.3寸-7Pin / 8Pin插针款

    • 旋转方向代码设置,在工程的config.h文件里编译时设置
    • 7Pin的不需要旋转,8Pin需要
    • 8Pin的旋转参数参考:
屏幕旋转度DISPLAY_OFFSET_XDISPLAY_OFFSET_YDISPLAY_SWAP_XYDISPLAY_MIRROR_XDISPLAY_MIRROR_Y
000falsefalsefalse
9000truetruefalse
180080falsetruetrue
270800truefalsetrue

1.3 计划中的功能

  1. 4G模组 - 已测试完成
  2. TF卡支持 - 开发中
  3. 蓝牙外接模块 - 计划中

二、硬件准备与接线说明

2.1 所需硬件

与标准ESP32-S3版本相比,丐版小智需要以下硬件:

  • 面包板
  • ESP32开发板(非S3/C3,如NodeMcu-32S或ESP32-DevKitC)
  • 杜邦线
  • MAX98357A功放
  • 3020喇叭
  • INMP441麦克风
  • 可选:OLED屏幕、唤醒模组

这些组件在电商平台都能购买到,总成本约50-80元(不含4G模块等扩展配件)。

2.2 接线说明

注:下面的G跟开发板上的D其实是一样的

麦克风接线:

  • WS → G25
  • SCK → G26
  • SD(DIN-代码里) → G32
  • L/R → GND
  • VDD → 电源 VCC 3.3V
  • GND → GND

喇叭接线:

  • DIN (DOUT-代码里) → G33
  • BCLK → G14
  • LRCK → G27
  • GAIN → 不用接
  • SD → 不用接
  • GND → GND
  • VIN → 电源 VCC 3.3V

0.96-OLED屏幕接线:

  • GND → GND
  • VCC → 电源 VCC 3.3V
  • SCL → G15
  • SDA → G4

按键连接:

  • toggle模式按键 → G0 (不需要接,是开发板自带的boot按钮,有的写IO0)
  • 长按对话模式按键 → G5

其他接线:

  • IoT-Key(IoT的灯开关测试引脚) → G12
  • ASR-Pro天问:
    • GND → GND
    • VCC → 电源 VCC 5V
    • PA_2 → G19

LCD屏幕接线:

  • 参考ST7789-1.3寸屏幕布线表

三、固件烧录指南

3.1 烧录工具准备

使用ESP官方的Flash下载工具: 下载链接

3.2 烧录步骤

  1. 打开官方的固件烧录软件flash_download_tool,选择Develop,点击OK
  2. 选择需要的固件,地址设为0x0
  3. 可以点击ERASE擦除之前的固件
  4. 点击START开始上传固件

注意:烧录时最好不要将开发板插在已经接线的面包板上,以避免烧录错误。

更多烧录问题,请参考常见问题中的烧录问题

四、ESP32编译指南

如果你想自己编译固件,请参考ESP-IDF开发环境搭建及编译小智进行编译环境搭建。编译过程与ESP32-S3版本类似,但需要在menuconfig中选择ESP32系列开发板。

五、常见问题

5.1 烧录出错/擦除失败

问题表现:烧录时报错或擦除失败 解决方法:不要把开发板插在面包板上进行烧录,开发板在烧录的时候应单独连接电脑。

5.2 网络连接问题

ESP32系列开发板的WiFi与ESP32-S3版本基本一致,如遇连接问题,请参考网络配置常见问题

六、进阶方案

6.1 丐版直玩版介绍

小智AI-丐版直玩版具有以下特点:

  • 无需面包板接线,ESP32老款开发板(非S3/C3)上手直插
  • 兼容ESP32老款3种开发板:NodeMcu-32S/Goouuu-ESP32/ESP32-DevKit
  • 可手持,板载自带电池充放电模块,使用14500电池
  • 带3.5MM耳机接口,预留剩余IO引出
  • 支持扩展:天问模块、OLED模块、4G模块、TFT彩屏模块

小智纯丐版仅需要MAX98357A功放、INMP441麦克风、喇叭和ESP32开发板即可使用。

更多详情请联系文章开头提供的联系方式。

相关文档