最近买了个安信可的esp32-cam模组,编译demo代码花了不少时间,整理一下能顺利编译的操作步骤。
如某一步报错,请检查前面步骤。
我用的vbox,安装ubuntu-18.04-desktop,网络桥接,启用双向粘贴,屏幕分辨率1024*768。
ESP32-cam按下载模式连线,最好5V供电,图1看不清可看图2。
插入主机,安装CP1202驱动(看自己的USB转TTL情况),虚拟机usb捕获。
查看usb是否捕获(查出结果是/dev/ttyUSB0,后面要用)
ls /dev/ttyUSB* dmesg | grep ttyS*
(可选)主机开启局域网内全局,关闭主机防火墙。
把自己的用户加入到dialout组,获取读写权限,然后重启,重启,重启!!!
sudo usermod -aG dialout night
sudo apt-get purge vim-common sudo apt-get install vim sudo apt install git
其他依赖,务必加上libncurses5-dev
sudo apt-get install git wget flex bison gperf python python-pip python-setuptools python-serial python-click python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache libffi-dev libssl-dev libncurses5-dev
我主机IP为10.11.12.86
git config --global http.proxy socks5://10.11.12.86:1080 git config --global https.proxy socks5://10.11.12.86:1080
从官方github克隆项目,递归子项
git clone --recurse-submodules https://github.com/Ai-Thinker-Open/Ai-Thinker-Open_ESP32-CAMERA_LAN.git
完成后用ls命令查看目录。
注意看有没有克隆失败的,为防万一,切换到目录后手动更新一下子项。
ls cd *LAN git submodule update --init --recursive
cd esp* pwd //复制输出的路径,备用 vim ~/.bashrc //按i进入插入模式,插入刚复制的路径 export IDF_PATH=/home/night/Ai-Thinker-Open_ESP32-CAMERA_LAN/esp-idf //按esc退出插入模式,再保存并退出 :wq
当前路径为esp-idf,安装ESP-IDF使用的各种工具,比如编译器、调试器、Python 包
./install.sh
然后按提示export。如果重新打开终端,要重新切换到esp-idf目录重新export。
. ./export.sh
为了保证esp-idf的正常,先编译它自带的helloword验证一下。
cd examples/get-started/hello_world ls make menuconfig
弹出配置菜单
先设置serial端口,11520,DIO,40MHz,4M,然后保存退出。
然后按提示make
make
经过漫长等待……
按提示烧固件,若连接超时可按一下板子上的reset键。
make flash
进入串口打印模式(退出按ctrl+])
make monitor
去掉下载连接,按reset重启板子,看到串口打印信息,说明esp-idf没有问题了。
继续接好下载线,按reset重启板子,并退出串口打印模式。
进入示例的camera_web_server路径
cd ~/Ai-Thinker-Open_ESP32-CAMERA_LAN/examples/single_chip/camera_web_server ls
配置工程,需配置端口、wifi和摄像头
make menuconfig
注意端口设为ttyUSB0(前面查出的)
填写wifi名称和密码
camera pins选AI-Thinker
保存并退出配置。
然后依旧是漫长的make
make //编译 make flash //下载 make monitor //串口打印
断开下载线,按reset重启板子,从串口信息获知板子IP,从浏览器访问。
视频调整到640480分辨率,从串口信息看,帧率10~25,不怎么稳定,板子发热明显。
拍照最大像素16001200,效果还可以。
手机连板子的热点,速度倒还可以,还能进行人脸检测和识别。
(1)git的proxy是有必要的,否则下载慢甚至失败
(2)依赖和权限
(3)如果报错,仔细看出错原因,检查前面步骤是否缺失。
安信可ESP32-CAM摄像头开发demo–局域网拍照、实时视频、人脸识别
乐鑫Esp32学习之旅① 爬坑学习新旅程,虚拟机Linux环境搭建esp32环境,打印 “Hellow World”。