Piero V.

Nokia CA-42

Il Nokia CA-42 è un cavo che in passato veniva utilizzato per connettere dei telefoni al computer. Presenta una presa USB e un connettore proprietario.

La cosa bella di questo cavo? È che in realtà nasconde un “convertitore” USB a seriale a livelli TTL, ovvero quelli usati nei microcontrollori e nei sistemi embedded in generale.

Tutto ciò ad un prezzo molto basso: io l’ho comprato su eBay per 3,58€. Un cavo fatto a posta con questa funzione costerebbe più di 10€.

Mi serviva perché un mio amico ha brickato un router, il quale era dotato di uBoot come bootloader. Secondo il wiki di OpenWRT questo sarebbe il miglior bootloader, però secondo me ha una grande carenza: la mancanza di una recovery mode tramite rete che invece ho riscontrato in Redboot (il che mi ha salvato più volte con la fonera 😈 ) e in Adam2/PSPBoot, così mi sono offerto di aiutarlo con la seriale.

Non riuscendo a far funzionare la solita interfaccia con un paio di transistor e avendo un MAX232 ma non un MAX2323 ho deciso che se dovevo comprare qualcosa, doveva essere questo cavo, come consigliavano su molti siti web.

E ha funzionato ovviamente, perciò finalmente ho risolto i miei problemi con le varie interfacce seriali 😊 .

Vi do un unico consiglio: ci sono molte “revisioni” di questo cavo, con cavi di diverso colore. Vi consiglio allora di usare un multimetro per trovare il colore del vostro e di non affidarvi ad internet.

Questa pagina contiene le istruzioni dettagliate per la buffalo linkstation, però sono universali per quanto riguardano il pinout del cavo 😉 .

Opera Mobile su Symbian: un must have

Ormai è più di un anno che ho un Nokia 5800.

Come telefono è abbastanza buono, però soffre della vecchiaia e ormai è sparito dai pensieri di Nokia, interessata a Windows Phone 7 per gli smartphone.

Il problema più grande secondo me è “web”, il browser di default di Symbian.

Oltre che la vecchiaia - un browser deve essere sempre aggiornato - è lento, si inchioda completamente, insomma, uno schifo, specialmente se comparato a Safari per iOS.

Esiste da tempo un’alternativa che ho sempre ignorato perché non volevo occupare risorse del telefono: Opera Mobile.

Mi chiedo come io sia riuscito a farne a meno. È tutta un’altra cosa.

È veloce ed elegante. Si è ispirato ad opera del desktop come funzionalità (accesso rapido alle tab) mentre come grafica si è un po’ ispirato - a mio avviso - al già citato Safari per iOS.

Non si inchioda mai ed inoltre è compatibile con CSS 3.

Ma la caratteristica che ho apprezzato di più è che finalmente ho le tab anche sul cellulare 😌

Perciò consiglio a tutti quelli che hanno symbian di installarselo.

Rhythmbox e problemi con la sincronizzazione di iPod Touch

Mi è capitato per la prima volta da molto tempo di non riuscire a sincronizzare il mio iPod Touch tramite il programma Rhythmbox.

Con il copia e incolla mi dava un errore di segmentazione mentre con il drag and drop mi dava un errore di Dbus.

Così dopo una breve ricerca sul web ho trovato la soluzione.

La traduco in italiano per i pigri 😊

  1. Aprite il file manager sulla home directory e poi sul campo dell’indirizzo digitate questa cartella: .gconf/apps/rhythmbox/state/ipod.
  2. Una volta arrivati qui eliminate il file %gconf.xml.
  3. Aprite Rhythmbox, il tutto dovrebbe andare ora 😉

Se volete fare più rapidamente aprite un terminale e scrivete rm .gconf/apps/rhythmbox/state/ipod/%gconf.xml. Il simbolo di percentuale mi pare sia un carattere che non comporta problemi.

E poi mi parli di libertà

Penso a molti di coloro che usano il web sia capitato di sentire della recentissima chiusura di megaupload.com

