DIY RS-232 Interface for Commodore C64 for under $15

If you have a Commodore 64, chances are you’ll eventually need to connect a modem or other serial device to it. You’ll find that’s not quite that easy since the C64 doesn’t have a standard RS-232 serial port. What it does have is called the “user port” and it can do serial over this port but it needs to be changed from TTL levels (0 to +5v) to RS-232 levels (-15v to +15v).

If you’ve ever attempted to purchase a VIC-1011a terminal type, SwiftLink or Turbo232 from eBay you’ll quickly find out that the price gets out of hand. Expect to pay upwards of $100 or more for these adapters.

Luckily, there’s an inexpensive way to get a RS-232 port on your C64 and it’ll cost you less than $15. Ready?

You’ll need these parts for the project.

Connect the RS232-TTL module directly to the C64 user port edge connector using the table below.

RS232-TTL Module C64 User Port
GND A & N
TXD M
RXD B & C
VCC 2

Update! Alwyz from 1200baud suggested that connecting VCC isn’t necessary and potentially dangerous. I’ve had zero problems with mine as listed here. I’m providing this warning so you can make your own decision!

C64 RS-232 Adapter

Observe which side of the user port connector is the top (it’s the one with numbers– letters are on the bottom). It’s helpful to write on it with marker. For wire I used female jumper wire that I cut one end off. For GND and RXD you’ll need to jumper two of the pins together on the user port connector. I used a small bit of CAT5 solid core wire.

Once you’ve got it connected, add the null modem adapter and connect your modem. You may need to also use a gender changer and/or a 9 pin to 25 pin adapter depending on your modem.

Fire up CCGMS, Novaterm or Striketerm, set the baud rate to 2400, set the port to the user port and give it a few “AT” commands. You should see “OK” being returned. If it doesn’t, make sure you have a null modem adapter (test it on another machine to confirm) and double check your connections.

As with any tutorial you find online, be responsible and double check my work and your work before proceeding.

7 thoughts on “DIY RS-232 Interface for Commodore C64 for under $15

  1. Permalink  ⋅ Reply

    dasistdaniel

    March 12, 2014 at 4:48pm

    I don’t have a C64 now to test it myself but there is a serial bluetooth module i use on an Arduino. It’s called HC-06 (Datasheet) and maybee you could use it to get a wireless Bluetooth Connection to the C64.

    • Permalink  ⋅ Reply

      paulrickards

      March 16, 2014 at 1:48pm

      @dasistdaniel Very interesting, that would be a great project to try. I think it would be a great project to create a cartridge that accepted a Lantronix XPort (Ethernet) or Matchport (WiFi) for a C64. Cheers!

  2. Permalink  ⋅ Reply

    Michael

    April 25, 2014 at 9:11pm

    I tried it out, now both of my C64 is dead because of this.. I did exactly like you wrote it.

    • Permalink  ⋅ Reply

      paulrickards

      April 29, 2014 at 10:59pm

      Hi Michael, Sorry to hear that. A couple of folks on Twitter were able to successfully build the interface. I’m not sure how it could “kill” a C64 unless the RFRobot adapter is faulty (even that is a stretch). Have you had luck in troubleshooting them?

  3. Permalink  ⋅ Reply

    Nick

    June 28, 2014 at 2:15pm

    Hey this is Alwyz from 1200baud . I just wanted to point out the VCC to pin 2 is unnecessary and a bad idea. Added voltage that doesn’t need to be present shouldn’t be there. 5v is already running on the TxD line as it is. Damage could occur as a result of VCC being connected.

    • Permalink  ⋅ Reply

      paulrickards

      June 28, 2014 at 3:42pm

      Hello! I’m not sure I understand 100% as TxD would be a signal line and not a constant source of power? I’ve made a couple of these and tested them as have a couple of folks on Twitter with no ill effects. In any case, more information the better! Thanks for the info!

Leave a Reply

Your email will not be published. Name and Email fields are required.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>