查看: 865|回复: 0

【教程】M5以及esp32的arduino ide 开发板管理器使用问题处理

[复制链接]

该用户从未签到

发表于 2021-4-20 19:44 | 显示全部楼层 |阅读模式
                        M5以及esp32的arduino ide 开发板管理器使用问题处理

【问题的提出】
目前在arduino ide 下开发板管理器的使用中,存在访问不畅、json文件读取失败,开发板不能建立、维护和更新等问题。
本文尝试用离线下载的方式,加上本地HFS(http file server)来解决这一问题。
前提条件是:开发板管理所需要的文件,您能够通过各种合法有效方式下载到本地硬盘。
本文适用:m5stack以及esp32的安装,亲测可用,操作系统为win7/win10以及ubuntu 20.04.  实际上,所有类似因网络访问不畅造成的开发板管理器使用不成功的问题,都可以用本思路去解决。
       正常两个系列开发板的的arduino ide 链接是:
      如果您的安装没有问题,就不用往下看了。


【借鉴及感谢】
本文借鉴了这两篇教程,在此向作者致谢。
【解决的过程】
一、问题的分析及解决思路
arduino ide 下开发板管理器是通过在首选项中,一个json文件,来获取开发板所需要的各类支持性文件,里面包含了各版本对应的支持性文件链接。这个json文件就是整个安装工作的路书、导航图。
实际使用中,在这些链接里,就可能存在一些访问不畅的内容,因而造成IDE的开发板管理器在安装过程中受阻、终止。
网上有非常多的方法去解决这一问题,社区也提供了离线安装包。
本文的解决思路就是在前面两篇帖文的指导下,一是将访问受阻的文件用各种合法有效方法下载到本地,二是修改安装配置json文件;三是利用HFS(httpfile server),建立一个本地http文件访问,使得ide的开发板管理器从本地直接读取已经准备好的支持性文件。
二、在win下,esp32的开发板管理问题解决
Step1:访问https://github.com/espressif/arduino-esp32/releases/tag/1.0.6,这是目前最新版的发行地址:
1.png
在本地硬盘,建立一个目录,目录必须是英文,比如:d:\esp32,将这两个红框文件下载到该目录下。
Step2: 打开package_esp32_index.json,查看支持性文件的链接,并且下载到本地硬盘,如:d:\esp32
2.png
对于win而言,我们一共需要下载这样四个文件:
3.png
Step3:安装hfs 服务器,这是一个优秀的绿色软件,免费、免安装。
下载后,解压在一个工作目录,然后打开运行,程序会建立一个本地http文件服务。并且自动将本机的局域网IP地址用于服务器地址,你可以制定一个端口,比如8080
将你刚才建立的d:\esp32目录整个upload上来,我选择的是虚拟目录方式。
4.png
此刻一个本地局域网的http file服务就建立了。
Step4:修改json文件,这一步非常重要,就是把指向github上的json文件修改为指向本地路径的“导航图”。
将json文件打开,将里面原来指向github的文件链接,全部改成本地连接,如本文中是http://192.168.110.252:8080/esp32/
比如:
下载了几个文件,就需要修改几处。
改完以后存盘,记得再upload更新一下这个json文件。
5.png
Step5:将http://192.168.110.252:8080/esp32/package_esp32_index.json这个链接,放入arduino ide的首选项里面。
6.png
打开开发板管理器,搜索esp32,选择1.0.6版,安装,一切顺利。
7.png
我已经安装完了,所以指一下位置即可。

8.png
至此,此问题得以顺利解决。
三、在win下,m5stack的开发板管理问题解决
关于M5stack管理器,大部分小伙伴不存在问题,因为m5stack将支持性文件大部分放在访问顺畅的服务器上。我这边只有一个文件访问不到,那就是github的链接。
那么解决问题的思路也是一样,只是要简单一些。所以思路同上:
step1:将访问不到的文件下载到d:\temp\目录下。
9.png
Step2:将该目录upload到hfs服务器上
10.png
Step3:修改json文件
11.png
需要修改的内容只有一处,然后存盘、更新json的上传(本地hfs)
Step4:将json文件添加到管理器网址(附加开发板)里:
12.png
后面的安装就一样了,选择最新的1.0.7版,然后点击安装即可。
至此,问题解决。
四、关于ubuntu下的解决
ubuntu下arduino ide的编译速度比win提速很多,得益于其文件管理系统、更友好的gcc支持以及对编译中间文件的充分运用。
有文章建议,ubuntu下面可以用wine+hfs安装服务,hfs官网也很明确说,这个exe是支持wine的。我觉得这个思路也很好,但因为我在解决win的问题时,已经有一台安装了hfs的pc,所以就不需要再ubuntu下面再装一个了。
那么ubuntu下面就简单了,刚才截图中已经显示了,我把linux64的支持文件也已经下载,放在了hfs上面,
13.png
所以ubuntu上面,只有一个步骤:
Step:只需要把开发板管理的json链接放在首选项就可以了。然后正常安装即可。
注意,这台ubuntu机器要和hfs在同一个局域网下。一定要注意这点。
Mark一下:ubuntu编译时,如果遇到以下错误:
“exec: ”python": executable file not found in $PATH
原因就是ubuntu 20.0.4 的python3与arduino的python之间需要做一个映射。
  1. sudo ln -s /usr/bin/python3 /usr/bin/python
复制代码

      
至此,问题得到解决。
大家可以充分享受ubuntu下面的提速了。玩得开心些。
沧海抱拳。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

blinker物联网教程——11、自动灌溉
blinker物联网教程——11
简介[hr] 农业是用水大户,近年来农业用水量约占经济社会用水总量的62%,部分地区高达
【Arduino】168种传感器模块系列实验(43)---单路继电器模块
【Arduino】168种传感器模
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
为什么电平为LOW时LED亮而反之不亮
为什么电平为LOW时LED亮而
如题,刚入门ESP8266,买了个开发板回来感到大惑不解,代码如图 此时板载LED常亮,利用串
想在原有的项目上加上一个呼吸灯怎么做才不影响原程序
想在原有的项目上加上一个
如题,想在原来的程序上加上一个呼吸灯,但是程序中的delay会影响到程序的其他部分,
串口分析字符操作符,灵活的实现自动化控制。
串口分析字符操作符,灵活
Arduino String可以分析串口读取的字符是何种操作符,一共十三种: isAlphaNumeric
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表