sound_sensor_node: add threshold configuration option
This commit is contained in:
parent
52544fdacd
commit
a69344d91a
10
doc/sound_sensor_node.md
Normal file
10
doc/sound_sensor_node.md
Normal file
@ -0,0 +1,10 @@
|
||||
## Configuration
|
||||
|
||||
`/etc/sound_sensor_node.toml`:
|
||||
```toml
|
||||
[node]
|
||||
name = "diana"
|
||||
pin = "PC0"
|
||||
server_addr = "192.168.1.2:8311"
|
||||
threshold = 10
|
||||
```
|
@ -16,6 +16,7 @@ class SoundSensorNode:
|
||||
name: str,
|
||||
pinname: str,
|
||||
server_addr: Optional[Addr],
|
||||
threshold: int = 1,
|
||||
delay=0.005):
|
||||
|
||||
if not hasattr(gpioport, pinname):
|
||||
@ -24,6 +25,7 @@ class SoundSensorNode:
|
||||
self.pin = getattr(gpioport, pinname)
|
||||
self.name = name
|
||||
self.delay = delay
|
||||
self.threshold = threshold
|
||||
|
||||
self.server_addr = server_addr
|
||||
|
||||
@ -43,7 +45,7 @@ class SoundSensorNode:
|
||||
hits = self.hits
|
||||
self.hits = 0
|
||||
|
||||
if hits > 0:
|
||||
if hits >= self.threshold:
|
||||
try:
|
||||
if self.server_addr is not None:
|
||||
send_datagram(stringify([self.name, hits]), self.server_addr)
|
||||
|
@ -27,6 +27,7 @@ if __name__ == '__main__':
|
||||
|
||||
node = SoundSensorNode(name=config['node']['name'],
|
||||
pinname=config['node']['pin'],
|
||||
threshold=config['node']['threshold'] if 'threshold' in config['node'] else 1,
|
||||
server_addr=server_addr,
|
||||
**kwargs)
|
||||
node.run()
|
||||
|
Loading…
x
Reference in New Issue
Block a user