Arduino/usiamo scons su gentoo: differenze tra le versioni

Da PNLUG.
(sistemazione codice)
m (refuso)
Riga 28: Riga 28:
  
 
<div style="background-color:#f1f1f1">
 
<div style="background-color:#f1f1f1">
   $ layman -f -a arduPN
+
   $ layman -f -a arduPn
 
</div>
 
</div>
  

Versione delle 16:42, 18 nov 2013

Per usare Arduino serve precompilare il software su un computer esterno, perché non è disponibile un compilatore integrato.

Da https://code.google.com/p/arduino si può ricavare un insieme di tool che comprende sia alcune librerie fondamentali, sia un'ide dedicato scritto in java. Forse, per un principiante, è meglio evitare l'ide e attrezzarsi in riga di comando.

Su gentoo, si può integrare questo overlay artigianale per installare scons.

Copiare il seguente file sul percorso: /etc/layman/overlays/arduPn.xml
(serve app-portage/layman )

 <?xml version="1.0" encoding="UTF-8"?>
 
 <repositories version="1.0">
   <repo priority="50" quality="experimental" status="unofficial">
     <name>arduPn</name>
     <description>piccoli ebuild personali</description>
     <homepage>http://cloc3.dyndns.org/arduPn</homepage>
     <owner>
       <email></email>
       <name></name>
     </owner>
     <source type="tar">http://www.cloc3.net/arduPn/arduPn.tar.bz2</source>
   </repo>
 </repositories>

Aggiungere il repository con il seguente comando:

 $ layman -f -a arduPn

Compilare con:

La compilazione dovrebbe integrare i seguenti pacchetti:

 dev-python/pyserial
 dev-embedded/avrdude
 dev-embedded/arduino
 app-vim/arduino-syntax

Scegliere opportunamente le use flag utili per le proprie necessità ( ftdi, in particolare).

Modificare opportunamente il file /etc/env.d/11arduino se non si utilizza arduino UNO.
Integrare, se neccessario, un regola di udev nella cartella /etc/udev/rules.d sull'esempio del file /lib/udev/rules.d/99-arduino.rules Aggiungere il proprio utente al gruppo uucp.


Cominciamo ora a testare l'installazione, come semplici utenti.

Inseriamo l'utente locale al gruppo uucp.</br> Nella cartella utente, aggiungiamo le righe seguenti righe:

 export EXTRA_LIB="${HOME}/arduino/librerie"
 export SKETCHBOOK_HOME="${HOME}/arduino"

Generiamo le cartelle di lavoro:

 $ mkdir -p ${HOME}/arduino/librerie
 $ mkdir ${HOME}/arduino/lucciola
 $ cd ${HOME}/arduino/lucciola
 $ ln -s /usr/share/arduino/arscons/SConscruct ./ # vedi il readme in /usr/share/arduino/arscons/README.md.bz2

</div>

Per creare un file di test, utilizziamo il comando seguente:

 $ cat >lucciola.ino <<EOF
 // This is just a mockup sketch for test scons works
 
 #define PIN_LED 13
 
 void setup(void)
 {
   pinMode(PIN_LED, OUTPUT);
 }
 
 void loop(void)
 {
   digitalWrite(PIN_LED, HIGH);
   Serial.println("Acceso");
   delay(1000);
   digitalWrite(PIN_LED, LOW);
   Serial.println("Spento");
   delay(1000);
 }
 EOF

colleghiamo ora il nostro arduino alla connesione usb e inseriamo un led con il polo positivo sul pin 13 e il polo negativo a terra.

digitiamo i comandi:

 $ scons upload
 $ miniterm.py -b 115200 /dev/arduino

E Allegria!!!