Hello Wolfram, Thanks for your input :)
> The latter is called a void message and declared illegal > in the specs. So it would make sense to emit a warning annotation if this condition is encountered in FIND_ADDRESS? -Soeren On Sun, 2020-04-05 at 19:02 +0200, Wolfram Sang wrote: > Hi, > > > elif self.state == 'FIND ACK': > > - # Wait for a data/ack bit: SCL = rising. > > - (scl, sda) = self.wait({0: 'r'}) > > - self.get_ack(scl, sda) > > + # Wait for any of the following conditions (or > > combinations): > > + # a) a data/ack bit: SCL = rising. > > + # b) STOP condition (P): SCL = high, SDA = rising > > + (scl, sda) = self.wait([{0: 'r'}, {0: 'h', 1: 'r'}]) > > + if (self.matched & (0b1 << 0)): > > + self.get_ack(scl, sda) > > + elif (self.matched & (0b1 << 1)): > > + self.handle_stop() > > This change makes much sense to me. I would even go one step further > and > add it to FIND_ADDRESS as well. The latter is called a void message > and > declared illegal in the specs. But most devices can handle this, so > we > can surely see this in the wild. > > Regards, > > Wolfram > > _______________________________________________ > sigrok-devel mailing list > sigrok-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/sigrok-devel _______________________________________________ sigrok-devel mailing list sigrok-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sigrok-devel