CCZwei

Aktuelles

Allgemeines

Priv@tes

Unterhaltung

Lallus

Visual Basic

PDA/PPC2002

Navigation

Mischmasch

Chat / Webcam

 

| impressum | feedback | gästebuch | home |  

 

Die Koordinaten von Viag Interkom –
oder besser von O2.

Von Wolfgang Back

 

Mit dem GSM - Netz ist eine neue Qualität in unser Leben getreten. Es werden viele Antennen benötigt, um den Funkverkehr zwischen den vielen Handys aufrechtzuerhalten. Musste man ganz früher noch wissen, wo der Autotelefonpartner war (Nord, Mitte, Süd), wenn man ihn anrufen wollte, so ist dies heute nicht mehr von Interesse.
Durch die vielen Antennen, die überall aufgebaut werden, um eine lückenlose Versorgung zu erreichen werden auch ganz neue Möglichkeiten entwickelt, von denen man früher träumte.

Blickt man ein wenig hinter die Geheimnisse, die ein GSM – Netz vermittelt, so werden ganz neue Möglichkeiten sichtbar, die zum Teil der Netzbetreiber so gar nicht wollte. Wenn man z.B. den Namen der Antenne auslesen kann, in der man gerade eingebucht ist, so hat man eine Information parat, die man vorher nicht kannte.

Da das Versenden des Antennennamens zur GSM-Kommunikation gehört und da die GSM – Parameter festgelegt sind, kann man den Namen der Antennenzelle auslesen. Wenn es nicht direkt im Handy – Monitormodus möglich ist, so kann man die Modembefehle einsetzen, um an diese Information zu kommen – am besten per Laptop oder PDA.

Die GSM-Antenne hat einen eindeutigen Namen, den man abfragen kann, z.B. 03BF – in Hexnotation. Meistens wird eine Antennenanlage aus mehreren Segmenten gebildet, die alle einen eindeutigen anderen Namen haben.
Es gibt Hobbyisten, die sich zum Ziel gesetzt haben, den Antennennamen Zuordnungen zukommen zu lassen. Jetzt als Beispiel: die oben erwähnte Antenne 03BF (Fantasie) steh auf dem Haus xyz in abc usw.
Hat man die Dateien aus dem Internet zur Verfügung, so kann man die eigenen gelesenen Antennenwerte abgleichen. Aha: zu 03BF gehört .....

In diesem Beitrag geht es um das ehemalige VIAG – Netz, das sich heute auf O2 oder Otwo umbenannt hat. O2 ist der einzige Anbieter, der eine sogenannte HomeZone bedient: in einem bestimmten Umkreis von meinem Wohnort kann ich mit dem Handy auf Festnetzgebühren telefonieren – verlasse ich die Zone, so bin ich normaler Handyuser im GSM – Netz.

O2 ermittelt die HomeZone, indem ein Koordinatensignal ausgewertet wird. Jede Antenne in diesem Netz sendet lokal ihre Position aus. Wenn man dieses richtig interpretieren kann, so weiß man haargenau, wo sich die Antenne befindet, bei der man eingebucht ist – es geht dabei um eine Genauigkeit von ca. 10 Meter.
Wie geht das?
Zunächst einmal sollte man sich eine solche Meldung von O2 ansehen. Im nächsten Bild ist dies zu erkennen: eine zwölfstellige Zahl wird im Handy übermittelt. Aus der zwölfstelligen Zahl kann man vieles ermitteln – wahrscheinlich mehr, als sich VIAG vorgestellt hat, dass dieses Amateure betreiben werden.

In dem Bild oben sieht man eine Zahlenfolge 335690564216, die auf das Handydisplay gespielt wird, wenn man es will.
Wer O2 als Provider hat und dies gerne sehen möchte:
(für Siemens – Telefone) unter Einstellungen und CB Empfang den Kanal 221 abonnieren (kostet nichts) und automatische Anzeige anklicken.

Danach wird ständig in einem bestimmten Zeitrhythmus die Koordinate eingeblendet. Man kann das auch wieder ausschalten.

Aber was ist das jetzt für eine komische Zahleneinblendung? Wie soll man aus der oben angebebenen Zahl die eigene Position errechnen können?

