Both. I have given up trying to find a reproducible example as it seems to be random, but I have not given up on finding what the glitches are doing to make a signal undecodable. I will do some more experiments and report later.Barf wrote:Glitches: are you talking about the IrWidget or the Arduino?
There seem to be two separate questions here: what is the correct IRP for the Dyson signals, and can the capture hardware capture the Dyson signals accurately. I don't think the hardware question should influence what is put in IrpProtocols.xml. That should be a representation of what a Dyson remote sends, which is what I have tried to do. As I explained earlier, the 100ms and 400ms gaps are real, they occur in the signal generated by the briefest press of the button. IrpTransmogrifier can decode these signals if they are input in a .ict file from IRScope, it can generate these signals as raw time sequences and executors can be written to transmit them. I have written such an executor for MAXQ processors for use in my URC6440. Any simplified form of IRP would have to miss out the ditto frames, as these are sent after two complete frames separated by the gap in question, not after a single frame. As regards hardware that cannot capture the complete signal, that is the purpose of having Dyson_relaxed.I am slightly uncomfortable with your huge gaps within a sequence (60ms, 100ms, 400ms). Is this one sequence with a lunch break, or is it several sequences? Yes, my firmware has a problem with it, but I am pretty sure that it goes for many other types of hardware too. (Not all of them have setable ending timeout...)
On the capture question, it seems to me that IrScrutinizer has all the data it needs to handle the large gaps. I understand that the Timestamp field is a Java Date, which can be read as a time in milliseconds. So if the capture process treats two frames as distinct signals if they are separated by 100ms or more, the true gap between them can be calculated from their timestamps. If the ending silence parameter means what I expect, that a signal continues until a gap of this size is encountered, then the calculated gap can be compared with the ending silence value to see if these should be joined into a single signal. This, of course, presumes that both frames have been captured without glitches, but that is a different issue.