maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   [Announce] modRana: a flexible GPS navigation system (https://talk.maemo.org/showthread.php?t=58861)

rotoflex 2012-05-26 10:13

Re: [Announce] modRana: a flexible GPS navigation system
 
I do not really wish to make extra work for Martin who has done so much work already to make Modrana an excellent program, but it would be nice if in a future update that in options there was a picker or text entry box to set the location where tiles are stored.

As the collection of tiles increases, it really does seem better to move them to a memory card, & editing the config file seems to often to lead to typo problems, etc.

peterleinchen 2012-05-27 09:42

Re: [Announce] modRana: a flexible GPS navigation system
 
And even better put them in a loopback mounted file with less cluster size (each little tile uses 64KB on eMMC).
See here
Or consider using SQLite DB, MartinK?

MartinK 2012-05-27 11:14

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by cirodv (Post 1212553)
I'm facing serious problems when trying to batch download an area for my Google Map layer. Downloading "on the fly" is (almost) always efficient and fast, even via cellular network, but the batch downloading always fails - with few exceptions.

The reason is simple - Google doesn't like batch downloading and block further downloads once it is detected.

Quote:

Originally Posted by cirodv (Post 1212553)
My /home/user/.modrana/map_config.conf sets "http://mt1.google.com/vt/"
as the url where the Google Maps are supposed to live, but opening such an url with my browser gives the error message "Your client has issued a malformed or illegal request. That's all we know.". Is this the issue?

Nope, thats just the prefix used to build the URL, a valid one looks like this:

http://mt1.google.com/vt/lyrs=m@1770...pp&x=6&y=6&z=4

Quote:

Originally Posted by cirodv (Post 1212553)
A good solution could the Sqlite batch import scrip discussed at
http://modrana.org/trac/wiki/SQLiteT...rtPerlScriptEN.

Well, you still need to get tile tiles somewhere first. :)

Quote:

Originally Posted by cirodv (Post 1212553)
The problem here is that the perlscript mapconvert I've downloaded
from http://www.beermad.org.uk/mapconvert doesn't work in my linux box running Fedora: the error message is "install_driver(SQLite)
failed: Can't locate DBD/SQLite.pm in @INC (@INC contains:
/usr/local/lib/perl5 /usr/local/share/perl5 /usr/lib/perl5/vendor_perl
/usr/share/perl5/vendor_perl /usr/lib/perl5 /usr/share/perl5 .) at (eval 5)
line 3. Perhaps the DBD::SQLite perl module hasn't been fully installed,
or perhaps the capitalisation of 'SQLite' isn't right. Available drivers:
DBM, ExampleP, File, Gofer, Proxy, Sponge, mysql. at ./mapconvert line 24".

Which are the packages required? According to the listed dependencies, it seems that the rpm packages perl-DBI and perl-DBD-MySQL should meet the requirements, but, although I've installed them, I get the previous mentioned perl error message.

Thank you very much for any help.

Unfortunately, I don't have a Fedora installation at hand at the moment - well, you can try to just install everything with "sqlite" in name and check if it fixes the issue. :)

Quote:

Originally Posted by Ken-Young (Post 1212621)
Nevermind - I found the problem. The Network Usage option Only For Important Data had been set. Apparently downloading tiles is not considered important. Selecting Unlimited Use of Network fixed the problem.

Yeah, the naming should really be changed to be more descriptive.
Only For Important Data means that no map tiles are downloaded but online routing & search are still allowed.
So maybe "Routing & search only" would be a better name ?

Quote:

Originally Posted by rotoflex (Post 1212796)
I do not really wish to make extra work for Martin who has done so much work already to make Modrana an excellent program, but it would be nice if in a future update that in options there was a picker or text entry box to set the location where tiles are stored.

As the collection of tiles increases, it really does seem better to move them to a memory card, & editing the config file seems to often to lead to typo problems, etc.

OK, I'll have a look at it once I have some spare time, shouldn't be that difficult. :) IMHO, entry box is a better choice, as the default Hildon folder chooser is dog slow & doesn't usually show all available folders (does it even show invisible folders ?).

Quote:

Originally Posted by peterleinchen (Post 1213217)
And even better put them in a loopback mounted file with less cluster size (each little tile uses 64KB on eMMC).
See here
Or consider using SQLite DB, MartinK?

Already implemented. :) The modrana.org wiki has more more information about how it works. You can also use the (above mentioned) Perl script to import the tiles you have already downloaded to the database.

int_ua 2012-05-27 14:45

Re: [Announce] modRana: a flexible GPS navigation system
 
But the tiles location is shared between multiple map applications and if you use them to view the same location you will have the tiles stored twice, right?

cirodv 2012-05-27 19:25

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1213258)
The reason is simple - Google doesn't like batch downloading and block further downloads once it is detected.


Nope, thats just the prefix used to build the URL, a valid one looks like this:

http://mt1.google.com/vt/lyrs=m@1770...pp&x=6&y=6&z=4


Well, you still need to get tile tiles somewhere first. :)


Unfortunately, I don't have a Fedora installation at hand at the moment - well, you can try to just install everything with "sqlite" in name and check if it fixes the issue. :)


Yeah, the naming should really be changed to be more descriptive.
Only For Important Data means that no map tiles are downloaded but online routing & search are still allowed.
So maybe "Routing & search only" would be a better name ?


OK, I'll have a look at it once I have some spare time, shouldn't be that difficult. :) IMHO, entry box is a better choice, as the default Hildon folder chooser is dog slow & doesn't usually show all available folders (does it even show invisible folders ?).


Already implemented. :) The modrana.org wiki has more more information about how it works. You can also use the (above mentioned) Perl script to import the tiles you have already downloaded to the database.


Looks like Google Maps shouldn't be used when one needs to preload some areas (for instance before travelling abroad). Hoping
Google will change policy about that.

I got the point about the URL. My fault. My fault also the misinterpretation of mapconvert: I understood its aim was to download tiles off-line - typically on the PC.

rotoflex 2012-05-28 09:06

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by int_ua (Post 1213336)
But the tiles location is shared between multiple map applications and if you use them to view the same location you will have the tiles stored twice, right?

It is possible that many tend to use one map application - I do, anyway. It does seem like the default should continue to be the shared maps directory.

Then, if someone is using Modrana & really needs additional storage space, the option is there to move the tiles to a memory card. It would be ideal if the other map applications also made the tiles directory configurable, but all things can't be made ideal!

I just thought of another feature that might be useful - POI's with alarms. Since the GPS is on already, & you can enter POI's, it could be useful to associate an alarm with the POI so you don't drive past it. I would add POI's for speed limit change signs & set a bong sound in areas that I sometimes forget to to speed up or slow down in.

Ken-Young 2012-05-29 00:29

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1213258)
[...]
Yeah, the naming should really be changed to be more descriptive.
Only For Important Data means that no map tiles are downloaded but online routing & search are still allowed.
So maybe "Routing & search only" would be a better name ?
[...]

Yes, I think so. Or, if tiles are the only things not downloaded when Only For Important Data is selected, then perhaps it could be named Don't Download Tiles.

Thanks very much Martin, for maintaining this package; it's by far my favorite map program for the N900.

MartinK 2012-06-01 21:49

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by int_ua (Post 1213336)
But the tiles location is shared between multiple map applications and if you use them to view the same location you will have the tiles stored twice, right?

Yep, but:
Quote:

Originally Posted by rotoflex (Post 1213673)
It is possible that many tend to use one map application - I do, anyway. It does seem like the default should continue to be the shared maps directory.

Also if you use sqlite tile storage, there are so far no other navigation apps with support for the format other than modRana. This might change in the future as the format is open & documented here and the Cloud GPS developer mentioned having support for it on his roadmap.

Quote:

Originally Posted by rotoflex (Post 1213673)
Then, if someone is using Modrana & really needs additional storage space, the option is there to move the tiles to a memory card. It would be ideal if the other map applications also made the tiles directory configurable, but all things can't be made ideal!

I think most probably support this through their configuration files.

Quote:

Originally Posted by rotoflex (Post 1213673)
I just thought of another feature that might be useful - POI's with alarms. Since the GPS is on already, & you can enter POI's, it could be useful to associate an alarm with the POI so you don't drive past it. I would add POI's for speed limit change signs & set a bong sound in areas that I sometimes forget to to speed up or slow down in.

This is actually already a ticket for this from a long time ago. A new table in the POI database with rows bound to the POI ids would be needed. This table would store all the various alarms (more than one alarm per POI would be supported) & their metadata (distance, beep/spoken message, enabled/disabled, etc.). and you would have to assure that alarms are removed when a POI is deleted (this might be automatic given proper key arrangements are done in the database).

While I still think this is the proper way for implementing POI based alarms, your question got me thinking it there is another, more simple way how for handling alarms. :)

I asked myself a couple questions:
  • do the alarms need to be bound to POI after all ?
  • how to easily add an alarm without making a POI ?
  • how to make it easy for users to add many alarms at once (eq. with a script that generates them from a list of speed-limits/whatever) ?

Result: Plain-text alarm lists !
The alarms would be just stored in one or more plain-text files, one alarm per row with CSV notation.

Row notation might look like this:
Code:

lat;lon;distance;enabled;name;alert

51.178844,-1.826189;200;1;Stonehenge;Watch for the stones !

Explanation:
lat - latitude in decimal format
lon - longitude in decimal format
distance - trigger distance
enabled - 1 = enabled, 0 = disabled
name - displayed name
alert - any string other than BEEP or SAY would go directly to text-to-speech, BEEP triggers some default alarm sound, SAY: says whats after the colon (so you can SAY:BEEP :D)

