Keypad-Mapper 3
| Keypad-Mapper 3 | |
|---|---|
| Author: | User:NicRoets,User:Cobra,User:Markus59 |
| Website: | www.enaikoon.com |
| Version: | 3.0.20 (2013-04-27) |
| License: | BSD (free) |
| Platform: | android |
|
highly efficient mapping of house numbers | |
Keypad-Mapper 3 is an Android application dedicated to the rapid mapping of house numbers and address nodes.
This app is an enhancement of KeypadMapper2, which in turn is based on the original KeypadMapper published by Nic Roets in 2010.
Herewith we would like to express our gratitude to Nic, who supported us during the implementation of this app´s version with his good ideas and patience.
quick start
- Find an area where house numbers are missing here.
- Print this area for easier navigation and go there.
- Switch on GPS: it is only possible to save house numbers and address tags if GPS provides reliable position information, otherwise an error message will be shown.
- Tap on the keypad icon in the top right corner of the app or swype to the keypad screen.
- Go to the position where you want to record a house number or an address node. Ensure that the house entrance is exactly to your right or to your left, otherwise it will be difficult later in the OSM editor to assign the house number node to the correct building.
- Type the house number.
- Save the house number by tapping on L/F/R.
- 'L' means that the house number is on your left side in relation to your walking direction.
- 'R' means that the house number is on your right side in relation to your walking direction.
- 'F' means that the house number is in front of you in relation to your walking direction, e.g. at a T-crossing.
- In the upper left corner you can see a counter for the house numbers you have mapped in the current mapping session.
- Repeat steps 5), 6) and 7) before each house number until all house numbers are recorded.
- When you are finished with mapping house numbers, tap on the icon with the small house in the top left corner and then tap “settings” on the last line of the menu.
- In the settings screen you can find the option 'share recorded data' which allows you to send the recorded data in an email attachment to the computer which is used for the OSM editor (e.g. JOSM or Potlach)
- Open the e-mail and save the attached files to your PC.
- Open the OSM editor and then open the .gpx file and the .osm file with the same name. Load the OSM data for the related area.
- Now you can see the recorded house numbers as well as your track on top of the existing OSM data.
- Assign each house number to the related building
- Assign to each house number the related street name, post code, city name and country name
- Upload the data to OSM
- Delete the data on the phone / tablet with the option ""delete all recorded data" in the settings screen.
Typically you will find the newly uploaded house numbers on the OSM map in the highest zoom levels some minutes after uploading them and after refreshing your browser window with the OSM map.
new features compared with keypadmapper2
available on Google Play and on ENAiKOON server for download
| |
Neues Icon im Menü-Bar: 'Adress-Editor'
| |
|
Mit diesem Icon kann men den Adress-Editor aufrufen |
Neues Icon im Menü-Bar: 'keypad screen'
| |
|
Mit diesem Icon kann man den Bildschirm zum Erfassen von Hausnummern aufrufen |
| |
|
Tapping on this icon launches the address editor screen |
| |
|
Tapping on this icon launches the screen that allows to enter house numbers |
freeze GPS position
Or, like in the situation shown by the pictures below, the house number is hidden and you need to pass the entrance and then look back for reading the house number:
![]()
With the FREEZE option you can freeze the real GPS position of the entrance (indicated by the glow around the freeze icon).
Then you can go to the place where you can read the house number to read it and to enter and save it with the beforehand frozen GPS position.
After saving the house number by tapping on L/F/R the freeze mode is cancelled automatically and the glow of the freeze icon disappears.
Another use case of the freeze GPS option is taking a photo with associated GPS coordinate:
in this case you can go to the place you want to take a picture of, then freeze GPS and then go to the place where you want to take the picture from.
This ensures, that the GPS coordinate stored inside the JPG file points to the position of the place and not to the position of the photographer.
take photos
| |
|
The day-by-day experience of mapping house numbers has proven GPS photos to be a useful feature to remember complicated situations or additional information which has nothing todo with a house number but is interesting enough to being mapped. In many cases such a picture might save to enter additional text e.g. for remembering a complete address printed on a menu, hints for special signs etc. The picture is taken with GPS information stored in the Exif meta data of the JPEG file. The picture can be uploaded along with the .gpx and .osm files to JOSM or to any other OSM editor and will be shown on the map where it was taken. |
optional text entry
A separate field has been implemented for entering additional text, assigned to TAG key "name". While entering such additional text, a full keyboard is shown on top of the keypad with all required characters.
This is especially helpful to store a note for future reference when optimizing the data later in an OSM editor or if a house number must be mapped with characters different than the characters on the keypad.
The note is stored in the .osm file assigned to a TAG with type "name".
Example:
- <node id="-1" visible="true" lat="52.49750275564635" lon="13.35025888569893">
- <tag k="name" v="this is your additional text"/>
- <tag k="addr:housenumber" v="51"/>
- <tag k="name" v="this is your additional text"/>
- </node>
With the OSM editor this information can then be deleted after using it or it can be assigned to the correct TAG type.
motivation
In the circle of the app icon the number of house numbers mapped "today" is shown.
optimization of the keypad screen for small devices
Users of devices with small screens can hide several elements of the keypad screen:
- question mark for launching the help screen
- display of street name and postcode
- entry field for additional text
In addition less characters are shown on small screens.
In case you are using a small screen, all characters are available if you turn the device to landscape orientation:
![]()
history
The last two or three stored house numbers are continously shown on the right side of the house number entry field.
The amount of shown house numbers depends on the size of the screen.
undo
| |
This option removes the last added house number from the OSM file.
It is not possible to delete multiple previously recorded house numbers. |
display of current street name and postcode
Current street name and postal code are shown based on NOMINATIM data (only visible if the device is online). This allows to see, if the data already stored in the OSM database is correct and complete and whether there are typos in the existing data.
connect to the internet via Wi-Fi only
This option is especially helpful if the current GSM data tariff is expensive or if the amount of free data is limited.
measurement units
Measurement units metres and feet are supported now for entering the distance between the own position and the position of the address nodes. This allows to use the software also in countries with imperial measuring units.
keep screen on
This option keeps the screen of the device on while mapping.
swipe from screen to screen
The user has the choice to either tap on a menu item to open another screen or to swipe horizontally over the screen with one finger to get to another screen.
delete all recorded data
This option is normally used to free some space on the device as soon as the collected data has been successfully sent to the PC running the OSM editor.
detailed help text
A detailed help text in all six supported languages is available for quick understanding of the app's main features.
nine languages
- Dutch
- English
- French
- German
- Greek
- Italian
- Polish
- Russian
- Spanish
Thank you very much to Stefano for the Italian translation as well as for the promotion of Keypad-Mapper 3 on talk-it
Thanks also to Adam for the Polish translation and to Harry for the Dutch translation.
If you would like to translate the Keypad-Mapper 3 into another language, then pls contact User:Markus59.
resource editor integration
All text resources and graphics resources used by the app are maintained in the ENAiKOON resource editor.
This is a server based web application.
Advantage: an additional language or any changes of some existing resources are immediately available for all users of the app without the need of updating the entire app.
crash reports
In case the app crashes it allows sending a crash report with lots of important information (e.g. a stack trace) to the Keypad-Mapper 3 developers that allows them to find and fix the bug and to ensure highest possible quality. No private data including passwords is sent to the developers.
only one version for all Android versions
The keypadmapper2 exists in two versions for different Android versions.
Keypad-Mapper 3 combines both versions so that the user must not hassle with selecting the correct version for his device. All Android versions from 2.1 to 4.x are supported.
new app icon
new screen "GPS precision"
bug fixes
keypadmapper2 has some bugs which were fixed in version 3:
- Empty OSM and GPX files are automatically deleted.
- TAGs with addr:city = null / addr:country = null etc. do not appear any more.
- It is now possible to turn GPS on after launching the app without restarting the app.
- The </osm> XML code was sometimes missing in the OSM file which caused the file to be reported corrupt by JOSM; this bug has been fixed.
- Tapping on the BACK button of the device now takes the user back to the keypad screen. In the previous version the app was terminated by tapping on the BACK button; tapping on the back button of the device while the keypad screen is shown closes the app.
screenshots
other great apps for mapping house numbers
The main idea behind Keypad-Mapper 3 is to map house numbers and eventually address nodes as efficiently as possible and to execute the editing and completion of the data later at home with JOSM or any other OSM editor.
Many mappers feel that adding tags other than the house numbers while being on the road is a waste of time and can be done more effectively and conveniently later at home.
Other OSM mappers prefer completing the data immediately while collecting it, including a precise position of the node on the map.
OSM mappers with this preference might prefer OsmPad.
OSM mappers that prefer not to specialize in house number mapping but would rather map multiple geo data at a given position may prefer the OSMtracker app.
OpenCellIDs
OpenCellIDs is an open source project complementary to OSM.
The intention of this project is to collect GPS positions of GSM base stations. The data collected by the contributors of this project can be downloaded from OpenCellIDs for unlimited private and commercial use.
One of the main reasons for collecting OpenCellIDs data is that it can later be used for locating devices in areas where GPS reception is not available. In addition, GSM localisation consumes significantly less battery power than GPS-based localisation; however, GSM is known to be less accurate than GPS in rural areas.
OpenCellIDs is the biggest open source collection of GPS positions of GSM base stations worldwide. At the beginning of 2013, the database held approx. 2.7 million unique cells. Currently the database is growing by 1,000 to 2,000 new unique cells per calendar day. In total, we estimate that there are at least 25 million unique GSM cells worldwide; this means that 10-15% of the world's cells have already been discovered.
Keypad-Mapper 3 is a perfect application for collecting OpenCellIDs data while simultaneously collecting house numbers because Keypad-Mapper 3 users systematically walk down many different streets which guarantees optimal data for OpenCellIDs. Base stations along main roads can already be found in the database but base stations off the main streets are rare. This makes Keypad-Mapper such a valuable source for CellID data. Keypad-Mapper 3 is automatically collecting OpenCellIDs data in the background without any interaction required by the user. This feature cannot be switched off. Please use keypadmapper2 if you do not want to contribute to OpenCellIDs. The chosen way of implementing this feature ensures that the data is collected fully anonymous ensuring full compliance with the very strict German privacy laws.
Reading the OpenCellID data from the GSM modem requires the permission "to read phone state and identity". The app does NOT use any other information of the phone state and identity except MCC, MNC, LAC, cellID, signal-strength. You can use for ex. keypadmapper2 or OSMpad instead of Keypad-Mapper 3 if you do not like to grant these permissions.
OpenCellID data is sent immediately after getting it thru internet to the OpenCellIDs server. No user interaction is required to send the data. If the Wi-Fi only option is activated in the settings menu then the data is stored on the phone until a Wi-Fi connection is available.
You can contribute to OpenCellIDs just by launching the Keypad-Mapper 3 app; no further action required. This way you can even contribute to OpenCellIDs if you have no time / possibility to record house numbers, e.g. while driving with with a bicycle or car.
source code
The source code is available at github
sponsoring
The development of Keypad-Mapper 3 has been sponsored by ENAiKOON, the telematics experts and OSM enthusiasts.
wishlist for the next version
new features in version 3.1 (planned for end of June 2013)
- audio note feature: works similar to the photo feature - allows to record a voice file and to save it along with a GPS coordinate. Josm allows to load such a voice file at the given GPS position and to play it.
- add 'L', 'F' or 'R' to the list of added house numbers in the keypad screen
- add "source=survey:date" tag to each address node
- restore start/stop button known from version 2
- replace the letters 'L', 'F' and 'R' in the keypad screen with arrows
- a long tap on house number entry field in the keypad screen opens a full keyboard for entering en unusual house number
- various readability improvements (bigger characters, better contrast...) especially for mapping during bright sunshine
- improved response time of the app in case many house numbers wer mapped
- new settings option "turn off GPS updates": allows optionally to continue with the .gpx track recording even if the Keypad-Mapper 3 app is in background and/or while screen is off"
- new settings option "vibrate on save": defines the duration of the vibration when saving an addres node (when tapping on L/F/R)
- new settings option "keypad vibration": defines the duration of the vibration when tapping on any key except L/F/R in the keypad screen
- new setting soption "use compass": defines up to which speed the compass information is used instead of GPS heading information for calculating the direction
new features in version 3.2 or later (not yet decided)
- One proposal, on the optimized vs non - optimized layout, can you try to put a button to take notes near the textbox? (like the question mark) So it doesn't waste vertical space
- remember last numbers left and right: when no housenumber is given and L or R is pressed, use the last number on the left or right plus 2
- add a button to allow to choose one of the top three surrounding street names to become part of the next tag
- improved UI for big tablets; differentiate between phones, phablets, tablets and differentiate portrait and landscape
- implement new screen with OsmAnd features: pan map below fixed marker in the middle of the screen, then enter house number and save it
- customizable track logging interval for .gpx file
- add auto-completion in address-editor screen based on NOMINATIM requests; preload near by data
- use offline data for auto-completion, users without data plan can preload the data on keypadmapper3 folder and use it. Maybe use the pre-compiled data from osmand?
- improve layout of the address-editor screen
- provide platform to upload recorded data for other mappers to process it with JOSM
- gamification: implement more features to motivate the mapper, e.g. scoring lists
- allow to edit tags of an existing house number
- play sound file if GPS reception is poor
- additional translations: chinese, portugese, japanese, other?
- option to disable auto-rotate of display
- adopt house number format to http://www.druckeselbst.de/briefbogen/din5008.php
- write HDOP or PDOP into .gpx file. JOSM can display circles around the trackpoints. The radius of this circles indicates the DOP value (high DOP = bad GPS = large circle).
- OpenStreetBugs integration: execute an alert if the mapper is close to a bug reported in OpenStreetBugs or one of the other OSM bug portals and allow the mapper to correct the bug. For the Keypad-Mapper this should be limited to bugs in data the Keypad-Mapper is dedicated to (missing street for house number, missing house number of a building...)
- remember address editor settings after quitting the app for the next session
- remove street name and post code retrieved from NOMINATIM from keypad screen if there is no valid internet connection for more than 10 seconds
- Configurable buttons:
- after writing KeypadMapper2, I was contacted by a bush pilot. He makes wildlife surveys for African nature reserves. So I changed the buttons of the app from text buttons to image buttons. And I added an image chooser, so that he can bind each button to an image, a command and a piece of text that will be added to the log file. The target device is a 10" tablet. Attached is the source code.
- add some configurable buttons (or make existing ones configurable) - the configurability should allow for switching additional, also configurable, but fixed OSM tags (i.e. "roof:shape=gabled") being applied to the next application of an address...
- option to store separate addr:flat values, currently I do this using the notation "x,y-z" for "housenumber, flat range" but it requires me to manually translate that into two tags
- option to add wheelchair=*, entrance=*, building=* and other tags associated with buildings, addresses, house numbers
- option to add housename/note/fixme
- Menüpunkt "Neue Straße" anbieten und sofern schon Hausnummern getaggt wurden fragen wie die alte heißt, ansonsten nach dem Namen der neuen Strasse fragen. Wenn man das überspringt bei der Erstellung der nächsten Hausnummer nochmal fragen
- offer Postcode/Name/Suburb/Hamlet/City/County in the address editor screen.
- add a button to switch the LED light on/off for reading a house number
- allow to launch the app without switching GPS on
- add overview map for better orientation
- integrate geoChat feature: http://wiki.openstreetmap.org/wiki/JOSM/Plugins/GeoChat/API
- implement an "offline" data mode for fetching the name of the street, maybe using the same pre-compiled data used by Osmand (e.x. the.obf maps that you can find here http://code.google.com/p/osmand/downloads/list)? Using the online NOMINATIM service is very useful but not all the people have a data plan on their device.
already released in current Google Play version
-
App auf SD-Karte verschiebbar machen- implemented 2013-03-01
Tipps and tricks for efficient mapping of house numbers
General
-
house numbering on Wikipedia
- addresses in OSM
- tags for house numbers and addresses in OSM
- Karlsruhe Schema
- multiple addresses
- conscription numbers
- World bank: Street Addressing and the Management of Cities
- hints for mapping entrances
- house number contributors scoring list
JOSM
- Holding the SHIFT key while adding nodes allows to add many nodes rapidly without the need to terminate each way after adding the first node. This involves the left hand which would have nothing to do otherwise.
- Holding the CTRL key while dragging a house number and dropping it near another node, the nodes are merged. This involves the left hand which would have nothing to do otherwise.
- video: address editor tool for JOSM
- Plugins
- AddrInterpolation - JOSM plugin for creating interpolated addresses and for converting address interpolation ways to individual house numbers
- FixAddresses - JOSM Plugin providing a handy way to find incomplete or invalid addresses
- HouseNumberTaggingTool: tool for easily adding address information to a node or way; can be found in JOSM menu section 'EDIT'
Potlatch 2
iD
Tools to find regions with missing addresses
Statistics
The new Keypad-Mapper 3 has been very well accepted by the OSM community: two weeks after its launch there were already more than 300 active installations reported by Google Play and 34 additional downloads from the ENAiKOON web site.
Especially interesting to see is the distribution of the downloads amongst countries, languages and devices (Google Play downloads until 11.3.2013):
downloads per day:
downloads per country:
downloads per language:
downloads per Android version:
downloads per device type:
and especially appealing is the very good rating of the app - thank you very much!