Die von VIAG (ich falle immer noch auf den alten Namen zurück) ausgesendeten Signale sind keine normgerechte Gauß-Krügerkoordinaten. Normalerweise erwartet man bei Gauß-Krüger eine siebenstellige Zahl für die Darstellung einer Position Breite oder einer Position Länge. Das ist aber nicht tragisch.

O2 liefert einen zwölfstelligen Code. Man muss daher die Angabe trennen :
6 Zeichen gehören zum Rechtswert und 6 Zeichen gehören zum sog. Hochwert. Um daraus jedoch einen echten Gauß-Krüger Wert zu machen, muss man jeweils eine 0 anhängen. Damit wird die Ortung nur auf 10 Meter genau.

Also aus der O2-Zahl 335690564216 wird:
335690 der Rechtswert, wenn man eine 0 anhängt. Der Rechtswert ist dann 3356900.

Der Hochwert entsprechend : 564216 und die 0 dazu = 5642160.

Diese Koordinaten legen eine eindeutige Position auf der Nordhalbkugel dar. Die Südhalbkugel soll uns hier auch nicht interessieren (obwohl es interessant ist, dass man hierüber überhaupt nicht nachgedacht, als das Koordinatensystem entstand).

Was bedeuten jetzt der Rechtswert und was der Hochwert?

Das Problem einer Kartenerstellung ist ganz einfach: die Erde ist rund und ein Ellipsoid. Eine Karte ist flach und normalerweise zweidimensional. Die Aufgabe besteht jetzt darin, einen Punkt auf dem Ellipsoiden in der Karte darzustellen. Dazu dient Gauß - Krüger.

Gauß hat alle diese recht komplizierten Umrechnung aus trigonometrisch sphärischen Punkten in eine Ebene mathematisch vorgerechnet (Wahnsinn, was der alles konnte). Krüger hat Anfang des Jahrhunderts die Methode in die Kartenwerke einfließen lassen. Beide Leistungen sind besonders hervorzuheben, da wir wahrscheinlich ohne diese Leistungen keine vernünftigen Karten hätten.

Wir sind immer noch bei den O2 – Koordinaten, die für die Homezone benötigt werden. Mit einem bestimmten Algorithmus kann man die Gauß-Krüger Koordinaten in die geographischen Koordinaten umrechnen. Ich habe dazu einen Algorithmus von Wortmann verwandt. Das unten abgebildete Bild zeigt die Umrechnung im PDA.

Wen es reizt, das einmal selbst zu programmieren, der kann es mit dem unten eingestellten Programmteil versuchen.
Zunächst wird die Unterroutine zum Berechnen der geographischen Daten gezeigt, wenn die Gauß – Krüger Daten vorliegen.

Private Sub gauss_krueger_nach_geographisch(hochwert, rechtswert)
Dim rm, e2, c, bI, bII, bf, co, g2, g1, t, fa, dl, gb, gl, grad, min, sek
Dim mKen As Integer
Dim pi, rho As Single
Dim rw, hw As Long pi = 4 * Atn(1)
rho = 180 / pi
rw = rechtswert
hw = hochwert
'Text5 = "HW:" & hw & vbCrLf & "RW:" & rw
e2 = 0.0067192188
c = 6398786.849
mKen = Int(rw / 1000000)
rm = rw - mKen * 1000000 - 500000
bI = hw / 10000855.7646
bII = bI * bI
bf = 325632.08677 * bI * ((((((0.00000562025 _
* bII + 0.00022976983) _
* bII - 0.00113566119) _
* bII + 0.00424914906) _
* bII - 0.00831729565) _
* bII + 1))
bf = bf / 3600 / rho
co = Cos(bf)
g2 = e2 * (co * co)
g1 = c / Sqr(1 + g2)
t = Tan(bf)
fa = rm / g1 gb = bf - fa * fa * t * (1 + g2) / 2 _
+ fa * fa * fa * fa * t * _
5 + 3 * t * t + 6 * g2 - 6 * g2 * t * t) / 24
gb = gb * rho
Text4 = FormatNumber(gb, 5)
dl = fa - fa * fa * fa * (1 + 2 * t * t + g2) / 6 + _
fa * fa * fa * fa * fa * _
(1 + 28 * t * t + 24 * t * t * t * t) / 120
gl = dl * rho / co + mKen * 3
Text3 = FormatNumber(gl, 5)
' Breite
grad = Int(gb)
sek = 60 * (gb - grad)
min = Int(sek)
sek = 60 * (sek - min)
Text1 = grad & "°" & min & "'" & FormatNumber(sek, 2) & Chr(34)
' Laenge
grad = Int(gl)
sek = 60 * (gl - grad)
min = Int(sek)
sek = 60 * (sek - min)
If Len(grad) < 2 Then grad = "0" & grad
Text2 = grad & "°" & min & "'" & FormatNumber(sek, 2) & Chr(34)
End Sub

