Ubuntu20.04/22.04 安装 Arduino IDE 2.x
这周收到两片基于LGT8F328P LQFP32的Arduino Mini EVB, 机器上没有 Arduino 环境需要新安装, 正好感受一下新出的 Arduino IDE 2.x, 记录一下 Ubuntu 20.04/22.04 下安装 Arduino IDE 2.x 的过程.
下载解压
下载
- 访问 Arduino 的官网下载 https://www.arduino.cc/en/software
- 因为我是 X86 64位的Ubuntu, 下载 Linux ZIP file 64 bits (X86-64)
解压, 将解压后的文件移动到 /opt
cd /opt/
sudo mkdir arduino
sudo mv ~/Backup/linux/arduino-ide_2.0.3_Linux_64bit .
sudo chown -R root:root arduino-ide_2.0.3_Linux_64bit/
# 将这个目录软链为 latest, 方便以后替换新版本时不需要再改桌面快捷方式里的路径
sudo ln -s arduino-ide_2.0.3_Linux_64bit latest
安装
在命令行中直接运行 arduino-ide 就可以了
cd latest/
./arduino-ide
第一次启动时, 会自动检查更新并下载, 初始化用户Home目录下的 .arduino15 和 .arduinoIDE 目录.
但是这个过程有些问题, 如果网络不好, 或者正好被墙, 这个启动界面会一直卡在那里. 如果能进界面了可以在界面上设置代理, 但是还没启动, 就只能通过其它途径.
通过配置文件设置代理
先关掉卡住的界面, 然后编辑用户目录下的 arduino-cli.yaml 文件, 位置在 ~/.arduinoIDE/arduino-cli.yaml,
添加以下的内容, 代理的IP和端口, 用户名等根据自己的环境设置
network:
proxy: http://<username>:<password>@<host>:<port>
这个代理支持 socks5, 如果用 socks5 需要修改一下协议头
network:
proxy: socks5://127.0.0.1:1080
然后再命令行运行, 能看到下载能正常连接, 界面就可以正常展示了
增加桌面快捷方式 Desktop Launcher
每次到命令行下启动还是不方便, 可以手动创建一个桌面快捷方式
创建文件 ~/.local/share/applications/arduino.desktop , 添加以下内容
[Desktop Entry]
Version=1.0
Type=Application
Name=Arduino IDE 2.0.0
Icon=/opt/arduino/latest/ide-logo.png
Exec=/opt/arduino/latest/arduino-ide
Comment=The Arduino Software IDE
Categories=Development;IDE;
Terminal=false
注意里面的 ide-logo.png 不是现成的, 我在安装目录里找了几个, 最后用的是这个路径的图片 [arduino install path]/resources/app/node_modules/arduino-ide-extension/src/browser/style/ide-logo.png 将其复制到最外层目录
创建完图标不会立即可用, 多打开几次桌面 launcher, 过会儿就出来了.
窗体与底栏图标的关联
上面的快捷方式启动后, 在底栏显示的程序图标是一个空白, 需要在 arduino.desktop 中增加一行关联上对应的窗体名称
StartupWMClass=arduino ide
这个值是通过 xprop WM_CLASS 获取的, 运行这个命令后, 鼠标变成十字形, 点击对应的窗口就能看到对应的 WM_CLASS 值
$ xprop WM_CLASS
WM_CLASS(STRING) = "arduino ide", "Arduino IDE"
第三方库的安装
有不少第三方库用的是 GitHub 仓库, 而通过 GitHub 仓库的 json 进行配置就绕不开 raw.githubusercontent.com 这个域名, 而这个域名因为众所周知的原因完全不可用(除非你改本地hosts), 很多库需要通过手工进行安装.
比如对应 LGT8F328P 的库 dbuezas/lgt8fx, 需要先去下载最新的包(当前是 lgt8f-2.0.0.zip), 然后解压到 Arduino 目录中
所在的目录是 /home/[user name]/.arduino15/packages, 将 lgt8fx 解压后放入的结构如下图所示

