• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

CW und Freerunner

jennergruhle

Geoguru
Danke bubbas, für die Anpassung. Jetzt habe ich den Cachewolf auch auf meinem Freerunner zum Laufen gebracht. Nun muss ich mich erstmal auf dem Desktop-PC ein wenig einarbeiten, um das Programm dann auch auf dem Freerunner zu nutzen. Bisher habe ich nicht so recht den echten Nutzen gesehn - auf meinem SE P910i war das ja nicht lauffähig.
 

Bilbowolf

Geowizard
Nachdem das geklärt ist... wie zufrieden seid ihr mit dem Teil?

Ich habe irgendwo ein Test gelesen (ich glaube c't), dass das Ding noch zu sehr was für Geeks ist (nicht dass ich mich nicht dazu zähle). Also noch zu häufig abstürzt, etc. und so nicht für den Alltag zu gebrauchen ist. Wenn ich aber kaufe, dann möchte ich mein normales Telefon in den Ruhestand schicken...
 

Fragggy

Geonewbie
Ersteinmal Hallo zusammen.

Unter OM2008.10 habe ich CW dank eurer Tipps zum laufen bekommen. Allerdings nervt mich dort die Kompassdarstellung.

Unter Debian habe ich die Java Version auch hinbekommen, allerdings habe ich noch ein Probelm. Das GPS.
Generell funktionier GPS unter Debian super (TangoGPS zeigt mir meine Position sauber an)
Nur unter CW habe ich noch Probleme. Also Port habe ich in der config /dev/ttySAC1
eingetragen bei 9600baud.
Wenn ich nun auf die Kompass Ansicht wechsle und dort auf Start GPS gehe erhalte ich folgende Fehlermeldung:

Error
Could not connect to GPS-reciver
Error while opening serial Port
Please copy java-ewe.dll into the directory of the cachewolf program

Die Datei ist natürlich dort. Hat jemand eine Idee wo das Problem liegen könnte, da ja einige von euch diese Kombination schon am laufen haben.
 

Fragggy

Geonewbie
Code:
java.lang.UnsatisfiedLinkError: nativeCreate
        at ewe.io.SerialPort.<init>(SerialPort.java)
        at ewe.io.SerialPort.<init>(SerialPort.java)
        at CacheWolf.mySerialThread.<init>(GPSPortOptions.java:50)
        at CacheWolf.GPSPortOptions.action(GPSPortOptions.java:219)
java.lang.UnsatisfiedLinkError: nativeCreate
        at ewe.io.SerialPort.<init>(SerialPort.java)
        at ewe.io.SerialPort.<init>(SerialPort.java)
        at CacheWolf.mySerialThread.<init>(GPSPortOptions.java:50)
        at CacheWolf.GPSPortOptions.action(GPSPortOptions.java:219)
        at ewe.io.SerialPortOptions.action(SerialPortOptions.java)
        at ewe.ui.Editor.fireFieldEvent(Editor.java)
        at ewe.ui.Editor.fireFieldEvent(Editor.java)
        at ewe.ui.Editor.onControlEvent(Editor.java)
        at ewe.ui.Control.onEvent(Control.java)
        at ewe.ui.CellPanel.onEvent(CellPanel.java)
        at ewe.ui.Form.onEvent(Form.java)
        at ewe.ui.Control.postEvent(Control.java)
        at ewe.ui.Control.notifyAction(Control.java)
        at ewe.ui.ButtonControl.fullAction(ButtonControl.java)
        at ewe.ui.ButtonControl.fullAction(ButtonControl.java)
        at ewe.ui.ButtonControl.penReleased(ButtonControl.java)
        at ewe.ui.Control.penClicked(Control.java)
        at ewe.ui.Control.onPenEvent(Control.java)
        at ewe.ui.Control.onEvent(Control.java)
        at ewe.ui.Control.postEvent(Control.java)
        at ewe.ui.Window.doPostEvent(Window.java)
        at ewe.ui.Window$windowThread.run(Window.java)
        at ewe.sys.mThread.run(mThread.java)
        at ewe.sys.Coroutine.run(Coroutine.java)

Und hier noch ein auszug aus der config:

Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<preferences>
    <locale language="AUTO"/>
        <basedir dir = "/root/cachewolf/cache/"/>
    <lastprofile autoreload="true">Dennis</lastprofile>
        <alias name ="" password="" />
        <alias2 name =""/>
        <browser name = ""/>
        <proxy prx = "" prt = "" active = "false" />
        <port portname = "../dev/ttySAC1" baud = "9600"/>
        <portforward active= "false" destinationHost = "192.168.1.15"/>
        <portlog active= "false" logTimer = "5"/>
    <font size ="16"/>
    <screen menuattop="true" tabsattop="true" showstatus="true" hasclosebutton="true"/>
    <fixedsip state = "false"/>
    <listview colmap="0,1,2,3,4,5,6,7,8,9,10,11,12" colwidths="15,20,20,25,92,177,144,83,60,105,50,104,22,30,30,30,30,30,30,30,30,30,30,30,30,30,30" />
    <travelbugs colmap="1,4,5,6,8,9,10,7" colwidths="212,136,62,90,50,56,90,38,50,50,94,50" shownonlogged="false" />
    <descpanel showimages="true" />
    <imagepanel showdeletedimages="true"/>
    <hintlogpanel logsperpage="5" initialhintheight="10"  maxspiderlogs="250" />
    <solver ignorevariablecase="true" degMode="true" />
    <garmin connection = "com1" GPSBabelOptions = "" MaxWaypointLength = "0" />
    <opencaching downloadPicsOC="false" downloadMaps="true" downloadMissing="false"/>
        <location lat = "61.00000" long = "-361.00000"/>
    <spider forcelogin="true"/>
    <gotopanel northcentered="true" />
    <details cacheSize="50" delete="5"/>
</preferences>

Ich habe gerade mal mit fso getestet auch da bekomme die die GPS Koordinaten sauber angezeigt :(
 

MiK

Geoguru
Ich meinte zwar im Ausgabefenster des Dialogs. Aber das zeigt wohl das das Problem tiefer liegt.
 

Fragggy

Geonewbie
Für mich ließt sich das, als wenn es ein Problem mit ewe geben würde, die dll ist allerdings vorhanden und auch sonst läuft eigentlich alles sauber.
 

MiK

Geoguru
Ich weiß nicht, ob der Zugriff aufs GPS unter Linux überhaupt jemals funktioniert hat.
 

Fragggy

Geonewbie
Doch doch im mit dem OM2008 Image geht es ohne Probleme. NUr da ist irgendwas mit GTK faul, so das die Schrift im Kompass den Bildschirm sprengt.
 

jennergruhle

Geoguru
Jippiiiiee! Habe gerade den ersten Nacht-Multi mit Cachewolf auf dem FreeRunner gefunden. War sehr zufrieden, nur wenige Dinge gab es zu bemängeln:

- beim Wechseln von Liste zu Details vergehen ca. 8-12 Sekunden
- Beim Schreiben von Notes sind die ersten 4-5 Zeilen nicht mehr zu sehen, wenn man das qwerty-Keyboard aktiviert
- wie schon beschrieben - am Goto-Panel ist die Schrift mordsfett, alles ist unlesbar und keine Zielnavi möglich.

Punkt 1 ist nicht soooo schlimm und Punkt 2 kann man dadurch umgehen dass man erst 4-5 Leerzeilen reinhaut. Nur Punkt drei nervt sehr. Da ich den Quelltext aus dem SVN gezogen habe, konnte ich gleich mal nachsehen - im GotoPanel wird die Schriftgröße hart kodiert:

final static Font BOLD = new Font("Arial", Font.BOLD, 14);

Da muss wohl eher ein Konfig-Parameter für die Schriftgröße herangezogen werden:

final static Font BOLD = new Font("Arial", Font.BOLD, Global.getPref().fontSize);

Ich werde mal das Class-File austauschen und sehen, ob's das bringt.
Aber ansonsten war ich mit dem Programm sehr zufrieden, so ganz allein im dunklen Wald...
 

jennergruhle

Geoguru
Mift! Da gibt's ja gar kein JAR! Wo zur H*lle stecken denn dann die Classfiles drin??
Muss ich jetzt ein irre kompliziertes make anwerfen?
 

pfeffer

Geowizard
ne, Du musst nur in freewrtsnapshot.sh gucken, wie man die .jnf verwendet, um die cachewolf.ewe zu erzeugen.

Gruß,
Pfeffer.
 

jennergruhle

Geoguru
Darin steht
Code:
programs/Jewel.ewe -c cw-pda.jnf
, aber das kann nicht funktionieren, weil Jewel.ewe weder ein Shellskript noch ein ELF-Binary ist. Womit startet man denn ewe-Dateien, und was ist das überhaupt für ein Fileformat? Ich kenne sonst aus der Java-Entwicklung nur jar-Files, welche mit mit Java aufrufen kann, und welche ZIP-gepackte Classfiles (+ Ressourcen usw.) enthalten.

Aah, jetzt seh ich, da steht
Code:
test -n "$EWE" || EWE=$(which ewecl)
...
$EWE programs/Jewel.ewe -c cw-pda.jnf
$EWE programs/Jewel.ewe -c cw-pc.jnf
Also wird ein binary für ewe gesetzt, das mir wohl fehlt. Was zur Hölle ist Ewe (ja, auch eine westafrikanische Sprache, aber sonst)?
 

pfeffer

Geowizard
Ewe ist eine Virtuelle Maschine, die in irgendeinem Sinn zu Java kompatibel ist.
.ewe-Files sind sowas ähnliches wie .jar-Files, sie sind aber für die Ewe-VM optimiert (ist quasi ein Speicherabbild).

läuft auf dem freerunner nicht ein .ewe?

guck mal auf www.ewesoft.com - dort ist es alles über ewe erklärt.

Gruß,
Pfeffer.
 

MiK

Geoguru
jennergruhle schrieb:
Da ich den Quelltext aus dem SVN gezogen habe, konnte ich gleich mal nachsehen - im GotoPanel wird die Schriftgröße hart kodiert:

final static Font BOLD = new Font("Arial", Font.BOLD, 14);

Da muss wohl eher ein Konfig-Parameter für die Schriftgröße herangezogen werden:

final static Font BOLD = new Font("Arial", Font.BOLD, Global.getPref().fontSize);
Damit wirst Du nicht viel Glück haben. Die dort definierte Schrift wird nicht für den Text um die Kompassrose benutzt. (Wahrscheinlich sogar überhaupt nicht mehr.) Die Schriftgröße wird weiter unten aus der Fensterbreite berechnet und ist so gewählt, dass es sich auf den meisten Bildschirmen gut einpasst. Welche Auflösung hat Dein Gerät?
 

jennergruhle

Geoguru
OK, die Doku zu Ewe les ich mir morgen durch. Jetzt habe ich noch etwas den Doku-Wildwuchs durchgesichtet (den sollte man auch mal auf Deutsch machen - mein Eclipse spricht deutsch), und herausgefunden, dass ich NEBEN dem Cachewolf-Verzeichnis noch Ewe/programs mit den SDK-Dateien brauche und einmal getRes ausführen muss. Nun kann ich über die Shellskripte kompilieren, starten und die Binaries neu erstellen. Leider hat meine Font-Änderung in der pref.xml trotz meiner obigen Korrektur im Source nix gebracht - überall brauch ich ne Lupe, nur der Font im Goto-Panel ist noch kilometergroß. Offenbar werden die Texte auf das Panel geschrieben, ohne dass eine Fontgröße berücksichtigt wird...
 

jennergruhle

Geoguru
Während ich den vorigen Text noch schrieb, habe ich es schon mal provisorisch für mein Gerät geändert:
Code:
	public void doDraw(Graphics g,int options) {
		g.setColor(Color.White);
		g.fillRect(0, 0, location.width, location.height);

		int fontSize = Global.getPref().fontSize; 
		//int fontSize = location.width / 17;
		mainFont = new Font("Verdana", Font.BOLD, fontSize);
		g.setFont(mainFont);
Du hast recht, der andere Font namens BOLD kommt hier nicht zum Einsatz.

Das Display hat eine Auflösung von 480*640 Pixeln. Verdammt viel für so eine kleine Fläche (43 mm * 58 mm).
Die Berechnung der Fontgröße als Siebzehntel der Breite klappt hier absolut nicht, aber man braucht ja auch sonst viel kleinere Werte, z.B. 5 statt 16 pt.

Jetzt geht es erstmal so, aber besser ist wohl eine Konfig-Einstellung als Override, zum Beispiel
Code:
    <gotopanel northcentered="true" fontsize="5"/>
Dann hat man das Default-Handling, falls man nicht ein der prefs-Datei etwas anderes einstellt.

Das werde ich mal morgen einbauen und testen.
 

jennergruhle

Geoguru
So, ich hab's eingebaut und getestet.
Wenn keine Angabe für fontSize im gotopanel-Tag ist oder eine 0, wird automatisch berechnet, ansonsten die angegebene Größe genommen. Damit kann ich eine ansehnliche Größe einstellen.

Was meint ihr, wäre das so akzeptabel, oder sollten wir eher ein Flag à la "automaticFontSize" einführen und bei false dann die Größe angeben? Es werden ja auch immer alle Attribute der Preferences-Klasse zurückgeschrieben.
Oder wäre die Angabe des Teilerfaktors (bisher 17) besser?
 

pfeffer

Geowizard
Es sollte die Automatik so verbessert werden, dass sie auch bei Dir gute Ergebnisse liefert.

Gruß,
Pfeffer.
 
Oben