- name = 'AM230x/DHTxx'
- longname = 'Aosong AM230x/DHTxx'
- desc = 'Aosong AM230x/DHTxx humidity/temperature sensor protocol.'
+ name = 'AM230x/DHTxx/RHTxx'
+ longname = 'Aosong AM230x/DHTxx/RHTxx'
+ desc = 'Aosong AM230x/DHTxx/RHTxx humidity/temperature sensor protocol.'
- 'default': 'am230x', 'values': ('am230x', 'dht11')},
+ 'default': 'am230x', 'values': ('am230x/rht', 'dht11')},
def metadata(self, key, value):
if key != srd.SRD_CONF_SAMPLERATE:
return
def metadata(self, key, value):
if key != srd.SRD_CONF_SAMPLERATE:
return
self.fall = self.samplenum
self.state = 'WAIT FOR START HIGH'
elif self.state == 'WAIT FOR START HIGH':
self.fall = self.samplenum
self.state = 'WAIT FOR START HIGH'
elif self.state == 'WAIT FOR START HIGH':
if self.is_valid('START LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR RESPONSE LOW'
else:
self.reset()
elif self.state == 'WAIT FOR RESPONSE LOW':
if self.is_valid('START LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR RESPONSE LOW'
else:
self.reset()
elif self.state == 'WAIT FOR RESPONSE LOW':
if self.is_valid('START HIGH'):
self.putfs([0, ['Start', 'S']])
self.fall = self.samplenum
if self.is_valid('START HIGH'):
self.putfs([0, ['Start', 'S']])
self.fall = self.samplenum
if self.is_valid('RESPONSE LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR FIRST BIT'
else:
self.reset()
elif self.state == 'WAIT FOR FIRST BIT':
if self.is_valid('RESPONSE LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR FIRST BIT'
else:
self.reset()
elif self.state == 'WAIT FOR FIRST BIT':
if self.is_valid('RESPONSE HIGH'):
self.putfs([1, ['Response', 'R']])
self.fall = self.samplenum
if self.is_valid('RESPONSE HIGH'):
self.putfs([1, ['Response', 'R']])
self.fall = self.samplenum
if self.is_valid('BIT LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR BIT LOW'
else:
self.reset()
elif self.state == 'WAIT FOR BIT LOW':
if self.is_valid('BIT LOW'):
self.rise = self.samplenum
self.state = 'WAIT FOR BIT LOW'
else:
self.reset()
elif self.state == 'WAIT FOR BIT LOW':