mercoledì 26 febbraio 2014

Riparare Lego Mindstorms RCX

Lego ha prodotto negli anni numerosi set programmabili, ... magari tra un po' vi preparerò un post con questa entusiasmante evoluzione.

Il mio risveglio da quello che gli AFOL (Adult Fan Of Lego) chiamano "dark age", ovvero il periodo di buio in cui da ragazzo si smette di giocare con il Lego, è avvenuto ormai diversi anni fa, appena prima della nascita del mio primo figlio: Natale 2003, quando mia moglie mi ha regalato il set 3804:

Vi confesso che è stata una passione travolgente per un bel po' di tempo, quindi vi lascio immaginare il mio disappunto quando l'altro giorno, a distanza di anni, sono tornato ad accendere il tanto sfruttato RCX, trovandolo malauguratamente KO.

Vediamo come ripristinarlo. Procedo con un po' di timore reverenziale allo smontaggio, trovando un po' di ruggine sui contatti.
Provvedo così a pulire tutto per bene, senza dimenticare di spruzzare lo spray apposito e verifico con il tester. Il porta pile è ora perfettamente funzionante.

Vediamo come si comporta la mainboard. Alimentata a parte è in perfette condizioni. Tiro quindi un primo respiro di sollievo.

Ecco il colpevole: la linguetta del polo negativo è per metà rotta, fa quindi contatto solo ogni tanto, causando un continuo reset o addirittura lo spegnimento del micro controllore.

Assieme a Michele decidiamo di saldare un bel filo e risolvere così il problema in modo definitivo.
Spero solo di non averne scelto uno troppo piccolo: i 3 motori, soprattutto se sotto sforzo, assorbono abbastanza.

Ancora qualche verifica prima di richiudere il tutto ed iniziare la lunga battaglia contro un troppo vecchio Quick Time ed i Driver per Windows XP, per riuscire ad installare l'ambiente di programmazione originale.

Questa bella interfaccia a blocchi si avvicina molto alla filosofia di Scratch, dando evidenza di una comune origine in casa MIT.

Potrebbe tornare presto utile in qualche incontro CoderDojo.

domenica 23 febbraio 2014

Board game on video game: Pac Man

Eccomi ad illustrarvi un altro gioco in scatola ispirato ad un videogame famoso.

E' la volta dell'intramontabile Pac-Man, uno dei giochi più conosciuti di tutti i tempi.

Anche questo board game è abbastanza diffuso in Italia, tanto che ricordo di averci giocato molti anni fa a casa di un amico (... ciao Raul !).

Il tabellone è veramente bello, simpatica l'idea di utilizzare le biglie per rappresentare le palline. Ci sono anche quelle gialle, proprio come nel videogame originale.

Le pedine sono l'aspetto meglio realizzato.

Ogni giocatore impersonerà un Pac Man di colore diverso, in competizione tra loro per accaparrarsi il maggior numero di palline possibile, stando contemporaneamente attenti a non farsi prendere dai fantasmi !

Ad ogni turno si lanciano 2 dadi, con uno a scelta si muove il proprio Pac Man, con l'altro uno dei due fantasmi. Ignorando i puntini azzurri (sono solamente estetici) si saltella di pallina in pallina inglobandole nel proprio corpo. Dopo ogni mossa si svuota il contenuto nell'apposito scatolino del proprio colore. Se muovendo un fantasma si riesce a raggiungere un avversario, si sottraggono 2 palline bianche dal suo box e si aggiungono al proprio.

Alcune palline gialle sono disseminate in appositi punti sul percorso.
Si raccolgono allo stesso modo delle bianche e si conservano nel proprio scatolino. Si possono utilizzare quando si vuole all'inizio di un turno, rendendo il nostro Pac Man in grado di catturare un fantasma. Se ciò avviene il giocatore sceglie a che avversario sottrarre due palline bianche. La pallina gialla verrà poi riposizionata in una apposita casella libera.

Il gioco è fin troppo semplice, come spesso accade in queste conversioni, ma è piuttosto divertente se giocato in quattro. E' molto adatto ai bambini ma bisogna stare attenti a raccogliere con attenzione le biglie, che tendono a scappare ovunque, specialmente se il nostro Pac Man è già un po' pieno.

