Poor Maps

Your rating: None Average: 4.8 (42 votes)

Poor Maps is in minimal maintenance mode. Please try the successor WhoGo Maps, which is under active development and should be better for most users.

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

Application versions: 
File harbour-poor-maps-0.32-1.noarch.rpm433.88 KB26/08/2017 - 18:44
File harbour-poor-maps-0.33-1.noarch.rpm433.57 KB26/09/2017 - 22:46
File harbour-poor-maps-0.34-1.noarch.rpm451.18 KB24/12/2017 - 04:37
File harbour-poor-maps-0.34.1-1.noarch.rpm456.11 KB06/01/2018 - 22:08
File harbour-poor-maps-0.34.2-1.noarch.rpm463.68 KB18/02/2018 - 20:47
File harbour-poor-maps-0.34.3-1.noarch.rpm462.25 KB02/04/2018 - 19:08


minitreintje's picture

Hmmm it seems that upgrading to 2.1.4 broke Poor Maps. The installation failed due a missing plugin: qt5-plugin-geoservices-here

otsaloma's picture

You can try the usual "pkcon refresh". Other than that, I don't know, I haven't upgraded yet, will likely do so over the weekend.

minitreintje's picture

Thanks, that worked!

Caballlero's picture

@otsaloma I think this is for because I am using the new Spanish from Bolivia.

otsaloma's picture

The Spanish in Poor Maps is es_ES, i.e. Spanish Spanish. Should it be plain es instead?

Caballlero's picture

Carmensita f.b usted experimenta el mismo problema?

Caballlero's picture

Spanish language is braked on 0.34.2

otsaloma's picture

Braked how? I just tested, didn't see anything odd.

Caballlero's picture

I just upgraded to the version 0.34.2 then Spanish lenguage not work. only english is showed. I am in Lapuanjoki

Bramba's picture

Hi Otsaloma,

excuse me, it's me once again. :-) In the last days I found a pretty interesting Android app called "Avenza Maps". This app allows the import of georeferenced *.pdf or *.tif-files (GeoTIFF) into its baselayer storage. Now the user can choose those imported images as a map background layer and the navigation cursor will move over it, depending on ones current position. Do you think you could integrate such a map import functionality into the Poor Maps menue "Basemaps and overlays" -> "Import own maps"?

A relative told me that the responsible library is named "gdal lib" and is already available in Python.

Maybe you can have a look at this one? :-)

I am happy to hear from you and thank you very much for your great efforts!

Wish you the very best!

otsaloma's picture

Sounds interesting, but this kind of functionality is far too niche for Poor Maps.

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!

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


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


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:


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.