Der zweite Algorithmus bewirkt das Gegenteil. Hier werden geografische Daten eingegeben und Gauß_Krüger Koordinaten ermittelt.

Private Sub Command2_Click()
If InStr(Text3, "°") = 0 Or InStr(Text3, "'") = 0 Or InStr(Text3, Chr(34)) = 0 Or _
InStr(Text4, "°") = 0 Or InStr(Text4, "'") = 0 Or InStr(Text4, Chr(34)) = 0 Then _
MsgBox "Das Eingabeformat für die geographischen Koordinaten ist nicht erfüllt."_
+ vbCrLf + "Beispiel: 51°12'34" + Chr(34), vbCritical, "Hinweis": Exit Sub
Dim pi, rho As Single
pi = 4 * Atn(1)
rho = 180 / pi
Dim brDezimal, laDezimal, rm, e2, c, bf, g, co, g2, g1, t, dl, fa, grad, min, sek, sy
Dim rw, hw
sy = 3
e2 = 0.0067192188
c = 6398786.849
' in Dezimal
' Breite
grad = CInt(Mid(Text4.Text, 1, InStr(Text4.Text, "°") - 1))
min = CInt(Mid(Text4.Text, _
InStr(Text4.Text, "°") + 1, _
InStr(Text4.Text, "'") - InStr(Text4.Text, "°") - 1))
sek = (Mid(Text4.Text, _
InStr(Text4.Text, "'") + 1, _
InStr(Text4.Text, Chr(34)) - InStr(Text4.Text, "'") - 1))
brDezimal = grad + min / 60 + sek / 3600
' Laenge
grad = CInt(Mid(Text3.Text, 1, InStr(Text3.Text, "°") - 1))
min = CInt(Mid(Text3.Text, _
InStr(Text3.Text, "°") + 1, _
InStr(Text3.Text, "'") - InStr(Text3.Text, "°") - 1))
sek = (Mid(Text3.Text, _
InStr(Text3.Text, "'") + 1, _ InStr(Text3.Text, Chr(34)) - InStr(Text3.Text, "'") - 1))
laDezimal = grad + min / 60 + sek / 3600
bf = brDezimal / rho
g = 111120.61962 * brDezimal _
- 15988.63853 * Sin(2 * bf) _
+ 16.72995 * Sin(4 * bf) _
- 0.02178 * Sin(6 * bf) _
+ 0.00003 * Sin(8 * bf)
co = Cos(bf)
g2 = e2 * (co * co)
g1 = c / Sqr(1 + g2)
t = Sin(bf) / Cos(bf) '{=tan(t)}
dl = laDezimal - sy * 3
fa = co * dl / rho
hw = g + fa * fa * t * g1 / 2 _ + fa * fa * fa * fa * t * g1 * (5 - t * t + 9 * g2) / 24
rm = fa * g1 + fa * fa * fa * g1 * (1 - t * t + g2) / 6 _
+ fa * fa * fa * fa * fa * g1 * (5 - 18 * t * t * t * t * t * t) / 120
rw = rm + sy * 1000000 + 500000
Text1 = FormatNumber(rw, 0)
Text2 = FormatNumber(hw, 0)
End Sub

Mit diesem Programm werden die geografischen Daten in zwei verschiedenen Formen angezeigt: Zum einen in Grad, Minuten und Sekunden (Map&Guide) und in der dezimalen Form, wie sie z. B. bei (MapPoint) angezeigt werden.

Die Umrechnung ist eigentlich keine Geheimwissenschaft, jedoch wird sie benötigt, da nicht alle Systeme auf dem gleichen Standard arbeiten. Macht aber nichts – das Programm kann beide Standards erfüllen.