What about elevation ?
A friend of mine is a glider pilot so the idea of 3D alarm coordinates has crossed my mind. Still, I want the format be as simple as possible (so that users can basically just generate the lists in excel/calc) and elevation would probably not bee needed 99% of the time. As a result, elevation support can be added in the future - probably into the distance field with some prefix (eq. ELEV:375,200)

How to add new alarms ?
There would be two ways: editing the alarm lists from the outside (just create a valid list and modRana will be able to use it) or interactively inside modRana (create new lists, add alarms from map/poi/coordinates, enabled/disable alarms, activate/deactivate alarm lists).

And now the most important thing:
What do you thing about this idea ?
  • did I forgot about some essential alarm parameter ?
  • any ideas for a better row format or an other technical solution overall ?
  • implementation/scalability concerns ?
  • or anything else ? :)

zimon 2012-06-01 22:37

Re: [Announce] modRana: a flexible GPS navigation system
 
The fact that sql-format of tiles database is documented and no other map application in N900 is using it, is IMO just a prove only modRana is actively developed and the best navigation software for N900. It is a shame the other map-application developers do not implement the sql-database system, which could be shared between applications.

I think I've installed all available map-, gps-, navigation- applications available for N900, but modRana is what I find most useful.

Estel 2012-06-02 00:47

Re: [Announce] modRana: a flexible GPS navigation system
 
IIRC, sqlite tile's database is on it's way for Marble too.

But, those whirlwind of development convinced me to try ModRana as well :) sounds like really nice tool.

/Estel

skykooler 2012-06-02 19:57

Re: [Announce] modRana: a flexible GPS navigation system
 
Really looking forward to location alarms! (Also, pilot here, would appreciate altitude alarms :) )

7thd 2012-06-02 23:04

Re: [Announce] modRana: a flexible GPS navigation system
 
Sailor here,
Altitude is not a real (measurable) issue on the water. I'd suggest the idea to add content that portrays the angle to the next waypoint (either a visual or a measurement in degrees). This could open the way for efficient tacking (going upwind). BTW, I could imagine this would be too major an alteration. On the other hand, such a feature could come in handy for land driving as well btw. (i.e. for visualizing the general direction).

Anyway, absolute distance to next waypoint, too, could be informative as well and/or alternatively (i.e. to mark the 90 degr. position to a buoy, although 90 degrees normally is 'late' for a tack).

Cheers, modRana already is very cool. As said, maybe what I said is reasonably undoable, but I just wanted to describe from sailor's point of view.

Wikiwide 2012-06-10 00:38

Re: [Announce] modRana: a flexible GPS navigation system
 
1 Attachment(s)
Quick message...
First, I have made it so that labels for POIs are not displayed if zoom level is smaller than 13: POIs are too close to each other, the labels become a useless mess, and besides, when the map is zoomed out enough, locations (continents, countries, et cetera) can be recognized without any labels at all. Though, '13' should be replaced with an option to be set through user interface.
I am also creating an amusing kind of POI. If description of a POI matches 'airport', then, instead of the green translucent circle, an over-simplified image of airplane is drawn. And, an 'airport' doesn't have any label at all, no matter what zoom level: the number of airports is small enough than an airport doesn't need it.
And, the bright blue dot is replaced with a changing-colour one: bright green if GPS isn't available, yellow if GPS gives large speed and large distance till the point, red if the speed is large and distance is small, green if the speed is small and distance is large, black if both speed and distance are small. Speed is compared to pedestrian's 5km/h, and distance is compared to one hour of travel at current speed.
By the way, is it true that POIs are drawn even when they are outside the screen? It can make drawing work for cairo context about ten-twenty-forty times larger.
I'm still wavering: to install CSSU or not... Thank you for ModRana.

MartinK 2012-06-12 11:09

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by skykooler (Post 1216536)
Really looking forward to location alarms! (Also, pilot here, would appreciate altitude alarms :) )

I think I'll just do it with elevation on the third place, to make the design cleaner and more future proof:
Code:

lat;lon;elevation;distance;enabled;name;alert
If elevation is empty, modRana would count the distance in 2D, if it is filled in, it would count the distance in 3D.

Quote:

Originally Posted by 7thd (Post 1216583)
Sailor here,
Altitude is not a real (measurable) issue on the water. I'd suggest the idea to add content that portrays the angle to the next waypoint (either a visual or a measurement in degrees). This could open the way for efficient tacking (going upwind). BTW, I could imagine this would be too major an alteration. On the other hand, such a feature could come in handy for land driving as well btw. (i.e. for visualizing the general direction).

Anyway, absolute distance to next waypoint, too, could be informative as well and/or alternatively (i.e. to mark the 90 degr. position to a buoy, although 90 degrees normally is 'late' for a tack).

So basically a mode, which takes into account the order of the alarm points and shows the angle to the next one ? BTW, I think I'm a bit confused about the context of the angle - could perhaps provide a simple sketch illustrating how it would work ?

Anyway, I thinks that such "sailing mode" mode might not be that difficult to add, once the general alarms are implemented. :)

Quote:

Originally Posted by Wikiwide (Post 1220060)
Quick message...
First, I have made it so that labels for POIs are not displayed if zoom level is smaller than 13: POIs are too close to each other, the labels become a useless mess, and besides, when the map is zoomed out enough, locations (continents, countries, et cetera) can be recognized without any labels at all. Though, '13' should be replaced with an option to be set through user interface.

Good idea ! You are right that the labels are not really usable at low zoomlevels and this handles the issue quite nicely. :)

Another possible, but more complicated future solution, would be to group nearby markers and just show a single marker with the label displaying the number of markers in the group. Clicking the label would show a list of the grouped marker or something similar.

Quote:

Originally Posted by Wikiwide (Post 1220060)
I am also creating an amusing kind of POI. If description of a POI matches 'airport', then, instead of the green translucent circle, an over-simplified image of airplane is drawn. And, an 'airport' doesn't have any label at all, no matter what zoom level: the number of airports is small enough than an airport doesn't need it.

Well, why not. :)

It would be good to add and "icon" column to the database so that POIs can have both an icon and a full description, but this should work in the meantime. :)

Quote:

Originally Posted by Wikiwide (Post 1220060)
And, the bright blue dot is replaced with a changing-colour one: bright green if GPS isn't available, yellow if GPS gives large speed and large distance till the point, red if the speed is large and distance is small, green if the speed is small and distance is large, black if both speed and distance are small. Speed is compared to pedestrian's 5km/h, and distance is compared to one hour of travel at current speed.

Oh, I've finally got it ! Like this, you know how accessible the points are from your position, with you current speed ? Nice idea ! :)

Quote:

Originally Posted by Wikiwide (Post 1220060)
By the way, is it true that POIs are drawn even when they are outside the screen?

Unfortunately yes, modRana just draws all points that were designated as visible, even if they are outside of the viewport. Also, I think the most costly is actually not the drawing but the calculations needed to compute the screen coordinates from the geographic ones and the distance, which currently happen every time the screen is redrawn.

Therefore, just looking what points should be visible doesn't help as you still have to iterate over all the points and check if they are visible, would not help due to all the unnecessary comparisons and coordinate conversions.

Of course, there is place for optimizations (the basic idea is to somehow reduce the number of points you have to work with at a time), the first one from the top of my head :
  • calculate the bounding box of the current viewport in screen coordinates (I think a bounding box represented by geographic coordinates might not actually be a rectangle)
  • then calculate a "border" bounding box, say 2x times larger
  • check what markers are in the "border" bounding box
  • as long as the viewport bounding box is inside the "border" bounding box, you can ignore markers that are outside
  • once you detect that the viewport bounding box is outside of the "border" bounding box, you recalculate a new "border" bounding box and check what markers are contained within

I'm sure there are also other ways how to optimize this. :)

Quote:

Originally Posted by Wikiwide (Post 1220060)
It can make drawing work for cairo context about ten-twenty-forty times larger.

I don't understand what you mean, can can you clarify ? :)

Quote:

Originally Posted by Wikiwide (Post 1220060)
I'm still wavering: to install CSSU or not... Thank you for ModRana.

I'm using it for quite some time already, without issues. Still, I remember the Saera developer mentioning some issues with the camera UI in CSSU.


Anyway, thanks for the changes ! :) I'll check them out & integrate them to the upstream source code in the coming days. :)

Wikiwide 2012-06-12 23:39

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1220862)
I think I'll just do it with elevation on the third place, to make the design cleaner and more future proof:
Code:

lat;lon;elevation;distance;enabled;name;alert
If elevation is empty, modRana would count the distance in 2D, if it is filled in, it would count the distance in 3D.

Good idea.
Quote:

Originally Posted by MartinK (Post 1220862)
Good idea ! You are right that the labels are not really usable at low zoomlevels and this handles the issue quite nicely. :)

Another possible, but more complicated future solution, would be to group nearby markers and just show a single marker with the label displaying the number of markers in the group. Clicking the label would show a list of the grouped marker or something similar.

Thank you. What about adding to each POI (or to each category of POI) additional options, such as zoom levels, or speed levels, or distance from POI, at which they will be displayed? Then some POIs, like bus stop, or bench, or shop, will disappear if you zoom out and look at the country, not at the city.

Quote:

Originally Posted by MartinK (Post 1220862)
Well, why not. :)

It would be good to add and "icon" column to the database so that POIs can have both an icon and a full description, but this should work in the meantime. :)

I was just a bit bored that all the different POI have the same appearance.
Quote:

Originally Posted by MartinK (Post 1220862)
Oh, I've finally got it ! Like this, you know how accessible the points are from your position, with you current speed ? Nice idea ! :)

It's probably nice, but it's a bit confusing, and requires adding some options into the interface.
Quote:

