mac m1 搭建 arduino 环境

2023-11-18

前前后后弄了几次 arduino 环境,这次就以 mac m1 为例,来做一个笔记。


搭建 arduino

首先,第一步肯定是安装 arduino,这直接去官网下载安装就好了。地址放在下面:
https://www.arduino.cc/en/software

安装完成后,如下图打开 arduino 的设置进行配置。


配置,board manager 的 url,这里我使用国内源。

https://dl.espressif.com/dl/package_esp32_index.json
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json

到这里,如果没有什么意外就可以使用了。


在我尝试最小 demo 编译时,报出了 ValueError: dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found

在为了解决这个问题的时候,我找到有人同样在 BigSur 中出现这样的问题,并给出了解决方法,我尝试后也成功了,但我还不清楚这样可行的原因。

他的方法就是替换 esptool 文件,arduino 默认使用的是 二进制的 esptool 而不是 esptool.py

替换步骤:

  • 点击 Arduino 菜单的 Preferences,打开设置

  • 找到 [ArduinoLibraryPath]/preferences.txt ,然后点击打开 ArduinoLibrary 目录

  • 接着打开 packages/esp32/hardware/esp32/1.x.x 目录下的 platform.txt

  • 找到 第7行,将 tools.esptool_py.cmd=esptool 替换为 tools.esptool_py.cmd=esptool.py 然后保存

  • 然后找到 packages/esp32/hardware/esp32/1.x.x/tools 目录

  • 把里面的 esptool.py 复制到 ArduinoLibraryFolder/packages/esp32/tools/esptool_py/2.x.x

  • 最后重新打开 arduino,你应该可以成功编译了


配置 vscode

首先,你要在插件中找到 arduino 的插件,然后安装它。
安装好后,打开 Arduino 的文件,就可以看到右上角有两个相关按钮。

