I'm using a FT230X UART, and I'd like to use it with a non-standard baud rate. I came accross this note, explaining that I have to modify the driver file, but even with this documentation I have some trouble.

I'd like to replace the standard rate of 115200 baud with a non-standard one of 125000. I tried to follow the method described in the note but I'm not going anywhere whis this at the moment. Could anyone explain how to do it?

  • \$\begingroup\$ Why would you want to do that? \$\endgroup\$ – Federico Russo Aug 14 '13 at 15:55
  • 1
    \$\begingroup\$ I've seen it in an optical fibre comms system. Some designers just like to use system clocks to derive every clock they use in a system... leaving you with nice non-standard rates.... besides.. why is 115200 a defacto standard rate? \$\endgroup\$ – Spoon Aug 14 '13 at 22:49
  • \$\begingroup\$ What is not working for you?... Is it you've followed the steps (Which I think was poorly written if your going from know baud rate to divisor to the .INF file entry ) \$\endgroup\$ – Spoon Aug 14 '13 at 23:31
  • 1
    \$\begingroup\$ I want to do that because I'm writing a firmware for the chip, and I'm setting the baud rate by calculating an integer equal to U2BRG = 4000000/(16 x baudrate) - 1. With 115200 bauds it's equal to 1.17, so the closest int I can use is 1. But if I stick at 115200 bauds with U2BRG = 1, the error is about +/- 8%. That's why I have to alias the 115200 value to 125000, which is the rate I have to apply if U2BRG = 1. \$\endgroup\$ – Whatever Aug 16 '13 at 7:53

Assuming your using the later version for the FTDIPORT.INF file then the answer is to divide 3,000,000 by 125,000 = 24.0 or 18 Hex. So by doing the quick and dirty by looking through the examples of values with no fractional divisors we find.

34,00,00,00 => divisor = 52, rate = 57,692

1A,00,00,00 => divisor = 26, rate = 115,384

Change the entry 1A to 18.

Note you have to reload the drivers (reboot is easier in some cases)

Also Note: The current ftdiport.inf file contains both formats for the config data string. You select/disable the correct string by using a ; at the start of the line to comment out the one you do not want. Only one entry for Config Data should be used.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.