Files

909 lines
39 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<div style="margin-top: 40px;">
<div class="search-tips" style="display:none">
<h5>未搜索到相关问题,你可以<a href="https://github.com/m5stack/m5-docs/issues" target="view_window">点击此处</a>,前往Github提交问题.</h5>
</div>
<div class="faq-class">
<h5>常见产品购买问题</h5>
</div>
<div class="faq-item">
<h5 class="faq-title">Q76: 如何读取已经烧录的固件?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
使用esptool可以读取esp的flash内容,并导出bin文件。详细操作参考
[esptool github](https://github.com/espressif/esptool)
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q77: 如何使用Arduino的文件系统分区,读写文件?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
[Arduino ESP32 FS插件](https://github.com/me-no-dev/arduino-esp32fs-plugin)
[调用Arduino文件系统分区的图片资源案例](https://github.com/m5stack/M5Stack/tree/master/examples/Advanced/Display/Bmp_Jpg_SPIFFS_draw)
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q78: 如何往UIFlow文件系统中读写文件?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
UIFlow基于mpy固件制作,支持的文件系统操作工具有很多,以下列举两款较为常用的工具:
[AMPY](https://github.com/scientifichackers/ampy)
[uPyloader](https://github.com/BetaRavener/uPyLoader)
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q79: Arduino板管理中esp32板下载失败的几种解决方案
<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
重启Arduino IDE, 电脑使用手机AP移动网络进行下载。
[Github手动安装,参考esp32-arduino仓库README](https://github.com/espressif/arduino-esp32)
[板管理离线安装](https://www.arduino.cn/thread-92660-1-2.html)
使用M5Stack官方板管理地址,在板管理器中搜索m5stack进行下载:[https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json)
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q1: 不同的M5主机、摄像头Unit之间有什么区别?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_table/Product_compared.pdf" role="button" style="text-decoration:none" target="view_window">查看产品比较表格</a>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q3: 官方的信息发布平台是那里?如何获得第一手新闻消息?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
官方的信息发布平台有
<a href="https://m5stack.com/pages/blog-page">官网新闻页</a>
<a href="https://www.youtube.com/c/m5stack">Youtubu</a>
<a href="https://www.facebook.com/M5Stack/">FaceBook</a>
<a href="https://www.instagram.com/m5stack/">Instagram</a>
<a href="https://twitter.com/M5Stack">Twitter</a>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q4: M5Stack主要的控制器有哪些?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
M5Stack的主要的控制器可以分为3大类,Core系列,Stick系列和Atom系列,未来会增加其他系列控制器。
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q5: M5Stack的控制器系列之间有什么区别?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
Core系列的控制器有屏幕是我们的主打系列;Stick系列屏幕上会变得较小,整体的体积小了很多,性价比高;Atom系列没有屏幕,取而代之的则是RGB灯,它的价格是最便宜的,可用作物联网终端控制设备;官网能看到<a href="https://docs.m5stack.com/#/zh_CN/">详细资料</a>的对比
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q6: COM系列通讯模块与其他旧款通讯模块有什么区别<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
COM通讯模块主要采用SimCOM模组,模块主体采用公版设计,主要通讯模组可根据需求更换,通过拨码开关可配置串口通讯物理引脚,旧款模块模组直接焊接,无法拆卸,串口物理引脚需要手动划断,不可再次修改。
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q7: 不懂编程,是否可以用M5Stack产品做应用<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
不懂编程可以使用UIFlow进行编程,但是小孩子的基本编程思维应该具备,M5Stack产品的引脚定义要知道(比如ESP32哪些引脚用了ADC会导致WiFi无法工作,哪些引脚只能输入不能输出)数据处理流程要清晰,如果想做个人认知范围外的功能,建议先自行学习相关知识(比如我想将图像保存为JPEG图片,至少你得知道JPEG文件数据格式)。
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q8: 我想做物联网应用,不知道选择哪个通讯模块<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
确定自己的立项需求,使用哪个物联网平台,需要AT支持什么协议,数据吞吐量大小,信号覆盖率,网速要求,项目造价,后期维护成本等等问题,如果你了解清楚这些问题自然有答案。
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q9: LoRa与LoRaWAN模块有什么区别?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
LoRa模块:采用Ra-02模组,采用串行通信协议: SPI,支持频段范围410-525Hz.
<br>
LoRaWAN模块:采用RHF76-052模组,内置LoRaWAN协议栈,使用串口通信,通过发送AT指令控制模组,支持与全双工LoRaWAN网关通信,支持双频段433-470MHz 和868-915MHz.
<br>
LoRa模块则一般用于组建小型局域网络,LoRaWAN模块一般用于组建大型广域物联网网络数据采集(通常搭配LoRaWAN网关服务使用)LoRaWAN模块内置LoRaWAN协议栈,用户能够方便的通过发送AT指令控制模组,支持与全双工LoRaWAN网关通信。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q10: 刚拿到主机,该怎么用<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
如果以前接触过Arduino,了解C/C++语言,请按照下面步骤进行配置,如果完全没有接触过Arduino,请移步至<a href="https://docs.m5stack.com/#/en/uiflow/uiflow_home_page">UIFlow</a>
或查看<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/UIFlow-Book-zh_cn.pdf">UIFlow相关书籍</a>
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q11: M5摄像头通过 WIFI 传输图像给手机,能传输多远?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
经过测试,在室内使用 M5Camera 能传输 20 米左右。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q12: 能否连接5G频段的Wi-Fi<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
ESP32芯片不支持5G频段的WiFi,只可以连接2.4G。
</span>
</div>
</div>
</div>
<div class="faq-class">
<h5>常见产品编程问题</h5>
</div>
<div class="faq-item">
<h5 class="faq-title">Q13: ESP-IDF、Arduino、UIFlow、Micropython几种编程环境有什么不同<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>ESP-IDF属于乐鑫专有SDK底层开发,需要用户熟练掌握C/C++编程,了解ESP32内部接口定义及API,熟悉GCC、CMAKE等编译环境,主要面向产品级、消费级领域开发,对基础用户入门门槛较高,主要适合单一领域的专业用户。
Arduino编程是在ESP-IDF的基础上对接口进行封装,用户无需过多关心底层实现逻辑,主要偏向于业余DIY爱好者、编程入门用户,用户只需了解基本的C/C++知识即可上手,开源资料较多,代码通用型较强,适合新手入门。
MicroPython是Python语言的精简版本,主要应用于单片机,代码实时解释执行,相较于C/C++的代码写法,MicroPython更容易理解,适用于对运行速度没有苛刻要求的场景,适合熟悉Python语言的用户。
UIFlow是M5Stack推出的一款可视化编程平台,内部集成了与M5Stack产品相关的编程模块,支持离线与在线编程,支持MicroPython编程语言,可视化操作用户使用门槛进一步降低,用户只需构建程序逻辑,简单设置参数即可完成编程操作。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q14: Arduino环境如何搭建?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>参考<a href="https://docs.m5stack.com/#/zh_CN/arduino/arduino_development">Arduino搭建说明</a> </span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q15: 官方的github网站是什么?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>最新的库或者例子我们都会第一时间在这里更新的<a href="https://github.com/m5stack">github</a></span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q16: 官方例程在哪里下载?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>这是我们的主要的例程集中的<a href="https://github.com/m5stack/M5-ProductExampleCodes">github</a>仓库,其中罗列了主要的外设例程,欢迎参考</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q17: ESP-IDF环境如何搭建<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>参考<a href="https://esp-idf-zh.readthedocs.io/zh_CN/latest/get-started/index.html">ESP-IDF说明</a> </span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q18: Arduino上传不成功<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>确认开发板型号、波特率、串行端口配置无误,擦除Flash再次上传,如果依然上传失败,请联系客服。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q19: 如何使用Burner烧录固件?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>在我们的官网UIFlow的<a href="https://docs.m5stack.com/#/en/uiflow/uiflow_home_page">教程</a>中有如何下载固件的教程</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q20: ESP-IDF的API<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>参考<a href="https://esp-idf-zh.readthedocs.io/zh_CN/latest/api-reference/index.html">ESP-IDF说明</a></span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q21: ESP-IDF如何编译烧录固件<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>在ESP-IDF中直接用'make flash'命令或在Eclipse IDE 中编译和烧写,如果直接烧录已编译的bin文件,可根据文件内存地址使用ESP Tools 进行烧录<br>
<a href="https://github.com/m5stack/M5Stack-IDF">M5Stack IDF component</a><br>
<a href="https://github.com/m5stack/M5StickC-IDF">M5StickC IDF component</a></span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q22: Arduino内如何使用蓝牙、如何用HTTP、如何使用SD、如何使用WebServer、如何使用FreeRTOS等<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>请从以下320个示例中查找<a href="https://techtutorialsx.com/category/esp32/">TECHTUTORIALSX</a></span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q23: V-Function传出的数据我不想用UIFlow接收,告诉我怎么获取<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>UIFlow内集成的功能针对UIFlow体系内的产品使用,如果希望通过Arduino或其他平台产品获取数据请了解一下相关平台的JSON格式解析。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q24: 从哪里获取资料学习<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>硬件只是实现的载体,C/C++、Arduino、Python相关的网站都可以学习,关于M5Stack产品自身硬件的使用方法可以参考<a href="https://docs.m5stack.com/#/">产品文档</a>和<a href="https://github.com/m5stack/M5-ProductExampleCodes">示例</a></span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q25: ATOM Echo、ATOM Lite、ATOM Matrix程序通用吗<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>三款主机的内部引脚定义不同,ATOM Lite与ATOM Matrix大部分程序是通用的,ATOM Echo定位是智能音箱,底部引脚被I2S占用,理论上无法与其他主机共用相同程序。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q26: 为什么我的Arduino代码编译报错了<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
如果是官方提供的程序,上传前已经编译验证通过,如果使用的官方程序编译报错,有可能是因为库版本或板管理引起冲突导致,可以到GitHub提交issue或者联系客服。如果是自行编写的程序,请仔细检查函数声明、类引用是否存在重复定义或类型不匹配的问题。
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q27: V-Function传出的数据我不想用UIFlow接收,告诉我怎么获取<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>UIFlow内集成的功能针对UIFlow体系内的产品使用,如果希望通过Arduino或其他平台产品获取数据请了解一下相关平台的JSON格式解析。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q28: 使用MPU6886得到的Picth、Roll、Yaw不准确<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>Pitch、Roll、Yaw是通过IMU获取的加速度与角速度实时解算出来的,与算法的准确性有很大关系。现阶段提供的程序没有对算法进行优化。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q29: 这个视频里的项目很有意思,能不能给源码<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>所有素材来源出自用户手中,有的用户用来课上教学,有的用户用来生产周边产品,有的用户用于出版教程,你所见到的并非用户都会无偿提供代码,能提供的代码都可以在GitHub中通过搜索筛选找到。部分项目在M5Burner里已经提供,可以直接烧录。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q14: Core2与Core的示例程序是否通用<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>由于接口引脚定义有所改动,程序是不能直接使用的,需要在程序中修改相应的引脚。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q30: 编写的程序里用到了按键,但是按过一次之后就再也不起作用<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>使用按键和喇叭需要在执行后添加M5.update()来重新响应。</span>
<pre v-pre="" data-lang="">
<code class="lang-clike">
M5.update();
</code>
</pre>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q31: M5Stack设备支持中文显示吗?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>在Arduino环境中支持GB2312编码显示,参考Display中的hzk16示例,UIFlow中可直接显示。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q32: 如何获得更多的API?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>M5官方提供的参考API仅限于M5硬件封装的功能,软件应用的库比如WIFI,HTTP等不属于提供的范畴,可参考其他ESP32和Arduino库,使用上是通用的。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q33: Burner中的第三方固件如何使用和修改?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>我们的Burner除了会提供UiFlow的固件之外还会搜寻github上一些有意思的固件,这些固件大多都是不需要或者需要很少的硬件依赖就可以做成的,可以提供给大家下载娱乐。如果想去自己下载修改内容,可以点击固件版本旁边的github的LOGO即可跳转到相应的github主页,在那里可以下载</span>
</div>
</div>
</div>
<div class="faq-class">
<h5>常见硬件问题</h5>
</div>
<div class="faq-item">
<h5 class="faq-title">Q34: M5Stack可以挂几个I2C<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>ESP32内部有两条I2C总线,每条I2C总线理论上最多支持外挂127个设备,其中主机已经占用一条I2C总线,因此还有一条I2C总线可供用户自定义。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q35: 如何消除M5Core的扬声器噪声?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>在 Arduino 程序的 Setup()中执行以下语句</span>
<pre v-pre="" data-lang="">
<code class="lang-clike">
dacWrite(M5STACKFIRE_SPEAKER_PIN, 0);
</code>
</pre>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q36: Core2与其他模块兼容吗<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>Core2的M-Bus端子的深度与标准Core不同。在Core2发布后发行的新模块都是兼容的。对于早期(2020年9月1日)前的模块,建议购买与客服咨询</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q37: DC Motor Module怎么连接乐高电机<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>DC Motor Module支持乐高NXT、EV3系列的伺服电机,不支持乐高PF电机,由于乐高伺服电机使用RJ12接口,因此需要使用M5Stack特制的连接线进行连接。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q38: StickC与Atom的HY2.0-4P接口输入数字信号没反应<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>StickC与Atom在使用HY2.0-4P接口时,需要对相应引脚进行上拉操作,否则无信号输出。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q39: StickC/StickC Plus的IR最远发射距离多少<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>根据测试最远距离为80cm</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q40: Atom GPS Kit为什么GPS只有TX没有RX<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>Atom引脚有限,为了兼容Atom Matrix的使用,没有接入GPIO21/25引脚,通常也很少会使用RX对GPS配置,如果有特殊需求,可以将GPS模块单独配置,如果只在AtomLite上使用,用户可以自行飞线RX至GPIO21/25引脚。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q41: Core2屏幕下方3个圆点要怎么使用<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>屏幕下方的圆点只是镭射图案,道理与安卓手机屏幕下方三个按键是一样的,它是触摸屏的一部分,只需要设置触摸热区即可映射为虚拟按键,整块屏幕任何位置都可映射为虚拟按键,具体使用参考Core2 Example内的Touch示例。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q42: FACE II底座的LED Bar如何点亮<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>FACE II底座的LED Bar使用方法与M5GO 底座使用相同,引脚为GPIO15,可参考M5Stack Fire的程序。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q43: RS485在使用时必须连接4根线吗<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>RS485只需要连接3根(GND、TX、 RX),12/24V引脚仅提供为M5Stack设备供电的目的,省掉USB供电接线。如连接非M5Stack设备请务必确认设备电压,防止烧毁,一般建议只接3根线。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q44: 多个电池可以堆叠吗<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>可以多个堆叠,电池并联总容量增加,电压不变,但是由于每个电池在使用过程中放电不是均衡的,因此电池之间存在电压差,可能会引起电池倒充的现象,长期使用会减少电池寿命,因此不建议长期堆叠使用。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q45: 有些产品使用了STM32的芯片,可以给它编程吗<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>产品预留了烧录测试点,用户可以自行编程,由于STM32固件不开源,自行编程意味着使用者放弃了保修,因此不建议用户自己编程。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q46: StickC的HAT有些带有电池,如何给电池充电<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>只需将StickC插入HAT,给StickC供电即可向HAT电池供电
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q47: ESP32有几个串口<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>ESP32一共有3个硬件串口,通过初始化串口(RX/TX)可以将指定的GPIO引脚映射为串口引脚,其中一个硬件串口(GPIO1/GPIO3)已经被USB接口(UART0)占用,剩余两个可供用户连接串口外设,UART1被系统默认设为(GPIO16/GPIO17),UART2在系统内未指定,用户自由映射。</span>
</div>
</div>
</div>
<div class="faq-class">
<h5>UIFlow常见问题</h5>
</div>
<div class="faq-item">
<h5 class="faq-title">Q48: UIFlow如何使用?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 关于UIFlow的<a href="https://docs.m5stack.com/#/en/uiflow/uiflow_home_page">使用教程</a>在我们的官网有整理,同时我们还在<a href="https://space.bilibili.com/443675010?from=search&seid=16642945198622497488">B站</a>发布相关视频教程</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q49: UIFlow如何添加图片?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 我们的UIFlow目前支持jpg格式的图片,png图片我们还将在后续的更新中加入进去。我们可以提供过转换格式的软件或者是jpg图片制作软件获得一张你要显示的图片(50KB以下)。当我们的控制器连接了网络并连接上了服务器后然后通过运行左边的manage图标,点击添加图片后选择jpg图片,然后等待上传至控制器。通过左边栏的Image拉到屏幕上后点开它就能选择我们上传的图片了</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q50: UIFlow的Micropython与官方主线Micropython有什么区别<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>UIFlow是基于主线Micropython的二次封装,集成了大量M5Stack官方库,在使用上UIFlow更加简单容易理解,同时也大部分兼容主线的API写法。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q51: UIFlow如何建立自己的块?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>我们的UIFlow的贝塔版本有一个供给玩家自己建立模块的功能。刚开始使用的时候我们需要点击<a href="https://docs.m5stack.com/#/en/related_documents/blockly_custom">User Manual</a>去仔细阅读手册。然后打开<a href="http://block-maker.m5stack.com/">Create *.m5b file</a>去制作模块,并点击Download下载下来,然后点击Open *.m5b就可以使用了</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q52: Core怎样快速进入wifi模式?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>开机的时候按住中间按键即可快速进入wifi模式</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q53: UIFlow运行的文件会被保存在哪里?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>UIFlow下运行和保存的micropython文件会保存在控制器的temp.py中。不同的是运行的文件是直接运行不会切换模式,而下载的文件则是改变成App模式后重启,我们的App模式也是开机运行运行temp.py文件。离线的m5f文件会保存在您浏览器下载的位置</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q54: UIFlow支持多线程吗?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>对于UIFlow来说它本身基于多线程做的,为了防止用户在使用多线程的过程中在原则上不当使得UIFlow无法正常工作,对用户不开放多线程部分,想DIY的用户可以通过<a href="http://docs.micropython.org/en/latest/library/_thread.html">micropython官方多线程文档</a>自行编写</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q55: UIFlow的变量可以重名吗?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>由于图形化转换成micropython的技术问题,目前为止我们的变量都是全局变量,所以变量之间不能重名,后续可能会有所调整</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q56: 自己用UiFlow编写Core2画板程序为什么手松开绘图痕迹就消失了?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>core2目前为止使用了LVGL和普通GUI绘图,你的绘图可能使用的是普通GUI的API,但是触摸使用的是LVGL的API,所以LVGL的触摸触发了重绘会覆盖掉之前的绘图痕迹,使用**高级**->**附加代码**中的模块添加“lv.obj.set_click(lv.scr_act(), False)”代码即可关闭重绘事件</span>
</div>
</div>
</div>
<div class="faq-class">
<h5>常见产品售后问题</h5>
</div>
<div class="faq-item">
<h5 class="faq-title">Q57: M5stickC 无法识别端口(COM)<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
M5StickC仅支持WIN10&Linux&MAC免驱,其余操作系统则需要用户自行安装驱动程序。
<br>
安装步骤:1,点击下方链接,下载驱动安装包. 2.连接设备,并打开电脑设备管理器端口选项。 3,右键点击未能识别的设备,进行手动更新。
</span>
<br>
<a href="https://www.ftdichip.com/Drivers/VCP.htm">驱动下载连接</a>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q58: 有些模块与 M5Core 堆叠之后不能下载程序,比如 USB 模块与 M5Core 堆叠<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 可能是堆叠之后,M5-Bus 总线上的引脚 GPIO0 与 M5Core 接触不太好。这种情况下,在下载程序的时候,GPIO0 理应会一直保持低电平的,可是因为接触不好,GPIO0 不能一直保持低电平,所以下载失败。
解决方案:在下载过程中,手动让 GPIO0 连接 GND,保证足够长时间拉低。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q59: M5GO 底座堆叠了 M5Core 之后,M5Core 不能开机,测试了底座电池满电<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 可能是堆叠之后,底座上的 M5-Bus 总线上的左下角的引脚 BATTERY 与 M5Core 接触不太好,这是生产时焊接位置偏了导致的。总线排针焊接位置稍微偏了一些之后,容易出现 BATTERY 引脚与 M5Core 接触不好。解决方案:重新焊接 M5-Bus 总线排针,排针位置必须严格与焊盘位置吻合。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q60: 有的电脑虽然连接上了主控,可是仍然无法使用 Arduino IDE、ESPFlashDownloadTool 或 M5Burner 来烧录程序。<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 原因和解决方案:可能是因为这些串口的供电电流不够大,需要在主控中的 RST 引脚和 GND 引脚之间接入电容 ( 电容值是比0.1uF大的 ),或者在下载程序的时候,将 GPIO 0 连接到 GND,使得 GPIO 0 能持续足够的低电平。</span>
<img class="faq-img" src="assets/img/faq/faq_03.webp">
<img class="faq-img" src="assets/img/faq/faq_05.webp">
<img class="faq-img" src="assets/img/faq/faq_06.webp">
<img class="faq-img" src="assets/img/faq/faq_07.webp">
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q61: ESP32 有哪些特殊的 GPIO 管脚需要注意?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> ESP32 有 34 个 GPIO 管脚,其中 GPIO 34-39 仅用作输入,不能作为输出,其他的既可以作为输入又可以作为输出管脚。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q62: 为什么带 MPU9250 的 Stick 烧录了出厂固件之后,按按键 A,结果显示 "No",即 "不存在9250"<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>重启这个 Stick,就可以显示。因为读取 MPU9250 的代码放置在出厂程序的 setup() 函数中,开机只执行一次,所以重启,让 Stick 再检测一次 MPU9250。</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q63: M5stickC 无法开机<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span> 以下操作能够使设备恢复正常:1,将BAT短接到GND,2秒后断开短接。 2.插入USB线。 3,屏幕亮起后,USB继续为设备充电. </span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q64: M5StickV 加载不了SD卡<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>首先要确认SD卡的格式是否为FAT32,不可以存在分区,一些大容量SD卡通常被格式化为NTFS类型,对SD卡的兼容度做了以下测试。
<br>
<a href="https://docs.m5stack.com/#/zh_CN/core/m5stickv">SD卡兼容性列表</a>
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q65: 向V-Training发送照片但是接收的邮件并未包含模型文件<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>仔细检查邮件中的内容,训练错误将在邮件中指出,发送的照片中只允许包含指定的两个文件夹,照片的最低数量和分类有要求,如果存在隐藏文件会导致训练失败
<br>
<a href="https://docs.m5stack.com/#/zh_CN/related_documents/v-training"> V-Training详细使用教程 </a>
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q66: 烧录程序时出现MD5文件错误<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>首先仔细检查你的程序,确认没有任何问题,其次使用M5Burner进行擦除,检查是否可以清除成功,再次烧录FactoryTest检查是否可以烧录,如果能成功操作,说明没有问题,如果重复出现MD5文件错误则很大概率FLASH已经损坏。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q67: M5Stack BASIC一直正常使用,突然无法开机了,即使连接了USB<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>将BASIC底座去掉,尝试开机可以启动,很大可能是底座与M-BUS接触不良导致的
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q68: BeetleC连接手机遥控有时会无法响应<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>大部分是由于电池电量过低引起的,如果电池电量不足会导致信号质量严重衰减。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q69: 怎么更改GPS设置<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>一般来说,GPS使用默认设置即可,如果有特殊需求更改设置,可以使用TTL转USB转换器直接与GPS连接,通过<a href="https://www.u-blox.com/en/product/u-center">U-Blox Center</a>进行配置,具体软件使用说明,参照U-Blox官网U-center使用指南。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q70: 使用HAT-Thermal时,屏幕显示带有图像波纹干扰<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
旧的100Nf电容器不能给MLx90640提供足够的去耦能力,可以通过加一个10Uf(106)电容器来解决。
<br>
解决方案:在图示位置并联电容(10uF 10V 0603)。
</span>
<img class="faq-img" src="assets/img/faq/hat_thermal/01.webp">
<img class="faq-img" src="assets/img/faq/hat_thermal/02.webp">
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q71: MacOS版本升级高版本后,M5StickC无法正常烧录程序。<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
部分Mac电脑在升级MacOS Catalina版本后,M5StickC无法正常烧录程序。
<br>
解决方案1:烧录时,使用杜邦线短接G0至GND.
解决方案2<a href="https://forum.m5stack.com/topic/1591/m5stickc-atom-on-macos-catalina-can-t-upload-esp32-timed-out-waiting-for-packet-header-solution-solved">使用更新工具更新设备USB驱动芯片固件</a>
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q72: 可以同时堆叠多个不同功能的模块吗?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>同时堆叠多个不同功能的模块时,需要注意在MBUS上是否存在引脚冲突,共用引脚的I2C则需要检查是否存在地址冲突
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q73: 同一个Grove口,如何拓展多个Unit设备<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>M5Stack为多传感器拓展场景设计了Hub(拓展I2C地址不相同的设备专用) / Pahub(拓展I2C设备专用) / Pbhub(拓展无时序要求的IO读写设备专用),详细使用信息,请参考
[产品文档](https://docs.m5stack.com/#/)
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q74: M5主机的续航时间<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>控制器的续航时间受电池容量以及运行状态,负载的等多方面因素影响,因此不会有固定数值。减少负载,采用休眠策略能够有效增加续航时间。
</span>
</div>
</div>
</div>
<div class="faq-item">
<h5 class="faq-title">Q75: M5StickV/UnitV系列产品的主要的几种开发方式有什么区别?<p class="faq-button"></p></h5>
<div class="faq-answer">
<div>
<span>
V-Function是由M5Stack团队针对V系列设备开发的多个视觉识别功能固件,基于不同的功能固件(对象追踪,移动检测等),用户能够快速的进行视觉识别的应用的搭建,支持UIFlow或串口直接数据调用。
<br>
Maixpy固件基于MicroPython制作,主要应用于单片机,代码实时解释执行,相较于C/C++的代码写法,MicroPython更容易理解,适用于对运行速度没有苛刻要求的场景,适合熟悉Python语言的用户。
<br>
K210专用SDK,主要面向底层开发,需要用户熟练掌握C/C++编程,了解ESP32内部接口定义及API,熟悉GCC、CMAKE等编译环境,主要面向产品级、消费级领域开发,对基础用户入门门槛较高,主要适合单一领域的专业用户。
</span>
</div>
</div>
</div>
</div>
<script>
$(".faq-item .faq-title").toggleClass('open');
$(document).ready(function() {
$(".faq-item .faq-title").on('click', function() {
$(this).toggleClass('open');
});
});
</script>