Damon Kohler

Tags

  • blog112
  • python24
  • linux21
  • ubuntu12
  • android11
  • robotics11
  • hardware9
  • arduino7
  • ase6
  • sl4a6
  • google6
  • review6
  • game-review6
  • presentations4
  • makerbot3
  • nokia3
  • olpc2
  • gsd1
  • cartographer1
  • cougar-project1
  • nessie1
  • django1
  • olpc-fido1

Tags

  • blog112
  • python24
  • linux21
  • ubuntu12
  • android11
  • robotics11
  • hardware9
  • arduino7
  • ase6
  • sl4a6
  • google6
  • review6
  • game-review6
  • presentations4
  • makerbot3
  • nokia3
  • olpc2
  • gsd1
  • cartographer1
  • cougar-project1
  • nessie1
  • django1
  • olpc-fido1

About Me

I’m a software engineer in Munich. By day I work on Google Cloud Dedicated. In past lives I built Cartographer (LiDAR SLAM, story), rosjava (story), and SL4A (story).

This is where I write about tech, home automation, robotics, and whatever else I’m tinkering with.


Cartographer Launch!

Sep 05, 2014

Yesterday, a project at Google that I’ve been putting a lot of work into launched! You can read about it on the Google Lat Long blog and a few otherplacesof note.

Cartographer is a backpack that uses SLAM to build maps of the world in real time. The operator can annotate the map on the fly as they explore and then the results wind up on Google Maps. While the pack may be funnylooking, we still love it.

The backpack has a desktop-class computer, a couple multi-echo laser scanners (30m range and 270° FOV), and an IMU. The map is displayed and annotated on an Android tablet.

Here’s one of the first maps we launched: [sic. The embedding is lost to time.]

Some of the system is built on ROS and my previous work on rosjava. Using ROS has been invaluable, especially during the prototyping stage. Our SLAM stack, however, is all home grown to meet the demands of robust, real time mapping on a fast moving, unstable platform (i.e. the operator’s back).

