How I convinced my 1987 Canon Cat to talk to my 2017 MacBook Pro
2 min readNov 21, 2017
Canon Cat is a wonderful machine that means a lot me. I recently managed to get it to talk to my modern MacBook Pro. It took some time to figure it out, so I thought I’d share. It might also be useful info for connecting other older computers to newer ones via a serial port.
My Cat has a broken floppy drive — which is a common affliction — and my first attempts to connect it using a USB modem and phone cable failed. Here’s how to do the right way:
Ingredients
- MacBook Pro running Mac OS 10.13.1 High Sierra.
- One (1) Canon Cat.
- A USB to serial converter. I bought Cable Matters USB to RS-232 DB9 Male Serial Cable. I understood this one was good since it was based on a Prolific PL 2303 chipset; there might be other options.
- A female DB9 to male DB25 adapter.
Setup on a Mac
- A (paid) driver from mac-usb-serial.com. The original (free) drivers for some reason didn’t work for me. Note that you have to enable a third-party KEXT using the Security & Privacy panel. (It should be relatively obvious what to do during installation.)
Setup on the Cat
- Press [Use Front]+[Setup] a few times to go to Serial Port Connection.
- Make sure it says Connect to: SEND Command (and not alternate printer).
- Switch Communications mode to Full Duplex.
- Switch Line terminator to CR/LF.
- Leave other options as 9600/8 bits/no parity/1 stop bit.
Starting a conversation
- Connect the USB to my computer, and the other side to the Cat through the adapter.
- Power up both machines.
- On the Mac, open Terminal and type
cat /dev/tty.Repleo-PL2303-00006114
. Note that the last digits might be different, usually you can just type all the way to Repleo and press [Tab] to autocomplete. - Press [Ctrl]+[C] to abort. I am not sure why these last two steps are necessary, but without them the communication only works one way.
- Type
screen -L /dev/tty.Repleo-PL2303-00006114
.
You’re done!!!
- What you type on your MacBook will appear on Cat’s screen immediately. To send more stuff, just copy and paste into the Terminal window.
- You can select text using leaping, and press [Use Front]+[Send] to send it back to the Mac.
- The
-L
option makes sure that the output is saved in a screenlog.0 file.
This experiment was made as part of writing a book about keyboards.