## blog

### A cheap GPS Module for Nikon DSLRs

If you want a hassle free way of geotagging your photos, plugging in a GPS module into your camera is the best way to go. Coordinates are stored in the photo's meta information as soon as you take it, no additional post-processing required. However, Nikon's original GPS module, the GP1, is quite expensive with a price tag of about 260$. That's why I've decided to build a low-cost DIY version which performs exactly the same but uses much cheaper components. The full building instructions including schematics and PCB layout for the DIY module can be found in my nikon-gp1-diy repository on GitHub. The assembled module is extremely small and fits perfectly onto the camera body thanks to a hot-shoe mount. Just plug it in, wait for a GPS fix and start shooting photos, it couldn't be easier than that! The total cost for the DIY module is roughly 40$, much cheaper than any commercially available alternative that I'm aware of.

### Creating a Marker class for StreetView panoramas

TL;DR — Get it here: source, demo, documentation.

My latest addition to the google-maps-api-addon library is the PanoMarker, a marker which is able to remain at a fixed position inside of a custom StreetView panorama. It can be used to annotate points of interest (POI) inside a particular panorama regardless of the user's viewing direction. The difficulty in creating a marker that remains at a fixed position lies in the projection from a spherical panorama to a two-dimensional viewport. POIs are adressed in terms of heading and pitch angles with respect to the panorama's center. The viewport uses good old pixels for positioning elements. In this article I will elaborate on how to find the pixel coordinates on the viewport given heading and pitch angles of a POI.

### Dynamic Maps for Google+ (Chrome Extension)

One thing I was working on during my internship at Google was a beautiful new look for Checkins. The extension I now made* takes map images shown in such Checkins and replaces them by an actual map which you can zoom and drag around!