Originally Posted by MartinK (Post 1220862)
Unfortunately yes, modRana just draws all points that were designated as visible, even if they are outside of the viewport. Also, I think the most costly is actually not the drawing but the calculations needed to compute the screen coordinates from the geographic ones and the distance, which currently happen every time the screen is redrawn.

Therefore, just looking what points should be visible doesn't help as you still have to iterate over all the points and check if they are visible, would not help due to all the unnecessary comparisons and coordinate conversions.

Well, if the viewport is remembered somewhere in geographic coordinates, it's possible to compare POI with viewport without converting geocoordinates of POI into screen coordinates. But I see the point: it's better not to have POI visible until it's needed, because the computations will be happening either way.
Quote:

Originally Posted by MartinK (Post 1220862)
Of course, there is place for optimizations (the basic idea is to somehow reduce the number of points you have to work with at a time), the first one from the top of my head :
  • calculate the bounding box of the current viewport in screen coordinates (I think a bounding box represented by geographic coordinates might not actually be a rectangle)
  • then calculate a "border" bounding box, say 2x times larger
  • check what markers are in the "border" bounding box
  • as long as the viewport bounding box is inside the "border" bounding box, you can ignore markers that are outside
  • once you detect that the viewport bounding box is outside of the "border" bounding box, you recalculate a new "border" bounding box and check what markers are contained within

I'm sure there are also other ways how to optimize this. :)

Interesting idea. Is it possible to somehow make it so that POIs are redrawn only when the map is dragged, not every second?

Quote:

Originally Posted by MartinK (Post 1220862)
I don't understand what you mean, can can you clarify ? :)

Well... I meant that there might be only one-two-four POIs in the viewport, and about forty-fifty POIs altogether (visible, but outside the viewport), and redrawing all the POIs, even outside the viewport, sounds excessive.
Quote:

Originally Posted by MartinK (Post 1220862)
I'm using it for quite some time already, without issues. Still, I remember the Saera developer mentioning some issues with the camera UI in CSSU.

Anyway, thanks for the changes ! :) I'll check them out & integrate them to the upstream source code in the coming days. :)

Thank you for replying. But don't integrate everything, or the program might bloat... It's not an actually useful or necessary feature, except for hiding the POIs labels.

If the conversion of geo coordinates into screen coordinates depends only on zoom, and not on current position/viewport, then screen coordinates could be permanently stored within POI, changed only when POI's geo coordinates are changed, and retrieved from here when POI is drawn, instead of being recalculated each time.

Wikiwide 2012-06-14 07:33

Re: [Announce] modRana: a flexible GPS navigation system
 
3 Attachment(s)
Quick message...
Generally, I don't have Internet while on the move (or consider it expensive, or it is too slow). And, I generally don't want to depend on online services to help me with something which I could have done myself. Therefore, I have made a prototype offline routing: user gives one start, one end, and many middle points, and they are turned into a "route". Though, it could be developed by requiring text input for each middle point, so that the user would write the speeches for espeak - like, "turn left", "turn right", "bus stop", "train", and so on.
I would be grateful if you could integrate this into one of the next versions. Thank you.
Edit: obligatory text input for each middle point added. Though, I still haven't tested the system anywhere.
Edit: Small edit ensures that turn-by-turn navigation interface does indeed work with handmade route. But I'm not sure whether the values of distance-meters are correct here.
Edit: mod_route.turn.zip is the latest file. Two others couldn't support turn-by-turn navigation.
Best wishes to all of you.

gkuenning 2012-06-15 13:51

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by Wikiwide (Post 1221611)
Therefore, I have made a prototype offline routing: user gives one start, one end, and many middle points, and they are turned into a "route".

This is useful for more than just offline routing. I've been wanting a similar feature so I could route things like a long bike ride that does a loop and returns home.

So this is a vote for integration!

MartinK 2012-06-15 23:34

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by Wikiwide (Post 1221611)
Quick message...
Generally, I don't have Internet while on the move (or consider it expensive, or it is too slow). And, I generally don't want to depend on online services to help me with something which I could have done myself. Therefore, I have made a prototype offline routing: user gives one start, one end, and many middle points, and they are turned into a "route". Though, it could be developed by requiring text input for each middle point, so that the user would write the speeches for espeak - like, "turn left", "turn right", "bus stop", "train", and so on.
I would be grateful if you could integrate this into one of the next versions. Thank you.
Edit: obligatory text input for each middle point added. Though, I still haven't tested the system anywhere.
Edit: Small edit ensures that turn-by-turn navigation interface does indeed work with handmade route. But I'm not sure whether the values of distance-meters are correct here.
Edit: mod_route.turn.zip is the latest file. Two others couldn't support turn-by-turn navigation.
Best wishes to all of you.

WOW, that sounds interesting & useful ! :)
I've been working on CLI options for use by external program like (Saera) till now, so I'll check your changes next. :)
Anyway, thanks in advance ! :D

MartinK 2012-06-15 23:36

Re: [Announce] modRana: a flexible GPS navigation system
 
ModRana V0.32 has been release, with CLI interface imeprovements. Repost from the Saera thread:

ModRana now has quite a few new CLI options for use by Saera (and any other program or script):
Code:

usage: modrana.py [-h] [-d device ID] [-u GUI ID]
                  [--local-search search query]
                  [--local-search-location an address or geographic coordinates]
                  [--address-search an address]
                  [--wikipedia-search search query] [--return-static-map-url]
                  [--center-on-position] [--set-zl zoom level number]
                  [--center-on-position-on-zl zoom level number]
                  [--focus-on-coordinates geographic coordinates with the geo: prefix]

A flexible GPS navigation system.

optional arguments:
  -h, --help            show this help message and exit
  -d device ID          specify device type
  -u GUI ID            specify user interface type (GTK or QML)
  --local-search search query
                        specify a local search query EXAMPLE: "pizza"
  --local-search-location an address or geographic coordinates
                        specify a geographic location for a local search query
                        (current location is used by default), both addresses
                        and geographic coordinates with the geo: prefix are
                        supported; use "LAST_KNOWN_POSITION" to use last known
                        position EXAMPLE: "London" or
                        "geo:50.083333,14.416667" or LAST_KNOWN_POSITION"
  --address-search an address
                        specify an address search query EXAMPLE: "Baker Street
                        221b, London"
  --wikipedia-search search query
                        specify a local search query EXAMPLE: "Prague castle"
  --return-static-map-url
                        return static map URL for a CLI query (works for local
                        search, address and Wikipedia search)
  --center-on-position  focus on the current position & enable centering
  --set-zl zoom level number
                        set a zoom level EXAMPLE: 15
  --center-on-position-on-zl zoom level number
                        focus on current position on a given zoom level
                        EXAMPLE: 15
  --focus-on-coordinates geographic coordinates with the geo: prefix
                        focus on given coordinates, NOTE you can use --set-zl
                        to set zoom level, EXAMPLE: "geo:50.083333,14.416667"

Search
The search options work in two modes:

If --return-static-map-url is used, modRana loads only the most essential modules, handles the query and exits after printing the Url pointing to a static-map with the result to stdout.

If --return-static-map-url is not used, modRana starts normally and shows the search results.

Exit codes
If everything went fine, modRana returns 0, as expected.

If something went wrong, modRana exits with one of the codes below:
Code:

SYNTAX_ERROR = 2
SEARCH_NO_RESULTS_FOUND = 3
SEARCH_PROVIDER_TIMEOUT_ERROR = 4
SEARCH_PROVIDER_ERROR = 5
LOCAL_SEARCH_CURRENT_POSITION_UNKNOWN_ERROR = 6

Local search takes some time
When modRana does local search and no --local-search-location is specified, it starts the GPS and waits for up to 30 seconds for it to supply valid location coordinates.

If the current location is not determined within the 30 second time limit, modRana uses the last known position (if available).

Results
If more results are returned for --return-static-map-url, modRana just returns Url for the first one (this is also usually the result with the best accuracy).

It also shouldn't be difficult to add support for returning multiple results or to return coordinates or other information to stdout (maybe URL + result title ?).

Other supported options
It is also possible to set the zoom level, make modRana focus on a set of coordinates or center on current position.

Routing
There are not yet CLI options for routing, but will be added in near future. :)

How to use
Example - show address search result in GTK UI on zoom level 10:
Code:

python /opt/modrana/modrana.py -d n900 -u GTK --address-search "Prague" --set-zl 10
Example - return local search result at static map URL on default zoom level (15):
Code:

python /opt/modrana/modrana.py --local-search "pizza" --return-static-map-url
Feedback
Don't hesitate to let me know if you hit any issues or if you have any ideas for improvements. :)

Wikiwide 2012-06-16 09:38

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1222548)
WOW, that sounds interesting & useful ! :)
I've been working on CLI options for use by external program like (Saera) till now, so I'll check your changes next. :)
Anyway, thanks in advance ! :D

Unfortunately, I am going on a long, likely offline trip, so I will not update Modrana now - offline routing is more important for me now than CLI.
Thank you for looking into my supposed changes. :)

MartinK 2012-06-16 09:45

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by Wikiwide (Post 1222663)
Unfortunately, I am going on a long, likely offline trip, so I will not update Modrana now - offline routing is more important for me now than CLI.
Thank you for looking into my supposed changes. :)

Ok. :) Have a good trip ! :)

bocephus 2012-06-16 15:36

Re: [Announce] modRana: a flexible GPS navigation system
 
What could possibly be the problem if GPX tracks I have put in MyDocs/tracklogs don't show under modRana/menu/tracklogs? No matter what I put there, the two example tracks are the only ones visible. I just upgraded to V0.32.3, but it didn't work in the previous version either. Could there be something about the format? I've tried with GPX files saved with Mappero and GPX files converted from Google KML. But GPX is a standard in and of itself, is it not? And the files should at least show up in the modRana menu as long as they have the right name, should they not?

