venerdì 18 ottobre 2013

Controllo remoto di rele' mediante Raspberry

Recentemente un amico mi ha chiesto un metodo per poter gestire in remoto (dove per remoto si deve intendere accendere una caldaia negli USA stando in Italia) usando una Raspberry.

La cosa e' piuttosto semplice da fare con Php ma visto che la ruota e' gia' stata inventata, e funziona bene, ho preferito usare questo strada

Prima di tutto la parte collegamenti
La Raspberry, con montata una Raspbian, e' stata collegata al rele' alla porta GPIO #23 (porta S del rele') e i classici +5V e GND


Per la parte software ho impiegato WEBIOPI , uno script in Python che crea un piccolo webserver interfacciato con le GPIO

Prima prima cosa di sscaricare il file
wget http://webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz

e lo si scompatta
A questo punto da utente root si digita
./setup.sh
(attenzione, durante questa fase la Raspberry deve essere connessa ad internet perche' vengono scaricate eventuali librerie non gia' presenti nel sistema...l'operazione dura qualche minuto)

al termine si puo' digitare (sempre da root)
/etc/init.d/webiopi start

a questo punto collegandosi all'indirizzo della macchina sulla porta 8000 (od in localhost:8000) si accede ad una interfaccia di questo tipo

La username di default e' "webiopi" e la password "raspberry"

All'inizio tutte le porte sono di Input. Quindi si deve cliccare sulla casellina grigia accanto alla porta di interesse (nel mio caso #23) e porta in modalita' output (OUT). Fatto cio' cliccando sul numero della porta si interagisce con il rele' aprendo e chiudendo il contatto


Nel video si osserva il led luminoso del rele' che si accende quando si apre il contatto via web

Per rendere il sistema sempre avviato all'accensione del sistema si deve digitare


update-rc.d webiopi defaults

mercoledì 16 ottobre 2013

Google Chrome, Proxy Server e Debian

Questo riepilogo non è disponibile. Fai clic qui per visualizzare il post.

Problemi con Google Chrome per Linux su Debian

Cercando di installare Google Chrome su una macchina virtuale Debian con la procedura che ha sempre funzionato oggi sono comparsi alcuni errori



di fatto l'installazione con dpkg si blocca a causa di alcune dipendenze non risotel
-----------------------------------------------
 google-chrome-stable : Dipende: lib32gcc1 (>= 1:4.1.1) ma non è installabile
                                     Dipende: lib32stdc++6 (>= 4.6) ma non è installabile
                                     Dipende: libc6-i386 (>= 2.11) ma non è installabile
-----------------------------------------------

La versione beta 31.0.1650.16-1 funziona invece correttamente.

lunedì 14 ottobre 2013

Configurazione Debian minimale su IBM X20


In questo post viene mostrato come ho configurato in modo minimale (ma abbastanza completo) l'IBM X20 visto in questo post in modo da avere un compromesso tra la modesta potenza della macchina  e la necessita' di renderla comunque operativa


Per prima cosa sono partito dal primo CD di installazione di Debian togliendo le opzioni Ambiente Desktop e Server di Stampa ed impostando Server SSH.

Al successivo riavvio si ha la sola shell senza ambiente grafico

Si procede quindi con l'installazione di alcuni programmi a linea di comando

apt-get install alpine sqlite3 lynx mc imagemagick
apt-get install moc (player musicale basato su ncurses che si lancia con il comando mocp)

e di alcuni tool di sviluppo che di solito uso
apt-get install build-essential codeblocks codeblocks-contrib openjdk-7-jdk ant subversion git

a questo punto si installa X Windows in configurazione minimale
apt-get install x-window-system-core

seguito dall'installazione di Openbox minimale
apt-get install openbox obconf obmenu
apt.get install conky tint2

per attivare conky e tint due si deve procedere come segue
touch ~/.config/openbox/autostart.sh
chmod 700 ~/.config/openbox/autostart.sh


il contenuto del file autostart e' il seguente
----------------------------------------------------
# Run the system-wide support stuff . 
$GLOBALAUTOSTART 
(sleep 1 && tint2) & 
(sleep 1 && conky) & 
------------------------------------------------------

di default conky si aggiorna una volta al secondo ma non e' di interesse e ruba abbastanza cicli alla CPU cosi' ho modificato il valore update_interval in /etc/conky/conky.conf portandolo a 15.0

con questa configurazione ed Openbox in esecuzione si ha una occupazione della RAM di 46 MB (aprendo una shell di XTerminal si passa a circa 51 Mb con una occupazione di spazio disco di circa 1.5 Gb).
Tramite OBConf ho impostato una sola finestra di desktop

Per gestire la reti wireless in modo umano ho montato come network manager wicd
apt-get install wicd 


che deve essere attivato con il comando
wicd-client

(attenzione: se non e' presente deve essere inserita a mano la scheda wlan0 all'interno della configurazione)

Un paio di programmi di comune utilizzo su X (un leggero browser ed editor di testo)
apt-get install midori
apt-get install leafpad
apt-get install mupdf (visualizzatore pdf)

Per effettuare degli screenshot ho installato scrot
apt-get install scrot

che si usa con la seguente sintassi
scrot -d 5 (salva lo schermo con un ritardo di 5 secondi)

Data che X non sara' sempre usato, per massimizzare lo schermo della consolle testuale, si puo' modificare GRUB in modo che in partenza la shell sia in modalita' 1024x768 editando il file /etc/default/grub, togliendo il commento a  GRUB_GFXMODE=640x480 e portandolo a 1024x768.
Si deve poi aggiungere la linea
GRUB_GFXPAYLOAD_LINUX=keep

per rendere le modifiche operative si lancia poi
update-grub2

A questo punto si possono togliere un po' di demoni che non servono. Visto che la batteria non e' funzionante e che il BIOS non accetta la modalita' Speedstep si puo' rimuovere ACPI
apt-get remove acpi
Visto che non e' previsto di utilizzare dischi di rete mappati NFS via anche questo servizio
apt-get --purge remove nfs-common rpcbind
Il sistema non ha un modulo Bluetooth e potrei disinstallare il demone ma visto mi potrebbe servire per un dongle USB Bluetooth lo disattivo semplicemente dal boot  modificando /etc/default/bluetooth ed editando
BLUETOOTH_ENABLED=0

Via anche il client di CUPS (di solito non stampo)
apt-get remove cups 

Per il demone Avahi ho preferito disattivarlo piuttosto che disinstallarlo perche' puo' sempre tornare utile. Si digita quindi il file 
sudo update-rc.d -f avahi-daemon remove

Sostituzione vetro touch screen su Huawey Y300


Nel capitolo "Fatelo da soli",come dicono i giornali, ricevo e volentieri pubblico il contributo di un collega geologo/informatico che mostra la sostituzione di un vetro di un Huawey Y300

Il vetro si e' fratturato a seguito di una caduta ed il pezzo di ricambio e' stato acquistato su un e-commerce cinese per pochi euro

Gli attrezzi da usare sono:

  • cacciavite torx
  • cacciavite a taglio
  • plettro
  • nastro biadesivo 
  • trincetto
  • phon
  • una miscela tra forza bruta e delicatezza


La prima fase prevede la rimozione di batteria e SIM

Si svitando poi le viti torx e si disaccoppia il guscio del cellulare dal display facendo leva il cacciavite a taglio


Si rimuovono quindi le due flat indicate dalle frecce in rosso


Alla fine il telefono e' sostanzialmente disassemblato


Si inizia la sostituzione del vetro: con un phon si separa il vetro dall'intelaiatura forzando leggermente con un plettro da chitarra

Una volta rimosso il vetro danneggiato si riposiziona il nastro biadesivo sul telaietto


Si posiziona il pezzo di ricambio del vetro(notare i due cavi flat che sporgono)

Si rimonta il display ricollegando le flat

e si ripetono all'incontrario i passi per lo smontaggio


Ed alla fine si riaccende

Ben fatto

sabato 12 ottobre 2013

IBM ThinkPad X20 (2662)

Mi e' stato prestato per una prova un vecchio IBM X20, una macchina del 2002 che monta un PIII 600 MHZ con 192 Mb di Ram (128 Mb in origine non rimuovibile come per l'X40) ed un disco fisso da 20 Gb. Ha uno schermo da 12.1 pollici con una risoluzione di 1024x768 e due USB . Non sono presenti connettivita' wifi, bluetooth, la batteria principale e quella della CMOS sono decisamente defunte. Da aggiungere che il tasto Freccia Su di questa splendida tastiera, una delle piu' veloci che abbia mai provato, risulta malfunzionante.