Se queste poche righe vi hanno riacceso la voglia di giocare a Pac Man - quello vero ! - non vi resta che cliccare su questo link !

domenica 16 febbraio 2014

CoderDojo Pavia: ottavo incontro

Immancabile resoconto dopo l'ottavo incontro del CoderDojo Pavia.
Abbiamo avuto un partecipante fin da Trezzo d'Adda a testimonianza di come ci sia interesse per questo genere di attività.

I nostri ragazzi, dopo la parentesi giocosa della scorsa volta, hanno affrontato una dura prova: i tiri balistici.
Guidati da Roberta hanno dovuto utilizzare tutti  i concetti acquisiti negli incontri precedenti per riuscire a completare questa difficile sessione.

I più grandi hanno trovato posto nella sede di comPVter dall'altra parte del cortile, per loro la sfida è stata ancora più impegnativa perché come guida avevano solo alcune tracce e qualche spunto su carta.

Sono stati da me fortemente incoraggiati a mettere in comune i loro sforzi per raggiungere assieme l'obiettivo. Devo ammettere che c'è voluto un po' per rompere il ghiaccio ma nell'arco della mattina mi ha dato soddisfazione vedere come si siano poi formati team di sviluppo:

Programmare assieme è decisamente più divertente e le idee prendono forma molto più velocemente.

Ma veniamo al gioco vero e proprio:

Ci siamo ispirati ad un articolo apparso su MagPi, un'ottima rivista gratuita, dedicata al piccolo computer Raspberry PI.
Ecco gli script dei vari sprite:

Questo è il cannone.
E' stato interessante il lavoro di conversione da seno e coseno all'interpolazione lineare sull'asse Y.
Questo ha permesso ai più piccoli di apprezzare il progetto senza introdurre concetti matematici ancora prematuri.

Anche lo sprite del proiettile nasconde aspetti significativi per la buona riuscita del lancio.

Il bersaglio ha invece la particolarità di apparire in posti casuali per rendere più intrigante la sfida al giocatore.

Durante la pausa merenda sono comparse ottime chiacchiere ed una squisita torta di mele.
Non abbiamo perso tempo ed abbiamo lanciato l'idea di traghettare i bambini verso Arduino.

Attendiamo ora i commenti dei genitori che dovranno sostenere l'acquisto di una scheda, un kit base ed in un secondo momento qualche motore e sensore per assemblare un piccolo robot.

Un particolare grazie ai Mentor che hanno saputo aiutare sempre in modo soft i nostri ragazzi guidandoli con suggerimenti sottili alla meta.
Ringraziamo infine Giulio per le foto decisamente professionali !

venerdì 14 febbraio 2014

Strumenti di diagnostica per console Nintendo

Ieri sera abbiamo avuto modo di divertirci con un ritrovamento veramente strepitoso:

Una serie completa di console Nintendo:

arricchita da un po' di portatili

e da qualche accessorio:
- 1 GameBoy Printer con cavetto
- 1 GameBoy Camera

Ma la cosa più strepitosa sono le cartucce ed i mini CD di test ! 
Tralasciamo a fatica i numerosi giochi per dedicarci ad una sommaria pulizia delle console rimaste alcuni giorni abbandonate alle intemperie.

Partiamo poi alla scoperta di queste rare curiosità:

Il primo GameBoy si accende e propone un menu con una serie di test per la maggior parte senza la necessità di intervento umano. 
Passa poi alla verifica dei tasti chiedendo la pressione singola in sequenza, poi alla pressione doppia ed infine addirittura a combinazioni di tre tasti alla volta.

Il tutto non dura più di 5 minuti.

Con il color la serie di verifiche si ripresenta allo stesso modo, ma le schermate sono ovviamente tutte a colori. Ecco una sequenza di test del video. Probabilmente effettua qualche controllo ulteriore impiegando un minuto in più a completare la diagnostica.

L'Advance ha uno scatolotto decisamente più spartano, ma non sembra darci molta soddisfazione.

Passiamo così ad accendere il televisore tralasciando le piccole portatili.

Purtroppo non abbiamo test specifici per ogni console, ma questa maxi cartuccia per il 64 è veramente gigantesca.