MartinK 2012-06-16 16:17

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by bocephus (Post 1222810)
What could possibly be the problem if GPX tracks I have put in MyDocs/tracklogs don't show under modRana/menu/tracklogs?

Did you put them into a folder ?
Code:

MyDocs/tracklogs/my_folder/my_tracklog.gpx
The my_folder folder should show up as a new category under Tracklogs and would contain an entry called my_tracklog.gpx. It list everything that has a .gpx extension, so even if the tracklog has wrong internal structure, it should at least show up here.

I agree that this is quite confusing, there should be at least an "import tracklog dialog" so that users can easily select a tracklog and modRana would then copy it to the correct folder. And also support for some basic operations, like moving between categories, renaming, deleting, etc.

bocephus 2012-06-18 09:58

Re: [Announce] modRana: a flexible GPS navigation system
 
1 Attachment(s)
MartinK: I did not put them in a subfolder, no. Figures I should've tried that. The GPX tracks do show up when put in a subfolder.

However, I still have the problem that they don't load properly... I have tried several different ones to try to figure out what could be wrong:

GPX tracks exported from ArcGIS - which is the Gold Standard when it comes to mapping software - will load, but modRana loads them incompletely. For instance, a gpx made up of several tracks will only display the track points and segments within the first <trk></trk> handle. Subsequent <trk> entries are ignored. If you want to take a look at it, I have attached an example of such a GPX file containing several tracks, where only the 3 points within the first track are loaded by modRana, but where ArcGIS, Google Maps and Mappero on the N900 all load the entire file. (It was too long to put in CODE tags, and I had to zip it to avoid "invalid file" message.)

On a side note, GPX files saved by Mappero will simply give a "loading tracklog failed" message. I would think this to be Mappero's fault, if it wasn't for the fact that I can accurately import Mappero gpx-tracks into ArcGIS or Google Maps without problem.

In fact, all my GPX tracks will display properly in Mappero, and their KML equivalents display properly in Marble.

I'm available if you want me to run some tests on your behalf.

MartinK 2012-06-18 21:32

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by bocephus (Post 1223570)
However, I still have the problem that they don't load properly... I have tried several different ones to try to figure out what could be wrong:

GPX tracks exported from ArcGIS - which is the Gold Standard when it comes to mapping software - will load, but modRana loads them incompletely. For instance, a gpx made up of several tracks will only display the track points and segments within the first <trk></trk> handle. Subsequent <trk> entries are ignored.

Good find! I took a quick look at the code and it seems it (well, I wrote it myself - about 2 years ago :)) really just takes the first segment.

Quote:

Originally Posted by bocephus (Post 1223570)
If you want to take a look at it, I have attached an example of such a GPX file containing several tracks, where only the 3 points within the first track are loaded by modRana, but where ArcGIS, Google Maps and Mappero on the N900 all load the entire file. (It was too long to put in CODE tags, and I had to zip it to avoid "invalid file" message.)

Thanks! :)

Quote:

Originally Posted by bocephus (Post 1223570)
On a side note, GPX files saved by Mappero will simply give a "loading tracklog failed" message. I would think this to be Mappero's fault, if it wasn't for the fact that I can accurately import Mappero gpx-tracks into ArcGIS or Google Maps without problem.

In fact, all my GPX tracks will display properly in Mappero, and their KML equivalents display properly in Marble.

The Upoints library/module is used to handle the GPX format, but not all of the available functionality is actually used/supported in modRana at the moment (Upoints even supports KML & other formats). So it is possible Mappero just uses some other part of the GPX format that modRana doesn't support yet (wpt ?).


Quote:

Originally Posted by bocephus (Post 1223570)
I'm available if you want me to run some tests on your behalf.

Thanks in advance !
It shouldn't be that difficult to fix the trackpoint-segment issue & look why the Mappero produced tracklog won't work. I'm quite busy at the moment (exams) but I should be able to get back at it (+merging in Wikiwides improvements) in a few days. :)

I'm looking forward for some serious stress testing of the GPX support in modRana from your side. :)

Wikiwide 2012-06-19 16:50

Re: [Announce] modRana: a flexible GPS navigation system
 
Quick message... Two unrelated bugs.
1. Ampersand in POI name. It needs to be stored as &amp; (I don't remember why, but single & generates an error), and then converted to & when displayed on screen.
2. Loading POIDetail module should be done not only when user goes through menu to points-of-interest, but also when remembered POIs are displayed on screen at startup, otherwise clicking a POI (without opening POIs menu first) causes black-screen-of-restarting-the-map.
Thank you.

droll 2012-06-28 02:28

Re: [Announce] modRana: a flexible GPS navigation system
 
now that google allows offline mode for google maps, it allows the device to download maps for an entire city. is that a new API that modrana can use because the existing offline / download mode in modrana is really slow (partly because google will detect if you're sucking up the maps and will block you).

any ideas?

zimon 2012-06-28 09:51

Re: [Announce] modRana: a flexible GPS navigation system
 
Just tried 1st time downloading offline maps to Android Google Maps (SGS3) and it really was quick. I wonder, if Google Maps marks those downloaded offline maps with device-ID or something, so if someone shares further those offline aps, (s)he will get caught? Or if I just want to use the same offline maps in N900 with some application.

edit:
Google Maps for Android (ICS) also allows to download route to offline use. But when testing it, I noticed if the size of the maps of an area exceeds 85 MB, it won't download but reports one must reduce the area.

7thd 2012-07-03 05:24

Re: [Announce] modRana: a flexible GPS navigation system
 
issue (multiboot stock kernel and 2.6.28.10-p50; CSSU1T; normal tiles)

-tracklogs do not follow actual path but a vector is drawn from start of tracklog to (whatever) current position

-tracklogs are (sometimes?) not shown until a color is chosen and at certain zoomlevels

I have this on both N900's I own. Reinstall or deletion of options.bin doesn't fix it. Would be happy to provide further data.

Evok 2012-07-03 08:25

Re: [Announce] modRana: a flexible GPS navigation system
 
A big 'Thank You' to Martin for modRana. It is just an awesome and fun to use APP.
I have a question which may have been addressed previously but I cannot find it....
In my installed apps, I have modRana QML which only opens a completely blank white screen with absolutely nothing on it. I have to end task to shut it down. Can anyone guide me with a solution to have it open correctly?
modRana itself is working perfectly......

MartinK 2012-07-04 09:55

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by Wikiwide (Post 1224265)
Quick message... Two unrelated bugs.
1. Ampersand in POI name. It needs to be stored as &amp; (I don't remember why, but single & generates an error), and then converted to & when displayed on screen.
2. Loading POIDetail module should be done not only when user goes through menu to points-of-interest, but also when remembered POIs are displayed on screen at startup, otherwise clicking a POI (without opening POIs menu first) causes black-screen-of-restarting-the-map.
Thank you.

Thanks ! :) Noted:
#191
#192
I also finally got to integrating your improvements, they will be part of the next release. :)

Quote:

Originally Posted by droll (Post 1228432)
now that google allows offline mode for google maps, it allows the device to download maps for an entire city. is that a new API that modrana can use because the existing offline / download mode in modrana is really slow (partly because google will detect if you're sucking up the maps and will block you).

any ideas?

Quote:

Originally Posted by zimon (Post 1228518)
Just tried 1st time downloading offline maps to Android Google Maps (SGS3) and it really was quick. I wonder, if Google Maps marks those downloaded offline maps with device-ID or something, so if someone shares further those offline aps, (s)he will get caught? Or if I just want to use the same offline maps in N900 with some application.

Really depends on the storage format, if its just a bunch of tile images with the standard scheme used by Google Maps and OpenStreetMap, they can be used right away. If it is stored in some kind of (encrypted ?) database, that would be a bit trickier. Can you check out the file format on your device ?


Quote:

Originally Posted by 7thd (Post 1230467)
issue (multiboot stock kernel and 2.6.28.10-p50; CSSU1T; normal tiles)

What does CSSU1T mean ? Is that CSSU Testing or Thumb ? For the record, I'm running on CSSU stable with Extras-Devel enabled.

Quote:

Originally Posted by 7thd (Post 1230467)
-tracklogs do not follow actual path but a vector is drawn from start of tracklog to (whatever) current position

-tracklogs are (sometimes?) not shown until a color is chosen and at certain zoomlevels

I have this on both N900's I own. Reinstall or deletion of options.bin doesn't fix it. Would be happy to provide further data.

There should be some errors in standard output. So just start modRana from the terminal:
Code:

modrana
And post the output. :)


Quote:

Originally Posted by Evok (Post 1230531)
A big 'Thank You' to Martin for modRana. It is just an awesome and fun to use APP.
I have a question which may have been addressed previously but I cannot find it....
In my installed apps, I have modRana QML which only opens a completely blank white screen with absolutely nothing on it. I have to end task to shut it down. Can anyone guide me with a solution to have it open correctly?
modRana itself is working perfectly......

ModRana QML is the new alternative GUI for modRana, based on Qt & QML. It is quite basic at the moment, but not really that basic (it does show a lot more than just a white screen :) ).

Do you have CSSU installed ? The QML GUI basically requires it to work correctly, as the Qt & PySide versions on stock PR 1.3 Fremantle are too old & buggy for it to work correctly.

Also, please try to start modRana QML from the terminal:
Code:

modrana-qml
And post the output. Thanks ! :)

7thd 2012-07-06 23:59

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1231630)
What does CSSU1T mean ? Is that CSSU Testing or Thumb ? For the record, I'm running on CSSU stable with Extras-Devel enabled...

