一.开发板使用前的准备

1.硬件准备

lyrat开发板要工作起来需要用一根microusb线接到供电口,而下载或者调试设备需要另一根microusb线接到串口端。另外要将电源键拨到ON的位置。该开发板的定位是智能音箱,所以要测试音频需要接一个3.5英寸接口的耳机/音箱。在烧录程序之前还需要摁着boot按键再拨开电源键,这样开发板才会进入烧录模式。

2.开发环境的准备

(1)下载开发板的sdk

git clone --recursive https://github.com/espressif/esp-adf.git 

(2)安装依赖库

sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-serial

(3)编译链、IDF和ADF的安装和配置

编译链的下载地址如下:

  • for 64-bit Linux:

    https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar.gz

  • for 32-bit Linux:

    https://dl.espressif.com/dl/xtensa-esp32-elf-linux32-1.22.0-80-g6c4433a-5.2.0.tar.gz

使用wget命令就可以下载

mkdir -p ~/esp
cd ~/esp
wget https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar.gz
tar -xzf /xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar.gz

接下来配置编译链、idf、adf的路径,使用命令“vim ~/.profile”在profile文件添加以下内容

export PATH="$PATH:$HOME/esp/xtensa-esp32-elf/bin"
alias get_esp32='export PATH="$PATH:$HOME/esp/xtensa-esp32-elf/bin"'
export IDF_PATH=~/workspace/esp32/esp-adf/esp-idf
export ADF_PATH=~/workspace/esp32/esp-adf

重启电脑后使用命令验证是否添加成功

$ printenv PATH
/home/user-name/bin:/home/user-name/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/user-name/esp/xtensa-esp32-elf/bin

二、编译、下载、运行并调试lyrat开发板

1.编译的方法

编译项目有时候需要配置wifi的帐号和密码,在make menuconfig菜单里配置就行了。

cd ~/esp-adf/examples/get-started/play_mp3
make menuconfig
make -j4

2.下载的方法

运行‘make flash’命令,需要长摁着boot键,再短按一下reset键。启动开发板,还有需要注意串口权限的问题。

make  flash 

3.运行并调试开发板

运行开发板之前需要摁reset键

make monitor

三、开发板使用的时候经常遇到的问题以及解决方法

1.开发板无法进入烧录模式下载程序

因为esp32芯片进入烧录模式的条件是启动的时候会检测boot引脚,所以需要摁着boot键启动才能下载程序。

2.开发板下载程序的时候老是提示串口权限不足

linux下面串口设备的使用者一般是root,所以临时使用串口需要赋予程序root权限或者修改dev目录下串口的权限。如果想串口支持一般用户,那么就需要把当前用户添加到拨号组,添加办法如下面命令所示:

sudo usermod -a -G dialout $USER

3.使用make monitor提示出错

1.错误信息如下

Exception in thread Thread-1:
Traceback (most recent call last):File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_innerself.run()File "/usr/lib/python2.7/threading.py", line 763, in runself.__target(*self.__args, **self.__kwargs)File "/opt/esp-adf/esp-idf/tools/idf_monitor.py", line 120, in _run_outerself.run()File "/opt/esp-adf/esp-idf/tools/idf_monitor.py", line 155, in runc = self.console.getkey()File "/opt/esp-adf/esp-idf/tools/idf_monitor.py", line 235, in getkey_patchedc = self.enc_stdin.read(1)
AttributeError: 'Console' object has no attribute 'enc_stdin'Exception in thread Thread-2:
Traceback (most recent call last):File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_innerself.run()File "/usr/lib/python2.7/threading.py", line 763, in runself.__target(*self.__args, **self.__kwargs)File "/opt/esp-adf/esp-idf/tools/idf_monitor.py", line 120, in _run_outerself.run()File "/opt/esp-adf/esp-idf/tools/idf_monitor.py", line 193, in runif not self.serial.is_open:
AttributeError: 'Serial' object has no attribute 'is_open'

出现错误的原因应该是串口工具pyserial版本太低所致,那么解决办法就是升级pyserial工具

sudo -H pip install pyserial --upgrade

如果使用这个方法也会出错,提示超时,那么恭喜你了,网络被墙了!解决方法就是自备梯子再下载。

2.提示components要更新

long@long-desktop:~/workspace/esp32/esp-adf/examples/player/pipeline_http_mp3$ make
WARNING: esp-idf git submodule components/esp32/lib may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/micro-ecc/micro-ecc may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/esptool_py/esptool may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/esp32/lib may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/micro-ecc/micro-ecc may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/esptool_py/esptool may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/micro-ecc/micro-ecc may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/esptool_py/esptool may be out of date. Run 'git submodule update' in IDF_PATH dir to update.
WARNING: esp-idf git submodule components/esp32/lib may be out of date. Run 'git submodule update' in IDF_PATH dir to update.

解决方法是进IDF的目录执行'git submodule update'

2.

编译例程的时候出现这个错误:
/home/esp8266/Desktop/esp/esp-adf/components/audio_stream/./fatfs_stream.c:39:22: fatal error: wav_head.h: No such file or directory
compilation terminated.
make[1]: *** [fatfs_stream.o] Error 1
make: *** [component-audio_stream-build] Error 2

解决方法:

获取所有子模块,输入命令:

git submodule update --init

3.应用程序过大

