Poor Maps

Rating: 
4.82857
Your rating: None Average: 4.8 (35 votes)

Poor Maps is an application for Sailfish OS to display tiled maps (e.g. OpenStreetMap), places and routes with a flexible selection of data and service providers.

Offline maps, search and routing is possible with OSM Scout Server. Poor Maps will list OSM Scout Server among the providers if you have it installed. For it work, you'll also need to have the server running and a map database on your device. See the OSM Scout Server documentation for details.

Voice navigation requires that you manually install a text-to-speech (TTS) engine – Mimic, Flite, PicoTTS and Espeak are supported, Their quality is about in that order, with Mimic being best and Espeak being worst, but their language and gender coverage varies.

Source code and issue tracker are available at GitHub. Translations at Transifex. Discussion at TMO.

Donations appreciated: paypal.me/otsaloma

Screenshots: 
Application versions: 
AttachmentSizeDate
harbour-poor-maps-0.32-1.noarch.rpm433.88 KB26/08/2017 - 18:44
harbour-poor-maps-0.33-1.noarch.rpm433.57 KB26/09/2017 - 22:46
harbour-poor-maps-0.34-1.noarch.rpm451.18 KB24/12/2017 - 04:37
harbour-poor-maps-0.34.1-1.noarch.rpm456.11 KB06/01/2018 - 22:08

Comments

Bramba's picture

Dear Otsaloma,

today is the time I finally want to send you a incredible THANK YOU for your amazing work!

Your awesome app "Poor Maps" has fully replaced a suddenly failed GPS-device during our recently finished fieldwork. I would never have expected that I can use Poor Maps as a replacement for a common GPS device and feed it with UTM-coordinates straight ahead.

When inserting our GPS-points into Poor Maps (based on that a bit fragile appearing input method via "Search") I had the following idea:

Could you add some feature to insert multiple UTM-coordinates successively in a table?

For example, a simple table like that:

ID | Latitude | Longitude | Point Name-------- | Comment
01 | 11.47369 | 104.83577 | Measuring Point 1 | Enter area from backside
02 | 11.45734 | 104.97853 | Measuring Point 2 | Access requires permission by phone
03 | 11.12895 | 104.95867 | Measuring Point 3 | Measure vertical distance as well
04 | 11.98563 | 104.29596 | Lunch Position ---- | Order lasagne without meat

One could steir to the first point of the table (e.g. ID1), afterwards mark the second point in the table (e.g. ID2) by a simple tap and therefore getting displayed the current marked point ID2 with a different color. All unmarked points could be displayed in blue color, the currently marked point in red color. Would that be a lot of work?

Such a feature would be absolutely great and probably also attracting a whole bunch of geocachers I guess.

What do you think about it?

I am very happy to hear from you! :-)

Wish you the very best and have a nice one!
Bramba

otsaloma's picture

Hi Bramba! Glad you found Poor Maps useful. Your coordinate input sounds such a rare use case and big UI, that it doesn't really fit in a generic app for maps and navigation. What might be doable is input via a file, currently POIs are saved and loaded from ~/.config/harbour-poor-maps/pois.json and later maybe similar kind of import as requested already as GPX file for routes.

Bramba's picture

Hi Otsaloma! Thank you very much for your nice response! For sure an import via file would be even better than my propose from yesterday! :-) I just feared that this method would cause too much trouble for you? As you mentioned, the POI-file is pretty similar - maybe we can adapt that one to some independent point input functionality with the possibility of highlighting selected points in the map? That would be great! Thank you very much! :-)

Edit: I just checked the recommended file ~/.config/harbour-poor-maps/pois.json. All points I entered via "Search"-option seem to be located in that file. Therefore it could be possible to create such a file at the computer and import it into Poor Maps afterwards? This would be a great feature!

There are five fields available:

1. link
2. text
3. title
4. x
5. y

What does "link" do and what can I enter there? :-)

otsaloma's picture

Yes, you can create that pois.json on computer and copy on the device. "link" is for a web page URL (currently used only by Foursquare POIs). You can just leave it out. I think you can also leave out "title", so at minimum specify "x", "y" and "text".

HackTheFish's picture

Hi Otsaloma! Hurray, it works!!! Thanks for your help! It's absolutely great! Donate for you is save. :-)

HackTheFish's picture

Very good! Thanks a lot! Sadly.... The voicefunction don't work on Jolla Phone 1.

otsaloma's picture

Sorry, I forgot to add instructions. It does work on Jolla 1 too, see the updated description above and install rinigus's Mimic and PicoTTS packages. After that, it should work.

ferlanero's picture

Thank you very much for this awesome update! It's an absolute pleasure driving while hearing our Xperias X indications. Keep the good work on PoorMaps to lead navigation to a high level in SailfishOS. Absolute thumbs up!!

itdoesntmatt's picture

Does this include the GL stuff (rinigus)?

otsaloma's picture

No.

itdoesntmatt's picture

Is it possible to set preference about the desidered way (avoiding motorway tolls for e.g.)?

otsaloma's picture

The MapQuest Open router allows trying to avoid tolls. Mapzen's API has a lot of preferences, but none of that is included (yet) and most either too complicated or not very useful anyway.

crakby's picture

Hi!

I did install the OSM server and poor maps for offline navigation. So for it does work very well. The only issue i have is the distance to the next action shows/count wrong. If I need to turn, the app shows 23 meters of distance, while I'm turning already. The graphical indicator by the way is very exact.

So i like to navigate with the minimized app and the sign on the tile, but with the wrong distance it's not very comfortable.

Use it on SailfishX

By the way, may I ask you, why not including the voice patch, it is a quite nice feature:

talk.maemo

