Daten|teiler
Kopieren als Kulturtechnik

Mobiles Python

13. August 2007 von Christian Imhorst

Ich habe zwar keine Ahnung, ob ich es jemals gebrauchen werde, aber ich habe jetzt Python auf meinem Nokia Handy. Wenn die normalen in Java programmierten Spiele zu langweilig geworden sind, hat man jetzt zumindest ein wunderschönes neues Adventure, das einem die Zeit vertreibt. Wer zufällig ein Handy der Serie 60 besitzt, kann nachziehen. Für die Installation habe ich das englischsprachige Tutorial von Jürgen Scheible benutzt.

Zuerst muss man herausfinden, welches S60 Handy man eigentlich genau besitzt. Ich habe zum Beispiel ein E65. Laut der Website Device Specifications sind die Device Details das Betriebssystem Symbian OS v9.1 und die Plattform S60 3rd Edition. Die verschiedenen Versionen des Open Source-Programms PyS60, der Portierung von Python auf Symbian-Geräte, findet man bei SourceForge.net. Die für mich wichtigen Dateien waren PythonForS60_1_4_0_3rdEd.sis und, damit man schon ein paar Skripte mit Beispielen hat, PythonScriptShell_1_4_0_3rdEd.sis. Die Endung .sis zeigt bei Symbian immer an, dass die Datei auf dem Gerät noch installiert werden muss.

Danach habe ich eine Verbindung zwischen Computer und Handy hergestellt. Das kann man entweder mit dem Datenkabel oder über Bluetooth machen. Da mein iBook eine Bluetooth-Schnittstelle hat, habe ich mich für letzteres entschieden. Bei beiden Geräten, iBook und E65, muss Bluetooth aktiviert sein. Das E65 stellt da keine großen Herausforderungen, MacOS 10.3 und 10.4 bringen entsprechende Programme mit. In Panther hat man noch das „Bluetooth Dienstprogramm“ benutzt, in Tiger gibt es das nicht mehr, da benutzt man den Eintrag „Bluetooth“ in den „Systemeinstellungen“, um beide Geräte miteinander bekannt zu machen. Mit dem Dienstprogramm „Bluetooth Datenaustausch“ kann man dann beide Dateien an das Handy schicken, zum Beispiel in einen Ordner der SD-Speicherkarte. Wenn die Dateien abgespeichert sind, gibt es für Symbian einen Dateimanger, beim E65 unter dem Menüpunkt „Office“, mit dem man in den Ordner mit den beiden Installationsdateien surft und dort zuerst PythonForS60_1_4_0_3rdEd.sis und dann PythonScriptShell_1_4_0_3rdEd.sis installiert. Das Programm Python findet man danach im Installationsordner.

Klickt man den Programmbutton an, startet gleich die Python-Konsole. Allerdings kann man jetzt noch nichts eingeben, da man erstmal unter „Optionen“ drei Auswahlmöglichkeiten hat:

  • Run script, um ein Skript aus dem Python-Ordner auszuführen.
  • Interactive console, das ist die Konsole.
  • Bluetooth console, damit kann man Python „fernsteuern“.

Unter Run script findet man ein paar Beispiel-Skripte, die man gleich ausprobieren kann, und Interactive console ist eine typische Python-Konsole. Allerdings ist es ganz schön mühsam, Befehle mit dem Daumen einzutippen, so als würde man eine SMS schreiben. Daher ist die Bluetooth-Konsole eine geniale Erfindung, um über die Bluetooth-Schnittstelle eine Konsolen-Sitzung zu erzeugen (das HowTo habe ich von eriksmartt.com).
Die Geräte sollten via Blutooth miteinander verbunden sein und im „Bluetooth Dienstprogramm“, bzw. im Reiter „Bluetooth“ in den Systemeinstellungen ist beim Seriellen Anschluss „Bluetooth-PDA-Sync“ die Schnittstelle „RS-232“ eingestellt, anstatt Modem. Mit dem Befehl

screen /dev/tty.Bluetooth-PDA-Sync

im Terminal, kann man dann den Port auf das Terminal umleiten und danach im Handy die Bluetooth console starten. Nachdem man die Frage richtig beantwortet hat, welchen Port man auf dem System verwenden will, in diesem Beispiel ist es der Port „Bluetooth-PDA-Sync“, wird der Port gleich auf das Terminal umgeleitet.

pyS60

Die Python-Konsole wird von meinem iBook nun quasi „ferngeteuert“. Ich kann über die Konsole Befehle an das Handy schicken und schauen, was passiert.

Die nächste Herausforderung wird sein, das ganze unter Linux zum Laufen zu bekommen. Dabei kann vielleicht das Python for S60-Wiki von Nokia helfen.

Geschrieben in MacOS X und iPhone, Programmieren, Python