Tanta aspettativa per un semplice verifica di funzionalità del controller.

E' finalmente arrivato il turno del Cube, la console con a corredo più materiale. 
Oltre a numerosi giochi ci sono ben 3 diversi mini-CD speciali. 
Purtroppo due di questi richiedono una scheda di memoria ed attualmente non ne abbiamo nessuna in sede (devo confessare di averla a casa nella Wii, spesso mi capita di fare una partita a vecchi giochi del cubo sfruttando la retro-compatibilità sulla mia fidata prima versione bianca).

Restiamo a rimirare questa scritta, un po' perplessi....

Ma finalmente il terzo mini-CD attira il nostro interesse:

Il menu è veramente articolato, ci riserviamo di approfondire presto tutte le numerose opzioni.

Devo ammettere che l'arrivo dello scanner 3D ci ha letteralmente assorbiti e non abbiamo così avuto moltissimo tempo da dedicare a questa attività. 

....ma questa è un'altra storia....

sabato 8 febbraio 2014

Ascoltare aerei con la Raspberry Pi

Lo scorso giovedì ci siamo parecchio divertiti, ascoltando i segnali ADS-B trasmessi dagli aerei, per il controllo del traffico.

Ci tengo subito a precisare che questa operazione è perfettamente sicura,  ci limitiamo a ricevere un segnale trasmesso in broadcast nell'aria, non criptato. Non influiamo assolutamente nella trasmissione, ci limitiamo ad ascoltare.

Abbiamo avuto la possibilità di farci guidare passo passo dall'autore di questo post, che abbiamo avuto l'onore di ospitare in sede, arrivando così in poco tempo al risultato.

Procediamo con ordine e vediamo che cosa serve:

Innanzitutto un'antenna ! Seguiamo questa guida scegliendo però di partire dal semplice cavo d'antenna da cui togliamo la guaina (A), la calza di schermatura (B) ed il rivestimento, lasciando solo il cavo di rame (D) ed il dielettrico (C).

Il primo segmento è lungo 13 cm, poi un cerchio di diametro 4 cm, seguito da un altro segmento da 13 cm ed un secondo cerchio, sempre di 4 cm. L'ultimo spezzone è sempre da 13 cm.

Un adattatore da 90°, un po' di nastro isolante ed un pezzetto di cartone per irrigidire il tutto e la nostra rudimentale ma efficace antenna è pronta.

Passiamo così al cuore del sistema: una Raspberry Pi:

Abbiamo già parlato di questo piccolo, economico e rivoluzionario computer, diamo quindi per scontato che chi volesse seguire le nostre orme ne abbia uno e sappia come arrivare ad un'installazione pulita di Raspbian.

Per completare il progetto vi servirà anche una chiavetta USB per ricevere il segnale Digitale Terrestre, dotata di processore REALTEK 2832U e TUNER E4000.
E' facilissimo trovarne una sulla baya a meno di 10 Euro.

Arriviamo così alla configurazione, anche in questo caso c'è un'ottima guida completa che ci permette di arrivare ad avere Dump1090 in pochi passaggi sul nostro piccolo dispositivo.

