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)

MartinK 2019-04-01 23:32

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

Originally Posted by jobooth (Post 1555809)
A huge thank you MartinK for all your hard work.

Quick question... Should online routing work on the N900?

That's a good question! The overall online routing situation for modRana is not ideal at the moment, as modRana currently only supports some old Google provided routing API which AFAIK might be reaching it's end of life soon.

This is less serious on Sailfish OS due to the glorious offline routing API provided by OSM Scout Server, but much more of a problem for the N900, where OSM Scout Server is not available & the old Monav based offline routing is often far from ideal.

Trying now on desktop with the Google online routing provider - and I'm getting failures. So looks like they might have already shut down the old API modRana uses & an alternative will be needed. Yay. :D

Quote:

Originally Posted by robthebold (Post 1555828)
Does launching from CLI take any commands, parameters, options, etc.? I haven't found anything in the available documentation, but that could be my search skill and not the reality.

Not just yet, but it's planned & coming soon (tm). :)

Basically the idea is to parse the command line arguments the launcher gets, and then decide what to do next. There are basically two options:

1) The command line arguments are not related to the modRana GUI (stuff like --help, adding a POI via CLI, etc.). In such a case the launcher will run modrana.py and pass it the arguments, expecting it to handle the CLI use case by itself.

2) The command influences the modRana GUI. This could be telling modRana which UI variant to launch or request to perform an action on startup (zoom on certain coordinates, serach for a POI, perform routing & start navigation, etc.). In this case the launcher would pass the arguments to the GUI and start it.

At the moment I'm thinking about doing just very simple argument parsing in C++, just to tell me if some arguments have been passed or not - actually, I guess it might be enough to just check the number of arguments.

If some arguments are found, the launcher would run modrana.py in some special mode which would tell it what to do next - terminate (if modRana already performed the CLI task) or to start the GUI (if the task requested is GUI related). If this works out, I should be able to avoid duplicating the option parsing logic in C++ in the launcher, even partially.

Nothing of the above should really be relevant for the user, they would just type (once implemented):

Code:

harbour-modrana --help
And then use one of the command line options available. :)

Quote:

Originally Posted by robthebold (Post 1555828)
And thanks for continued support.

Much appreciated! :)

rinigus 2019-04-02 07:34

Re: [Announce] modRana: a flexible GPS navigation system
 
@MartinK: you could add Stadia Maps as an online router. It's the same Valhalla router as in OSM Scout Server and was free for a decent amount of calls and they probably will not get exceeded. Since router is the same, you would probably not need much to code to use it.

biketool 2019-08-12 11:56

Re: [Announce] modRana: a flexible GPS navigation system
 
Martink, is there a file that I could python scrape out turn by turn instruction events from?
I am hoping to add some GPS navigation event transfers for Maebble(Pebble watch daemon) for an easy to see turn by turn and maybe distance countdown or speedometer that cyclists and automobile drivers could use. If possible I will make it like an SMS or email event push so I dont need to figure out how to write a special watch app(probably will never happen).
I was also thinking of an approximate boundary near arrival to be used for bus and train travellers to know the correct stop or station.
Be aware I am looking for the lazyest way to do this I am not a real dev and have only minimal debuggind skills. If this works I will add it to the garage and maybe even try to get it into the repos.
Maebble http://talk.maemo.org/showthread.php?p=1559017

MartinK 2019-08-13 05:17

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

Originally Posted by biketool (Post 1559019)
Martink, is there a file that I could python scrape out turn by turn instruction events from?
I

Do you mean some piece of Python code you could reuse from modRana to return you turn by turn navigation instructions, which you could then show in your app ?

I'm afraid the routing situation @ modRana is currently less than ideal, as online routing is currently broken & I have not yet got to fixing it (as rinigus suggests a post above).

For offline routing, the OSM Scout Server using code might be usable but that's of course Sailfish OS only, so likely not usable for your Maemo 5 app.

biketool 2019-08-13 08:26

Re: [Announce] modRana: a flexible GPS navigation system
 
I am just looking for an easy way to get the turn by turn instructions out into a parseable format.
An intermediate script might work but I am a cut-paste-tweak-pray kinda non-dev.
I am just trying to cobble a crappy but simple hack similar to parsing the dbus event stream. By similar I am meaning almost identical so I can reuse edited lines of code from the currently working maebbled.py

1896er 2019-09-03 17:38

Re: [Announce] modRana: a flexible GPS navigation system
 