CSSU 21.2011.38-1Tmaemo4 and CSSU 21.2011.38-1Tmaemo2.1
@MartinK - I've got extrasdevel enabled too, no other problems except for a missing "reject" button of the calling app (what I think isn't of influence). If you'd like me to flash and make an exclusive install of any of the cssu testing versions or any other reproduction pls let me know, it may take a while but I'd do my best. Issue: minimal number of trackpoints while tracklogging (2, 3 or 4 points).

@all - Could ya folks post experiences of tracklogging if in CSSU Testing setup?

Quote:

Originally Posted by MartinK (Post 1231630)
(...) There should be some errors in standard output....

I' m unaware where so I post a full run&exit while in between reproducing this issue: 2 Mins of tracklogging (3 points created).

Code:

~ $ modrana
 == modRana Starting ==
modRana: loading options
N900: dbus initialized
N900 device specific module initialized
 * device: A N900 modRana device-specific module (910.00 ms)
GTK GUI: size allocation <GdkRectangle at 0x333378>
error in screen invalidating functionexception: 'NoneType' object has no attribute 'invalidate_rect'
 * gui: A GTK GUI module (210.00 ms)
importing modules:
 * stats: Handles messages (10.00 ms)
 * units: a unit handling module  (0.00 ms)
 * tracklogManager: Module for managing tracklogs (20.00 ms)
 * notification: This module provides notification support. (10.00 ms)
 * showGPX: draws a GPX track on the map (10.00 ms)
 * config: Handle configuration, options, and setup (10.00 ms)
 @ mapTiles: map folder path: /home/user/MyDocs/.maps/
 * mapTiles: Display map images (410.00 ms)
 * icons: Draw icons (50.00 ms)
 * keys: A keyboard input handling module (0.00 ms)
 * menu: Handle menus (30.00 ms)
 * clickHandler: handle mouse clicks (0.00 ms)
 * mapData: Handle downloading of map data (50.00 ms)
 * example: A sample pyroute module (10.00 ms)
 * routeProfile: Creates a route profile (an elevation chart) (260.00 ms)
 * storeTiles: Single-file-fs tile storage (30.00 ms)
 * messages: Handles messages (0.00 ms)
 * loadTracklogs: A sample pyroute module (20.00 ms)
 * onlineServices: A module for talking to various online services (70.00 ms)
 * info: A modRana information handling module (0.00 ms)
 * showOSD: Draw OSD (On Screen Display). (10.00 ms)
 * textEntry: A module for handling text entry. (0.00 ms)
 * log: A modRana logging module (10.00 ms)
 * askMenu: A sample pyroute module (0.00 ms)
 * tracklog: Record tracklogs (20.00 ms)
 * search: Search for POI (10.00 ms)
 * animatedMapView: A sample pyroute module (10.00 ms)
 * markers: A module handling markers on the map. (10.00 ms)
 * updateTiles: Update stored map tiles. (0.00 ms)
 @ storePOI: POI database path:
 @ /home/user/MyDocs/.maps/modrana_poi.db
 @ storePOI: connection to POI db established
 * storePOI: Store POI data. (10.00 ms)
 * showPOI: Show POI on the map and in the menu. (0.00 ms)
 * display: A platform independent display device control module (0.00 ms)
 * sketch: Sketching functionality (10.00 ms)
 * options: Handle options (10.00 ms)
 * route: Routes (110.00 ms)
 * location: Supplies position info from a position source (10.00 ms)
 * positionMarker: A sample pyroute module (10.00 ms)
 * mapView: Controls the view being displayed on the map (10.00 ms)
 * input: Handle input from keyboard, buttons, etc. (10.00 ms)
 * voice: Handle text to speach. (30.00 ms)
 * turnByTurn: A turn by turn navigation module. (20.00 ms)
 * tileserver: A modRana built-in tileserver (30.00 ms)
 * projection: Projection code (lat/long to screen conversions) (10.00 ms)
 * interfaceFeedback: A sample pyroute module (10.00 ms)
 * cron: A GTK timing and scheduling module for modRana (0.00 ms)
Loaded all modules in 1380.00 ms, initialising
icons: switched theme to: ios
location: starting GPSD 1 second timer
location: enabling location
** n900 - location: - GPS successfully activated **
n900 - location: activated
display: keep display ON -> always
N900 rotation object initialized
N900: rotation object loaded
True
N900: key centred toggled
N900: key soundEnabled toggled
N900: application menu added
** making a list of available tracklogs
*  using this tracklog folder:
* /home/user/MyDocs/tracklogs
*  there are 100 tracklogs available
**
True
mapView: switching map drag mode to default
mapView: switching centering disable threshold to 2048
Initialization complete in 330.00 ms
** modRana startup timing **
# device: Nokia N900 (n900)
* modRana start (0 ms), 0/7466 ms
* imports done (667 ms), 667/7466 ms
* GUI creation (0 ms), 668/7466 ms
* window created (1576 ms), 2244/7466 ms
* map widget created (1 ms), 2245/7466 ms
* window finalized (87 ms), 2331/7466 ms
* all modules loaded (3478 ms), 5809/7466 ms
* all modules initialized (1656 ms), 7466/7466 ms
** whole startup: 7466 ms **
display: redraw ON (window not hidden or minimised)
TypeError: update() takes exactly 1 argument (2 given)
display: redraw ON (N900 window is active)
GTK GUI: size allocation <GdkRectangle at 0x47bf20>
icons:  not found
Clicked, sending menu:screenClicked
Clicked, sending set:menu:main
Clicked, sending set:menu:tracklog#tracklog
setting up tracklogTools menu
Clicked, sending tracklog:incrementStartIndex|tracklog:startLogging|set:needRedraw:True
starting to log
initializing the log file
tracklog: log_20120705#13-12-41.gpx
tracklog saved successfully
log file initialized
Clicked, sending tracklog:reset|set:menu:main
updating the log
saving log increment
tracklog: log_20120705#13-12-41.gpx
tracklog saved successfully
Clicked, sending set:menu:None
Clicked, sending menu:screenClicked
Clicked, sending set:menu:main
updating the log
saving log increment
tracklog: log_20120705#13-12-41.gpx
tracklog saved successfully
Clicked, sending set:menu:tracklog#tracklog
updating the log
Clicked, sending tracklog:stopLogging
stopping the logging
tracklog: log_20120705#13-12-41.gpx
tracklog saved successfully
** making a list of available tracklogs
*  using this tracklog folder:
* /home/user/MyDocs/tracklogs
*  there are 101 tracklogs available
**
Shutting-down modules

shutdown imminent, committing all uncommitted tiles
storeTiles: sqlite commit OK

all tiles committed, breaking, goodbye :)

mapTiles: automatic tile download management thread shutting down
storePOI: disconnecting from db
location: disabling location
n900 - location: stopping
modRana: saving options
modRana: options successfully saved
Shutdown complete

edit: I flashed my second n900 device to EMMC_By.MiDO.FaYad.8.giga.bin, + Vanilla PR1.3 kernel. Installed CSSU 21.2011.38-1Smaemo3 (as latest stable vers.).
Now modRana won't launch GPS (modR QML does OK )):confused:. I don't understand, that N900 is quite empty now...
Code:

~ $ modrana
== modRana Starting ==
modRana: loading options
modRana: module: device_n900/device failed to load
Traceback (most recent call last):
File "modrana.py", line 293, in _loadModule
a = __import__(importName)
File "/opt/modrana/modules/device_modules/device_n900.py", line 31, in <module>
import hildon
ImportError: No module named hildon
modRana: no device module name providedloading the Neo device module as fail-safe
* device: A Neo FreeRunner modRana device-specific module (0.00 ms)
GTK GUI: size allocation <GdkRectangle at 0x2ef738>
error in screen invalidating functionexception: 'NoneType' object has no attribute 'invalidate_rect'
* gui: A GTK GUI module (600.00 ms)
importing modules:
* menu: Handle menus (30.00 ms)
* tracklogManager: Module for managing tracklogs (0.00 ms)
* stats: Handles messages (10.00 ms)
* keys: A keyboard input handling module (0.00 ms)
* sketch: Sketching functionality (0.00 ms)
* askMenu: A sample pyroute module (0.00 ms)
onlineServices: using integrated non-binary simplejson, install proper simplejson package for better speed
* onlineServices: A module for talking to various online services (290.00 ms)
* tracklog: Record tracklogs (10.00 ms)
* markers: A module handling markers on the map. (0.00 ms)
* updateTiles: Update stored map tiles. (0.00 ms)
* search: Search for POI (10.00 ms)
* route: Routes (130.00 ms)
* showPOI: Show POI on the map and in the menu. (0.00 ms)
@ location: using GPSD
modules/mod_location/gps_daemon.py:171: Warning: 'with' will become a reserved keyword in Python 2.6
modRana: module: mod_location/location failed to load
Traceback (most recent call last):
File "modrana.py", line 297, in _loadModule
module = a.getModule(self.m, self.d, initInfo)
File "/opt/modrana/modules/mod_location/mod_location.py", line 25, in getModule
return(Location(m,d,i))
File "/opt/modrana/modules/mod_location/mod_location.py", line 50, in __init__
import gps_daemon
File "modules/mod_location/gps_daemon.py", line 171
with self.lock:
^
SyntaxError: invalid syntax
* loadTracklogs: A sample pyroute module (10.00 ms)
* voice: Handle text to speach. (0.00 ms)
* showOSD: Draw OSD (On Screen Display). (260.00 ms)
* notification: This module provides notification support. (10.00 ms)
* interfaceFeedback: A sample pyroute module (0.00 ms)
* routeProfile: Creates a route profile (an elevation chart) (0.00 ms)
* log: A modRana logging module (0.00 ms)
* storeTiles: Single-file-fs tile storage (20.00 ms)
* mapData: Handle downloading of map data (60.00 ms)
* animatedMapView: A sample pyroute module (10.00 ms)
* input: Handle input from keyboard, buttons, etc. (0.00 ms)
* info: A modRana information handling module (10.00 ms)
* turnByTurn: A turn by turn navigation module. (0.00 ms)
* positionMarker: A sample pyroute module (10.00 ms)
* tileserver: A modRana built-in tileserver (20.00 ms)
* clickHandler: handle mouse clicks (0.00 ms)
@ storePOI: POI database path:
@ /home/user/.modrana/poi/modrana_poi.db
@ storePOI: connection to POI db established
* storePOI: Store POI data. (0.00 ms)
* projection: Projection code (lat/long to screen conversions) (10.00 ms)
* display: A platform independent display device control module (0.00 ms)
* icons: Draw icons (220.00 ms)
* cron: A GTK timing and scheduling module for modRana (10.00 ms)
* showGPX: draws a GPX track on the map (0.00 ms)
* config: Handle configuration, options, and setup (10.00 ms)
* mapView: Controls the view being displayed on the map (10.00 ms)
@ mapTiles: map folder path: /home/user/.modrana/maps
* mapTiles: Display map images (160.00 ms)
* units: a unit handling module (10.00 ms)
* textEntry: A module for handling text entry. (0.00 ms)
* messages: Handles messages (0.00 ms)
* options: Handle options (10.00 ms)
* example: A sample pyroute module (10.00 ms)
Loaded all modules in 1400.00 ms, initialising
icons: switched theme to: default
** making a list of available tracklogs
* using this tracklog folder:
* /home/user/.modrana/tracklogs
* there are 3 tracklogs available
**
mapView: switching map drag mode to staticMapDrag
mapView: switching centering disable threshold to 2048
Initialization complete in 60.00 ms
** modRana startup timing **
# device: OpenMoko Neo FreeRunner (neo)
* modRana start (0 ms), 0/4170 ms
* imports done (322 ms), 322/4170 ms
* GUI creation (0 ms), 322/4170 ms
* window created (1093 ms), 1415/4170 ms
* map widget created (1 ms), 1416/4170 ms
* window finalized (12 ms), 1428/4170 ms
* all modules loaded (2519 ms), 3947/4170 ms
* all modules initialized (223 ms), 4170/4170 ms
** whole startup: 4170 ms **
display: redraw ON (window not hidden or minimised)
TypeError: update() takes exactly 1 argument (2 given)
icons: not found
GTK GUI: size allocation <GdkRectangle at 0x44fe48>
icons: not found
Shutting-down modules
storePOI: disconnecting from db

