Creative Commons images are CC BY-NC-SA 3.0

19.95

added to your
shopping cart

quantity
19 available 19 in stock
19.95 1+ units
17.96 10+ units
15.96 100+ units

Description: This is the newest revision and fixes issues with the last board. This breakout board pairs an SP3485 RS-485 transceiver with an FT232RL USB UART IC to convert a USB stream to RS-485. The SP3485 is a half-duplex transceiver, so it can only communicate one way at a time, but it can reach transmission speeds of up to 10Mbps.

The TXDEN pin of the FT232RL is connected to the transmit and receive enable inputs of the SP3485, this line is used to control the transmission mode of the RS-485 transceiver. With the proper drivers installed, the FT232RL will enumerate as a virtual COM port; the drivers are available for Windows, Mac and Linux.

This breakout board includes the SP3485, FT232, TX/RX/RTS LEDs, Mini-B USB connector, filter capacitors, and other components shown on the schematic. We've broken out the RS485 output to three different connections: (1) an RJ-45 connector, (2) a 3-pin 3.55mm screw terminal, and (3) a 3-pin 0.1" pitch header; none of these output connectors come populated.

Features:

  • Fully equipped with SP3485 RS-485 transceiver and FT232RL USB UART IC
  • Operates from USB supply
  • RX, TX, and RTS LED indicators
  • Mini-B USB connector
  • USB power and RX/TX lines broken out to a 0.1" pitch header
  • RS-485 input/output broken out to RJ-45 connector, 3.5mm screw terminal, and 0.1" pitch header
  • Driver/Receiver Enable connected to RTS line of FT232RL
  • -7V to +12V Common-Mode Input Voltage Range

Dimensions: 1.55x0.9 inches

Documents:

Replaces: BOB-09489