Thanks for this niece app!

otsaloma's picture

The upcoming maneuver display is currently updated once every three seconds, so it's a bit behind. It's already planned to drop that to one second.

crakby's picture

I think, this will not be enought. There should be a switch in settings dialog to +/- the meters are shown. So you could cusomize to youre taste. Most navigation uses some combination of speed and distance, to get the really right time to show distance and make voice commands.

Ingvix's picture

Is there any kind of possibility of voice directions at some point? I wonder if there's any free to use library for this kind of purpose. Of course, another possibility would be to use some voice generator though it would probably be a bit more efficient if the directions would be formed from ready samples.. Even just english voice directing for starters would be a nice feature.

otsaloma's picture

In progress.

Ingvix's picture

I see. I tried to make rpm out of rinigus's fork to see how it is so far but it doesn't seem to work correctly or I did something wrong.

[root@Sailfish poor-maps]# make rpm
make dist
make[1]: Entering directory `/home/nemo/poor-maps'
make clean
make[2]: Entering directory `/home/nemo/poor-maps'
rm -rf dist
rm -rf __pycache__ */__pycache__ */*/__pycache__
rm -rf .cache */.cache */*/.cache
rm -f po/*~
rm -f rpm/*.rpm
make[2]: Leaving directory `/home/nemo/poor-maps'
mkdir -p dist/harbour-poor-maps-0.33
cp -r `cat MANIFEST` dist/harbour-poor-maps-0.33
cp: cannot stat `data\r': No such file or directory
cp: cannot stat `geocoders\r': No such file or directory
cp: cannot stat `guides\r': No such file or directory
cp: cannot stat `po\r': No such file or directory
cp: cannot stat `poor\r': No such file or directory
cp: cannot stat `qml\r': No such file or directory
cp: cannot stat `routers\r': No such file or directory
cp: cannot stat `rpm\r': No such file or directory
cp: cannot stat `tilesources\r': No such file or directory
cp: cannot stat `AUTHORS.md\r': No such file or directory
cp: cannot stat `COPYING\r': No such file or directory
cp: cannot stat `Makefile\r': No such file or directory
cp: cannot stat `MANIFEST\r': No such file or directory
cp: cannot stat `NEWS.md\r': No such file or directory
cp: cannot stat `README.md\r': No such file or directory
cp: cannot stat `RELEASING.md\r': No such file or directory
cp: cannot stat `TODO.md\r': No such file or directory
make[1]: *** [dist] Error 1
make[1]: Leaving directory `/home/nemo/poor-maps'
make: *** [rpm] Error 2
otsaloma's picture

That output would suggest you have corrupted the MANIFEST file with Windows newlines, maybe you cloned with a misconfigured git client on a Windows system? Don't do that. Either clone on device or get the zip-package. But note that rinigus has prepared RPMs, you probably don't need to build it yourself.

http://talk.maemo.org/showpost.php?p=1533829&postcount=82

Ingvix's picture

Oh, I see. Thanks for the notice again.
I seem to act too soon a lot and not investigate enough. First I tried to clone the the repository with the SDK and when that didn't go properly I noticed it doesn't have .pro file and the description said to use make to build it and I just moved the just cloned files to my phone. That wasn't a good idea, it seems.

vattuvarg's picture

Using native navigation again on my Jolla C thanks to Poor Maps. Very happy. 

vattuvarg's picture

If the device has a magnetic compass, will the app use it?

otsaloma's picture

No.

vattuvarg's picture

Will that functionality be available in the future? 

otsaloma's picture

What's the interest? Is it to rotate the map according to which way you're facing?

vattuvarg's picture

A magnetic compass would be handy when standing still.

Rotating the map works pretty well already. The only question I have is why the map rotates around the middle of the screen even when the blue cursor is at the low position (auto-rotate on)?  

otsaloma's picture

Rotating around the center is a whole lot simpler to do. Maybe the animation looks weird, but it comes out right, right? Also, the position icon is at the bottom when navigating, but otherwise in the center.

vattuvarg's picture

I am using Poor Maps daily as my primary navigation tool and combining it with other "vehicle apps" (like FM radio and the HUD speedometer) to form an environment that i call "helm 2.0". The UX of Sailfish OS is well suited for vehicle use so there is very little to change. The home screen works well as a dashboard thanks to the multitasking of the OS and the standardized use of gestures. So with the base in place I'm looking at the individual parts - the apps. Basically it is just a matter of making small adjustments so that the apps form a "matched swarm". So I suggest small changes. Those suggestions are as small as possible because each part should do just one thing, but do it well. Having native navigation is such a wonderful thing, in that context, especially as it is based on open data and processing. Real multitasking allows each app to be cleaner because it is possible to delegate functions to other apps. The navigation app doesn't have to be a compass or weather forecast (or FM radio). If the vehicle needs to measure inclination then another app takes care of that, extending the system. A common "look" calms the home screen view, the "dashboard", but each app has to be optimized for the task and thus be individual. Beauty is nice, but the most important thing is clarity and functionality. The simplistic looks of most sailfish apps is actually an advantage in that sense.  

That's why I asked about the magnetic compass. I miss that sensor in my current phone (the Jolla C) but it will be available in my next one (the Xperia X). So the orienteering compass app will be available for my helm again. In Poor Maps the only gain would be when standing still. Turning the map is easy with two fingers, even without the magnetic sensor, but the experience would be at least somewhat richer with it. 

Sorry for the long explanation. 

otsaloma's picture

Compass rotation would be useful, yes, it's just not a priority. Manual two-finger rotation is not likely to be possible until Qt 5.9.

vattuvarg's picture

I continue waiting then. Thanks for taking time to reply. 

Pages