===== Howto ===== ==== Serielles Kabel bauen ==== {{:project:usb.jpg|}} Ich (Gonium) verwende ein selbstgestricktes Kabel, um meinen Rechner mit dem C123 zu verbinden. Das Kabel besteht aus einem FTDI USB-Seriell-Adapterboard mit Arduino-Belegung, sprich: der Adapter kann auch zum Programmieren einiger Arduino-Clone verwendet werden. Wichtig ist, dass der Adapter auf 3.3V betrieben wird. Geeignet ist z.B. der USB-BUB von Modern Devices oder das Sparkfun FTDI Basic breakout board 3,3V (http://www.watterott.com/de/FTDI-Basic-Breakout-33V). Andere serielle Adapter sollen auch funktionieren. Dann verbindet man über eine kleine Platine das Breakout-Board mit dem Kopfhörerstecker: * TxD is at the tip of the plug (PC to Device) * RxD is at the middle contact (Device to PC) * GND is the outer contact Natürlich müssen RxD und TxD am Adapter gekreuzt werden. Reichelt verkauft 2,5"-Klinkenstecker, die zu groß für den Kopfhöreranschluss sind. Die sehen zwar aus, als ob sie wirklich Kontakt herstellen würden, aber das tun sie nicht - da fehlen dann etwa 2 mm. Lässt man die Plastikhülle des Steckers weg und feilt etwas Metall vom Stecker, geht es dennoch. Im Bild oben verhindert Heisskleber, dass die Kontakte sich berühren - gleichzeitig verleiht der Kleber dem Ganzen Stabilität. Im Bild unten sieht man, wie tief der Stecker in das Telefon geschoben werden muss, damit der Kontakt sicher hergestellt wird. Alternativ zur Bastelvariante kann man auch ein fertiges 2,5- auf 3,5mm Adapterkabel nehmen. Dann ist der Stecker klein genug und man kann ihn leichter wieder aus dem Telefon rausziehen. {{:project:klinke.jpg|}} Virtualisierte Maschinen funktionieren nicht, da das Timing des Bootloaders im C123 recht sensitiv ist. Also: Linux, nativ oder gar nicht. Kommt beim Bootloader ein Fehler, kann ein aus- und einstecken des FTDI helfen. ==== Die Software ==== Generell gilt: Erstmal im OsmocomBB-Wiki lesen. Die meisten Fragen sind dort bereits beantwortet. Der Crosscompiler aus dem Arch Linux-Repo ist kaputt, daher wirklich eine fertige Toolchain von GNUARM runterladen und installieren. Dann: [[http://bb.osmocom.org/trac/wiki/GettingStarted|GettingStarted]] folgen. Generell sind die Schritte die Folgenden: * execute ./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin in $base_dir/src/host/osmocon/ * execute ./mobile in $base_dir/src/host/layer23/src/mobile/ * execute telnet localhost 4247 to access the management interface * enter enable and press return Eine Konfigurationsdatei kann wie folgt angelegt werden: touch /etc/osmocom/osmocom.cfg ./mobile telnet localhost 4247 enable configure terminal write file Damit wurde dann die laufende Konfiguration in die Textdatei geschrieben, very Cisco-like. Bis dahin ist allerdings das Senden deaktiviert, und die SIM kann nicht ausgelesen werden. Für die meisten Anwendungen ist der Code so noch nicht brauchbar. Trotzdem: Das sollte man einfach mal durchexerzieren, um ein Gefühl dafür zu bekommen. ==== Startskripte ==== ===Layer 1=== #!/bin/sh cd src/host/osmocon/ echo "press power of cell phone to load layer1" sudo ./osmocon -d tr -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin | tee /tmp/layer1.log #-d tr #2>&1 ===Layer 2 & 3=== #!/bin/sh cd ./src/host/layer23/src/mobile ./mobile -i 127.0.0.1 -d 2>&1 | tee /tmp/mobile.log ===Wireshark=== #!/bin/sh -x nc -u -l 4729 > /dev/null & sudo wireshark -k -i lo -f 'port 4729' ==== Senden im GSM-Netz ==== Vorsicht! Es könnten $Dinge passieren. git checkout sylvain/testing TX aktivieren in /src/target/firmware/Makefile: # Uncomment this line if you want to enable Tx (Transmit) Support. CFLAGS += -DCONFIG_TX_ENABLE Der Code ist experimentell und kompilliert so nicht - die app "simtest" ist kaputt. Diese kann einfach am Anfang des Makefiles auskommentiert werden: # List of all applications (meant to be overridden on command line) APPLICATIONS?=hello_world compal_dsp_dump layer1 loader chainload #simtest SIM Reader aktivieren: ena l conf ; ms 1 ; no shutdown ; sim reader ; end ; end ; write Dann sollte das Telefonieren funktionieren. Siehe auch: [[http://bb.osmocom.org/trac/wiki/SIMReader]] ==== Random Hints ==== * Random IRC snippets, i.e.: Enable TX in sylvains branch 23:42 < Neodyn > what means "network not in list" What list ? 23:47 < xorAxAx > Neodyn: that means that TX is not enabled 14:12 < philipp > Hi, how can I get a list of ARFCNs in the neighboorhood that are curently used? (C123 with layer1 and layer23 are still working) 14:17 < jolly > philipp: try cell_log application. you will get a text file with received power levels and even with system informations. 01:20 < massoud_ > i am trying to get my c123 to run w/ my sim card 01:21 < massoud_ > mobile is giving "Mobile '1' initialized, please start phone now!" 01:21 < massoud_ > is there a config that should be set to enable the sim-reading ? 01:22 < dw_ > ena l conf ; ms 1 ; no shutdown ; sim reader ; end ; end ; write 01:22 < dw_ > s/ena l/ ena ;/ and press enter instead of typing the semicolon 01:23 < dw_ > thats to be typed into mobile's telnet interface Beschreibung eines kompletten Setups: [[http://blog.rot13.org/2011/01/osmocom-bb_-_free_software_finally_comes_to_gsm.html]] Toolchain für MacOS:http://stuge.se/macos-arm-none-eabi.tar.bz2