Befragt man das Programm über ‚Info’ nach den vorgegeben Koordinaten, so kommt die Auskunft: Kölner Dom – Koordinaten.

Die Koordinaten dafür wurden aus einer Planersoftware Marco Polo entnommen und sie sind so genau, wie die Software die Vektordaten interpretiert.

Ich hätte natürlich gerne die Parameter der Schnittstelle. Doch die verheimlicht man mir.
Klar – dann könnte man alles machen. Mit einer Karte des Landesvermessungsamtes kann man einen Mitschnitt machen, wenn man eine Tour unternimmt. Dieser Mitschnitt kann später wieder die Route einspielen. Ich hoffte, dass die Mitschnittdatei Auskunft über die Schnittstelle geben würde; doch alles ist so verschlüsselt dargestellt, dass man kaum etwas damit anfangen kann.

Die Idee ist jetzt nicht mehr weit weg. Wie wäre es, wenn man die ausgesendeten Koordinaten automatisch vom Handy in den PDA einliest und sie auf einer Karte darstellt. Damit hätte man ein zwar nicht hundertprozentig genaues – doch in der Stadt funktionierendes – Navigationssystem.
Die Grundlagen für ein solches System sind oben beschrieben und können jetzt in der nächsten Stufe betrachtet werden: der unten abgebildete Screenshot zeigt das Ergebnis. Der grüne Punkt zeigt die geografische Position der Antenne von O2 an, in der ich derzeit eingebucht bin. Es ist etwa 300 Meter Luftlinie entfernt. Ich kenne das Haus, auf dem die Antennen installiert wurden.

Beginnen wir mit der Interpretation des Screenshots. Die O2- Koordinaten sind im Textfeld ganz rechts zu sehen. Sie sind zwei mal 6 Zeichen lang, wie oben beschrieben. In dem hellblauen Feld werden die beiden Werte Hochwert und Rechtswert mit einer 0 ergänzt, um auf die siebenstellige Gauß – Krüger – Notation zu kommen. Im grünen Textfeld ist der entsprechend umgerechnete geografische Wert in Grad, Minuten, Sekunden zu erkenn.
Schließlich werden links im gelben Feld die geografischen dezimalen Werte errechnet.

Noch einmal zum Prinzip:

der PDA sendet an das Handy einen Befehl, dass das Handy die Cell Broadcast Informationen des Kanals 221 senden soll (at+cscb=1,““,“221“).

Der PDA empfängt diese Koordinaten (zwar im sogenannten PDU – Mode, der schauderhaft umzurechnen ist. Später mehr). Jetzt sind die aktuellen Gauß – Krüger – Werte im PDA. Durch einfache Rechenvorschriften können jetzt die Koordinaten in allen Variationen ermittelt werden.

Doch wie kommt man dazu, den grünen Punkt an der richtigen Stelle positionieren zu können? Natürlich muss das Kartenwerk dazu passen.
Die eingespielte Karte ist ‚selbstgemacht’ – sie wurde aus einem Planer kopiert. Es ist vorgesehen, dass die Karten im PDA 236 Pixel breit und 240 Pixel hoch sind.

Um navigieren zu können, muss man natürlich wissen, wie die Koordinaten in der Karte verteilt sind. Dazu wird hier angenommen, dass die linke obere Ecke und die rechte untere Ecke genügen, um alle Zwischenwerte darstellen zu können.

Man muss also aus der Planersoftware die geografischen Koordinaten der linken oberen Ecke und der rechten unteren Ecke ermitteln und aufschreiben. Zum Generieren der Karteninformationen habe ich ein Desktopprogramm geschrieben, das die Karten automatisch generiert.

Je nachdem, mit welchen Koordinatenarten man rechnen möchte, kann man die Daten für die Eckpunkte eingeben. Sie werden nach Gauß – Krüger – Koordinaten umgerechnet. Zwei Koordinatenpaare werden benötigt: Rechtswert und Hochwert der oberen linken Ecke und Rechtswert und Hochwert der rechten unteren Koordinate.
Es entseht ein 7 + 7 + 7 + 7 =28 Zeichen langer Wert, der die beiden Koordinaten enthält. Mit einem Trick werden die Daten hier direkt in die Karte eingebrannt. In der Zeile des Bildes (Zeile 0) wird der Wert binär versteckt. Jede Ziffer besteht aus Nullen und Einsen nach dem ASCII – Code.
Das Programm macht dies automatisch.