Riporto per comodità i comandi da eseguire:


  • sudo apt-get install git
  • sudo apt-get install cmake
  • sudo apt-get install libusb-1.0-0-dev  # there is a slip on the referenced page
  • sudo apt-get install build-essential 

  • Seguiti da questo, per avere così pronta la nostra chiavetta


  • git clone git://git.osmocom.org/rtl-sdr.git
  • cd rtl-sdr
  • mkdir build
  • cd build
  • cmake ../ -DINSTALL_UDEV_RULES=ON
  • make
  • sudo make install
  • sudo ldconfig

  • Abbiamo quasi finito, alimentiamo un hub USB ed agganciamo a questo la nostra chiavetta perché la Rasberry non è molto generosa in fatto di Ampere. Passiamo ad installare il software :


  • cd  /home/pi/ 
  • git  clone  git://github.com/MalcolmRobb/dump1090.git
  • cd  dump1090
  • make

  • A questo punto un ultimo comando ci separa dalla ricezione del segnale:


  • ./dump1090  --interactive

  • Ed ecco come appare su Rasberry:

    5 aerei appaiono così ai nostri occhi. Attirano subito la nostra attenzione i codici identificativi, altezza, latitudine e longitudine.

    Ci lasciamo così entusiasmare, ed in poco tempo otteniamo questo:

    Non male vero ? E' una schermata, facilmente accessibile da browser richiamando l'indirizzo di rete della Rapberry sulla porta 8080.

    Così iniziamo a perfezionare il tutto, aggiungendo uno script che carica in automatico il nostro software all'avvio, inoltre manda l'IP della scheda ad una mail preimpostata, così non è più necessario mantenere video mouse e tastiera connessi alla scheda che andrà posizionata in un punto vicino alla finestra per aumentare al massimo la ricezione.

    Aspettatevi presto ulteriori sviluppi !

    sabato 1 febbraio 2014

    CoderDojo Pavia: settimo incontro

    Eccoci arrivati al nostro periodico appuntamento CoderDojo !

    Questa volta abbiamo voluto mettere un attimo da parte Scratch, per affrontare qualche concetto nuovo, come al solito in modo giocoso.

    Ecco una pagina della piccola guida che abbiamo lasciato ad ogni partecipante:

    L'argomento non è uno dei più facili, ma l'obbiettivo è cercare di farli ragionare, in modo da far passare ad ogni incontro pochi ma fondamentali concetti per accrescere la loro consapevolezza sul mondo (informatico) che li circonda.

    Così ognuno ha potuto connettersi ad uno switch posto sul tavolo, trovare nel suo sistema operativo l'indirizzo IP che il server DHCP ha assegnato in modo automatico ad ogni macchina.

    Capito questo, bisogna mettere subito in pratica il concetto in modo che sia chiaro per tutti:

    Cosa c'è di meglio di un bel gioco ?

    Lasciamo a loro il compito di dividersi in 5 squadre, contemporaneamente i mentor si sono occupati dell'installazione di Minetest su tutti i computer.

    Minetest è un gioco gratuito, molto simile al famosissimo Minecraft.
    Certo ha diverse funzioni in meno ma è molto leggero e funziona benissimo anche sulle nostre vecchie macchine di recupero con sistema operativo LUbuntu.

    I nostri 22 avventurieri si sono così ritrovati in un mondo cubettoso, tutto da costruire.

    Ecco come appaiono !
    Lo scopo della mattinata è imparare a coordinarsi, per costruire assieme un grande castello.

    Una squadra ha l'incarico di fare le mura, una il fossato, un'altra il palazzo reale. Alcuni hanno lanciato l'idea di costruire un villaggio e l'ultimo gruppo discuteva animatamente per progettare un maschio fortificato.

    Almeno, queste erano le intenzioni all'inizio della sessione di gioco.... poi alcuni problemi tecnici ci hanno costretti a dividere i 22 partecipanti in due differenti server.
    Sembra infatti che la versione che abbiamo scaricato permetta una contemporaneità di 16 giocatori soltanto.

    Nascono quindi alcune collaborazioni spontanee ed il nostro mondo si riempie di case, palazzi, torri ma anche moli e ponti colorati.

    Grazie al proiettore abbiamo avuto modo di fare visite guidate e presentare a tutti le creazioni più fantasiose.

    La situazione è decisamente caotica, specialmente quando alcuni hanno iniziato ad allagare una sezione della mappa, dare fuoco ad alcuni alberi e riempire qualche casa di lava. E' bastato minacciarli di escluderli dalla rete per riportare il gruppo ad un'ottica più costruttiva e rispettosa delle case altrui :-).

    Questo Minetest ha decisamente delle potenzialità in un contesto come il CoderDojo, certamente non può sostituire da un punto di vista didattico l'impareggiabile Scratch, ma rappresenta un'ottima alternativa per lanciare un evento spot a grande contenuto giocoso.

    Da questo breve video dovrebbe intuirsi il clima chiassosamente creativo:


    Basta cercare on-line alcune immagini per rendersi conto di quanto sia intrigante e versatile una piattaforma simile !

    Il prossimo appuntamento ci vedrà ancora una volta impegnati a programmare un videogioco con Scratch, ma potremmo tenere in considerazione l'idea di ritornare a far visita a questo mondo fantastico.