接着,要在设置中配置插件。最主要的就是这个 Command path,也就是arduino的启动位置。
这个时候就已经配置好了。在烧录前要记得选择板子和串口等。底部栏有快捷入口。
同时,你项目下的 .vscode 目录中会生成几个配置文件,也可以直接修改它们。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mac m1 搭建 arduino 环境 的相关文章

  • 在 Linux 上的 Python 中使用受密码保护的 Excel 工作表

    问题很简单 我每周都会收到一堆受密码保护的 Excel 文件 我必须解析它们并使用 Python 将某些部分写入新文件 我得到了文件的密码 当在 Windows 上完成此操作时 处理起来很简单 我只需导入 win32com 并使用 clie
  • 如何从 Mac OS X 中完全删除 Eclipse(包括设置和插件)?

    我的 Eclipse 与 GAE 损坏并且工作异常 所以我从Application文件夹中删除了Eclipse 但是留下了垃圾 我重新下载了全新的 eclipse 但它以旧设置运行 并且损坏的 GAE 结构仍然存在 如何从 Mac 上完全删
  • Arduino 高低

    我有一个 Arduino 我想知道到底是什么HIGH and LOW意思是 就实际值而言 它们是否有符号ints unsigned ints unsigned char是 他们的价值观是什么 我猜HIGH and LOW可能是unsigne
  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • git Push over sshfs 失败,并显示“关闭 sha1 文件时出错:错误的文件描述符”

    我们使用 sshfs 通过 SSH 安装文件系统 并将其用作 git 存储库协作的远程存储 Mac OSX 10 6 6 到 RHEL 3 服务器 SSHFS 版本 2 2 MacFUSE SSHFS 2 2 0 MacFUSE 库版本 F
  • 为什么我收到“无法进行二进制日志记录”的信息。在我的 MySQL 服务器上?

    当我今天启动 MySQL 服务器并尝试使用以下命令进行一些更改时用于 MySQL 的 Toad http www quest com toad for mysql 我收到此消息 MySQL 数据库错误 无法进行二进制日志记录 消息 交易级别
  • 在 Mac OS X 上安装 libxml2 时出现问题

    我正在尝试在我的 Mac 操作系统 10 6 4 上安装 libxml2 我实际上正在尝试在 Python 中运行 Scrapy 脚本 这需要我安装 Twisted Zope 现在还需要安装 libxml2 我已经下载了最新版本 2 7 7
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • 在 MacOS 终端上运行 ffmpeg [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我对 MacOS 相当陌生 我发现使用终端来获取信息并不容易ffmpeg和我在 Window 上一样正常运行 我有 ffmpeg 二进制文件ffmpe
  • 无法加载 JavaHL 库。- linux/eclipse

    在尝试安装 Subversion 插件时 当 Eclipse 启动时出现此错误 Failed to load JavaHL Library These are the errors that were encountered no libs
  • dyld:惰性符号绑定失败

    当我尝试运行时遇到一个奇怪的错误gatsby develop在新创建的 gatsby 项目中 这不应该与 gatsby js 静态站点生成器 有任何关系 因为我在不同的场合也遇到了相同的错误 当我跑步时gatsby develop在我的一个
  • 从 csv 文件中删除特定列,保持输出上的相同结构[重复]

    这个问题在这里已经有答案了 我想删除第 3 列并在输出文件中保留相同的结构 输入文件 12 10 10 10 10 1 12 23 1 45 6 7 11 2 33 45 1 2 1 2 34 5 6 I tried awk F 3 fil
  • AVCaptureDevice 找不到任何设备

    这行代码是我今天遇到的问题 macOS 应用程序 NSArray devices AVCaptureDevice devicesWithMediaType AVMediaTypeVideo 我更新Xcode后 系统总是让我空着devices
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • 如何在不卸载应用程序的情况下删除木桶?

    我最近安装了一个带有 homebrew cask 的应用程序 但我想自己处理它的更新 而不是通过brew cask upgrade 是否有命令或选项可以从本地列表中删除木桶而不卸载它 如果我使用brew cask remove or bre
  • 如何在bash中使用jq从变量中包含的json中提取值

    我正在编写一个 bash 脚本 其中存储了一个 json 值 现在我想使用 Jq 提取该 json 中的值 使用的代码是 json val code lyz1To6ZTWClDHSiaeXyxg redirect to http examp
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c

随机推荐

  • 研发人员欠缺的“不要脸”文化

    一直感觉研发人员相对市场人员确实缺少点什么 今天听到一个原华为的人说华为的文化中有一个 不要脸 文化 讲的就是研发人员要特别注意的事项 特别说明 不要脸 三个字 据说是任正非认为这样好记 才取得名字 这三点是 抬头看路 找人问路 请人带路
  • 由先序中序,或后序中序,可以唯一确定二叉树;完全二叉树的顺序存储,c/c++描述

    这是课本里的 两个定理 由先序 根左右 后序 左右根 可以确定根节点是哪个 由中序 左根右 可以确定左子树和右子树的范围 所以我们也找到了二叉树的左子树和右子树的先序 或后序 和中序排列 由归纳法 可得出这个构造二叉树链表的方法 对于完全二
  • loadrunner负载生成器;

    负载生成器 Load Generators 是脚本生成的负载引擎 相当于加压机 主要功能是生成虚拟用户进行负载 在默认的情况下使用本地的负载生成器来运行脚本 但是每生成一个虚拟用户 需要话费负载生成器大约2M 3M的内存空间 通常运行CON
  • java8有哪些jvm参数

    Java8中的JVM参数有很多种 这里列出一些常用的 server 指定JVM运行在服务器模式 在服务器环境下性能会更好 Xmx 设置JVM最大可用内存 Xms 设置JVM初始内存 XX PermSize 设置持久代 Perm Gen 的初
  • Python常用库大全

    作者 史豹 链接 https www zhihu com question 20501628 answer 223340838 来源 知乎 著作权归作者所有 商业转载请联系作者获得授权 非商业转载请注明出处 环境管理 管理 Python 版
  • Visual Studio 2017 远程调试器(MSVSMON.EXE) 找不到连接

    Visual Studio 2017 远程调试器 MSVSMON EXE 找不到连接 用的是wifi上网 而远程主机是有线连接 经过几个小时的排查 终于发现不在一个网段内 把wifi改成有线 确保和远程主机在一个网段内 就可以联上了
  • 【node】12、Koa实现简单爬虫案例

    效果图如下 首先我们新建文件夹 进入终端 初始化node项目 npm init y 安装koa搭建服务模块 npm install koa 安装superagent发送请求模块 npm install superagent 安装cheeri
  • 有关Proteus安装时的一些报错

    在安装Proteus的之后 使用的时候经常会出现 已使用符号sMKRORIGIN但未在库中找到 或者许多找不到文件在哪里的一些许多错误 我也是经常遇到 然后也是一点一点找资料解决 有时候这种方法能够解决 有时候又不能解决 确实很让人头疼 所
  • java: MySQL Metadata

    https www baeldung com jdbc database metadata https docs oracle com en java javase 11 docs api java sql java sql Databas
  • ant design pro v5 配置拦截器,header

    ant design pro v5 配置拦截器 header 1 资料文档 https umijs org zh CN plugins plugin request requestinterceptors 2 编写app tsx 我这里是自
  • 创建一个空的Git仓库,然后本地代码推上去

    这篇文章说的是如何将本地代码库推送到远端空的代码仓库 如需了解如何从远端代码仓库克隆代码到本地 看这里 1 创建代码仓库 2 终端进入本地代码库文件夹内 3 将本地和远端联系起来 并给远端起个名字 git remote add myOwnC
  • Hudi和Kudu的比较

    与Kudu相比 Kudu是一个支持OLTP workload的数据存储系统 而Hudi的设计目标是基于Hadoop兼容的文件系统 如HDFS S3等 重度依赖Spark的数据处理能力来实现增量处理和丰富的查询能力 Hudi支持Increme
  • 微信小程序WE分析----事件分析

    目录 web分析 小程序 事件分析概述 1 新增事件管理 事件参数说明 1 填写事件配置 2 小程序添加上报代码 将上报代码添加到小程序中 3 测试事件数据上报 测试事件上报的数据是否正确 属性管理 字典管理 新增事件分析 创建事件分析 添
  • Web自动化之Selenium常用操作

    本文总结使用selenium进行web UI自动化时 会用到的一些常用操作 定位元素 driver find element by xpath 1 绝对路径 2 元素属性 3 层级和属性结合 4 使用逻辑运算符 driver find el
  • 磁盘类型和相关术语学习笔记

    磁盘类型和相关术语 在 Linux 中一切皆文件 但是类型不同 例如使用 ls l 对于设备文件和普通文件有一部分内容是不同的 即普通文件有大小 而设备文件有主设备号和次设备号 没有大小 ll 1 txt dev sda dev sda1
  • TCP/IP、UDP协议

    TCP IP协议是Internet最基本的协议 Internet国际互联网络的基础 由网络层的IP协议和传输层的TCP协议组成 通俗而言 TCP负责发现传输的问题 一有问题就发出信号 要求重新传输 直到所有数据安全正确地传输到目的地 而IP
  • module ‘keras.api._v1.keras.datasets.mnist‘ has no attribute ‘train‘AttributeError: module ‘numpy‘ h

    AttributeError module numpy has no attribute no nep50 warning 尝试过更新numpy但是更新不了 module keras api v1 keras datasets mnist
  • 常见 Web 中间件及其漏洞概述(一):IIS

    目录 PUT漏洞 漏洞原理 复现 修复 短文件名猜解 漏洞原理 IIS短文件名产生 复现 短文件漏洞的局限性 IIS短文件名扫描工具 修复 远程代码执行 解析漏洞 IIS 6 0 基于文件名 基于目录名 IIS 7 0 7 5 IIS PH
  • docker容器内访问宿主机127.0.0.1服务

    docker容器内访问宿主机127 0 0 1服务 原创 技术生活 技术生活 2020 04 15 09 00 点击上方 技术生活 选择 设为星标 做积极的人 而不是积极废人 背景 原因分析 解决方案 背景 已经通过docker启动的ela
  • mac m1 搭建 arduino 环境

    前前后后弄了几次 arduino 环境 这次就以 mac m1 为例 来做一个笔记 搭建 arduino 首先 第一步肯定是安装 arduino 这直接去官网下载安装就好了 地址放在下面 https www arduino cc en so