Correct Arduino installation

master
Sergio Alvariño 1 year ago
parent bfa519e49a
commit 1c783e1efb

@ -592,7 +592,7 @@ sudo apt-get update
sudo apt-get install syncthing
```
# Utilidades
\#g Utilidades
## Utilidades variadas
@ -775,6 +775,10 @@ Otro navegador para el protocolo *Gemini* programado en *Rust*.
Instalado desde las fuentes siguiendo instrucciones de su [página
web](https://sr.ht/~julienxx/Castor/)
## Whalebird: Cliente de Mastodon
Descargada *appimage* desde la página web de la aplicación.
## Sengi: Cliente de Mastodon
Instalada *appimage* desde su
@ -1841,85 +1845,11 @@ Además también incluye un script (`arduino-linux-setup.sh`) para crear
las *devrules* y que además desinstala el driver *modemmanager* y crea
grupos nuevos en el sistema si no existen.
No tengo claro lo de desinstalar el driver así que creamos las
*devrules* a mano mirando por el fichero.
Hay que añadir nuestro usuario a los grupos *tty*, *dialout*, *uucp* y
*plugdev* (no hay que crear grupos nuevos, ya tenemos todos en el
sistema)
sudo gpasswd --add <usrname> tty
sudo gpasswd --add <usrname> dialout
sudo gpasswd --add <usrname> uucp
sudo gpasswd --add <usrname> plugdev
Creamos los siguientes ficheros en el directorio `/etc/udev/rules.d`
Fichero `90-extraacl.rules` mete mi usario en el fichero de reglas
(¬\_¬)
# Setting serial port rules
KERNEL=="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
KERNEL=="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
Fichero `98-openocd.rules`
# Adding Arduino M0/M0 Pro, Primo UDEV Rules for CMSIS-DAP port
ACTION!="add|change", GOTO="openocd_rules_end"
SUBSYSTEM!="usb|tty|hidraw", GOTO="openocd_rules_end"
#Please keep this list sorted by VID:PID
#CMSIS-DAP compatible adapters
ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev"
LABEL="openocd_rules_end"
Fichero `avrisp.rules`
# Adding AVRisp UDEV rules
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="660", GROUP="dialout"
No tengo claro lo de desinstalar el driver así que comentamos la sección
que borra el *modemmanager* del fichero `arduino-linux-setup.sh` y lo
ejecutamos para que instale el resto.
LABEL="avrisp_end"
Fichero `40-defuse.rules`:
# Adding STM32 bootloader mode UDEV rules
# Example udev rules (usually placed in /etc/udev/rules.d)
# Makes STM32 DfuSe device writeable for the "plugdev" group
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="664", GROUP="plugdev", TAG+="uaccess"
Fichero `99-arduino-101.rules`:
# Arduino 101 in DFU Mode
SUBSYSTEM=="tty", ENV{ID_REVISION}=="8087", ENV{ID_MODEL_ID}=="0ab6", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_CANDIDATE}="0"
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="0aba", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1"
Yo añado el fichero `99-arduino.rules` que se encarga de inhibir el
modemmanager para que no capture al *CircuitPlayground Express*:
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
Una vez añadidos todos los ficheros de reglas recargamos con:
``` bash
udevadm control --reload-rules && udevadm trigger
```
Tenemos que crear los ficheros `.desktop`.
### Añadir soporte para *Feather M0*

@ -461,7 +461,7 @@ sudo apt-get update
sudo apt-get install syncthing
</code>
====== Utilidades ======
#g Utilidades
===== Utilidades variadas =====
@ -597,6 +597,10 @@ Un navegador para el protocolo //Gemini//. Instalado con la //appimage// desde s
Otro navegador para el protocolo //Gemini// programado en //Rust//. Instalado desde las fuentes siguiendo instrucciones de su [[https://sr.ht/~julienxx/Castor/|página web]]
===== Whalebird: Cliente de Mastodon =====
Descargada //appimage// desde la página web de la aplicación.
===== Sengi: Cliente de Mastodon =====
Instalada //appimage// desde su [[https://github.com/NicolasConstant/sengi|github]]
@ -1592,94 +1596,9 @@ La distribución del IDE incluye ahora un fichero ''%%install.sh%%''que se encar
Además también incluye un script (''%%arduino-linux-setup.sh%%'') para crear las //devrules// y que además desinstala el driver //modemmanager// y crea grupos nuevos en el sistema si no existen.
No tengo claro lo de desinstalar el driver así que creamos las //devrules// a mano mirando por el fichero.
Hay que añadir nuestro usuario a los grupos //tty//, //dialout//, //uucp// y //plugdev// (no hay que crear grupos nuevos, ya tenemos todos en el sistema)
<code>
sudo gpasswd --add <usrname> tty
sudo gpasswd --add <usrname> dialout
sudo gpasswd --add <usrname> uucp
sudo gpasswd --add <usrname> plugdev
</code>
Creamos los siguientes ficheros en el directorio ''%%/etc/udev/rules.d%%''
Fichero ''%%90-extraacl.rules%%'' mete mi usario en el fichero de reglas (¬_¬)
<code>
# Setting serial port rules
KERNEL=="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
KERNEL=="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
</code>
Fichero ''%%98-openocd.rules%%''
<code>
# Adding Arduino M0/M0 Pro, Primo UDEV Rules for CMSIS-DAP port
ACTION!="add|change", GOTO="openocd_rules_end"
SUBSYSTEM!="usb|tty|hidraw", GOTO="openocd_rules_end"
#Please keep this list sorted by VID:PID
#CMSIS-DAP compatible adapters
ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev"
LABEL="openocd_rules_end"
</code>
Fichero ''%%avrisp.rules%%''
<code>
# Adding AVRisp UDEV rules
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="660", GROUP="dialout"
No tengo claro lo de desinstalar el driver así que comentamos la sección que borra el //modemmanager// del fichero ''%%arduino-linux-setup.sh%%'' y lo ejecutamos para que instale el resto.
LABEL="avrisp_end"
</code>
Fichero ''%%40-defuse.rules%%'':
<code>
# Adding STM32 bootloader mode UDEV rules
# Example udev rules (usually placed in /etc/udev/rules.d)
# Makes STM32 DfuSe device writeable for the "plugdev" group
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="664", GROUP="plugdev", TAG+="uaccess"
</code>
Fichero ''%%99-arduino-101.rules%%'':
<code>
# Arduino 101 in DFU Mode
SUBSYSTEM=="tty", ENV{ID_REVISION}=="8087", ENV{ID_MODEL_ID}=="0ab6", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_CANDIDATE}="0"
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="0aba", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1"
</code>
Yo añado el fichero ''%%99-arduino.rules%%'' que se encarga de inhibir el modemmanager para que no capture al //CircuitPlayground Express//:
<code>
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
</code>
Una vez añadidos todos los ficheros de reglas recargamos con:
<code bash>
udevadm control --reload-rules && udevadm trigger
</code>
Tenemos que crear los ficheros ''%%.desktop%%''.
==== Añadir soporte para Feather M0 ====

Binary file not shown.

@ -430,8 +430,7 @@ Añadimos el ppa:
echo &quot;deb [ signed-by=/usr/local/share/keyrings/synching-archive-keyring.gpg ] https://apt.syncthing.net/ syncthing stable&quot; | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthing</pre>
<span id="utilidades"></span>
= Utilidades =
#g Utilidades
<span id="utilidades-variadas"></span>
== Utilidades variadas ==
@ -560,6 +559,11 @@ Un navegador para el protocolo ''Gemini''. Instalado con la ''appimage'' desde s
Otro navegador para el protocolo ''Gemini'' programado en ''Rust''. Instalado desde las fuentes siguiendo instrucciones de su [https://sr.ht/~julienxx/Castor/ página web]
<span id="whalebird-cliente-de-mastodon"></span>
== Whalebird: Cliente de Mastodon ==
Descargada ''appimage'' desde la página web de la aplicación.
<span id="sengi-cliente-de-mastodon"></span>
== Sengi: Cliente de Mastodon ==
@ -1402,71 +1406,10 @@ La distribución del IDE incluye ahora un fichero <code>install.sh</code>que se
Además también incluye un script (<code>arduino-linux-setup.sh</code>) para crear las ''devrules'' y que además desinstala el driver ''modemmanager'' y crea grupos nuevos en el sistema si no existen.
No tengo claro lo de desinstalar el driver así que creamos las ''devrules'' a mano mirando por el fichero.
Hay que añadir nuestro usuario a los grupos ''tty'', ''dialout'', ''uucp'' y ''plugdev'' (no hay que crear grupos nuevos, ya tenemos todos en el sistema)
<pre>sudo gpasswd --add &lt;usrname&gt; tty
sudo gpasswd --add &lt;usrname&gt; dialout
sudo gpasswd --add &lt;usrname&gt; uucp
sudo gpasswd --add &lt;usrname&gt; plugdev</pre>
Creamos los siguientes ficheros en el directorio <code>/etc/udev/rules.d</code>
Fichero <code>90-extraacl.rules</code> mete mi usario en el fichero de reglas (¬_¬)
<pre># Setting serial port rules
KERNEL==&quot;ttyUSB[0-9]*&quot;, TAG+=&quot;udev-acl&quot;, TAG+=&quot;uaccess&quot;, OWNER=&quot;salvari&quot;
KERNEL==&quot;ttyACM[0-9]*&quot;, TAG+=&quot;udev-acl&quot;, TAG+=&quot;uaccess&quot;, OWNER=&quot;salvari&quot;</pre>
Fichero <code>98-openocd.rules</code>
<pre># Adding Arduino M0/M0 Pro, Primo UDEV Rules for CMSIS-DAP port
ACTION!=&quot;add|change&quot;, GOTO=&quot;openocd_rules_end&quot;
SUBSYSTEM!=&quot;usb|tty|hidraw&quot;, GOTO=&quot;openocd_rules_end&quot;
#Please keep this list sorted by VID:PID
#CMSIS-DAP compatible adapters
ATTRS{product}==&quot;*CMSIS-DAP*&quot;, MODE=&quot;664&quot;, GROUP=&quot;plugdev&quot;
LABEL=&quot;openocd_rules_end&quot;</pre>
Fichero <code>avrisp.rules</code>
No tengo claro lo de desinstalar el driver así que comentamos la sección que borra el ''modemmanager'' del fichero <code>arduino-linux-setup.sh</code> y lo ejecutamos para que instale el resto.
<pre># Adding AVRisp UDEV rules
SUBSYSTEM!=&quot;usb_device&quot;, ACTION!=&quot;add&quot;, GOTO=&quot;avrisp_end&quot;
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}==&quot;03eb&quot;, ATTRS{idProduct}==&quot;2103&quot;, MODE=&quot;660&quot;, GROUP=&quot;dialout&quot;
# Atmel Corp. AVRISP mkII
ATTR{idVendor}==&quot;03eb&quot;, ATTRS{idProduct}==&quot;2104&quot;, MODE=&quot;660&quot;, GROUP=&quot;dialout&quot;
# Atmel Corp. Dragon
ATTR{idVendor}==&quot;03eb&quot;, ATTRS{idProduct}==&quot;2107&quot;, MODE=&quot;660&quot;, GROUP=&quot;dialout&quot;
LABEL=&quot;avrisp_end&quot;</pre>
Fichero <code>40-defuse.rules</code>:
<pre># Adding STM32 bootloader mode UDEV rules
# Example udev rules (usually placed in /etc/udev/rules.d)
# Makes STM32 DfuSe device writeable for the &quot;plugdev&quot; group
ACTION==&quot;add&quot;, SUBSYSTEM==&quot;usb&quot;, ATTRS{idVendor}==&quot;0483&quot;, ATTRS{idProduct}==&quot;df11&quot;, MODE=&quot;664&quot;, GROUP=&quot;plugdev&quot;, TAG+=&quot;uaccess&quot;</pre>
Fichero <code>99-arduino-101.rules</code>:
<pre># Arduino 101 in DFU Mode
SUBSYSTEM==&quot;tty&quot;, ENV{ID_REVISION}==&quot;8087&quot;, ENV{ID_MODEL_ID}==&quot;0ab6&quot;, MODE=&quot;0666&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;, ENV{ID_MM_CANDIDATE}=&quot;0&quot;
SUBSYSTEM==&quot;usb&quot;, ATTR{idVendor}==&quot;8087&quot;, ATTR{idProduct}==&quot;0aba&quot;, MODE=&quot;0666&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;</pre>
Yo añado el fichero <code>99-arduino.rules</code> que se encarga de inhibir el modemmanager para que no capture al ''CircuitPlayground Express'':
<pre># for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}==&quot;2a03&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}==&quot;1b4f&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;</pre>
Una vez añadidos todos los ficheros de reglas recargamos con:
Tenemos que crear los ficheros <code>.desktop</code>.
<syntaxhighlight lang="bash">udevadm control --reload-rules && udevadm trigger</syntaxhighlight>
<span id="añadir-soporte-para-feather-m0"></span>
=== Añadir soporte para ''Feather M0'' ===

Binary file not shown.

Binary file not shown.

@ -891,8 +891,7 @@ Añadimos el ppa:
\end{Highlighting}
\end{Shaded}
\hypertarget{utilidades}{%
\section{Utilidades}\label{utilidades}}
\#g Utilidades
\hypertarget{utilidades-variadas}{%
\subsection{Utilidades variadas}\label{utilidades-variadas}}
@ -1113,6 +1112,12 @@ Otro navegador para el protocolo \emph{Gemini} programado en
\emph{Rust}. Instalado desde las fuentes siguiendo instrucciones de su
\href{https://sr.ht/~julienxx/Castor/}{página web}
\hypertarget{whalebird-cliente-de-mastodon}{%
\subsection{Whalebird: Cliente de
Mastodon}\label{whalebird-cliente-de-mastodon}}
Descargada \emph{appimage} desde la página web de la aplicación.
\hypertarget{sengi-cliente-de-mastodon}{%
\subsection{Sengi: Cliente de
Mastodon}\label{sengi-cliente-de-mastodon}}
@ -2487,102 +2492,12 @@ Además también incluye un script (\texttt{arduino-linux-setup.sh}) para
crear las \emph{devrules} y que además desinstala el driver
\emph{modemmanager} y crea grupos nuevos en el sistema si no existen.
No tengo claro lo de desinstalar el driver así que creamos las
\emph{devrules} a mano mirando por el fichero.
Hay que añadir nuestro usuario a los grupos \emph{tty}, \emph{dialout},
\emph{uucp} y \emph{plugdev} (no hay que crear grupos nuevos, ya tenemos
todos en el sistema)
\begin{verbatim}
sudo gpasswd --add <usrname> tty
sudo gpasswd --add <usrname> dialout
sudo gpasswd --add <usrname> uucp
sudo gpasswd --add <usrname> plugdev
\end{verbatim}
Creamos los siguientes ficheros en el directorio
\texttt{/etc/udev/rules.d}
Fichero \texttt{90-extraacl.rules} mete mi usario en el fichero de
reglas (¬\_¬)
\begin{verbatim}
# Setting serial port rules
KERNEL=="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
KERNEL=="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
\end{verbatim}
Fichero \texttt{98-openocd.rules}
\begin{verbatim}
# Adding Arduino M0/M0 Pro, Primo UDEV Rules for CMSIS-DAP port
ACTION!="add|change", GOTO="openocd_rules_end"
SUBSYSTEM!="usb|tty|hidraw", GOTO="openocd_rules_end"
#Please keep this list sorted by VID:PID
#CMSIS-DAP compatible adapters
ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev"
LABEL="openocd_rules_end"
\end{verbatim}
Fichero \texttt{avrisp.rules}
\begin{verbatim}
# Adding AVRisp UDEV rules
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="660", GROUP="dialout"
LABEL="avrisp_end"
\end{verbatim}
Fichero \texttt{40-defuse.rules}:
\begin{verbatim}
# Adding STM32 bootloader mode UDEV rules
# Example udev rules (usually placed in /etc/udev/rules.d)
# Makes STM32 DfuSe device writeable for the "plugdev" group
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="664", GROUP="plugdev", TAG+="uaccess"
\end{verbatim}
Fichero \texttt{99-arduino-101.rules}:
\begin{verbatim}
# Arduino 101 in DFU Mode
SUBSYSTEM=="tty", ENV{ID_REVISION}=="8087", ENV{ID_MODEL_ID}=="0ab6", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_CANDIDATE}="0"
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="0aba", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1"
\end{verbatim}
Yo añado el fichero \texttt{99-arduino.rules} que se encarga de inhibir
el modemmanager para que no capture al \emph{CircuitPlayground Express}:
No tengo claro lo de desinstalar el driver así que comentamos la sección
que borra el \emph{modemmanager} del fichero
\texttt{arduino-linux-setup.sh} y lo ejecutamos para que instale el
resto.
\begin{verbatim}
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
\end{verbatim}
Una vez añadidos todos los ficheros de reglas recargamos con:
\begin{Shaded}
\begin{Highlighting}[]
\ExtensionTok{udevadm}\NormalTok{ control }\AttributeTok{{-}{-}reload{-}rules} \KeywordTok{\&\&} \ExtensionTok{udevadm}\NormalTok{ trigger}
\end{Highlighting}
\end{Shaded}
Tenemos que crear los ficheros \texttt{.desktop}.
\hypertarget{auxf1adir-soporte-para-feather-m0}{%
\subsubsection{\texorpdfstring{Añadir soporte para \emph{Feather

@ -1,4 +1,4 @@
# Utilidades
#g Utilidades
## Utilidades variadas
@ -174,6 +174,10 @@ Un navegador para el protocolo _Gemini_. Instalado con la _appimage_ desde su [p
Otro navegador para el protocolo _Gemini_ programado en _Rust_. Instalado desde las fuentes siguiendo instrucciones de su [página web](https://sr.ht/~julienxx/Castor/)
## Whalebird: Cliente de Mastodon
Descargada _appimage_ desde la página web de la aplicación.
## Sengi: Cliente de Mastodon
Instalada _appimage_ desde su [github](https://github.com/NicolasConstant/sengi)

@ -12,101 +12,11 @@ Además también incluye un script (`arduino-linux-setup.sh`) para crear
las _devrules_ y que además desinstala el driver _modemmanager_ y crea
grupos nuevos en el sistema si no existen.
No tengo claro lo de desinstalar el driver así que creamos las
_devrules_ a mano mirando por el fichero.
No tengo claro lo de desinstalar el driver así que comentamos la
sección que borra el _modemmanager_ del fichero
`arduino-linux-setup.sh` y lo ejecutamos para que instale el resto.
Hay que añadir nuestro usuario a los grupos _tty_, _dialout_, _uucp_ y
_plugdev_ (no hay que crear grupos nuevos, ya tenemos todos en el
sistema)
~~~~
sudo gpasswd --add <usrname> tty
sudo gpasswd --add <usrname> dialout
sudo gpasswd --add <usrname> uucp
sudo gpasswd --add <usrname> plugdev
~~~~
Creamos los siguientes ficheros en el directorio `/etc/udev/rules.d`
Fichero `90-extraacl.rules` mete mi usario en el fichero de reglas (¬_¬)
~~~~
# Setting serial port rules
KERNEL=="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
KERNEL=="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari"
~~~~
Fichero `98-openocd.rules`
~~~~
# Adding Arduino M0/M0 Pro, Primo UDEV Rules for CMSIS-DAP port
ACTION!="add|change", GOTO="openocd_rules_end"
SUBSYSTEM!="usb|tty|hidraw", GOTO="openocd_rules_end"
#Please keep this list sorted by VID:PID
#CMSIS-DAP compatible adapters
ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev"
LABEL="openocd_rules_end"
~~~~
Fichero `avrisp.rules`
~~~~
# Adding AVRisp UDEV rules
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="660", GROUP="dialout"
LABEL="avrisp_end"
~~~~
Fichero `40-defuse.rules`:
~~~~
# Adding STM32 bootloader mode UDEV rules
# Example udev rules (usually placed in /etc/udev/rules.d)
# Makes STM32 DfuSe device writeable for the "plugdev" group
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="664", GROUP="plugdev", TAG+="uaccess"
~~~~
Fichero `99-arduino-101.rules`:
~~~~
# Arduino 101 in DFU Mode
SUBSYSTEM=="tty", ENV{ID_REVISION}=="8087", ENV{ID_MODEL_ID}=="0ab6", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_CANDIDATE}="0"
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="0aba", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1"
~~~~
Yo añado el fichero `99-arduino.rules` que se encarga de inhibir el
modemmanager para que no capture al _CircuitPlayground Express_:
~~~~
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
~~~~
Una vez añadidos todos los ficheros de reglas recargamos con:
```bash
udevadm control --reload-rules && udevadm trigger
```
Tenemos que crear los ficheros `.desktop`.
### Añadir soporte para _Feather M0_

Loading…
Cancel
Save