可修改的SDK 4.2,ESP-IDF v5,xs-dev,Node-RED MCU版,node-red-mcu插件安装笔记(树莓派版)
首先
这是安装Node-RED MCU Edition的重大更新的备忘录。
环境
-
- Raspberry Pi 4B (4GB)
-
- micro SDカード (32GB)
-
- Raspberry Pi Imager (1.7.5)
- Raspberry Pi OS with desktop (64bit 2023/5/3版)
建立环境
省略Raspberry Pi Imager、Raspberry Pi OS的下载,写入到SD卡以及启动Raspberry Pi OS的步骤。
安装所需包
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install gcc git wget make libncurses-dev flex bison gperf
$ sudo apt install libgtk-3-dev
可定制的SDK的安装
使用 xs-dev 工具进行环境搭建。
首先安装 Node.js 18.x 系列。
$ sudo apt install -y ca-certificates curl gnupg
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
$ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
$ sudo apt update
$ sudo apt install nodejs -y
显示版本并进行操作确认。
$ node -v
v18.18.0
$ npm -v
9.8.1
安装XS-Dev工具。
$ sudo npm install -g xs-dev
请使用以下命令进行操作验证。
$ xs-dev -v
0.27.5
安装 Moddable SDK。
$ xs-dev setup
为了启用环境变量,先关闭终端,然后重新打开。
通过以下命令来确认安装后的环境。
$ xs-dev info
xs-dev environment info:
CLI Version 0.27.5
OS Linux
Arch arm64
Shell /bin/bash
NodeJS Version v18.18.0 (/usr/bin/node)
Python Version 3.9.2 (/usr/bin/python)
Moddable SDK Version 4.2.0 (/home/pi/.local/share/moddable)
Supported target devices lin
用以下的命令来运行示例程序(helloworld)。
$ xs-dev run --example helloworld
将模拟器(mcsim)和调试器(xsbug)启动。
ESP32设备的设置
使用以下命令安装ESP32设备的构建工具(ESP-IDF)。
$ xs-dev setup --device esp32
为了启用环境变量,请先关闭终端,然后重新打开。
使用以下命令检查安装后的环境。
$ xs-dev info
xs-dev environment info:
CLI Version 0.27.5
OS Linux
Arch arm64
Shell /bin/bash
NodeJS Version v18.18.0 (/usr/bin/node)
Python Version 3.9.2 (/home/pi/.espressif/python_env/idf4.4_py3.9_env/bin/python)
Moddable SDK Version 4.2.0 (/home/pi/.local/share/moddable)
Supported target devices lin, esp32
ESP32 IDF Directory /home/pi/.local/share/esp32/esp-idf
使用以下命令确认ESP32设备的连接端口编号。
(以M5StickC Plus为例)
$ xs-dev scan
✔ Found the following available devices!
Port Device Features
/dev/cuUSB0 ESP32-PICO-D4 (revision 1) WiFi, BT, Dual Core, 240MHz, Embedded Flash, VRef calibration in efuse, Coding Scheme None
在ESP32设备上运行示例程序,使用以下命令:
(执行xs-dev scan命令,会显示Port为/dev/cuUSB0。但实际上被识别为/dev/ttyUSB0,所以要指定为/dev/ttyUSB0。)
在M5StickC Plus设备上执行示例程序(helloworld)的示例
$ xs-dev run --example helloworld --port /dev/ttyUSB0 --device esp32/m5stick_cplus
⠇ Building and deploying project /home/pi/.local/share/moddable/examples/helloworld on esp32/m5stick_cplus
⠙ Building and deploying project /home/pi/.local/share/moddable/examples/helloworld on esp32/m5stick_cplus
*** Update required to ESP-IDF v5.1.1 (found v4.4.3)
See update instructions at: https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/devices/esp32.md
Expected ESP IDF v5.1.1, found v4.4.3
make: *** [/home/pi/.local/share/moddable/build/tmp/esp32/m5stick_cplus/debug/helloworld/makefile:779: idfVersionCheck] Error 1
如果使用 Moddable SDK 4.2 的话,ESP-IDF 版本必须是 v4,否则会出错。
xs-dev工具尚未支持ESP-IDF v5。
→ 2023/10/12 xs-dev 0.28.0版本已支持ESP-IDF v5。
$ xs-dev info
xs-dev environment info:
CLI Version 0.28.0
OS Linux
Arch arm64
Shell /bin/bash
NodeJS Version v18.18.0 (/usr/bin/node)
Python Version 3.9.2 (/home/pi/.espressif/python_env/idf5.1_py3.9_env/bin/python)
Moddable SDK Version 4.2.1 (/home/pi/.local/share/moddable)
Supported target devices lin, esp32
ESP32 IDF Directory /home/pi/.local/share/esp32/esp-idf
→ 2023/10/12 下面的步骤已经不再需要。
我们将通过手动方式将ESP-IDF更新至v5.1.1。
$ cd ~/.local/share/esp32
$ mv esp-idf esp-idf.old
$ git clone -b v5.1.1 --recursive https://github.com/espressif/esp-idf.git
$ cd esp-idf
$ ./install.sh
为了启用环境变量,请关闭并重新打开终端。
再次在ESP32设备上运行示例程序。
在M5StickC Plus上执行球体演示(piu/balls)的示例
$ xs-dev run --example piu/balls --port /dev/tUSB0 --device esp32/m5stick_cplus
安装 Node-RED 和 node-red-mcu-plugin。
安装过程没有变化。
node-red-mcu-plugin 1.4.0已支持nRF52。
$ bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
$ cd ~/.node-red
$ npm i @ralphwetzel/node-red-mcu-plugin