shutdown imminent, committing all uncommitted tiles
storeTiles: sqlite commit OK

all tiles committed, breaking, goodbye :)
modRana: saving options
modRana: options successfully saved

mapTiles: automatic tile download management thread shutting down
Shutdown complete

What can be so wrong/ different (f.i. from standard configuration of N900) ? Any do's & don'ts in these basics I'm completely ignoring?

Evok 2012-07-07 08:09

Re: [Announce] modRana: a flexible GPS navigation system
 
Reply to Martin RE:
ModRana QML is the new alternative GUI for modRana, based on Qt & QML. It is quite basic at the moment, but not really that basic (it does show a lot more than just a white screen :) ).

Do you have CSSU installed ? The QML GUI basically requires it to work correctly, as the Qt & PySide versions on stock PR 1.3 Fremantle are too old & buggy for it to work correctly.

Also, please try to start modRana QML from the terminal:
Code:

modrana-qml
And post the output. Thanks ! :)

Hi Martin, I did try to run from the terminal but still the completely white blank screen.(I was going to post the output from X-terminal but don't know how to save it as I only have FreOffice & it would not save the file? Which APP could I use to save the output?)
I then installed 'CSSU Features' but when started it shows "The Community SSU is not installed. Some features might not work correctly." Then a message "ERROR: Reading the configurations settings gave a FATAL ERROR while reading the gconf values. Not all settings are available. Exiting....."
Starting modRana QML still gives the completely white blank screen.
At one point the phone completely froze so I am a little concerned. Perhaps I should just live without QML and just continue to use modRana which works A-OK :confused:
Many thanks for your input

saponga 2012-07-07 08:27

Re: [Announce] modRana: a flexible GPS navigation system
 
Try this:
Quote:

Originally Posted by Evok (Post 1233258)

Code:

modrana-qml > log_modrana.txt
Which APP could I use to save the output?)

The output will be a simple .txt file.

Evok 2012-07-08 07:37

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by Evok (Post 1233258)
Reply to Martin RE:
ModRana QML is the new alternative GUI for modRana, based on Qt & QML. It is quite basic at the moment, but not really that basic (it does show a lot more than just a white screen :) ).

Do you have CSSU installed ? The QML GUI basically requires it to work correctly, as the Qt & PySide versions on stock PR 1.3 Fremantle are too old & buggy for it to work correctly.

Also, please try to start modRana QML from the terminal:
Code:

modrana-qml
And post the output. Thanks ! :)

Hi Martin, I did try to run from the terminal but still the completely white blank screen.(I was going to post the output from X-terminal but don't know how to save it as I only have FreOffice & it would not save the file? Which APP could I use to save the output?)
I then installed 'CSSU Features' but when started it shows "The Community SSU is not installed. Some features might not work correctly." Then a message "ERROR: Reading the configurations settings gave a FATAL ERROR while reading the gconf values. Not all settings are available. Exiting....."
Starting modRana QML still gives the completely white blank screen.
At one point the phone completely froze so I am a little concerned. Perhaps I should just live without QML and just continue to use modRana which works A-OK :confused:
Many thanks for your input

Here is (finally) the output..
Code:

BusyBox v1.10.2 (Debian 3:1.10.2.legal-1osso30+0m5) built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ $ modrana-qml > log_modrana.txt
Preloading theme "base" from cache
file:///opt/modrana/modules/gui_modules/gui_qml/qml/main.qml:13:19: Type MapPage unavailable
initialPage : MapPage {
^
file:///opt/modrana/modules/gui_modules/gui_qml/qml/MapPage.qml:20:5: Type PinchMap unavailable
PinchMap {
^
file:///opt/modrana/modules/gui_modules/gui_qml/qml/PinchMap.qml:422:5: PinchArea is not a type
PinchArea {
^
Killed
~ $

Perhaps this will help....

MartinK 2012-07-09 21:50

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by 7thd (Post 1233170)
I' m unaware where so I post a full run&exit while in between reproducing this issue: 2 Mins of tracklogging (3 points created).

Oh you meant creating tracklogs in modRana, not just displaying them. :) I remembered that there were some graphical glitches when I last tested track logging. I checked it out again and it seems to be actually quite broken:
#194
Code:

* logging trace is not shown on map until a color is selected
 * if a tracklog detail has been visited, the logging menu "tools" goes to tracklog detail "tools"
 * logging intervals seem to be ignored
 * tracklogs that are created seem to be corrupted or in wrong format

I'll try to do something about it. :)


Quote:

Originally Posted by 7thd (Post 1233170)
edit: I flashed my second n900 device to EMMC_By.MiDO.FaYad.8.giga.bin, + Vanilla PR1.3 kernel. Installed CSSU 21.2011.38-1Smaemo3 (as latest stable vers.).
Now modRana won't launch GPS (modR QML does OK )):confused:. I don't understand, that N900 is quite empty now...
Code:

~ $ modrana
== modRana Starting ==
modRana: loading options
modRana: module: device_n900/device failed to load
Traceback (most recent call last):
File "modrana.py", line 293, in _loadModule
a = __import__(importName)
File "/opt/modrana/modules/device_modules/device_n900.py", line 31, in <module>
import hildon
ImportError: No module named hildon
modRana: no device module name providedloading the Neo device module as fail-safe
* device: A Neo FreeRunner modRana device-specific module (0.00 ms)
GTK GUI: size allocation <GdkRectangle at 0x2ef738>
error in screen invalidating functionexception: 'NoneType' object has no attribute 'invalidate_rect'
* gui: A GTK GUI module (600.00 ms)
importing modules:
* menu: Handle menus (30.00 ms)
* tracklogManager: Module for managing tracklogs (0.00 ms)
* stats: Handles messages (10.00 ms)
* keys: A keyboard input handling module (0.00 ms)
* sketch: Sketching functionality (0.00 ms)
* askMenu: A sample pyroute module (0.00 ms)
onlineServices: using integrated non-binary simplejson, install proper simplejson package for better speed
* onlineServices: A module for talking to various online services (290.00 ms)
* tracklog: Record tracklogs (10.00 ms)
* markers: A module handling markers on the map. (0.00 ms)
* updateTiles: Update stored map tiles. (0.00 ms)
* search: Search for POI (10.00 ms)
* route: Routes (130.00 ms)
* showPOI: Show POI on the map and in the menu. (0.00 ms)
@ location: using GPSD
modules/mod_location/gps_daemon.py:171: Warning: 'with' will become a reserved keyword in Python 2.6
modRana: module: mod_location/location failed to load
Traceback (most recent call last):
File "modrana.py", line 297, in _loadModule
module = a.getModule(self.m, self.d, initInfo)
File "/opt/modrana/modules/mod_location/mod_location.py", line 25, in getModule
return(Location(m,d,i))
File "/opt/modrana/modules/mod_location/mod_location.py", line 50, in __init__
import gps_daemon
File "modules/mod_location/gps_daemon.py", line 171
with self.lock:
^
SyntaxError: invalid syntax
* loadTracklogs: A sample pyroute module (10.00 ms)
* voice: Handle text to speach. (0.00 ms)
* showOSD: Draw OSD (On Screen Display). (260.00 ms)
* notification: This module provides notification support. (10.00 ms)
* interfaceFeedback: A sample pyroute module (0.00 ms)
* routeProfile: Creates a route profile (an elevation chart) (0.00 ms)
* log: A modRana logging module (0.00 ms)
* storeTiles: Single-file-fs tile storage (20.00 ms)
* mapData: Handle downloading of map data (60.00 ms)
* animatedMapView: A sample pyroute module (10.00 ms)
* input: Handle input from keyboard, buttons, etc. (0.00 ms)
* info: A modRana information handling module (10.00 ms)
* turnByTurn: A turn by turn navigation module. (0.00 ms)
* positionMarker: A sample pyroute module (10.00 ms)
* tileserver: A modRana built-in tileserver (20.00 ms)
* clickHandler: handle mouse clicks (0.00 ms)
@ storePOI: POI database path:
@ /home/user/.modrana/poi/modrana_poi.db
@ storePOI: connection to POI db established
* storePOI: Store POI data. (0.00 ms)
* projection: Projection code (lat/long to screen conversions) (10.00 ms)
* display: A platform independent display device control module (0.00 ms)
* icons: Draw icons (220.00 ms)
* cron: A GTK timing and scheduling module for modRana (10.00 ms)
* showGPX: draws a GPX track on the map (0.00 ms)
* config: Handle configuration, options, and setup (10.00 ms)
* mapView: Controls the view being displayed on the map (10.00 ms)
@ mapTiles: map folder path: /home/user/.modrana/maps
* mapTiles: Display map images (160.00 ms)
* units: a unit handling module (10.00 ms)
* textEntry: A module for handling text entry. (0.00 ms)
* messages: Handles messages (0.00 ms)
* options: Handle options (10.00 ms)
* example: A sample pyroute module (10.00 ms)
Loaded all modules in 1400.00 ms, initialising
icons: switched theme to: default
** making a list of available tracklogs
* using this tracklog folder:
* /home/user/.modrana/tracklogs
* there are 3 tracklogs available
**
mapView: switching map drag mode to staticMapDrag
mapView: switching centering disable threshold to 2048
Initialization complete in 60.00 ms
** modRana startup timing **
# device: OpenMoko Neo FreeRunner (neo)
* modRana start (0 ms), 0/4170 ms
* imports done (322 ms), 322/4170 ms
* GUI creation (0 ms), 322/4170 ms
* window created (1093 ms), 1415/4170 ms
* map widget created (1 ms), 1416/4170 ms
* window finalized (12 ms), 1428/4170 ms
* all modules loaded (2519 ms), 3947/4170 ms
* all modules initialized (223 ms), 4170/4170 ms
** whole startup: 4170 ms **
display: redraw ON (window not hidden or minimised)
TypeError: update() takes exactly 1 argument (2 given)
icons: not found
GTK GUI: size allocation <GdkRectangle at 0x44fe48>
icons: not found
Shutting-down modules
storePOI: disconnecting from db

shutdown imminent, committing all uncommitted tiles
storeTiles: sqlite commit OK

all tiles committed, breaking, goodbye :)
modRana: saving options
modRana: options successfully saved

mapTiles: automatic tile download management thread shutting down
Shutdown complete

What can be so wrong/ different (f.i. from standard configuration of N900) ? Any do's & don'ts in these basics I'm completely ignoring?

Thats weird - this:
Code:

from __future__ import with_statement # for python 2.5
should be on the first line in /opt/modrana/modules/mod_location/gps_daemon.py. Maybe try to add it manually to see if it helps ?

It is actually rather weird that it works for anybody considering that line is missing. :)
I'll try to push a hot-fix ASAP, just in case.

EDIT:
Hotfix submitted, no need to manually edit anything, just update to V0.35.5 and try if GPS works. :)

