RS232 Shield V2

As you know, the Arduino micro controller only has a USB port and a TTL UART interface, so if you need an RS232 port directly connected to your Arduino, look no further than the RS232 Shield.

The RS232 serial port used to be the standard connection for most peripheral ports on PCs, but now the port is primarily used on industrial equipment and automation prototyping, with the RS232 Shield and its DB9 connector, you can now easily access those elements straight from your Arduino.

This rev of the RS232 Shield provides you with the option to choose between two pins from an Arduino (D0 to D7) as software serial ports to communicate with RS232 Shield. Also headers are included with this shield but will need to be soldered on by the end user.

RS232 Shield V2 Product Help and Resources

Core Skill: Soldering

This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.

1 Soldering

Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Member #913804 / about 7 years ago / 1

    Can this shield be stacked twice for two RS232 connectors?

  • Member #498528 / about 8 years ago / 1

    Member #639679 made a really helpful review about using this with a Campbell CR200X that unfortunately cant be responded to. I'm interested in hearing about how you implemented Pakbus (the software layer to this hardware layer)

  • Member #657497 / about 9 years ago / 1

    Could this be used to read data from a digital scale that has an RS232 output?

  • Member #237447 / about 9 years ago / 1

    From the schematic it seems like this won't work with 3.3V boards (e.g. the Arduino Due or any mBed boards). It would be nice if a future revision allowed this (e.g. using the same circuit as your RS232 shifter).

  • slpitz / about 9 years ago / 1

    Would this drop on to a Yun?

  • Member #540249 / about 9 years ago / 1

    Hey Everyone,

    I'm new to using this communication and need some help getting started. I got the thing built and (for now) the jumpers were left where they were when they arrived but from here I'm lost on getting going. Could someone point me to some example code just to get started? It's much appreciated!

  • Member #539897 / about 9 years ago / 1

    It seems like this would work well to control some RS232 equipment. I'm thinking of powering up/down displays simply, by sending the correct codes via simple sketch. Does that sound right to everyone here? Looking forward to getting my hands on this!!

  • Dan_Linder / about 9 years ago / 1

    I want to use this so my Arduino can talk to an external modem. I think I need to change the transmit and receive pins around. Can I do this by simply swapping the TX and RX jumpers, or does the MAX232 chip need something else setup?

  • Member #432628 / about 9 years ago / 1

    when this product is back on stock?

  • bnemec / about 10 years ago / 1

    I like the jumper selection for which pins to use, cool idea. Now I wish they would make one for the RS232 side. I don't really need to have the arduino talk to a computer, would be much better if it talked to the device. So I could solder on a male DB-9 connector but still have to bend pins 2 and 3 out the back then jumper wire cross them. Or I could leave it the way it is and make a little crossover cable... Either way it's much better than the a bread board.

    • Dan_Linder / about 9 years ago / 1

      Sounds like you're trying to get your Aduino to talk to an external device (modem?) like I am. Have you had any luck with this, or did you need a null-modem cable? I think we should just have to swap the jumpers on this board but my (very) short testing didn't seem to work.

      • bnemec / about 9 years ago / 1

        It's been a couple months, but pins 2 and 3 on the DB9 need switched IIRC. I tried this on a little TTL/RS232 level shifter SF sells ( PRT-08780), but it didn't work because it relyed on a "real" RS232 driver on the other end to produce the voltages needed. So assumeing the device doesn't produce the +- voltages we would need something like the beloved MAX232 driver, and I hate breadboarding hence my interest in this product. If you look at the schematic of the PRT-08780 you'll see what I mean.

        BTW, I wanted to us a Spaceball 5000 as a HMI input to a project, and it needs the terminal to produce the voltage swings to get usefull data back.

        • Quazar / about 9 years ago / 1

          Right, the PRT-08780 is questionably RS-232 compliant because it counts on the remote end to provide the negative voltage source via pin 3. It is a clever hack, but I would always just use a MAX232 wherever possible.

          As you indicated, you will have to swap pins 2 and 3 to switch this from DCE (modem) to DTE (computer) pinout. You can do this by cutting traces and running blue-wires, or by patching the connector leads as you described, or using a cross-over cable.

          I've never understood why all products like this don't include a 2x2 block of jumpers to switch between DTE & DCE - it would be a trivial thing to add and would simplify things greatly. Fortunately for me, it is wired correctly for talking to the RS232 port on my projector...

  • kirby g / about 10 years ago / 1

    Well that sold out quick.

Customer Reviews

4 out of 5

Based on 7 ratings:

Currently viewing all customer reviews.

3 of 3 found this helpful:

Works well for our needs!

We successfully used this shield to connect an Arduino Uno to a Campbell Scientific CR200X Data Logger. Doing so also required a null modem cable and a male-to-male serial cable. After some fiddling around with the timings of Campbell's PakBus protocol, we are able to get data from the data logger and send it over an XBee network.

Pros: Seems to work well. Selecting input and output pins with jumpers is a brilliant idea.

Cons: The pins on the shield don't perfectly match the Arduino. There are two on each side that become inaccessible when you attach the shield. They aren't that important (IORef, RST, SDA, etc) but if your project needs them, you'd have to do some extra work to wire stuff into them.

Also, the DB-9 connector takes up vertical space making it difficult (though not impossible) to attach other shields. We were able to get the XBee shield to fit on top, but it doesn't really stack that nicely.

The shield doesn't come with much documentation. The main thing to know is that it should be used with the SoftwareSerial library.

2 of 2 found this helpful:

I may be stupid

As of yet I am not getting this board to talk to the scale that I want it to talk to send and recieve LEDs are dim and the doccumentation isnt all that clear (even less so for the scale. Still working on it though

1 of 3 found this helpful:

No useful docs

Assuming this works as designed, otherwise it would get one star. The lack of any example code makes this a project involving digging through datasheets, I don't have the time or patience. I need something I can easily plug into the project I'm actually working on. Sorry I got it but I should have read more carefully. I was in a hurry.

Simply works

Simple, works as advertised. Love the ability to map to various I/O pins, great for SW serial implementations.


Handy rs232 shield, good build quality and can choose what pins to use, that's nice extra.

Using Hardware Serial Interface

My application does not need a USB interface, so I set it up to communicate with the Arduino via the h/w interface. The Arduino uses D0 and D1 (a.k.a. MRX and MTX) for hardware comms, so I had to change the jumpers as show in this picture: the shield transmits to (Arduino) MRX and receives from (Arduino) MTX.

Interestingly, my cards came configured with the jumpers on different pins (D2 and D3).

NOTE: If you ever want to upload new code to your Arduino, you will have to temporarily remove the jumpers. Upload doesn't work on my Arduino Uno when the RS232 shield takes over serial comms on MTX and MRX.

If this shield had better documentation, I'd give it a 5 star rating.

Plug & play

I just soldered in the headers and plugged this into my Arduino project and had RS232 serial working with no software changes.