HI MartinK,
I tried modrana offline mode on N900 as descripted in maemo-wiki. I unzipped tile-file on my linux-laptop, then copied via usb cable to correct folder on N900. But it works only in N900-ONLINE-Mode. Switch to offline, "tile download failed" displayed on map... Turned to online mode it works... Network-Settings in modrana are on "unlimited use of network".

How to enable correct offline-mode?

Thanks!

sixwheeledbeast 2020-02-06 10:22

Re: [Announce] modRana: a flexible GPS navigation system
 
For anyone interested support for N900 has ended.
https://github.com/M4rtinK/modrana/pull/287
I believe there will still be a fair few N900 users that should be made aware of this here.
It's a shame but I can understand this especially with python and GTK2 support disappearing.
One request i would have would be to get the last version into extra-devel if possible.
I think we spoke in the past about updates and that less devs have a build environment available but at least N900's would have a more upto date version in the repo if this was done.

xman 2020-02-07 17:08

Re: [Announce] modRana: a flexible GPS navigation system
 
Well with Leste coming along well maybe the dev will change their mind or maybe it will be easier to port?

Always sad when software support ends on Maemo. But like you said it understandable.

x

MartinK 2020-02-08 03:01

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

Originally Posted by 1896er (Post 1559890)
HI MartinK,
I tried modrana offline mode on N900 as descripted in maemo-wiki. I unzipped tile-file on my linux-laptop, then copied via usb cable to correct folder on N900. But it works only in N900-ONLINE-Mode. Switch to offline, "tile download failed" displayed on map... Turned to online mode it works... Network-Settings in modrana are on "unlimited use of network".

How to enable correct offline-mode?

Thanks!

I'm afraid that the only fully offline mode supported by modRana on the N900 was the rudimentary offline routing based on Monav. Tile display was always working with map tiles downloaded from the internet. You could batch download it, but that was pretty much it.

The situation is much better on Sailfish OS devices & on desktop Linux. There modRana can talk to OSM Scout Server, which provides offline tile rendering, routing and PoI search.

MartinK 2020-02-08 03:27

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

Originally Posted by sixwheeledbeast (Post 1565136)
For anyone interested support for N900 has ended.
https://github.com/M4rtinK/modrana/pull/287
I believe there will still be a fair few N900 users that should be made aware of this here.

Yeah, I planned to do an announcement here, likely as part of next version release notes, but might as well do it now. :)

BTW, I really wonder how many users are actually affected - the version in Extras has really not been updated in a while, mainly do to most of the recent work & fixes not really affecting the parts of modRana in use on Maemo. I guess that also kinda implies the code duplication that has been in place up till now. :P

Quote:

Originally Posted by sixwheeledbeast (Post 1565136)
It's a shame but I can understand this especially with python and GTK2 support disappearing.

Pretty much - for some time this was an interesting exercise in keeping a non trivial application compatible with a wide range of Python versions (2.5-3.4/3.6). This experience came really handy at work at Red Hat when I helped to port the Anaconda installer used by Fedora/CentOS/RHEL to Python 3.

Still I don't think supporting Python 2, especially the ancient Python 2.5 needed for the N900 is viable anymore, with Sailfish OS upgrading to 3.7 a while ago, Python 2 going EOL this January & Fedora and other distros getting ridd of Python 2 software where possible.

Another issue is also the original GTK2/Cairo GUI - back then it really was the best option given the environment (first the Neo FreeRunner & early N900), but things changed quite a bit since then.

Newer GUI technologies, such as Qt 5/QML make achieving what modRana needs in it's interface much easier, nice, faster and more responsive with far lesser amount of custom code & hacks needed to achieve the desired end result.

Also let's say I can write much better code now than I did 10 years ago + not all design decisions I did back then turned out to be good. ;-)

So this really had to be done & would likely be done much sooner in another project - but at least we can celebrate the 10th modRana aniversary with a bang! :-)

(I started working on modRana for my bachelors thesis at the end of Janury 2010.)

Hopefully this change will make the source code of modRana much more readable, fully Python 3 compatible & more unit-testable. Also potentiall contributors will be much less likely to run away screaming when they no longer see modules full of Python 2/3 compatible code mixed together with direct drawing of screen content via Cairo vector commands. ;-)

Quote:

Originally Posted by sixwheeledbeast (Post 1565136)
One request i would have would be to get the last version into extra-devel if possible.
I think we spoke in the past about updates and that less devs have a build environment available but at least N900's would have a more upto date version in the repo if this was done.

I have actually created a N900 specific branch in case some fixes would be needed after Python 2 & GTK2 support has been dropped from the master branch:

https://github.com/M4rtinK/modrana/tree/n900-branch