Previous Posts

  • Understanding Kalman Filters

    May 01, 2014

  • Is your Roomba running slow?

    Jul 18, 2013

  • offline friendly ros development

    Mar 10, 2013

  • Cloud Robotics at Devoxx 2012

    Dec 07, 2012

  • Cloud Robotics at Berkeley Par Lab

    Oct 11, 2012

  • Introduction to rosjava at ROSCon 2012

    Jun 02, 2012

  • Unblock Us Security

    Mar 06, 2012

  • Bluetooth Keyboard Doesn't Work After Suspend

    Feb 19, 2012

  • HDMI Audio on Ubuntu

    Feb 19, 2012

  • Fixing the F3 key on a Kinesis Keyboard

    Jan 03, 2012

  • Android Fling Detection

    Jul 09, 2011

  • Cloud Robotics at Google I/O 2011

    May 13, 2011

  • Nuisance: A Short Story

    Apr 23, 2011

  • Review of Fallout: New Vegas

    Feb 06, 2011

  • Building ROS from Source

    Jan 03, 2011

  • Review of Fable III

    Jan 02, 2011

  • Flying the Parrot AR.Drone with a Wiimote and Nunchuck

    Jan 01, 2011

  • How to Flash a Lego NXT Brick on Ubuntu

    Jan 01, 2011

  • Brain Slug Hat

    Dec 14, 2010

  • LED Menorah

    Dec 05, 2010

  • Android-Powered, Automated Cat Feeder

    Nov 15, 2010

  • Making The diNovo Edge Work On Ubuntu Lucid

    Nov 06, 2010

  • From Photo to Inkscape to DXF to OpenSCAD to MakerBot to Costume Jewelry

    Nov 01, 2010

  • SketchUp 7 Keyboard Shortcuts under Wine

    Oct 30, 2010

  • MJPEG Streaming Protocol

    Oct 19, 2010

  • Secure Synergy Configuration for HTPC Control

    Oct 02, 2010

  • Meet Helo and Miranda

    Aug 07, 2010

  • MakerBot Cupcake CNC

    Aug 07, 2010

  • How far did Tom Petty free fall?

    Jun 06, 2010

  • Better Orientation Readings in Android

    Jun 03, 2010

  • Using chmod in Android

    May 27, 2010

  • Bot Commander r1 Released

    May 19, 2010

  • Review of Halo ODST

    May 14, 2010

  • Review of Mass Effect 2

    May 13, 2010

  • Android Lego NXT Rover with Stereoscopic Vision

    May 09, 2010

  • Review of BioShock 2

    May 08, 2010

  • Outlet Mounted Phone Pocket

    May 04, 2010

  • Browsing Android Source in Eclipse

    May 03, 2010

  • How to Install Mercurial on Ubuntu

    Mar 18, 2010

  • My 5 Rules for Writing Bash Scripts

    Mar 16, 2010

  • How to Activate an Android Phone Over WiFi

    Mar 13, 2010

  • Reencode Videos to Play Faster

    Mar 07, 2010

  • Ubuntu Koala Missing Volume Control: Found!

    Nov 02, 2009

  • Fixing Karmic Koala's Broken tzdata Package

    Nov 01, 2009

  • Introducing hushnote

    Oct 25, 2009

  • How to use Manual Focus (the easy way!)

    Oct 10, 2009

  • Finding Unique Files

    Sep 30, 2009

  • Pletscher ESGE on my Surly Long Haul Trucker

    Aug 29, 2009

  • Android G1 Bicycle Mount

    Aug 29, 2009

  • Is your Wii power supply broken?

    Jul 30, 2009

  • Solving Car Talk Puzzlers with Python

    Jun 11, 2009

  • SL4A / ASE (Scripting Layer for Android / Android Scripting Environment)

    Jun 09, 2009

  • Logitech Pan/Tilt Python C Extension

    May 10, 2009

  • Ubuntu Jaunty Wireless and RT61PCI

    Apr 27, 2009

  • OneSwarm is what I've been waiting for!

    Apr 24, 2009

  • Finding Duplicate MP3s Using Locality Sensitive Hashing

    Mar 02, 2009

  • Installing a New Hard Drive on Ubuntu

    Feb 28, 2009

  • Android Recipes and Snippets

    Feb 13, 2009

  • Ubuntu on the OLPC XO

    Feb 11, 2009

  • Vim Features Overview

    Feb 11, 2009

  • Rhythmbox shout2send Plugin

    Jan 25, 2009

  • Streaming Music to the Chumby with PulseAudio and GStreamer

    Jan 24, 2009

  • Getting started with the CMUCam3

    Dec 31, 2008

  • Plant Monitor

    Dec 14, 2008

  • Email Injection

    Dec 10, 2008

  • JavaScript Painting with Canvas

    Dec 09, 2008

  • Ubuntu Ibex Wireless and RT61PCI

    Dec 07, 2008

  • XBee ZNet 2.5 Wireless Accelerometer

    Nov 09, 2008

  • Scooba Stuck In Diagnostic Mode

    Nov 02, 2008

  • Arduino Accelerometer (ADXL330)

    Sep 26, 2008

  • Arduino RF Link

    Sep 23, 2008

  • How to Run Rise of Nations with Wine

    Sep 22, 2008

  • How to Repair a Computer Fan

    Sep 07, 2008

  • Backing Up and Resizing Partitions in Linux

    Sep 02, 2008

  • Git Repository Collaboration

    Jul 29, 2008

  • Ubuntu Internet Install

    Jun 09, 2008

  • SSH Tunnel to Router Settings

    May 20, 2008

  • My Train Orb (also Scraping Munich Train Schedules)

    May 20, 2008

  • Python Decorators and SimpleXMLRPCServer

    May 15, 2008

  • Save The Date (also, fun with historical weather data)

    May 07, 2008

  • Django on Google App Engine

    May 02, 2008

  • Review of O'Reilly's "Programming Collective Intelligence"

    May 02, 2008

  • How BitTorrent Private Trackers Work

    Apr 29, 2008

  • Finding your public IP address in Python

    Apr 16, 2008

  • Awesome Linux Utilities for five hundred, Alex!

    Mar 23, 2008

  • Tomato

    Mar 21, 2008

  • How to Check if a Child Process is Still Running in Python

    Mar 20, 2008

  • FriendFeed sounds cooler than it is?

    Feb 09, 2008

  • PyS60 GPS on the Nokia N95

    Feb 02, 2008

  • Symbian Signing rotateMe

    Jan 30, 2008

  • My New Nokia N95. Wow.

    Jan 28, 2008

  • Monitoring Hard Disks with SMART

    Nov 18, 2007

  • PyOpenDHT

    Oct 19, 2007

  • Whoopee! A blinking LED!

    Oct 12, 2007

  • Scraping Xbox Live

    Oct 06, 2007

  • A different sort of web framework

    Oct 03, 2007

  • Pertelian X2040 USB LCD

    Sep 13, 2007

  • Fido: OLPC Telepresence Robot

    Aug 29, 2007

  • Simple Django offline apps? Oh, yes.

    Jul 12, 2007

  • Python One-Liners

    Jul 12, 2007

  • __import__ is stupid.

    Jun 15, 2007

  • Fesity, Apache2, SSL, and Firefox

    Jun 08, 2007

  • The evolution of Python generators.

    May 21, 2007

  • Python Design Patterns

    May 21, 2007

  • Where's my open source implicit SSL FTP clients?

    May 17, 2007

  • Stupid FileVault

    May 13, 2007

  • Editing Python with Vim

    May 13, 2007

  • What's an ISO and how do I use it?

    May 10, 2007

  • Project Nessie: A P2P Platform in Twisted

    Oct 10, 2006

  • Cougar Car Audio Build

    Jun 20, 2006

Graph View

Created with Quartz v4.5.2 © 2026

  • GitHub
  • LinkedIn