Im untenstehenden Screenshot des Programmes gauss_krueger_bitmap.exe ist die Methode im unteren Bildfeld zu erkennen. Lädt man jetzt eine Karte, so werden automatisch die Eckpunkte eingelesen.

Noch einmal: man benutzt eine Planer- oder Routensoftware und sucht sich den Ausschnitt aus, der später aktuell sein soll. Die Kartendaten sollten 236*240 Pixel sein. Die linke obere Ecke sollte aus der Software möglichst genau mit den geografischen Daten ermittelt werden; ebenso die rechte untere Ecke. Beide Koordinatenpaare werden in die Software eingegeben und es wird entsprechend der Software verfahren.

Ob man unbedingt einen schwarzen Rahmen darumlegen muss, sei dahingestellt. Es empfiehlt sich jedoch. Sollte in der ersten oberen Zeile zufälligerweise ein Rotwert sein, so wird der später falsch interpretiert.

Das Bild wird schließlich gespeichert. Normalerweise ist die eingestellte Farbtiefe am Desktop zu hoch. Hier sind es 24 Bit oder 32 Bit, was unglaublich hohe Speicherwerte hervorruft. Das Programm speichert die Karte in der Qualität ab, wie sie in den Bildschirm - Einstellungen nachgesehen werden kann. Sinnvoll ist hier, dass man mit der Qualität zurückgeht. Mit 256 Farben kann man normalerweise leben.

Der Knopf ‚256 Farben’ ruft MSPAINT.EXE auf – wenn es denn klappt und das Programm auch an der richtigen Stelle platziert ist. Bei mir klappt es – doch das will nichts heißen.

Sollte es nicht funktionieren, so kann man natürlich per Hand diesen Farbanpassungsvorgang vornehmen: PAINT starten , die abgespeicherte Karte laden und mit Speichern unter ... eine 256 Farben – Bitmap erzeugen. Diese kann dann in PDA eingeladen werden. (Natürlich geht auch bei den entsprechenden PDA ’s eine 65535 er Grafik – doch die Files werden schnell sehr groß.)

Ich habe ein paar Karten nach dieser Methode gebaut. Natürlich kann ich nicht für jede Stadt eine Karte erstellen. Dies sollte von den Lesern nachgeholt werden, die für Ihren Bereich die Karten codieren. Vielleicht entsteht daraus eine neue Karten - Community.

Vorhanden ist natürlich Köln:

Mit der Deutschlandkarte kann man mal probieren, ob es funktioniert. Irgendwo müsste der grüne Punkt dann zu finden sein.

Das nächste Beispiel ist für Hannover.

Was kann man jetzt damit anfangen?

Es ist zunächst einmal eine schöne technische Spielerei, die die Kunden von O2 kostenlos nutzen können Zum anderen kann man es tatsächlich zur Grobortung einsetzen. In dem unteren Bild ist eine Fahrt mit dem Bus aus dem Kölner Süden in die Innenstadt aufgezeichnet. Die grünen Koordinaten entsprechen in etwa dem Verlauf der Strecke.

Man könnte auch einen Gedanken schnell realisieren, den man schon öfter hörte, wo jedoch die Realisation offenbar noch auf sich warten lässt.
Die Kinderortung. Ein Ensemble aus Handy und billigem SW – PDA kann man so programmieren, dass eine SMS versendet wird, wenn das Kind die Heimatantenne verlässt.

Man könnte es sicherlich auch so programmieren, dass man das Kinderhandy anruft und man erfährt die Koordinaten.

Mit dem Programm kann einiges ausgewählt werden. Zunächst einmal muss man sich entscheiden: Infrarot oder seriell per Kabel.
Mit der ‚Handyortung ausschalten’ wird der Timer angehalten, der ständig die Daten aus dem Handy holt.
‚CB – Empfang initialisieren’ muss man am Anfang einmal aufrufen; nach einem Neubooten des Handys ist dies auch notwendig.
Mit ‚Handyortung ausschalten’ werden Daten der Cell Broadcast Kanäle nicht mehr an den Speicher geschickt. Mit ‚Aktualisierung’ kann man das Updateintervall einstellen.
Stellt man dies auf 10 Sekunden z.B., so wird alle 10 Sekunden das Handy nach neuen Daten befragt.