That could be a good starting point for such an update effort. Still, I'm not sure I will still be able to generate the needed source-deb file, not to mention being able to talk to autobuilder in the correct manner.

Assistance of someone who still has the necessary tools available would be definitely welcome. :)

MartinK 2020-02-08 03:32

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

Originally Posted by xman (Post 1565168)
Well with Leste coming along well maybe the dev will change their mind or maybe it will be easier to port?

Always sad when software support ends on Maemo. But like you said it understandable.

x

Going forward only the Qt 5 based GUI makes sense, so as long as Maemo Leste can provide:
  • support for running Qt 5 QML apps based on Qt Quick Controls 2
  • reasonably new Python 3 (say 3.6+)
  • PyOtherSide (should be trivial to build if the above two are available)
Then modRana should be able to run just fine, the same way it runs now on a regular Linux desktop, which easily satisfies these requirements. :)

nonsuch 2020-02-08 11:27

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

Originally Posted by sixwheeledbeast (Post 1565136)
For anyone interested support for N900 has ended.
https://github.com/M4rtinK/modrana/pull/287

Maybe I am misunderstanding something, or maybe I'm just nitpicking, but to me it looks like GTK2 support is ending, not N900 support?
AFAICS Qt can work on Fremantle, python updates are possible too...

I have only recently installed ModRana on N900 (Maemo Fremantle), so I am one of the users still interested.

ric9K 2020-02-08 18:12

Re: [Announce] modRana: a flexible GPS navigation system
 
I am also still interested.
Btw a question, a bit on the side:
I can't use online routing any more on n900's modrana. I guess it is normal, but in the doubt...

thanks

Maemish 2020-02-08 19:53

Re: [Announce] modRana: a flexible GPS navigation system
 
Using. N900 main device.

MartinK 2020-02-09 19:44

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

Originally Posted by nonsuch (Post 1565180)
Maybe I am misunderstanding something, or maybe I'm just nitpicking, but to me it looks like GTK2 support is ending, not N900 support?
AFAICS Qt can work on Fremantle, python updates are possible too...

I have only recently installed ModRana on N900 (Maemo Fremantle), so I am one of the users still interested.

Interesting! It is nice to see some more recent attempts at Python 3 support on Maemo 5. There are unfortunately still some issues that are really preventing from this being used by modRana:
- an intepretter is not enough as you also need various Python libraries to be rebuilt against the new interpretter, such as those used to get GPS data or to control display blanking
- a reasonably modern Qt 5 version would be needed, say 5.9 - not sure how far efforts around this are on Maemo 5
- then you also need PyOtherSide to be built against the Python 3 intepreter and Qt 5 (this should be relatively trivial if you managed to build Python 3 and Qt 5)

Then modRana should be able to run as well as it runs on Linux desktop or on Sailfish OS devices.

But this is theory, I wonder how doable this actually is in practice - AFAIK none of these Python 3 or Qt 5 efforts are available from Extras and have to be downloaded and installed manually. Its also an open question if recent Qt 5 version will even build with the ancient Maemo 5 compilers. Also another issue could be all the extra software actually fitting to the limitted storage space on the N900, as it pretty much duplicates a lot of the existing Python and GUI stack.

So all in all quite a daunting task, but imho still worthy if someone if someone has the resources, hardware and time to attempt it. I am unfortunatelly almost certain to not have enough time to attempt it myself, but could certainly help from upstream modRana development side (eq. adding fixes to make modern modRana codebase run on updated Maemo). :-)

MartinK 2020-02-09 19:49

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

Originally Posted by ric9K (Post 1565187)
I am also still interested.
Btw a question, a bit on the side:
I can't use online routing any more on n900's modrana. I guess it is normal, but in the doubt...

thanks

Online routing is actually at the moment broken in all versions - modRana used an old Google routing API that has been recently deprecated, so online routing stopped working. This is definitely one of the priority issues I want to fix to get the modRana project back into shape.

I guess this could also be a suitable thing to backport to the n900 branch, especially as offline routing options are limitted to nonexistent on the N900 due to no OSM Scout Server being available.

sixwheeledbeast 2020-02-10 10:41

Re: [Announce] modRana: a flexible GPS navigation system
 
I was downloading the source from github to run on N900 and Ubuntu, since we last spoke here.
As for Leste I suppose if it where to find it's way on to Debian repos it would be available to a lot more people, not only Leste.

nonsuch 2020-02-14 08:19

Re: [Announce] modRana: a flexible GPS navigation system
 
