Arduino: Difference between revisions
Add instructions for adding "dialout" group to allow uploading sketches in Arduino IDE 2.x without permission errors |
m tidy and add package links |
||
| Line 1: | Line 1: | ||
The Arduino ecosystem offers two Versions of the Arduino IDE and an Arduino CLI that both base on. | The Arduino ecosystem offers two Versions of the Arduino IDE and an Arduino CLI that both base on. | ||
The latter can be used for building Arduino projects with nix. | The latter can be used for building Arduino projects with nix. | ||
| Line 5: | Line 4: | ||
== Arduino IDE 2.x == | == Arduino IDE 2.x == | ||
The Arduino IDE 2.x is available in nixpkgs as | The Arduino IDE 2.x is available in nixpkgs as {{nixos:package|arduino-ide}} | ||
When trying to upload to your board, you may get the following error: | When trying to upload to your board, you may get the following error: | ||
<code> | |||
This is a serial port permissions issue. Add your user to the <code>dialout</code> group, rebuild your system, then log out and back in or reboot to apply:<syntaxhighlight lang="nix"> | Cannot perform port reset: 1200-bps touch: opening port at 1200bps: Permission denied | ||
No device found on ttyACM0 | |||
</code> | |||
This is a serial port permissions issue. Add your user to the <code>dialout</code> group, rebuild your system, then log out and back in or reboot to apply: | |||
<syntaxhighlight lang="nix"> | |||
{ | { | ||
users.users.<myuser>.extraGroups = [ "dialout" ]; | users.users.<myuser>.extraGroups = [ "dialout" ]; | ||
| Line 18: | Line 23: | ||
== Arduino IDE 1.x == | == Arduino IDE 1.x == | ||
This is the old Arduino IDE and it is available as | This is the old Arduino IDE and it is available as {{nixos:package|arduino}} in nixpkgs. | ||
It is still used for many projects. | It is still used for many projects. | ||
| Line 90: | Line 95: | ||
== Arduino CLI == | == Arduino CLI == | ||
The Arduino CLI is available as | The Arduino CLI is available as {{nixos:package|arduino-cli}} in nixpkgs. | ||
=== Build Arduino project with Nix === | === Build Arduino project with Nix === | ||