Quote:

Originally Posted by Evok (Post 1233765)
Here is (finally) the output..
Code:

BusyBox v1.10.2 (Debian 3:1.10.2.legal-1osso30+0m5) built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ $ modrana-qml > log_modrana.txt
Preloading theme "base" from cache
file:///opt/modrana/modules/gui_modules/gui_qml/qml/main.qml:13:19: Type MapPage unavailable
initialPage : MapPage {
^
file:///opt/modrana/modules/gui_modules/gui_qml/qml/MapPage.qml:20:5: Type PinchMap unavailable
PinchMap {
^
file:///opt/modrana/modules/gui_modules/gui_qml/qml/PinchMap.qml:422:5: PinchArea is not a type
PinchArea {
^
Killed
~ $

Perhaps this will help....

This looks like outdated Qt version.
( the PinchArea is available in QML since Qt 4.7.4). Do you have CSSU installed ? From the log it looks like you are just running PR 1.3, which has only Qt 4.7.0. :)

Basically -> no, CSSU == no modRana QML (but you can still use modRana with the classic GUI just fine :) )

7thd 2012-07-11 05:13

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1234868)
Thats weird - this:
Code:

from __future__ import with_statement # for python 2.5
should be on the first line in /opt/modrana/modules/mod_location/gps_daemon.py.

Confirm V0.32.5 has it there (line 19).



Quote:

Hotfix submitted, no need to manually edit anything, just update to V0.35.5 and try if GPS works. :)
This has seemingly no effect. Version 0.32.5 git:0164ac5 doesn't launch GPS either. See code
Code:

$ modrana
== modRana Starting ==
modRana: loading options
modRana: module: device_n900/device failed to load
Traceback (most recent call last):
File "modrana.py", line 293, in _loadModule
a = __import__(importName)
File "/opt/modrana/modules/device_modules/device_n900.py", line 31, in <module>
import hildon
ImportError: No module named hildon
modRana: no device module name providedloading the Neo device module as fail-safe
* device: A Neo FreeRunner modRana device-specific module (0.00 ms)
GTK GUI: size allocation <GdkRectangle at 0x2ef738>
error in screen invalidating functionexception: 'NoneType' object has no attribute 'invalidate_rect'
* gui: A GTK GUI module (600.00 ms)
importing modules:
* menu: Handle menus (30.00 ms)
* tracklogManager: Module for managing tracklogs (0.00 ms)
* stats: Handles messages (10.00 ms)
* keys: A keyboard input handling module (10.00 ms)
* sketch: Sketching functionality (10.00 ms)
* askMenu: A sample pyroute module (0.00 ms)
onlineServices: using integrated non-binary simplejson, install proper simplejson package for better speed
* onlineServices: A module for talking to various online services (310.00 ms)
* tracklog: Record tracklogs (0.00 ms)
* markers: A module handling markers on the map. (20.00 ms)
* updateTiles: Update stored map tiles. (0.00 ms)
* search: Search for POI (0.00 ms)
* route: Routes (100.00 ms)
* showPOI: Show POI on the map and in the menu. (10.00 ms)
@ location: using GPSD
* location: Supplies position info from a position source (0.00 ms)
* loadTracklogs: A sample pyroute module (10.00 ms)
* voice: Handle text to speach. (0.00 ms)
* showOSD: Draw OSD (On Screen Display). (260.00 ms)
* notification: This module provides notification support. (0.00 ms)
* interfaceFeedback: A sample pyroute module (0.00 ms)
* routeProfile: Creates a route profile (an elevation chart) (0.00 ms)
* log: A modRana logging module (0.00 ms)
* storeTiles: Single-file-fs tile storage (30.00 ms)
* mapData: Handle downloading of map data (50.00 ms)
* animatedMapView: A sample pyroute module (0.00 ms)
* input: Handle input from keyboard, buttons, etc. (0.00 ms)
* info: A modRana information handling module (0.00 ms)
* turnByTurn: A turn by turn navigation module. (10.00 ms)
* positionMarker: A sample pyroute module (0.00 ms)
* tileserver: A modRana built-in tileserver (50.00 ms)
* clickHandler: handle mouse clicks (10.00 ms)
@ storePOI: POI database path:
@ /home/user/.modrana/poi/modrana_poi.db
@ storePOI: connection to POI db established
* storePOI: Store POI data. (10.00 ms)
* projection: Projection code (lat/long to screen conversions) (0.00 ms)
* display: A platform independent display device control module (10.00 ms)
* icons: Draw icons (210.00 ms)
* cron: A GTK timing and scheduling module for modRana (0.00 ms)
* showGPX: draws a GPX track on the map (10.00 ms)
* config: Handle configuration, options, and setup (10.00 ms)
* mapView: Controls the view being displayed on the map (0.00 ms)
@ mapTiles: map folder path: /home/user/.modrana/maps
* mapTiles: Display map images (150.00 ms)
* units: a unit handling module (0.00 ms)
* textEntry: A module for handling text entry. (10.00 ms)
* messages: Handles messages (0.00 ms)
* options: Handle options (10.00 ms)
* example: A sample pyroute module (10.00 ms)
Loaded all modules in 1370.00 ms, initialising
icons: switched theme to: default
location: starting GPSD 1 second timer
location: enabling location
('location GPSD: connecting to GPSD failed', error(111, 'Connection refused'))
** making a list of available tracklogs
* using this tracklog folder:
* /home/user/.modrana/tracklogs
* there are 2 tracklogs available
**
mapView: switching map drag mode to staticMapDrag
mapView: switching centering disable threshold to 2048
Initialization complete in 90.00 ms
** modRana startup timing **
# device: OpenMoko Neo FreeRunner (neo)
* modRana start (0 ms), 0/4361 ms
* imports done (333 ms), 333/4361 ms
* GUI creation (0 ms), 333/4361 ms
* window created (1080 ms), 1413/4361 ms
* map widget created (1 ms), 1414/4361 ms
* window finalized (11 ms), 1425/4361 ms
* all modules loaded (2590 ms), 4016/4361 ms
* all modules initialized (345 ms), 4361/4361 ms
** whole startup: 4361 ms **
display: redraw ON (window not hidden or minimised)
TypeError: update() takes exactly 1 argument (2 given)
icons: not found
GTK GUI: size allocation <GdkRectangle at 0x457398>
icons: not found
Shutting-down modules
storePOI: disconnecting from db
location: disabling location
location: stopping location failed GPSD instance has no attribute 'GPSDConsumer'

