diff --git a/Makefile b/Makefile index 955007c..e91c247 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,17 @@ version = $(shell git describe --tags --dirty) +host_os = $(shell go env GOOS) +host_arch = $(shell go env GOARCH) dev: ./scripts/build.bash -version $(version) dist/dev ./dist/dev/deploy dev-local: - go build github.com/felixge/godrone/cmd/godrone - ./godrone cmd/godrone/godrone.conf + env \ + BUILD_OS="$(host_os)" \ + BUILD_ARCH="$(host_arch)" \ + ./scripts/build.bash -version $(version) dist/local-dev + cd dist/local-dev && ./godrone dist: ./scripts/dist.bash $(version) diff --git a/cmd/godrone/main.go b/cmd/godrone/main.go index 7156db2..5063f97 100644 --- a/cmd/godrone/main.go +++ b/cmd/godrone/main.go @@ -99,6 +99,8 @@ func (g *GoDrone) Run() error { g.log.Info("Starting godrone") defer g.motorboard.Close() + go g.serveHttp() + g.motorboard.SetLeds(green) time.Sleep(500 * time.Millisecond) g.motorboard.SetLeds(red) @@ -112,7 +114,6 @@ func (g *GoDrone) Run() error { g.motorboard.SetLeds(green) go g.navboardLoop() - go g.serveHttp() sigCh := make(chan os.Signal, 1) signal.Notify(sigCh, syscall.SIGINT) diff --git a/drivers/navboard/navboard.go b/drivers/navboard/navboard.go index 33dd890..e85fdfd 100644 --- a/drivers/navboard/navboard.go +++ b/drivers/navboard/navboard.go @@ -6,6 +6,7 @@ import ( "github.com/felixge/godrone/log" "math" "os" + "time" ) // gyroGains are the measured gains for converting the gyroscope output into @@ -52,6 +53,8 @@ func (n *Navboard) NextData() (data Data, err error) { }() if err = n.open(); err != nil { + // Don't go too crazy on retry. + time.Sleep(time.Second) return } diff --git a/http/fs/js/main.js b/http/fs/js/main.js index 1bd6571..7ce0288 100644 --- a/http/fs/js/main.js +++ b/http/fs/js/main.js @@ -234,7 +234,7 @@ React.renderComponent(