Ebbene sì. Hanno chiuso megaupload.com e megavideo.com. Due provider che mettevano a disposizione i loro server agli utenti per caricare file grossi e video.

A sfavore di questi due siti è stata di sicuro la vendita di account premium che liberavano dalle limitazioni imposte, soprattutto i fatidici 72 minuti di megavideo.com.

Penso che chiunque sia abituato ad utilizzare megaupload spesso avesse già notato il cambio look e la rimozione del tempo di attesa anche per gli utenti free (non so se anche per quelli non registrati), dovuto proprio alla rivolta contro le case discografiche.

La chiusura comunque è arrivata, ovviamente per la difesa del copyright. Ed è stata effettuata dagli Stati Uniti.

Innanzitutto volevo dire che molti file protetti dal diritto d’autore sono stati rimossi col tempo e, da come ricordo, erano contro i “Terms of Service”, perciò erano gli utenti a violare il regolamento del sito caricandoli.

Inoltre la sede di Megaupload era ad Hong Kong, perciò questa è l’ennesima prova del comportamento degli Stati Uniti, che però si sono salvati grazie a dei server che erano ospitati in Virginia.

Prima con SOPA e PIPA ed adesso la chiusura di Megaupload.

Dov’è finita la tanto declamata libertà?

Ah, forse è qui da noi in Europa, dove non abbiamo i brevetti software e le leggi di censura del web sono considerate come violazioni dei diritti fondamentali degli utilizzatori di internet.

Panda3D: ruotare la telecamera col mouse

Come l’avevo fatto con Blender, ora lo faccio con Panda3D 😉

Dall’hello world della documentazione ufficiale, ho fatto questo script che muove la telecamera col mouse.

In pratica esegue un task - una funzione eseguita ad ogni frame - che controlla la posizione del mouse, la trasforma da radianti a gradi sessagesimali (usati da Panda) e alla rotazione che ha in quel momento la telecamera aggiunte quella ottenuta con la trasformazione. Infine centra il mouse.

Devo ancora capire perché trasformando le coordinate del mouse - il cui intervallo in panda è [-1; 1] - si riesca a ottenere una buona rotazione con Panda, però sembra funzionare bene!

Ecco lo script python:

#!/usr/bin/env python

from pandac.PandaModules import WindowProperties
from direct.showbase.ShowBase import ShowBase
from direct.task import Task
import math

class MyApp(ShowBase):

	def __init__(self):
		ShowBase.__init__(self)

		# Load the environment model.
		self.environ = self.loader.loadModel("models/environment")
		# Reparent the model to render.
		self.environ.reparentTo(self.render)
		# Apply scale and position transforms on the model.
		self.environ.setScale(0.25, 0.25, 0.25)
		self.environ.setPos(-8, 42, 0)

		# Disable the default camera behavior
		base.disableMouse()
		# Add the mouseCameraTask procedure to the task manager.
		self.taskMgr.add(self.mouseCameraTask, "mouseCameraTask")

	# Define a procedure to move the camera.
	def mouseCameraTask(self, task):
		mw=base.mouseWatcherNode

		# Execute the Task only if the mouse is on the Panda window
		if mw.hasMouse():
			x=mw.getMouseX()
			y=mw.getMouseY()
			curr=self.camera.getHpr()
			self.camera.setHpr(curr.x-x*180/math.pi, curr.y+y*180/math.pi, 0)
			base.win.movePointer(0, base.win.getXSize()/2, base.win.getYSize()/2)

		# Continue with the task
		return Task.cont

app = MyApp()
app.run()

Attenzione: vi consiglio di aggiungere un handler al tasto Esc per uscire, in quanto non riuscirete a raggiungere il tasto chiudi. Altrimenti dovete fare come me: usare le combinazioni di tasti Alt + Tab su GNOME per passare in un’altra finestra. In Windows dovrebbe essere sempre Alt + Tab o Super + Tab. In ogni caso lì c’è anche il Task Manager.