Per il resto e' una macchina, considerando la data di uscita, che ha ancora un suo fascino anche se non e' usabile come il suo fratello maggiore X40 che ancora uso normalmente




Un aspetto curioso e' la presenza di un alloggiamento per schede CF (credo che sia l'unico portatile con tale caratteristica, gia' dall'X40 il lettore e' di SD Card)


La sostituzione della batteria e' piuttosto semplice in quanto e' alloggiata insieme alla Ram.Da notare che lo slot della Ram porta l'indicazione FoxConn (all'epoca ancora sostanzialmente sconosciuta)


Un'altra caratteristica particolare e' la presenza della Ultraport posizionata sul lato corto superiore dello schermo. Si tratta di un porta proprietaria IBM che ha avuto poca fortuna e che si fatto e' una USB con connettore differente (vedi qui)



Ultraport

Il computer, a meno di aggiornamenti del firmware, non permette il boot da USB per cui per montare il disco fisso e' necessario utilizzare l'Ultrabase 08N1180 per aggiungere le funzionalita' del CDRom, di floppy disk, di due casse stereo, di una porta seriale ed una parallela oltre ad un ingresso PS2. La caratteristica principale e' che il CDRom puo' essere disconnesso dalla base per inserire altri accessori

Ultrabase con CdRom estratto