shutdown imminent, committing all uncommitted tiles
storeTiles: sqlite commit OK

all tiles committed, breaking, goodbye :)
modRana: saving options

mapTiles: automatic tile download management thread shutting down
modRana: options successfully saved
Shutdown complete
error in screen invalidating functionexception: 'NoneType' object has no attribute 'invalidate_rect'
~ $

----------------------------------------------------------------------

Quote:

#194
Cool, I'll be happy to wait for this fix. Tracklogging in my eyes is a top row feature of modRana

MartinK 2012-07-11 11:05

Re: [Announce] modRana: a flexible GPS navigation system
 
Oh, now I see it:
Code:

modRana: module: device_n900/device failed to load
Traceback (most recent call last):
File "modrana.py", line 293, in _loadModule
a = __import__(importName)
File "/opt/modrana/modules/device_modules/device_n900.py", line 31, in <module>
import hildon
ImportError: No module named hildon
modRana: no device module name providedloading the Neo device module as fail-safe

I checked the modRana package dependencies and indeed - the python-hildon package is missing. :)

Your re-flash is probably what exposed this bug, as other users have probably already installed something, that has python-hildon as a dependency, so it works for them.

I've added the missing dependency in V0.31.6 - so please test. :)

Quote:

Originally Posted by 7thd (Post 1235797)
Cool, I'll be happy to wait for this fix. Tracklogging in my eyes is a top row feature of modRana

Yep, fixing it is a high-priority task for me. :)

MetalGearSolid 2012-07-11 17:14

Re: [Announce] modRana: a flexible GPS navigation system
 
@beermad

Using your perl script I am getting the following error -

DBD::SQLite::st execute failed: datatype mismatch: bind 5 type 1 as png at mapconvert line 80.

Any workaround ?


Quote:

Originally Posted by beermad (Post 1058668)
OK, I've got a working Perl script to import map tiles into the database.

At the moment, it won't run on the N900 itself, as I'm having a few problems getting the SQLite module to build on my scratchbox installation; I'll work on that over the next few days when I have spare time and see if I can get that working.

Dependencies: You'll need to install the Perl DBI and DBD-SQLite modules. These should be available from your disto's repositories (otherwise, get them from CPAN).

It took about 75 minutes to import my 200 000 tiles into the database on my dual-core Athlon machine; obviously this will vary depending on the speed of the machine it's done on. The script is interruptible - just hit Control-C and it'll shut down cleanly. Then restart at your leisure.

Getting it to work on an OS other than Linux is left as an exercise for the reader, as I'm happily Microsoft-free.

It demonstrates well the oft-mentioned clustering problem with FAT partitions; my tile files allocated 12.5G of space, whereas the store file is only 543M.

Instructions:

Download the script from http://www.beermad.org.uk/mapconvert

Either copy your ~/MyDocs/.maps directory to your Linux box or mount your MyDocs partition on it. Try to preserve the timestamps if copying (as they're recorded in the database, I assume they're used to work out if a new copy of any tile is needed if they've changed on the tile server) - for example, if using scp:
Code:

scp -pr ~/MyDocs/.maps mycomputer:/tmp
The script only works on tiles in the current working directory, so for each map-type, cd into the relevant directory:
Code:

cd /path/to/tile_directory
Then run the script (no parameters needed).

If necessary, copy the lookup.sqlite and store.sqlite.* files back to your N900.

If there are any tiles already in the database, it leaves them there and it doesn't try to over-write any if one it finds already exists (at some time I should change this so it does over-write if the tile file is newer).

If you already have tiles in a database, I recommend making a copy first, just in case anything goes wrong. I've tested the script a fair bit, but can't guarantee something won't screw up.


7thd 2012-07-11 22:44

Re: [Announce] modRana: a flexible GPS navigation system
 
Quote:

Originally Posted by MartinK (Post 1235938)
(...) users have probably already installed something, that has python-hildon as a dependency, so it works for them.

I've added the missing dependency in V0.31.6 - so please test. :) (...)

I've testdriven on a highway, because GPS launch was succesful :) and regular.
In earlier versions I connected to hotspot (other N900), too and downloaded maps without any problems. Downloading didn't happen, fix was OK I presume (at OSM I & Virtual Earth Hybrid layers/ zooms).
Code:

all proper simplejson package for better speed
* onlineServices: A module for talking to various online services (310.00 ms)
* tracklog: Record tracklogs (10.00 ms)
* markers: A module handling markers on the map. (0.00 ms)
* updateTiles: Update stored map tiles. (0.00 ms)
* search: Search for POI (10.00 ms)
* route: Routes (100.00 ms)
* showPOI: Show POI on the map and in the menu. (10.00 ms)
* location: Supplies position info from a position source (10.00 ms)
* loadTracklogs: A sample pyroute module (10.00 ms)
* voice: Handle text to speach. (0.00 ms)
* showOSD: Draw OSD (On Screen Display). (280.00 ms)
* notification: This module provides notification support. (0.00 ms)
* interfaceFeedback: A sample pyroute module (20.00 ms)
* routeProfile: Creates a route profile (an elevation chart) (10.00 ms)
* log: A modRana logging module (0.00 ms)
* storeTiles: Single-file-fs tile storage (20.00 ms)
* mapData: Handle downloading of map data (70.00 ms)
* animatedMapView: A sample pyroute module (0.00 ms)
* input: Handle input from keyboard, buttons, etc. (10.00 ms)
* info: A modRana information handling module (10.00 ms)
* turnByTurn: A turn by turn navigation module. (0.00 ms)
* positionMarker: A sample pyroute module (10.00 ms)
* tileserver: A modRana built-in tileserver (40.00 ms)
* clickHandler: handle mouse clicks (0.00 ms)
@ storePOI: POI database path:
@ /home/user/MyDocs/.maps/modrana_poi.db
@ storePOI: connection to POI db established
* storePOI: Store POI data. (0.00 ms)
* projection: Projection code (lat/long to screen conversions) (0.00 ms)
* display: A platform independent display device control module (0.00 ms)
* icons: Draw icons (250.00 ms)
* cron: A GTK timing and scheduling module for modRana (10.00 ms)
* showGPX: draws a GPX track on the map (0.00 ms)
* config: Handle configuration, options, and setup (0.00 ms)
* mapView: Controls the view being displayed on the map (0.00 ms)
@ mapTiles: map folder path: /home/user/MyDocs/.maps/
* mapTiles: Display map images (120.00 ms)
* units: a unit handling module (10.00 ms)
* textEntry: A module for handling text entry. (10.00 ms)
* messages: Handles messages (10.00 ms)
* options: Handle options (10.00 ms)
* example: A sample pyroute module (0.00 ms)
Loaded all modules in 1430.00 ms, initialising
icons: switched theme to: default
location: starting GPSD 1 second timer
location: enabling location
** n900 - location: - GPS successfully activated **
n900 - location: activated
N900 rotation object initialized
N900: rotation object loaded
True
N900: key centred toggled
N900: key soundEnabled toggled
N900: application menu added
** making a list of available tracklogs
* using this tracklog folder:
* /home/user/MyDocs/tracklogs
* there are 2 tracklogs available
**
display: keep display ON -> always
mapView: switching map drag mode to staticMapDrag
mapView: switching centering disable threshold to 2048
Initialization complete in 220.00 ms
** modRana startup timing **
# device: Nokia N900 (n900)
* modRana start (0 ms), 0/5263 ms
* imports done (333 ms), 333/5263 ms
* GUI creation (0 ms), 333/5263 ms
* window created (1030 ms), 1364/5263 ms
* map widget created (1 ms), 1365/5263 ms
* window finalized (49 ms), 1414/5263 ms
* all modules loaded (2803 ms), 4217/5263 ms
* all modules initialized (1046 ms), 5263/5263 ms
** whole startup: 5263 ms **
display: redraw ON (window not hidden or minimised)
TypeError: update() takes exactly 1 argument (2 given)
display: redraw ON (N900 window is active)
GTK GUI: size allocation <GdkRectangle at 0x4756a8>
icons: not found
Clicked, sending menu:screenClicked
Clicked, sending menu:screenClicked
Clicked, sending menu:screenClicked
GTK GUI: size allocation <GdkRectangle at 0x5d4ba0>
icons: not found
display: redraw OFF (N900 window is not active)
GTK GUI: size allocation <GdkRectangle at 0x5cff90>
display: redraw ON (N900 window is active)
display: redraw OFF (N900 window is not active)
display: redraw ON (N900 window is active)
Sending message: mapView:zoomOut
notification: message: zooming <b>out</b> to zl 9, timeout: 0.0
notification@dmod: message: zooming <b>out</b> to zl 9, timeout: 0.0
unassigned key pressed: F8
mapTiles: can't create folder /home/user/MyDocs/.maps/Virtual Earth Hybrid/9/261 for /home/user/MyDocs/.maps/Virtual Earth Hybrid/9/261/169.jpg
Shutting-down modules
storePOI: disconnecting from db
location: disabling location
n900 - location: stopping

shutdown imminent, committing all uncommitted tiles
storeTiles: sqlite commit OK

all tiles committed, breaking, goodbye :)
modRana: saving options

mapTiles: automatic tile download management thread shutting down
modRana: options successfully saved
Shutdown complete

Too bad i missed the first part of code I assume.


All times are GMT. The time now is 10:03.

vBulletin® Version 3.8.8