diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c100f9d770b449fddf64f5ecf79968d32531ea18
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/gqgmc
+/gqgmcd
diff --git a/cmd/gqgmc/main.go b/cmd/gqgmc/main.go
new file mode 100644
index 0000000000000000000000000000000000000000..229dbe2522e05e34d726d01c0cc8d1740f7f1d27
--- /dev/null
+++ b/cmd/gqgmc/main.go
@@ -0,0 +1,36 @@
+//
+// main.go
+// Copyright (C) 2017 kevin <kevin@phrye.com>
+//
+// Distributed under terms of the GPL license.
+//
+
+package main
+
+import (
+	"fmt"
+	"gitlab.com/lyda/gqgmc/devices/geiger"
+)
+
+func main() {
+	var (
+		gc  geiger.Counter
+		cpm uint16
+		err error
+	)
+
+	gc, err = geiger.New(geiger.Config{
+		Model:  "gqgmc",
+		Device: "/dev/gqgmc",
+	})
+	if err != nil {
+		fmt.Printf("Failed to connect to geiger counter: '%s'\n", err)
+		return
+	}
+	cpm, err = gc.GetCPM()
+	if err != nil {
+		fmt.Printf("Failed to connect to geiger counter: '%s'\n", err)
+		return
+	}
+	fmt.Printf("CPM: %d\n", cpm)
+}