Routing on mobile devices is only restrictedly realizable, because of the limited resources (memory, processor performance). On the other hand, until recently only financially strong companies were able to provide solutions for this problem because of the high costs of the geographic data involved in this task. We propose a solution consisting of a combination of hierarchical routing and shortest path bidirectional A* algorithm. When tested on the Austrian street map, our method solved routing problems about ten times faster than Dijkstra algorithm. The underlying data structure for the geo-data on the mobile device is a modified quad-tree. The basic street data has been extracted from OpenStreetMap (OSM), a project started in 2004 which provides free geographic data.