Dopo tanti mesi di silenzio, torno a postare qualche cosa (spero di interessante..) sul mio blog.
Premetto che alcuni mesi fa ho deciso di migrare i miei repositories,abbandonando googleCode in favore di github (da SVN a git), quindi tutto il codice in questione, che verrà di volta in volta linkato direttamente, arriva da github.
Da alcune settimane a questa parte ho ripreso in mano il codice della mia fantastca Ambient Lamp, ricordate?.. I codici per Arduino e processing che insieme controllano colore, luminosità e funzioni dinamiche del led.
Ma vediamo una cosa per volta…
Il Firmware:
Oltre ad aver sistemato qualche svista e qualche bug, ho migliorato alcune funzioni e ne ho aggiunte di nuove, ma il miglioramento principale del codice sono i commenti. Quasi completi al 100% e scritti nella sintassi di doxygen, permetteranno (a chi interessa) di generare la documentazione sempre aggiornata del codice.
Rivediamo i comandi a cui al momento il dispositivo risponde:
tri ARG ==> ARG = r|g|b|w reg,green,blue,white
set VALUE ==> VALUE = 0,1 Off, On
rgb ARG ==> ARG = RRGGBB RR=red in HEX, GG=green in HEX, BB=blue in HEX
prg ARG ==> ARG = F,R F=Flash random color, R=fade random color
pwm VALUE ==> VALUE valore massimo che possono assumere le var r,g,b all'interno delle funzioni R e F
L’altra principale novità è l’aggiunta della funzione pwm, in grado di settare il valore massimo che possono assumere le variabili r,g b all’interno delle funzioni random e bedazzle (le funzioni dinamiche). Nel funzionamento pratico, comporta la diminuzione della luminosità massima dei giochi di luce al diminutire del valore pwm settato ed ottenere così un effetto più soft.
Qui potete recuperare il codice compresso in un tarball o in zip.
Il Software:
Il software di gestione, scritto in processing, ha subito radicali modifiche migliorative, qui a destra ho riportato uno screenshot..Purtroppo non ho ancora commentato molto.
Ecco le principali novità divise per punti:
- Quattro tasti, la cui funzione si commenta da sè guardando l’immagine.
- Uno Slide (che non ha etichetta) in grado di settare il valore max_pwm (invia tramite seriale il comando pwm VALUE). Da segnalare che il valore è riscalato, voi vedete uno 0÷100, che viene mappato su 2÷255 (con 0 e 1 la il led è spento).
- Una ComboBox, RGB Panel type, che vi permette di cambiare fra le diverse tavolozze colori visualizzabili nella parte destra della finestra.
- Un’altra ComboBox, Select COM (nella parte bassa della finestra), che vi permette di selezionare fra le diverse porte seriali che il vostro sistema vede connesse.
Qui potete recuperare il codice compresso in un tarball o in zip.
Tag: arduino, hardware, input, led, output, processing, RGB, software