Hello, I recently bought a USB-to-TTL Serial Adapter, the DSD TECH SH-U09C, which uses a FT232RL chip. (Actually, the one I received uses a FT232RNL; the company acknowledges elsewhere that they sometimes swap this in, in products that use the FT232RL, because the latter is being made EOL by FTDI soon.)
This works almost out-of-the-box with LIRC, the version I'm using is 0.10.1-6.3ubuntu1. To make transmission work, and actually be picked up by my TV, I have to set txbaud=15200. This is most definitely not the real baud rate.
The real baud rate I'm assuming is 38000 - I previously successfully used the exact same physical IR transmitter module (that I connected to this adapter), on a Raspberry Pi. The RPi uses the Linux gpio_ir_tx driver, which says 38000 in its source code.
In other words there is a 2.5x discrepancy between the stated and actual tx baud rate.
In fact, this hacky workaround is not unique to my device - I read this from someone else online who originally used it on the Adafruit FT232H.
The vid:pid on my adapter is 0403:6001 which seems identical to the original FT232R devices this driver was written for. In fact it's the default values that the driver assumes. So I'm not sure if you can use quite the same workaround as in your commit to add FT232H support.
I also only have this one single device, so I don't know if this workaround is necessary all the time for every other device out there that uses FT232RL/FT232RNL. Probably you have more experience on how to deal with these kinds of situations.
BTW, if I don't use the hack, I get
buffer overflow while generating IR pattern.From ftdi.c:
Even if the hack were not required, these two bits of code seem very weird. What real world device has a baud rate of exactly 65536? My device at least certainly works with txbaud=15200 and it is not "unusable" contrary to the comment.
The Linux gpio_ir_tx driver defaults to 38000 so perhaps that's a better default? Of course the multipliers here need to be taken into account, and that's outside of my knowledge.