New KiCAD OSHW PCB project – Getting rid of FTDI – BB-CH340T USB to Serial converter


BB-CH340T-3

Many of you probably remember the FTDI nasty drivers they released just to mess up with the FTDI clones.
This caused lot of trouble to people who use FTDI devices, we have been also affected.
We try to buy FT232RL from local distributor and they had no stock, then we look around and found the chips from other supplier, but unfortunately we got clone FTDI chips.
We made production with these chips and sent boards to customers, then at one point of time we start to get complains (only from Windows users) that boards stop working.
All these windows users were affected by the evil drivers released by FTDI which make VID/PID as zero if the chip is recognized to be not FTDI original.

We try to help our customers who have been affected on our forum and got nasty message from FTDI lawers to remove all the help instructions from our forum and pull back all boards which use these clone FTDI chips from customers and distributors. WTF?

No wonder from this moment we took decision to avoid dealing with this cheeky and nasty company as much as possible. Re-designing all our boards which were unfortunate to use FTDI chips.

CH340T is nice alternative to FTDI chips and have same features and even more, but cost exactly 1/10th of FTDI chip price.

BB-CH340T is nice small board which takes power from USB and can provide 3.3V and 5V to target together with Serial Tx and Rx (transmit and receive) signals and GND.

Note that by default neither 3.3V neither 5V is selected.

BB-CH340T is specially made to be used easy with breadboard. The design is open source hardware made with KiCAD and files are on Github under Apache 2.0 licensee.