Unter dem Menüpunkt ‚Koordinaten’ kann man z. B. einen Logfile abspielen. Unter Logfile verstehe ich einen Mitschnitt verschiedener Koordinaten, wie oben gezeigt.

Unter ‚Logfile starten’ wird eine Datei für diese Koordinaten angelegt.
Die Datei setzt sich aus dem Datum zusammen. Es kommt zum Beispiel eine Meldung, wie im unteren Bild zu sehen. Abgespeichert werden nur neue Antennendaten.

Schaltet man das Gerät aus und beginnt irgendwann am selben Tag eine neue Messung, so werden die Daten an die bestehende Tagesdatei angehängt.

Will man das nicht, so muss man die bereits bestehende Datei löschen.

Unter dem Menüpunkt ‚O2-Koordinaten eingeben’ kann man die Daten aus dem Handydisplay in das Programm eingeben, wie unten zu sehen ist.

Hat man den richtigen Kartenbereich geladen, so wird die Antennenposition als grüner Punkt angezeigt. Die vorgegebenen Defaultdaten sind die Gauß – Krüger Koordinaten, die ich bei mir im Büro empfange.
Die zugehörige Antenne steht auf dem WDR – Haus Am Berlich.

Der Menüpunkt ‚Karte laden’ führt dazu, dass ein Listfeld aufgeht, das die möglichen Karten anzeigt. Durch das Anklicken der entsprechenden Karte wird sie geladen.

Mit ‚Liste ausblenden’ kann man die Listbox verschwinden lassen, ohne dass etwas passiert.

‚Mit Kartenkoordinaten anzeigen’ werden die Gauß – Krüger – Koordinaten für die beiden Eckpunkte der eingespielten Karte angezeigt.

Ich habe oben angesprochen, dass man die Daten aus dem Handy herausholt. Es war für mich ganz klar, dass dieses kein Problem darstellen würde. Doch dann saß ich schon länger an der Lösung. Ich wusste, dass es geht, denn das Monitorprogramm von
www.nobbi.com
zeigt es im unteren Screenshot.

Hier sind die Gauß – Krüger – Daten zu erkennen. Die Darstellung zeigt nicht die Originalwerte von O2 an – hier wurde jeweils bereits eine ‚0’ angehängt, um auf realistische GK – Koordinaten zu kommen.

Ich will Ihnen die Erfolgsstory möglichst hautnah erzählen:

Wenn Sie noch mit Modems oder serieller Schnittstelle zu tun hatten, so werden Ihnen wahrscheinlich alle Begriffe zunächst – sagen wir einmal – komisch vorkommen.
Die Kommunikation zwischen Handy und PDA erfolgt über ein Modem im Handy und einem UART im PDA (seriell mit Kabel) oder über Infrarot (IRDA).
Damit das Modem (eigentlich sollte man ja der Modem sagen – weil: modulieren und demodulieren; der Modulierer und Demodulierer) richtig funktionieren kann, benötigt es genormte Befehle, die auch verstanden werde.

Es haben sich in der langen Zeit der Computerentwicklung Befehle durchgesetzt, die nach dem sogenannten Hayes – Standard aufgebaut sind. Dazu gehört ein Befehl, der quasi das a&o ist: at. At heißt abgekürzt attention. ‚Achtung jetzt kommt etwas’.

Was nun nach dem at gesendet wird, ist abhängig von dem Wunsch des Users. Sendet man ein einfaches ‚at’, so erhält man normalerweise ein ‚OK’ vom Modem zurückgesendet – will heißen: ich habe verstanden, fange an ....

Liest man die Modemspezifikationen für Siemenshandys (ich habe nur Siemenshandys – deshalb weiß ich nicht, wie andere im Detail funktionieren), so leitet man mit at+cscb=1,““,““ den Empfang aller Cell Broadcast Informationen ein.