esp_image: Image length 1390176 doesn't fit in partition length 1048576�[0m
�[0;31mE (516) boot: Factory app partition is not bootable�[0m

解决方法:

修改分区表,使应用程序可以大于2M

$IDF_PATH/components/partition_table/partitions_singleapp.csv# Name,   Type, SubType, Offset,  Size, Flags
# Note: if you change the phy_init or app partition offset, make sure to change the offset in Kconfig.projbuild
nvs,      data, nvs,     0x9000,  0x6000,
phy_init, data, phy,     0xf000,  0x1000,
factory,  app,  factory, 0x10000, 2M,

四、参考资料

1.IDF---ESP-IDF Programming Guide

2.ADF框架--Audio Development Framework

3.原理图--esp32-lyrat-v4-schematic.pdf

4.ADF音频框架的github网址

乐鑫esp32-lyrat开发板初体验相关推荐

  1. M5stack StickCplus ESP32物联网开发板初体验

    一.外观 和arduino uno进行对比,大概只有uno的三分之一大小 资料链接 https://docs.m5stack.com/zh_CN/products https://docs.m5sta ...

  2. 小熊派4G开发板初体验SDK开发

    小熊派4G开发板初体验 开发板硬件资源介绍 前阵子小熊派发布了一款超高性价比的4G开发板(19.8元包邮),但是板子仅限量1000套.小熊派官方给我送了一块,我们一起来学习学习: 板子做得小巧精致,控 ...

  3. ISD9160学习笔记01_大联大Nuvoton ISD9160语音识别开发板初体验

    前段时间由于个人开源项目OpenHamtaro(个人玩票项目,一个抽风的语音小仓鼠)的需要,在寻找ISD9160的相关方案.碰巧看到了ElecFun的试用活动,很荣幸获得了这个ISD9160开发板的试 ...

  4. 用户测评:G2L开发板初体验

    最近在一次偶然的机会下,看到公众号中推广的G2L开发板,初步看起来性能挺不错,刚好遇到今年的芯片缺货问题,开始评估一些新出的平台.使用了几天,特意记录一下整体使用感觉. 开箱体验.首先以下是产品的所有 ...

  5. 开发版安装harmonyos,HarmonyOS | 小熊派鸿蒙开发板初体验

    之前小熊派鸿蒙开发板还没开售的时候,小熊派官方给我送了一套,这是小熊派第三次给我送开发板了,开发板还是一如既往的精致: 因为时间安排不过来,所以一直没有拿出来玩.正好处于年底,又到新的一年立flag的 ...

  6. 开发板接传感器蜂鸣器不断_迅为IMX6ULL终结技开发板初体验

    i.MX6ULL终结者开发板是北京迅为电子推出的一款Cortex-A7架构的开发板.采用核心板+底板的方式,如下图所示: 1.1 初识i.MX6ULL终结者开发板 i.MX6ULL终结者开发板硬件资源 ...

  7. STC15F104W-35I-SOP8开发板初体验

    买这个小模块的原因是后面需要做一些开源项目,想做一些传感器,最后用32或者其它的MCU与它建立通信用,这款CPU完全兼容51单片机的指令集,所以把它当成51单片机来用就行了. 一.STC15F104W ...

  8. 【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯

    ---------- 本博客学习由 安信可开源团队 潜心编写,做ESP32-A1S离线语音初步入门技术交流分享.如有不完善之处,请留言,本团队及时更改. 文章目录 一.前言 二.离线语音框架 2.1 ...

  9. esp32录音功能开发_【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯...

    本博客学习由 一.前言 离线语音,顾名思义:在不连网络的状态下,产品能识别语音指令并执行相应的控制输出. 安信可基于乐鑫ESP32芯片开发的ESP32-A1S开发板智能语音助手,可支持唤醒词引擎(Wa ...

最新文章

  1. python编写安装脚本_Python-将脚本安装到系统
  2. 在浏览器中输入 Google.com 回车之后发生了什么?
  3. memcached服务器搭建(RedHat5)
  4. 美团王庆:当老板对指标进行灵魂拷问时,该如何诊断分析?
  5. 【Java面试题】汽水瓶问题
  6. bfs广度优先搜索算法_图的广度优先搜索(BFS)
  7. Bluetooth vs. Wi-Fi(IEEE 802.11)
  8. [Re] ABC: Always Be Coding
  9. 人脸方向学习(七):Face Recognition-CosFace 解读
  10. Fluter拓展 图标库
  11. 28. Location replace() 方法
  12. 清除电脑多余垃圾--清除垃圾.bat文件 附保姆级操作步骤
  13. 大巧不工,袋鼠云正式开源大数据任务调度平台——Taier(太阿)
  14. ZIF-67沸石咪唑酯骨架结构材料/cas46201-07-4/2-MethylimidazoleCobaltsalt
  15. p2p sdk接收文件服务端epoll模型源码
  16. 【SQL注入技巧拓展】————4、高级SQL注入:混淆和绕过
  17. 计算机网络 -- TCP/IP
  18. Grunt视频-佟刚-专题视频课程
  19. js 笔记-LHS RHS 作用域
  20. catti二级笔译综合能力真题_【CATTI二级笔译】综合能力知识点总结(一)

热门文章

  1. [第9天]西联在线收汇教程及4点注意事项
  2. JAVA毕设项目汽车维修服务系统(java+VUE+Mybatis+Maven+Mysql)
  3. 调查问卷考试问卷创建生成工具助手小程序开发
  4. JAVAGUI笔记(更新中)
  5. g2plot图表库1.x版本折线图踩坑记录
  6. macOS High Sierra 10.13.5 (17F77) 正式版 最新自带Clover v2.4k r4512黑苹果原版镜像
  7. 咸鱼菌玩3D—123D Design安装
  8. 移植原生Android2.3之 - Camera Preview过程
  9. Java排序:几种List排序性能测试
  10. JSP+ssm计算机毕业设计创业项目中游戏直播代练平台ubw4t【源码、数据库、LW、部署】