venerdì 11 ottobre 2013

Calcolatori analogici

Pensare ad una cosa piu' obsoleto di un regolo calcolatore ai giorni d'oggi e' quasi impossibile... per quanto riguarda lo scalimetro devo ammettere che lo uso ancora con una certa regolarita' per lavoro

Nelle foto sottostanti sono mostrati (con le loro scatole originali)
1) Scalimetro Mars 561 98 STAEDTLER (scale 1:20, 1:25, 1:50, 1:75, 1:100, 1:125)
2) Regolo calcolatore tascabile DARMSTAD 33 ( scale L,K,A,B,C,D,P,S,T , sul retro LL1, LL2, LL3)
3) Regolo calcolatore da tavolo ARISTO Scholar 0903 (scale L,K,A,B,Bl,Cl,C,D,S,ST,T)



Il regolo tascabile lo avevo comprato oltre 20 anni fa per affiancare il calcolatore digitale ma non ho mai trovato nessuno che me ne potesse spiegare bene l'uso. Oggi e' possibile consultare Wikipedia (http://en.wikipedia.org/wiki/Slide_rule) per le indicazioni necessarie. Considerando che questi regoli erano imbarcati nei voli verso la Luna delle Missioni Apollo e che erano utilizzati anche a Los Alamos per i calcoli sulla bomba atomica, e' piuttosto impressionante cio' che si puo' tirare fuori da uno strumento che ha una precisione alla prima cifra decimale (alla seconda tra 1 e 2) e che puo' fare quasi solo moltiplicazioni e divisioni (per i calcoli piu' precisi erano necessarie le tavole logaritmiche tabulate nei libri)


Debugger integrato ESP32S3

Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede  nell'ID USB della porta Jtag. Nel modulo...