3 Commits

Author SHA1 Message Date
735087eb17 - change .gitignore 2022-12-31 17:39:33 +01:00
78c9247396 - fix PinPull optional configuration 2022-12-31 17:30:22 +01:00
851e1c0ffb - fix log output on initial setting of pin 2022-12-31 17:26:14 +01:00
3 changed files with 15 additions and 11 deletions

2
.gitignore vendored
View File

@@ -1 +1,3 @@
install/*
rpicontrol
rpicontrol*.tar.gz

View File

@@ -9,7 +9,7 @@ type Pin struct {
Id int
Name string
Direction PinDirection
PullConfig PinPull
PullConfig *PinPull
InitialState *PinCommand
PinHandle HardwarePinInterface
SendPollingEvents bool
@@ -77,7 +77,7 @@ func (p *Pin) Configure() {
log.Infof("configuring pin %s (pin no: %d) as Output", p.Name, p.Id)
p.PinHandle.Output()
if p.InitialState != nil {
log.Infof("set initial state \"%s\" for pin %s (pin no: %d)", p.InitialState, p.Name, p.Id)
log.Infof("set initial state \"%s\" for pin %s (pin no: %d)", *p.InitialState, p.Name, p.Id)
_ = p.Command(*p.InitialState)
}
@@ -85,14 +85,16 @@ func (p *Pin) Configure() {
p.PinHandle.Detect(AnyEdge)
if p.PullConfig == PullUp {
if p.PullConfig != nil {
if *p.PullConfig == PullUp {
p.PinHandle.PullUp()
} else if p.PullConfig == PullDown {
} else if *p.PullConfig == PullDown {
p.PinHandle.PullDown()
} else if p.PullConfig == PullOff {
} else if *p.PullConfig == PullOff {
p.PinHandle.PullOff()
} else {
log.Errorf("unknown config value \"%s\" for pull-config", p.PullConfig)
log.Errorf("unknown config value \"%s\" for pull-config", *p.PullConfig)
}
}
}

View File

@@ -4,7 +4,7 @@ type PinConfig struct {
PinNumber int `yaml:"number"`
Name string `yaml:"name"`
Direction PinDirection `yaml:"direction"`
PullConfig PinPull `yaml:"pull-config"`
PullConfig *PinPull `yaml:"pull-config"`
InitialState *PinCommand `yaml:"initial-state"`
SendPollingEvents *bool `yaml:"send-polling-events"`
SendChangeEvents *bool `yaml:"send-change-events"`