33 Comments (+add yours?)

  1. maxime
    Jun 26, 2015 @ 15:13:49

    So not only you kicked out a company who sent you lawyers after they messed up their driver, but you also got a better design and better price for open source equipment. Great job !🙂

    Reply

  2. Todor
    Jun 26, 2015 @ 15:17:26

    Thank you! You always come up with a better solution.

    Reply

  3. SK
    Jun 26, 2015 @ 15:59:11

    “Out of stock” – have you not stocked it yet or it just sold like hotcakes/warm bread (or a Slavi Trifonov concert :D) ?

    Reply

  4. zoobab
    Jun 26, 2015 @ 21:36:53

    Too bad you do not expose more pins, even with headers to be soldered later on on the board. Like RTS CTS and so on. The CH340 does not have a good reputation for its drivers, this comment in the BSD driver says a lot (http://ftp.netbsd.org/pub/NetBSD/NetBSD-release-5/src/sys/dev/usb/uchcom.c): “driver for WinChipHead CH341/340, the worst USB-serial chip in the world.”

    And for OSX, it is a pain to find the right drivers, the ones that apparently works fine are sold 5USD.

    Reply

    • OLIMEX Ltd
      Jun 27, 2015 @ 07:52:50

      interesting find, but actually should be renamed “chip with the worst written drivers ever”🙂 CH340 hardware works, what I read is that the lame software developers wrote loosy drivers which do not handle parity properly (probably tested it only for 8N1 config like us🙂 )

      Reply

  5. Gerrit
    Jun 26, 2015 @ 22:20:36

    I have a converter with this chip, and the the linux driver is broken at the moment, had to follow the instructions on this page to make it work under ubuntu

    http://www.cnx-software.com/2015/03/06/how-to-build-a-single-kernel-module-driver-in-ubuntu/

    Reply

    • OLIMEX Ltd
      Jun 27, 2015 @ 07:56:55

      the article says the driver have problem with parity check, we used our module always with 8N1 settings i.e. no parity this is why we didn’t noticed this bug🙂 its so odd there are apps which use parity check with serial converter this is so old timer🙂

      Reply

      • sergio
        Jun 27, 2015 @ 14:34:13

        “We try to help our customers who have been affected on our forum and got nasty message from FTDI lawers to remove all the help instructions from our forum and pull back all boards which use these clone FTDI chips from customers and distributors. ”

        Really – what did you expect them to say?

        You think you’ve hurt FTDI by using CH340? No, you hurt them much more by using counterfeit FTDI chips.

        If I buy something from you using counterfeit cash is it then right for you to use that counterfeit cash to buy a house from some poor little old lady?

      • OLIMEX Ltd
        Jun 27, 2015 @ 15:04:46

        if you read this forum tread you will see that we didn’t know at all that this FTDI chip is fake, looking into the problems reported we just found that all chips with problem had same date-code marking and all our efforts were to help customers who had products with this date-code. So actually FTDI hurt our business with their nasty drivers, then wanted us to leave all customer who bought these product of ours without support. Instead to chase their competitor who made these fake chips, they turns against the people who use their products and have been cheated by obtaining fake chips.
        I do not care if we will hurt FTDI switching to CH340T they hurt themself enough loosing creditability with this nasty driver game, no one with his mind will ever design something with their chips.

      • sergio
        Jun 27, 2015 @ 16:16:21

        “wanted us to leave all customer who bought these product of ours without support”

        As I understood it FTDI wanted you to recall all products with fake FTDI parts. How is this leaving your customers without support.

        So if I buy something from you with (let us say) a fake battery monitor (that is dangerous and might cause the battery to explode), would you consider yourselves responsible for recalling the product or is it now my problem?

        As an end user, FTDI has not lost credibility with me. It is good for me to know that if I choose to buy FTDI that that is what I get. And if I receive something with a fake FTDI part I can send it back for a refund because I can quickly and easily tell it is a fake. How bad must a fake part be before it is unacceptable for you to use? Do I need to remind you that many fake parts do not meet the specs of real parts.

      • SK
        Jun 27, 2015 @ 17:14:51

        Sergio, you are really using an unequal example here “that is dangerous and might cause the battery to explode” – of course something dangerous will be recalled – using a supplemenatry serial chip that may not be genuine is something that will not hurt you and if it does it’s job I don’t see the problem – maybe Olimex could just tell their customers that this particular batch has serial chip not from FTDI but from unknown brand and if you insist on the branded one then you can get this product exchanged. Also do you think that recalling products is really a viable option? These products are being used after all, not just sitting around to b shipped. Also with products like the SOMs they are themselves used in other products that get sold to other customers and etc. FTDIs decision to mess up with their drivers was not very warmly met – sure you should protect your intelectual work and brand and etc. but you should chase the bad guys that produce these chips not hurt the unsuspicious end users.

        I’ll end with one example – if your the rubber mats of your car are found to not be genuine do you expect the car manufacturer to recall your whole car?

      • OLIMEX Ltd
        Jun 27, 2015 @ 18:02:49

        well said🙂 also it doesent matter if Sergio has lost creditability or not in FTDI as end user as he never buy chips from them in volumes, neither he use these in volume production and this is what makes the FTDI business – the manufacturing companies. When you send lawyers to threaten your customers you simple tell them that you do not want to work with them anymore.

      • sergio
        Jun 27, 2015 @ 20:59:17

        SK, I tried to highlight the extreme consequence of using a fake component but just because the “serial chip” is not tied directly to a battery does not mean that the consequence cannot be serious. You yourself state that users are building Olimex products such as SOMs into other products. Therefore you cannot say with ANY degree of certainty that a fake component cannot have a catastrophic effect in an end user product.

        I have seen many posts on the net where users have had problems which have been traced to “bad” serial converters. Many of these seem to use fake FTDI chips. Yes these particular problems have not had catastrophic effects. But still the countless hours lost trying to debug software (when the hardware is actually at fault) cannot be ignored. Also, don’t forget, many converters are not used simply to convert USB to TTL serial, they are also used to control other I/O directly.

        @OLIMEX, actually the fact that I still have respect for FTDI chips as an end user is important. Just because I don’t buy chips in large volume does not mean that I do not influence the purchase of large numbers of modules and systems that do use them. The fact that I bother to post here should tell you something.

        Had OLIMEX simply issued a statement saying that “because of difficulty sourcing FTDI they were now also supplying CH340 modules” I would not have responded. But this whole “nasty FTDI guy” stuff and the tone of subsequent posts leads me to conclude that OLIMEX simply intends to continue selling any product it has already made that contain the fake FTDI chips in them – am I wrong?

      • OLIMEX Ltd
        Jun 27, 2015 @ 21:31:12

        @sergio you are very confused, we got this fake chips lot 2 years ago and no one could see if they were fake or not when we used, then one year later when long time pass since the products were sold to end customers FTDI decided to make this brilliant move with the drivers, so we start got complains for products which were working OK at customer side for year and suddendly stop working due to the new drivers trick, so there are no fake chips in any of our boards for sale, these were from single lot used long time ago
        so to answer your question – we do not intend to sell any more products which contain fake neither original FTDI chips, all products we have with FTDI chips are already tailed for re-design

      • SK
        Jun 27, 2015 @ 21:45:32

        “OLIMEX simply intends to continue selling any product it has already made that contain the fake FTDI chips in them – am I wrong?”

        I belive Olimex had already SOLD all such products and they were using a particular batch of non-genuine chips. Have you missed this sentence from the article “Re-designing all our boards which were unfortunate to use FTDI chips” – which means they intend to replace FTDI chips in all their products not continue selling products with FTDI chips (genuine or not).

        About the functionality part – yes, I said “if it does it’s job” about the counterfeit chip. If it is not working of course it should be replaced. I am sure Olimex looked into that after they understood where the proble was. Also they do functional tests of their products.

        What you seem to not agree with us is that the move from FTDI was very aggressive and not what a serious company should do (and I am not very sure if it is leagal at all) – consider critical equipment which was unfortunate enough to have counterfeit FTDI chips in it for some reason – so you are OK with someone making it to just stop working for whatever their reason is? Weren’t you the one stressing the fact that even a serial chip failure is important? If I had some equipment that FTDI sabotaged (I belibe this is the correct word) I could very well sue FTDI for bricking my equipment. And what about if it really was business/mission/safety critical system as you stress?

        All in all FTDI are in their right to protect their work but they used the wrong method and on the wrong people (end-users as I already stated). It is like when you are angry and you let the steam off at someone innocent in the situation – it is just bad temper and show you are either not euqipped or willing to solve, or simply afraid of facing the real problem and dealing with it.
        Their is a great Bulgarian proverb that I will paraphrase and loosly translate with some lost in meaning and context – “It is not the one that is eating the bread the guilty guy, but the one selling it to him” – so as I already stated – go after the PRODUCERS of counterfeit chips.

      • Gerr
        Jun 27, 2015 @ 22:35:28

        Even with 8N1 settings I had problems with the current Linux driver. In one direction all characters got distorted, if forgot which one. so if someone has the same effect then the alternative driver is a solution

      • sergio
        Jun 28, 2015 @ 15:18:50

        “@sergio you are very confused…”
        🙂

        “to answer your question – we do not intend to sell any more products which contain fake neither original FTDI chips”

        Thank you for clearing this up.

        Friendly Regards
        Sergio

  6. Guest
    Jun 28, 2015 @ 00:22:51

    Hmm… if I read the datasheet correctly, the RX/TX signals are always at CH340’s Vcc level. In that case, the 3.3V/5V jumper is misleading – it only switches the Vcc at the connector but the RX/TX signals are always 5V and may damage 3.3V boards.

    Reply

    • OLIMEX Ltd
      Jun 28, 2015 @ 09:50:50

      obviously you have to re-read datasheet more carefully🙂

      Reply

      • Guest
        Jun 28, 2015 @ 13:20:39

        So, where am I wrong? The datasheet says: VOHmin@3mA = VCC-0.5V. Your board always provides VUSB (5V) to VCC so VOH is at least 4.5V. Besides, if the chip would always drive the lines with 3.3V, some of their example circuits wouldn’t work (3.3V is not enough to turn the PNPs off).

      • SK
        Jun 28, 2015 @ 13:52:14

        On the PDF schematic I don’t see a way to select the RX/TX voltage through the smd jumpers, too. They only select the voltage on pin1 of output connector? I am a little bit confused from the datasheet – V3 pin on chip is stated to be input? You are using it as output. Generally speaking the datasheet (I found) was written in very poor english.

    • zoobab
      Jun 28, 2015 @ 16:30:49

      To be sure to power the ch340 in 3.3v, i have hacked a usb extender with male and female connectors on each side, and a ams1117 in the middle of the cable to feed the usb device with 3.3v only. This works perfectly with those cheap 1eur usb dongles.

      Reply

  7. OLIMEX Ltd
    Jun 29, 2015 @ 09:11:06

    V3 is both internal 3.3V voltage regulator output and output driver level source, so if left unconnected output is 3.3V if connected to 5V internal voltage regulator is by-passed and output levels are 5V, so in our schematic you can select 5 or 3.3V to target but serial outputs are always safe at 3.3V, if you want to have 5V levels just connect both solder jumpers together

    Reply

    • SK
      Jun 29, 2015 @ 09:20:46

      This should go in the product page and documentation:

      “You can select 5 or 3.3V [power] to target but serial outputs [Rx/Tx] are always safe at 3.3V [level], if you want to have 5V levels just connect both solder jumpers together [= 5V power AND 5V level signals]”.

      Reply

    • Guest
      Jun 29, 2015 @ 16:41:32

      Sorry, but what you are saying doesn’t make sense. Force feeding 5V into the chip’s 3.3V rail?!? Did you actually measure that?

      According to the datasheet, the V3-pin is never supposed to be connected to 5V. You connect it to VCC only if VCC is already 3.3V, see datasheet parameter for VCC (V3 connect VCC): 3.3V-3.8V. The 3.3V provided by the internal regulator is required (at least) for the USB data lines, the CPU may run on it, too. But the RS232 pins are definitely referenced to VCC in the datasheet, not to V3.

      There’s a reason why most adapters which support 3.3V have an extra 3.3V regulator…

      Reply

      • SK
        Jun 29, 2015 @ 17:20:18

        Yep, the datasheet does state “VCC – Source voltage – V3 connect to VCC – 3.3 3.3 3.8 (Min, Typical, Max) V”

        but also the indecipherable:

        “pin 5, V3, POWER – connects of VCC to input outside power while 3.3V,
        connects of 0.01uF decoupling capacitance outside while 5V”

        Olimex should really make some measurements if they haven’t fully tested all modes.

  8. gicho
    Jun 30, 2015 @ 11:32:32

    I don’t like this CH340 – in extreme load conditions their windows (x64) driver causes blue screens. This does not happen with FTDI. So I do not use them for mass production, only for “arduino” style DIY experiments.
    The quality of the FTDI product is better that PL2303, CH340, CH341. Both HW and SW (drivers). SiLabs CP210X might be acceptable alternative.
    And I don’t see what’s so wrong with protecting their investments. We all do this, with all possible legal measures that we can.
    If they (FTDI) had not made this that by now 90% of user would have been “supplied” with fake FTDIs, that run with BSOD, or don’t run at all. I don’t like this, do you? Maybe FTDI will have to close because of that?
    Prolific also made similar move in the past (with “protected” drivers). When demand for CH340 rises a fake will come. What comes next?
    If you have problems with FTDI lawyers than you have to act against your “fake” distributor. I suppose that you will not buy CH340 from the same “fake” distributor, you have lost confidence in them? Because if you do (buy from them), that how could you customers be sure that they will not get fake CH340s?
    What will happen with ARM-OCD products? If you deny to work with FTDI than this will be the end of those JTAG adapters. Should we look for alternative sources of FTDI based JTAG adapters?

    Reply

  9. LinuxRulez
    Jun 30, 2015 @ 12:20:11

    On other hand, under Linux we do not have to care if it was “original” FTDI or not. Linux kernel devs would not accept harmful patches, whatever the reason behind them.

    Though as a PRANK there was something like 1st april fool joke proposal to include detection of fake FTDIs into FTDI driver. Of course, this prank never made it into mainline kernel and rather meant to show who is really in charge when it comes to decistions. So, in proprietary OS someone makes decisions instead of you and you can’t override them, even if you do not like it. That’s where opensource shines. If I would dislike something, it would take me about 5 minutes to revert troublesome change and about 10 minutes to rebuild kernel and module, making attempts to force me into something rather futile😛. So isn’t it time for winduz lowers to finally turn their brains on and get idea that it is all about control and proprietary software is a thing which always attempts to be in charge of things instead of you, users. Needless to say it makes Windows and other proprietary OSes and programs really bad choice for makers and creators. If someone uses something proprietary, they can always count on hitting brick wall with their faces when proprietary program authors would decide so.

    Reply

    • OLIMEX Ltd
      Jun 30, 2015 @ 12:26:57

      well said🙂

      Reply

    • gicho
      Jun 30, 2015 @ 14:38:27

      Sure, but now, under linux, you will have troubles because of buggy CH340 drivers. So, how this is better? Nobody knows the actual reasons, but FTDI say that they made this to save the problems that all user will see when thay get a “fake” FTDI.
      I respect Linux and open source, but someone has to pay the bills. There should be a bussiness model behind it. Developing a chip, producing it, writing drivers, supporting all this things is not easy. Libftdi builds on top of all this work so it is a tiny part of the whole chain in your development setup.You should replace all parts of it with your own to be free.
      If you don’t want proprietary things you have to drop FTDI/CH/Prolific and make your own (non-prop) HW and run usb stack on it. And because of proprietary USB licensing (vendor id) you have to use another bus, maybe native RS232.
      You should know that in Windows you can change (revert) the driver without git-ting, building, rebooting… So it has nothing to do with Windows. In windows world Microsoft has the right to accept or reject given change (this driver). In Linux “kernel developers” has this power. Hm, where is the difference? If those kernel devs did accept the change I would have problems. If Microsoft did not accept I would not have… So it is up to the maintainer of the OS to accept/reject. Still quite subjective, isn’t it?
      What if I wanted (on Linux) to be protected against fake FTDIs and I could not because the change was not accepted? Isn’t this a trouble for me?

      Reply

  10. Dave Berkeley
    Jul 02, 2015 @ 09:52:43

    Interesting decision to drop FTDI chips. The problem I have with the CH340 is it doesn’t allow a unique id to be programmed, making it difficult to use udev to assign a device name.

    I’ve documented my approach here :

    http://www.rotwang.co.uk/projects/gasmeter.html

    Am I missing something, or does the CH340 lack this facility?

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: