はじめに
olimexにESP32-S3でLinuxが動くという記事があったので。
必要なもの
- ESP32-S3 (RAM 8MB以上、FLASH 8MB以上)
- Ubuntu22 (HDD 100GB以上)
1. ESP-IDF インストール
1-1. Install Prerequisities (for Ubuntu)
sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
1-2. Get ESP-IDF
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
1-3. Set up the tools
cd ~/esp/esp-idf
./install.sh esp32s3
1-4. Set up the environment variables
. $HOME/esp/esp-idf/export.sh
1-5. First Steps on ESP-IDF
Start a Project
cd ~/esp
cp -r $IDF_PATH/examples/get-started/hello_world .
Connect Your Device
ここで /dev/ttyUSB0 が出てこないので、この記事を参照して修正
sudo apt remove brltty
sudo udevadm control --reload
書き込み権限もあるか確認。ない場合にはこの記事を参照して
/etc/udev/rules.d/99-usb-serial.rules を作る。
99-usb-serial.rules
SUBSYSTEM=="tty",ENV{ID_SERIAL_SHORT}="デバイスのID_SERIAL_SHORTの値",MODE="0666"
Configure Your Project
cd ~/esp/hello_world
idf.py set-target esp32s3
idf.py menuconfig
Build Project
idf.py build
Flash onto the Device
idf.py -p /dev/ttyUSB0 flash
Monitor the Output
idf.py -p /dev/ttyUSB0 monitor
2. Linux インストール
bashスクリプト作ってくれている人がいるのでありがたく使う
sudo apt-get install autoconf flex texinfo help2man gawk libtool-bin bison libncurses5-dev
mkdir ~/esp32
cd ~/esp32
wget https://gist.githubusercontent.com/jcmvbkbc/316e6da728021c8ff670a24e674a35e6/raw/eec0e4f144a5b6ff83620e4c14d3f69eceb62aba/rebuild-esp32s3-linux.sh
bash rebuild-esp32s3-linux.sh
これでESP32-S3でLinuxが動いてるのを確認。
その他