I'd be very interested in any news on this subject.
I tried to decode a Mitsubishi remote control today, using Chris's codes from the Crowe web site. Unfortunately, there was not much similarity with the recorded data I received.
The train of bits was much longer than I anticipated, and also were repeated once more from the remote.
As to the different lengths in the measurements you did with the arduino remote, the numbers indicate as follows :
A preamble comes first, with a logic 1 level for about 3200 uS, followed by a shorter low period.
A logic 1 is decoded if the low period is >1.5 times the previous high period. This has worked for me, anyway.
A logic 0 is decoded if the low period is shorter than the high period, or <1.5 times the high period.
I think the receivers might be particular to the timing of the high and low periods, but maybe not.
I would guess that the frequenzy of the PWM should be around 37kHz on the IR emitter. If the frequenzy is missed somewhat it is mostly the range that would be shorter. The more off, the shorter the range, until a point where it is not getting an IR signal through the receiving fiilter. A frequenzy between 34 to 42 on a 38kHz filter should pass without too much trouble.
I did not get a very good look at the repeating train, but assume it is a repeat of the first. Due to the first numbers not looking at all like Chris's decoded numbers, I did not dig in further. Yet :-)
A decoder can easily be made in Visual Basic within Excel, for instance, where the high+low times were compared with th 1.5 multiplier.
I'd also be very interested in the story of the defective Mitsu, whether it was a general failure or might have been caused by wrong codes being sent from the arduino. This is a bit scary, if you get the checksum right, and the command contains an impossible combination. One would think that the manufacturer of the pump would safeguard towards such an event, but they can hardly be held accountable as long as anyone tampers with the command.
If I can help with the decoding, please let me know.