2010-08-15

PyS60: la calma è la virtù dei forti

... ed io l'ho persa da tempo. :-)

Battute a parte, ci voleva un pomeriggio di ferragosto per riuscire a mettersi dietro a questo progetto che mi permette (forse) di utilizzare il mio smartphone come tale e non solo come telefono. Almeno in attesa di decidermi se prendere l'N900.

In due parole, il progetto permette di mettere sul telefonino un interprete python e quindi di scrivere programmi e script in modo semplice. Dico semplice perché non sono mai riuscito a mettere in pista tutta la pappardella di sw, plugin, editor (perché si è praticamente obbligati anche a mettere un IDE basato su Eclipse, e io odio Eclipse), né sotto Linux né sotto Windows.

Con PyS60 ho dovuto installare la versione 1.9.6 invece della 2.0.0 perché semplicemente le versioni successive necessitano di un firmware più aggiornato di quello che ho e Nokia non aggiorna praticamente mai il firmware dei suoi apparecchi. È più comodo farne comperare di nuovi.

Con Python esiste il progetto Ensymble che permette(rebbe) di convertire un progetto python in un file sis e quindi installarlo sul telefono.
Piccolo problema: gira con Python 2.5. Sui pc trovi la 2.6. Vabbé. Esiste la versione 0.29 che gira sotto Python 2.6, ma ho dovuto correggere un paio di cose nei sorgenti (più un tarocco in installazione) per riuscire a farla girare.

Sia come sia, documentazione alla mano, tutorial a portata dell'altra mano, riesco finalmente a far funzionare uno script che si mette in ascolto sul bluetooth e a scambiarci informazioni.
Devo ancora mettere a punto qualche impostazione, ma sembra funzionare.

Lo scopo finale è quello di farmi un programma di monitoraggio del telefono che permetta di vedere informazioni semplici (come il gestore a cui sono collegato, batteria e livello segnale), un po' più complesse (ad esempio calendario, contatti, e magari sincronizzarli con Thunderbird), fino ad arrivare ad un'interfaccia di invio messaggi o altri giochini che mi possono venire in mente. In pratica comandare il cellulare in modo completo dal pc.

Dovrò penare per diverse cose poiché non saranno compatibili con la mia versione di PyS60, ma potrebbe essere divertente.
Vediamo che ne salta fuori.

4 commenti:

  1. Mi sembra davvero un'impresa ardua, in bocca al lupo :-)

    RispondiElimina
  2. Ciao vedo che non sono l'unico interessato ad utilizzare al massimo le funzioni del mio smartphone nokia;)
    Bene, mi piacerebbe sapere come e cosa hai modificato del sorgente di Ensymble 0.29 per farlo girare con python 2.6...
    Ho cercato e cercato su google se ci sia un modo per risolvere il problema ma non ho trovato nulla..io uso Ubuntu e non vorrei vedermi costretto a passare a windows ogni qualvolta mi serva utilizzare ensymble per creare un file .sis per il mio cell..
    Qualche dritta è ben accetta per districarmi da questo problema..
    Attendo una risposta:)ciao

    RispondiElimina
  3. Fondamentalmente ensymble 2.9 gira con Python 2.6.

    A parte un paio di punti sulle inclusioni dei sotto-package, le mie modifiche erano relative all'adattamento di ensymble 2.9 a PyS60 1.9.6, in pratica ho modificato le dipendenze per farle puntare al corretto runtime.

    Ad ogni modo le prove non sono andate a buon fine. Creo il file sis, lo installo sul telefono, ma quando lo lancio non ottengo assolutamente nulla: né un errore, né l'applicazione. Nulla.

    Ho provato ad utilizzare l'ensymble di PyS60 1.9.6 dopo aver preso Python 2.5 da Karmic, ma stessa identica cosa.

    Sto meditando seriamente se abbandonare PyS60 e andare direttamente su Maemo/Meego

    RispondiElimina
  4. capisco..io ora sto sono riuscito ad ottendere un pacchetto .sis usando python2.5 ed ensymble 0.28, lo passo sul cell e mentre lo installo mi dice che non è presente "python s60 runtime" cosa non vera..ho l'ultima versione 2.0.0
    allora mi son detto va beh proviamo con la versione precedente di python runtime(e relative pips, openc libssl ecc..) ma ancora niente sia con v1.9.7,v1.9.4,v1.4.45
    siamo fermi entrambi allo stesso punto insomma?
    mi dispiacerebbe molto non poter sfruttare al meglio il mio cell..alla fine l'ho preso anche per smanettarci sopra:(
    hai qualche consiglio?

    RispondiElimina