Comments 23 comments

  • Has anyone else managed to get this to work for DMX-512? I have it set up with openDMX controller software, but the very second I hook it into the DMX system it causes a blackout.
    This board seems to have the same circuits as many others online (except for some protection circuits missing) and I see no reason why it shouldn’t work.

    • Really late reply, I hope you got your issue fixed. I figured that this may be of some use to others. I am using this for my lighting system. I am using Q Light Controller (http://qlc.sourceforge.net/) This board is functionally the same as the ENTTEC Open DMX USB Interface. In fact I use the same drivers with the board. They are available on the ENTTEC website under Downloads->‘Drivers Setup’ (http://www.enttec.com/index.php?main_menu=Products&pn=70303&show=downloads)

    • I was planning to use this for OpenDMX application as the new Arduino UNO ditched the FT232 chip. Where you able to get the thing to work? Contact appreciated =)

  • can someone tell me where can I find this in the Sparkfun Eagle libraries ????

  • Read for quick and easy fixes! My adapter did not work correctly out of the box. The TX and RX LEDs are reversed as I would expect to see TX LED pulse when sending data to the 485 bus. The CTS# line is unconnected and therefore internally pulled high. The CTS line being high prevents the UART from sending data as the CTS line is the counterpart for RTS/CTS flow control. You could solder pin 11 to ground or better yet, I recommend users perform the following EEPROM change to the FT232RL using the FTDI FT_Prog utility (http://www.ftdichip.com/Support/Utilities.htm).

    • Plug USB to 485 adapter in
    • Devices -> Scan and Parse (Ensure you have the correct device if you have a number connected. If in doubt, disconnect others)
    • FT EEPROM -> Hardware Specific -> Invert RS232 Signals -> (check) Invert CTS#
    • FT EEPROM -> Hardware Specific -> IO Controls -> C0 (select) RXLED#
    • FT EEPROM -> Hardware Specific -> IO Controls -> C1 (select) TXLED#
    • Devices -> Program
    • Cycle the USB device (unplug and re-plug)

    Select Hardware Flow Control (RTS/CTS) in your favorite program or library and away you go!

  • The RTS pin of the FT232RL is connected to the transmit and receive enable inputs of the SP3485

    However schematic shows, TXDEN is connected to RE and DE. Which is correct?

  • One suggestion I have is to bring pins 4/5 on the “RJ45” (don’t get me started about incorrect use of RJ nomenclature) out to JP12, and put ground pads adjacent to them. That way you can easily use the third pair for other things if you don’t need the ground, or jumper across if you do. Maybe add pads for the shield of a shielded “RJ45” while you are at it. The same comment would apply to BOB-10124.

  • /RE and DE should not be connected. If they are it is NOT possible to perform bus contention testing on a multidrop system. If two transmitters were to send at the same time, the only way they know if there was a collision is to read back what they sent to make sure they are the same. The way you have it implemented, enabling the transmitter disables the receiver! I hope I can modify the board to always enable the receiver, if not, it will have to be returned.

    • Most commercial USB-to-RS-485 adapters are built with the /RE and DE connected, since RS-485 is half-duplex (you can either send or receive, but never both at the same time). This allows a single pin of a microcontroller (or the TXDEN pin of an FTDI chip) to control both receive and transmit enables at the same time. Wiring the adapter so both the transmitter and receiver are enabled at the same time will cause any characters transmitted to be “echoed” back, which is only desirable for custom applications where software can distinguish between an echo and a response from another device.

      If bus contention is an issue, try using a protocol where each device has a unique address, a “master” device transmits to the other “slave” devices, and then each slave transmits after a fixed time interval multiplied by their address…so no one talks at the same time. If you truly need full duplex communication, consider using two RS-485 transceivers (and four wires).

      • I suppose this is a matter of taste, but most systems that use RS-485 in the military world use it because it allows for a multidrop system with limited number of wires. In such systems it is important/critical to know if you have had a bus collision. For this reason, the receiver is always left on. When you transmit, you read back what you wrote. If they are the same, great; if not, you had a collision and must rebroadcast. Very similar to Ethernet.

        If in the commercial world RS-485 is only used for single duplex single master to slave setups then their implementation is fine. Otherwise I contend they have their heads in a dark place.

        Not that Sparkfun reads these comments (its been two YEARS since I posted), but if they do, I would suggest the next revision of the board include a solder jumper to allow for a “receiver always on” mode. By default it would connect the /RE and DE as right now. Add or remove the solder jumper and the recieve enable would be enabled and the transmit enable would go back to the micro. Should only add the cost of one resistor and a bit more copper.

        As for considereing other options, I would love to, but I am dictated by my customer. Its been a while, but I think I was able to lift the receiver enable pin and tie it appropriately.

        • Kudos to you for replying to a two-year old comment! I meant my remarks as sort of a clarification to others who read comments (and didn’t realize there was a customer involved who would dictate communication methods). Perhaps you’re right about the jumper.

  • I got mine today and they worked fine once I swapped A & B on the RS 485 end. The Rx and Tx lights are also backwards for my application.

  • I need more throughput than this chip will provide. That is, Larger TX and RX buffers on the chip. Anyone know where I can get a USB to RS485 converter with a larger buffer?

  • Yeah I agree TX & RX are swapped.

  • 1a: Fixed termination resistor is a bad idea.
    1b: The termination resistor is the wrong (common) value.
    2: DE should be tied to TXDEN!
    3: Don’t tie /RE to DE on the SP3485. (Some of us like to hear what we say…)
    I can’t believe all the RS485 break-outs (at the time of writing this) suffer from 1 and 3…

  • Correct me if I’m wrong, but the TX and RX markings seem to be mixed up on the Silk screen on the newest version (BOB-09822)?
    Other than that its a nice little board. Just started using it with PySerial :)
    Cheers!

  • The description above

    Driver/Receiver Enable connected to RTS line of FT232RL
    is incorrect; the enables are in fact connected to one of the GPIO lines of the FT232RL (pin 13, CBUS2/TXDEN).
    This is what most people want; it means that you don’t need special application-layer support for turning on RTS to transmit.
    If you have an application that insists on turning on RTS it should also work fine.

  • Has anyone tried to connect one of these to the RS-485 Breakout sku: BOB-09823?
    I have an RS-485 Breakout connected to a Fez Domino and I am trying to communicate through RS-485 to a PC.
    We have scoped out the RS-485 line and transmitted data in both directions looks fine.
    If we connect a different RS-485 device from a different manufacturer then we can communicate to it in both directions.
    So the issue seems to be communicating between two SP3485 based devices.
    We have tried adding additional bias resisters similar to those on the other device. But it does not help.
    Our best guess is that the issue is related to the 3.3V operation and the fact that each one has a terminating resister. Since an RS-485 network should really not have multiple termination resisters we wonder if this is the problem. Before I start modifying a board I wanted to see if anyone else had sucess with this setup.
    As a product suggestion: a switch or jumper to disconnect the termination resister.

  • Schematic PDF and Eagle files are for RS485 driver board, not the USB to rs485 converter board. (FTDI Chip is not in the schematic, but is on the board in the picture)

  • So does this version use RTS or the FTDI TXDEN signal to enable the SP3485 driver ?
    The schematic seems to still be for the original version of the board.

    • Sorry about that! Fixed.

      • But you didn’t fix the description describing your change… just cost me many hours of time :(
        “Driver/Receiver Enable connected to RTS line of FT232RL”


Related Products