M5Cloud 是由 M5Stack 团队为 M5Stack ESP32 开发的 web IDE ,也有相应的固件,当然,其他厂家的ESP32也是可以使用的,对boot.py稍作修改就行。
开源地址 https://github.com/m5stack/M5Cloud/blob/master/README_CN.md
快速开始
下载最新固件
https://github.com/m5stack/M5Cloud/tree/master/firmwares
MacOS/Linux烧录
1.使用pip安装esptool:
pip install esptool
2.先擦除:
esptool.py --chip esp32 --port /dev/tty.SLAB_USBtoUART erase_flash
3.烧录bin文件:
esptool.py --chip esp32 --port /dev/tty.SLAB_USBtoUART write_flash --flash_mode dio -z 0x1000 firmware.bin
Windows烧录
Windows使用Espressif提供Flash Download Tools工具烧录(点击下载),设置如下(先擦除再烧录):
ps:如果Windows上面安装有Python环境,也可以使用pip安装esptool,然后将指令中的 /dev/tty.SLAB_USBtoUART 改成 COM编号,(例:COM4),使用esptool进行烧录。
烧录完成
开始配置
M5Stack 固件里面有三个按键,分别在GPIO37,GPIO38,GPIO39引脚,在启动的时候选择模式用,而一般的ESP32
SENSOR_VP(GPIO36)
SENSOR_CAPP(GPIO37)
SENSOR_CAPN(GPIO38)
SENSOR_VN(GPIO39)
两两之间间外接的电容(270pF)作为芯片内部开关放大器的采样电容使用。只引出了GPIO39,所以需要修改固件自带的boot.py文件,才能使用,自带的web配网功能,暂时也无法使用(ps:据说后面会编译纯esp32的固件,期待中)。
开始修改自带boot.py
删除原来boot.py里面的内容,修改成以下,只有GPIO39引出了,对应的是buttonA
# This file is executed on every boot (including wake-boot from deepsleep)
import sys
sys.path[1] = '/flash/lib'
# ---------- M5Cloud ------------
from m5stack import buttonA
if buttonA.isPressed():
print('On: OFF-LINE Mode')
else:
import network
import time
def connectWifi():
wlan=network.WLAN(network.STA_IF) #create a wlan object
wlan.active(True) #Activate the network interface
wlan.connect("Myssid","password")
i=0
while(wlan.ifconfig()[0]=='0.0.0.0' and i < 10):
i=i+1
time.sleep(1)
if(wlan.ifconfig()[0]=='0.0.0.0'):
print('connect Wifi False!')
return False
else:
print('connect Wifi True!')
return True
if(connectWifi() == True):
import m5cloud
将 wlan.connect("Myssid","password") 里面的路由器信息改成自己的,如果开机想进入m5cloud 模式,只需要将GPIO39拉高即可。
绑定设备
登陆 http://io.m5stack.com 注册账号,添加设备:
点击Add,将串口输出的Check Code填入绑定设备,Check Code是一次性随机的,60秒会刷新一次,仅仅用于设备绑定验证。
你就可以在M5Cloud 的控制界面上面看到自己的设备了,点击 ">_"图标就可以开始在web上面编写程序了。
PS:这个web IDE的功能就留下自己探索吧,在此谢谢大家阅读😊