安装其它的包参照这个结构就可以. 可以在 staging/packages 下再放一份 lgt8f-2.0.0.zip 文件.
Arduino IDE 2.x 的简单使用感受
IDE2.x的使用和1.x差别不大, 最大的区别就是增加了侧栏. 风格和 VSCode 接近, 但是操作方式还是和 IDE 1.x 差不多.
快捷键: 编译 Ctrl+R, 烧录 Ctrl+U, 查看串口 Shift+Ctrl+M
新建标签页要通过右上角的图标展开
Ubuntu20.04/22.04 安装 Arduino IDE 2.x的更多相关文章
- Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE
Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...
- Arduino可穿戴教程Linux平台下安装Arduino IDE
Arduino可穿戴教程Linux平台下安装Arduino IDE Linux平台下安装Arduino IDE Linux平台下的安装方式和Windows下的zip形式安装是类似的,只是Linux下的 ...
- Ros使用Arduino 1安装Arduino IDE
安装Arsuino IDE sudo apt-get install arduino 设置库文件路径 在使用ROS的库文件时,必须在代码的开头包括: #include <ros.h> 接下 ...
- Win10 上 安装Arduino 驱动 和 Arduino IDE 1.6.9
Win10 安装Arduino IDE软件 和 驱动 在Win10 上安装最新的Arduino IDE (1.6.9安装包)很简单,并且不行要手动安装Arduino板子的驱动,整个安装过程都当前的简单 ...
- Arduino IDE 开发 ESP-01S/ESP-01物联网实战检测温度湿度上传MQTT服务器
一.硬件准备 USB转ESP8266两块.DHT11温度湿度传感器.ESP8266-01/ESP8266-01一块(如果学习的话多买几块,ESP-01/ESP-01S的区别) USB转ESP8266 ...
- 【linux】Ubuntu20.04使用apt安装tomcat9
Ubuntu20.04使用apt安装tomcat9 前言 系统环境:ubuntu20.04 java版本:openjdk version "11.0.11" 2021-04-20 ...
- eclipse在Ubuntu 13.04下的安装过程
eclipse在Ubuntu 13.04下的安装过程及问题小记 一.eclipse安装过程 首先确保在安装eclipse之前已经安装好Java虚拟机 1. eclipse官网下载压缩包 下载地址:ht ...
- ubuntu14.04下手动安装eclipse
ubuntu14.04下手动安装eclipse 第一步: 安装jdk 第二步: 下载eclipse,假设下载的文件文件名为eclipse.tar.gz 第三步: 解压 sudo -zxvf ./ecl ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- ubuntu14.04 64位 安装eclipse
ubuntu14.04 64位 安装eclipse 1 在官网上下载eclipse http://www.eclipse.org/downloads/下载eclipse-jee-luna-SR1-li ...
随机推荐
- 编译安装PHP7.4
1.下载PHP源码包 wget https://www.php.net/distributions/php-7.4.30.tar.gz 2.解压缩 tar xf php-7.4.30.tar.gz - ...
- Golang 和Python 几个小时前 几分钟 几天前的处理
在用golang爬虫的时候 总会遇到 10天前 10分钟前 刚刚这种很影响我们爬取正常事件 所以我写了个方法 来格式化这种事件 golang 版本 package utils import ( &qu ...
- 学习Rust第一天 Rust语言特点
学习Rust之前,我觉得应该首先了解Rust语言的设计目的是什么?为什么会诞生这门语言?这门语言和其他的语言有什么不同. Rust语言的设计特点 高性能:rust拥有和C++相近的性能表现,所以在嵌入 ...
- java反序列化_link_six
cc_link_six 0x01前言 经过cc链一的学习,然后jdk的版本一更新那两条链子就不能用了,然后这种反序列化的话就很不不止依赖于cc包的引入还有jdk版本,于是就出现了cc_link_six ...
- 【笔记】P1606 [USACO07FEB]Lilypad Pond G 及相关
题目传送门 建图 首先,根据题目,可以判断出这是一道最短路计数问题. 但是要跑最短路,首先要用他给的信息建图,这是非常关键的一步. 根据题意,我们可以想出以下建图规则: 起点或是一个空白处可以花费 \ ...
- 【题解】CF1715A Crossmarket
题面传送门 解决思路 首先,我们让 Megan 先走,因为他可以留下传送门.可以得知,不管怎么走,他到达终点所耗费的能量一定是 \(n+m-2\) . 然后,Stanley 走时就可以利用传送门.考虑 ...
- perl文件操作
Perl 文件操作 Perl 使用一种叫做文件句柄类型的变量来操作文件. 从文件读取或者写入数据需要使用文件句柄. 文件句柄(file handle)是一个I/O连接的名称. Perl提供了三种文件句 ...
- 关于mysql在linux(deb系)遇到的问题及解决方法
前言 当我在树莓派上安装 mysql 数据库的时候,默认安装的是mariadb 数据库,不过没什么区别(在我看来),然后就是闹心的解决各种问题了 1. mysql 在root用户下无密码登录问题 这个 ...
- C++编程笔记(STL学习)
一.顺序容器 1.1.vector 1.2.dequeue 1.3.list 二.关联性容器 2.3.set 2.3.map 三.算法 3.1.遍历算法(for_each ...
- web项目的开发--第一天
如何分析需求.如何设计.编码实现.测试. 用ssm架构实现CRM项目代码编写. CRM项目: 关键是养成好的编程思想和编程习惯. 技术架构 视图层(view): 展示数据,跟用户交互. html,cs ...