From 59e3907725ddc29970ad9fd09f18ef7628daab1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Geisendo=CC=88rfer?= Date: Sat, 1 Feb 2014 15:21:02 +0100 Subject: [PATCH] Improve ability to run firmware locally for dev --- Makefile | 9 +++++++-- cmd/godrone/main.go | 3 ++- drivers/navboard/navboard.go | 3 +++ http/fs/js/main.js | 2 +- scripts/build.bash | 4 ++-- 5 files changed, 15 insertions(+), 6 deletions(-) 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(