t wanted to follow up that I've successfully updated to the v22 firmware. Now when I send "v" to my IR Toy v2 it displays "V222" in the terminal. Looks like the format is VXXY where XX is the firmware version and Y is the product version (2nd generation IR Toy).
Just checked the source code and the response format of the command is as follows:
V = command response H = Hardware version FF - firmware version
so for Hardware version 2 with firmware 2.2 the response should be V222 and for Hardware version 1 with firmware 2.2 the response should be V122
@Simkins: Great, I will try that out, next time I am updating the code.
So the suggestion is to turn the handshake feature off (aka Enable transmit handshake (0x26), even though it is 'highly recommended' to use it in the doc) and just send the full signal payload all at once, using the '03' command.
Presumably, the OS will then look after any buffering either at serial or USB level.
It hadn't occurred to me that the demod might malfunction in such a peculiar way, if encountering a really strong IR source. I think I rather expected the "on" times to get blown out, rather than shrink.
Yes, you are right. What I have mainly seen is that some of the internal stuff, like inbuilt noise rejection gets overloaded. Some receivers are designed to disregard long pulse sequences and will ignore long AC or continuous signals. Sometimes holding the remote close to the receiver, will overcome this 'feature'.
Regarding timings, the strength of the IR signal landing on the receiver will influence the distortion of the mark/space lengths. Modulation duty cycle would also be a factor. However, the duration of mark/space pairs is usually good/consistent and this characteristic can be used to good effect in decoding algorithms.
The mark times can be increased or decreased with the space times more or less compensating, but mostly I see mark times increased and space times decreased in normal operation. (up to +/- 100 uSecs). The data sheet will give the range in mutiples of the modulation period (for a pre-defined test signal).