Thanks for replying, MartinK.
I guess I am happy using whatever version is available for the N900; I'd actually like to use it fully offline, offline routing is still possible with some server running locally?
But even so, routing is not my main concern, I mostly just need the maps & metadata (POIs, public transport etc.).

MartinK 2020-04-07 15:42

Re: [Announce] modRana: a flexible GPS navigation system
 
So just a heads up for those already on Sailfish OS 3.3 EA - modRana is currently not starting on SFOS 3.3 due to Python 3 being upgraded (to 3.8.1) and modRana using some functionality that has been deprecated in Python 3.8.

The fix does not look hard & there should be a fixed version in the next day or two. :)

(First reported: https://together.jolla.com/question/...-not-starting/ & in Jolla store comment)

MartinK 2020-04-20 01:01

Re: [Announce] modRana: a flexible GPS navigation system
 
So in the end it was a week or two, but the fixed modRana release is here - now syncing to both Open Repos and Jolla Store. :)

Nothing that interesting just yet (other than modRana actually starting on SFOS 3.3+ :P) but I have been doing a lot of clean-ups related to and enabled by Python 2 & GTK2 support being dropped.

Anyone interested can check the recent commit history for all the horrendous compatibility hacks I have been cleaning up. ;-)

This combined should make fixing bugs & implementation of new features easier, not to mention enabling a reasonable test coverage & outside contributions without driving anyone insane. :)

ric9K 2020-04-20 07:58

Re: [Announce] modRana: a flexible GPS navigation system
 
Hi MartinK,

Thanks for the update.
Following your link, I found a download link pointing to a zip file:
https://github.com/M4rtinK/modrana/a...25bfd1ff01.zip

Do I just have to uncompress the zip into /home/opt/modrana/ to test it?

Sorry for a so basic questions and thanks again,

MartinK 2020-04-29 18:59

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

Originally Posted by ric9K (Post 1566994)
Hi MartinK,

Thanks for the update.
Following your link, I found a download link pointing to a zip file:
https://github.com/M4rtinK/modrana/a...25bfd1ff01.zip

Do I just have to uncompress the zip into /home/opt/modrana/ to test it?

That archive is for the latest modRana code, that no longer contains the GTK2 GUI & Python 2 support needed to run on the N900. This is a link to archive of the n900-branch that contains the latest code still compatible with the N900:

https://github.com/M4rtinK/modrana/a...4e0f779383.zip

So far there is nothing new on the n900-branch branch since it was branched from master before the GTK2 GUI and Python 2 support was dropped. If someone has some N900 specific fixes, this branch is where the pull request should go. :)

As for unpacking the archive to /home/opt/modrana/ - I'm not sure from top of my head, but if you backup your existing /home/opt/modrana/ it should be safe. Also just unpacking the archive in a suitable directory and running modrana.py should work as well.

Quote:

Originally Posted by ric9K (Post 1566994)
Sorry for a so basic questions and thanks again,

No problem. :)

clort 2021-07-18 11:56

Re: [Announce] modRana: a flexible GPS navigation system
 
Please, on application start, start the map in the last location scrolled-to.

Please, on application start, start the map in the last location scrolled-to.

Please, on application start, start the map in the last location scrolled-to.

I have to spend 5-10 minutes scrolling and downloading to get to my location to see a map (gps not working on my device, usually)

MartinK 2021-08-22 00:16

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

Originally Posted by clort (Post 1572307)
Please, on application start, start the map in the last location scrolled-to.

Please, on application start, start the map in the last location scrolled-to.

Please, on application start, start the map in the last location scrolled-to.

I have to spend 5-10 minutes scrolling and downloading to get to my location to see a map (gps not working on my device, usually)

I know about the issue & I'm working on a fix. Should be hopefully finally fixed in the next few days. :)

BTW, I've added a aarch64 build of modRana to OpenRepos a while ago, so Sailfish X users on Xperia 10 II should be covered. :)

I have not yet submitted an aarch64 build to Jolla Store as I plan to do it together with an actual new build. :)

clort 2021-08-22 01:21

Re: [Announce] modRana: a flexible GPS navigation system
 
Thanks man, love the program otherwise. But I can't use it to take a quick look at my map.

biketool 2021-08-25 16:35

Re: [Announce] modRana: a flexible GPS navigation system
 
Is there any chance you have looked at making a modrana port to Mobian, I am currently running this on a Pinephone but it is still not quite ready for an everyday phone.
I appreciate your work over the years and think your work is better than the standard app that is included in Mobian now.
Maybe a linux flatpak?


All times are GMT. The time now is 14:54.

vBulletin® Version 3.8.8