Mein Erstaunen war groß: ich sendete und sendete – doch es kam nichts zurück. Ich verzweifelte und hatte keine Möglichkeit, jemanden zu befragen.

Erst nach zwei Tagen, nachdem ich ziemlich lustlos durch die Dokumentation blätterte, fiel mir ein Befehl auf, den ich zuerst nicht verstanden habe: at+cnmi=?. Es ist ein Befehl, der die Kommunikation regelt – u.a. auch, was mit den Cell Broadcast - Informationen passieren soll. Wo sollen sie hingeleitet werden?
Hier brachte dann plötzlich at+cnmi=1,0,2,0,1 den Erfolg.

Die Freude ist für denjenigen sehr groß, der noch nie etwas mit dem sogenannten P DU (ich wusste einmal, was es heißt) zu tun hatte. Ein wahnsinniges Protokoll. Hier werden 7 Bit in einem Byte versteckt, so dass das 8.Bit bereits zum zweiten Byte gehört. Verstanden? Damit kommt man auf ca. 13 Prozent Einsparung.

Die Koordinaten sind in dem unten zu sehenden Protokoll versteckt.

Wendet man die entsprechende PDU – Umwandlung an (siehe mein Programm unter wdrcc.de/ downloads), so liest man die O2 – Koordinaten.

P.S. Bevor ich es vergesse: ich habe mir bei O2 eine Prepaid – Karte geholt, um an die Koordinaten heranzukommen. Bis ich die Karte für 28 € mit Guthaben 13 € in der Hand hatte, musste ich meinen Personalausweis vorlegen. Ist ja O.K.
Jetzt geht es aber weiter: als Loop – Kunde kann ich die Karte im Internet verwalten – wie viel ist drauf usw. Da ich jetzt Loop-Kunde war, wollte ich dies.

Ich bekam bei der Anmeldung auch eine SMS zugesandt, dass ich jetzt über 0179xxxx meine Daten nennen sollte. Nein – das wollte ich nicht – ich hatte ja meinen Personalausweis hingelegt.

Jetzt geht es weiter: plötzlich bekam ich eine SMS: „Sie müssen sich registrieren, sonst müssen wir Sie innerhalb von 48 Stunden abschalten“.
Ich ging in den Shop in der Nähe des WDR und fragte nach: „ja, da ist was doppelt angemeldet worden – die eine Anmeldung hat freigeschaltet, die andere wusste nichts davon“ oder so ‚ Fehler im System’.

Ich frage mich, wie es Kunden geht, die nicht so auftrumpfen können wie ich, die vielleicht auf dem Lande leben und zur Reklamation nach Köln fahren müssen – oder teure Gespräche über 0179xxx führen müssen. Aber warum dieses PS?

Gerade wurde ich erfolgreich freigeschaltet bei LOOP, bei denen ich nur die Koordinaten wissen will und nie ein Telefonat führen werde – eine SMS wurde geschickt.

Zur Realisation:
Wenn man die Infrarotschnittstelle nutzen will, so entstehen keine großen Probleme – wenn das Handy mitspielt. Offenbar gibt es hier verschiedene Standards in der IRDA – Kommunikation. Bei den Siemens Handys klappt es eigentlich prima. Bei einem Nokia – Modell hat es ebenfalls geklappt.

Will man das Datenkabel für die serielle Kommunikation verwenden, so muss man sich ein sogenanntes Nullmodem kaufen oder selbst basteln.
Das Nullmodem kann mit dem Anschluss von drei Drähten realisiert werden. Dabei ist darauf zu achten, dass die Empfangsleitung (RXD = Receive Data) und Sendeleitung (TXD = Transmit Data) gekreuzt sind.


So sehen die beiden DB9 - Stecker aus, die zusammengelötet wurden.


Brutzel, brutzel. Schön ist beileibe etwas anderes!

Wer dieses Programm ausprobieren möchte, der kann die Software hier laden:

Zur Seite mit der Software (www.wdrcc.de/pda.phtml)

Hinweis: den Beschreibungsfile benötigen Sie nicht. Da steht lediglich das drin, was Sie gerade gelesen haben. Aber: als Word.DOC - File und ist damit über 7 MB groß - wahnsinnige Datenvermehrung.

 
   

   © 2003 by Wolfgang Back •  info@wolfgang-back.com