main.go 1.26 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
//
// main.go
// Copyright (C) 2017 kevin <kevin@phrye.com>
//
// Distributed under terms of the GPL license.
//

package main

import (
	"fmt"
Kevin Lyda's avatar
Kevin Lyda committed
12
	"time"
Kevin Lyda's avatar
Kevin Lyda committed
13
14

	"gitlab.com/lyda/gqgmc/devices/geiger"
15
16
17
18
)

func main() {
	var (
Kevin Lyda's avatar
Kevin Lyda committed
19
20
		gc       geiger.Counter
		cps, cpm uint16
Kevin Lyda's avatar
Kevin Lyda committed
21
		volts    int16
Kevin Lyda's avatar
Kevin Lyda committed
22
		temp     float64
Kevin Lyda's avatar
Kevin Lyda committed
23
		err      error
Kevin Lyda's avatar
Kevin Lyda committed
24
		t        time.Time
25
26
27
28
29
30
31
32
33
34
	)

	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
	}
Kevin Lyda's avatar
Kevin Lyda committed
35

Kevin Lyda's avatar
Kevin Lyda committed
36
37
38
39
40
41
42
	t, err = gc.GetTime()
	if err != nil {
		fmt.Printf("Failed: '%s'\n", err)
		return
	}
	fmt.Printf("Time: %s\n", t)

43
44
	cpm, err = gc.GetCPM()
	if err != nil {
Kevin Lyda's avatar
Kevin Lyda committed
45
		fmt.Printf("CPM failed: '%s'\n", err)
46
47
48
		return
	}
	fmt.Printf("CPM: %d\n", cpm)
Kevin Lyda's avatar
Kevin Lyda committed
49
50
51

	cps, err = gc.GetCPS()
	if err != nil {
Kevin Lyda's avatar
Kevin Lyda committed
52
		fmt.Printf("CPS failed: '%s'\n", err)
Kevin Lyda's avatar
Kevin Lyda committed
53
54
		return
	}
Kevin Lyda's avatar
Kevin Lyda committed
55
	fmt.Printf("CPS: %d\n", cps)
Kevin Lyda's avatar
Kevin Lyda committed
56

Kevin Lyda's avatar
Kevin Lyda committed
57
58
	fmt.Printf("Version: %s\n", gc.Version())
	fmt.Printf("Model: %s\n", gc.Model())
Kevin Lyda's avatar
Kevin Lyda committed
59
	fmt.Printf("Serial: %s\n", gc.Serial())
Kevin Lyda's avatar
Kevin Lyda committed
60
61
62

	volts, err = gc.Volts()
	if err != nil {
Kevin Lyda's avatar
Kevin Lyda committed
63
		fmt.Printf("Volts failed: '%s'\n", err)
Kevin Lyda's avatar
Kevin Lyda committed
64
65
		return
	}
Kevin Lyda's avatar
Kevin Lyda committed
66
	fmt.Printf("Volts: %d\n", volts)
Kevin Lyda's avatar
Kevin Lyda committed
67

Kevin Lyda's avatar
Kevin Lyda committed
68
69
	temp, err = gc.GetTemp()
	if err != nil {
Kevin Lyda's avatar
Kevin Lyda committed
70
		fmt.Printf("Temp failed: '%s'\n", err)
Kevin Lyda's avatar
Kevin Lyda committed
71
72
73
74
75
76
		return
	}
	fmt.Printf("Temp: %g\n", temp)

	gc.GetConfiguration()

77
}