diff --git a/dist/roverd b/dist/roverd index 3defb316..ac7b0fc0 100755 Binary files a/dist/roverd and b/dist/roverd differ diff --git a/dist/servoverifier b/dist/servoverifier index 8ca89fb6..95979933 100755 Binary files a/dist/servoverifier and b/dist/servoverifier differ diff --git a/pi/roverd/config.go b/pi/roverd/config.go index 912af359..fea7c2ad 100644 --- a/pi/roverd/config.go +++ b/pi/roverd/config.go @@ -115,6 +115,7 @@ type IRConfig struct { Repeat int `yaml:"repeat" json:"repeat"` GapMs int `yaml:"gapMs" json:"gapMs"` ActiveLow bool `yaml:"activeLow" json:"activeLow"` + PigpioAddr string `yaml:"pigpioAddr" json:"pigpioAddr"` } type Config struct { @@ -196,6 +197,7 @@ func LoadConfig(path string) (*Config, error) { Repeat: 3, GapMs: 100, ActiveLow: true, + PigpioAddr: "localhost:8888", }, } if err := yaml.Unmarshal(data, &cfg); err != nil { @@ -354,6 +356,9 @@ func validateIRConfig(cfg *IRConfig) error { if cfg.Pin <= 0 { return errors.New("pin must be > 0") } + if cfg.PigpioAddr == "" { + cfg.PigpioAddr = "localhost:8888" + } if cfg.CarrierHz <= 0 { return errors.New("carrierHz must be > 0") } diff --git a/pi/roverd/ir_tx.go b/pi/roverd/ir_tx.go index 19f5c37d..cfa953d2 100644 --- a/pi/roverd/ir_tx.go +++ b/pi/roverd/ir_tx.go @@ -14,7 +14,6 @@ import ( ) const ( - pigpioAddr = "127.0.0.1:8888" piCmdSetMode = 0 piCmdWrite = 4 piCmdWaveClear = 27 @@ -104,7 +103,11 @@ func NewIRTransmitter(cfg IRConfig, logger *log.Logger) (*IRTransmitter, error) return nil, fmt.Errorf("ir disabled") } - client, err := connectPigpioWithRetry(pigpioAddr, logger) + addr := cfg.PigpioAddr + if addr == "" { + addr = "localhost:8888" + } + client, err := connectPigpioWithRetry(addr, logger) if err != nil { return nil, fmt.Errorf("connect pigpio: %w", err) } diff --git a/pi/roverd/roverd.sample.yaml b/pi/roverd/roverd.sample.yaml index f712046a..96cab9da 100644 --- a/pi/roverd/roverd.sample.yaml +++ b/pi/roverd/roverd.sample.yaml @@ -65,3 +65,4 @@ ir: repeat: 3 gapMs: 100 activeLow: true + pigpioAddr: localhost:8888 diff --git a/pi/roverd/roverd.yaml b/pi/roverd/roverd.yaml index f09fb311..c5cd551e 100644 --- a/pi/roverd/roverd.yaml +++ b/pi/roverd/roverd.yaml @@ -43,3 +43,4 @@ ir: repeat: 3 gapMs: 100 activeLow: true + pigpioAddr: localhost:8888