Mac's are excellent tools for accessing serial device TTY ports (to console into PBX's, switches, and routers). You just need a serial to USB adapter, the right driver, and some Terminal software
You can use screen, although ZTermgoSerial, or Minicom offer more features and functionality.

Drivers

Most Serial-to-USB adapters will work on a Mac with one of the following OS X drivers:

 Prolific PL2303: PL2303_MacOSX_v1_5_1.zip
 FTDI USB Serial: FTDI_MacOSX_v2.2.18.zip

If your adapter doesn't work with either of these, try the following sources:

  • Silicon Labs - CP210x USB to UART Bridge Virtual COM Port (VCP) drivers.
  • Belkin - USB Serial Adapters: F5U257, F5U103, F5U003 (poor OS X support).
  • Keyspan serial-USB adapter drivers can be found in their Support Section.

NOTE: It may be necessary to remove any previous driver before installing a newer one, eg:

$ sudo rm -rf /System/Library/Extensions/ProlificUsbSerial.kext

After installing the correct driver, plug in your USB-Serial adapter, and open a Terminal session (Applications/Utilities). 
Enter the command ls /dev/cu.*, and look for something like usbserial (or similar):

$ ls /dev/cu.*
/dev/cu.Bluetooth-Modem /dev/cu.iPhone-WirelessiAP
/dev/cu.Bluetooth-PDA-Sync /dev/cu.usbserial

This indicates the USB-Serial driver is working. Select this port name in a terminal program. 
Note: Check your adapter still works after a Mac OS Update, as you may have to re-install the driver.

You might notice that each serial device shows up twice in /dev, once as a tty.* and once as a cu.*. So, what's the difference? Well, TTY devices are for calling into UNIX systems, whereas CU (Call-Up) devices are for calling out from them (eg, modems). We want to call-out from our Mac, so /dev/cu.* is the correct device to use.

The technical difference is that /dev/tty.* devices will wait (or listen) for DCD (data-carrier-detect), eg, someone calling in, before responding. /dev/cu.* devices do not assert DCD, so they will always connect (respond or succeed) immediately.

Software

Having installed the right driver, our USB-Serial adapter will show up in /dev/cu.* (as shown above). We now need some terminal emulation software before we can connect to anything. Here are some Mac OS X terminal emulation programs:

GUI apps:  Zterm  
 goSerial 
  Terminal apps:  screen * 
 minicom
 

I use and (highly) recommend minicom, but there are several alternatives. 
screen is built-in to Mac OS X, the alternatives require downloading and installing.

ZTerm

ZTerm is a well known terminal emulation program thats been around for years, updated for Intel Macs. It supports VT100 emulation, which means it sorta kinda works with Meridian Mail (Function keys on a MacBook: fn + f-key). Shareware, but registration is $20.

To configure ZTerm, open Settings > Modem Preferences and select your USB-Serial device as the default modem (Serial Port). Then edit your connection in Settings > Connection. Remember to connect the USB-Serial cable before launching ZTerm. The following pictures explain the steps:

 

goSerial

goSerial can open multiple connections simultaneously, send and receive files, log sessions, and it supports scripting. There is no terminal emulation (VT100) support. goSerial is Donation ware.

To configure goSerial, click the light switch in the Toolbar and select your USB-Serial device as the Serial Port. The communication settings are set in the same window. The serial ports dynamically updates if devices are added or removed. The following picture shows the settings window:

 

screen

You can also use the Mac OS X built in Terminal program and screen, there's no extra software needed:

  1. Open an OS X terminal session (window)
  2. Find the right TTY device. Type: ls /dev/cu.*

    With the USB-Serial adapter plugged in, you'll get a list, including something like this:

    $ ls /dev/cu.*
    /dev/cu.Bluetooth-Modem /dev/cu.iPhone-WirelessiAP
    /dev/cu.Bluetooth-PDA-Sync /dev/cu.usbserial
  3. Then type: screen /dev/cu.usbserial 9600 
    The 9600 at the end is the baud rate. You can use any standard rate, eg, 9600, or 19200 for a Sig Server!

     

  4. To quit the screen app, type CTRL-A, then CTRL-\.

Type man screen in Terminal for further information on screen commands.

minicom

Alternatively, if you'd like a few more features, and a retro feel, you can install minicom 2.2  which is also my program of choice. 
The linked version works under OS X 10.7 Lion, and 10.8 Mountain Lion. Minicom supports VT100 emulation, which means it sorta kinda works with Meridian Mail (Function keys on a MacBook: fn + f-key).

Download and run the minicom package installer, then manually edit your $PATH with sudo nano /private/etc/paths
Add the following line to the bottom of the file: /opt/minicom/2.2/bin, save and exit - then relaunch the terminal.

Run minicom -s first to configure your serial interface device name, and other options. Then, Save setup as dfl (default) and Exit. Your serial interface device name is found with ls /dev/cu.* (as shown above). Always launch minicom, with your selected serial adapter plugged in and available to avoid an error. In the example below, the serial device is configured as /dev/cu.KeySerial1:

 

Click image to view, or right-click and Open Link in a new window/tab

In minicom, commands can be called by CTRL-A <key>, for example, change your serial port settings with CTRL-A P 
Press CTRL-A Z for a Command Summary, and help on special keys. Enter CTRL-A X to quit.

HINT: Change your OS X terminal window size to 80x25 (1 line more) so you can see the bottom Minicom status bar. 
(Terminal Preferences -> Settings -> Window). Open a new window for this change to take effect.

 

Note, the minicom installer creates /opt, and its not hidden in the OS X finder. Rectify this with: sudo chflags hidden /opt

[转]Mac's and serial TTY's的更多相关文章

  1. esp8266 免费wifi强推广告神器(4) 发现当前WIFI下的用户数目,IP,MAC请求http信息 在用户请求跳转后跳转

    需求: 1 获取当前连接客户端的HTTP请求各种信息 方法 get  http 请求路径  例如  /index.html   /    /pic.jpg 请求版本   HTTP/1.0     HT ...

  2. 获取与esp8266连接的客户端的Mac地址 IP 端口 控制停止等问题

    两个关键的库 ESP8266WebServer.h WiFiClient.h ESP8266WiFiAP.cpp C:\Users\dongdong\Desktop\Arduino-master\li ...

  3. virsh console配置

    If you're trying to get to the console, you can either use virt-viewer for the graphical console or ...

  4. pppd - 点对点协议守护进程

    总览 SYNOPSIS pppd [ tty_name ] [ speed ] [ options ] 描述 点对点协议 (PPP) 提供一种在点对点串列线路上传输资料流 (datagrams)的方法 ...

  5. devices-list

    转自:https://www.kernel.org/pub/linux/docs/lanana/device-list/devices-2.6.txt LINUX ALLOCATED DEVICES ...

  6. Linux procfs详解

    1.0 proc文件系统总览在类Unix系统中体现了一种良好的抽象哲学,就是几乎所有的数据实体都被抽象成一个统一的接口--文件来看待,这样我们就可以用一些简单的基本工具完成大量复杂的操作.在Linux ...

  7. 微信客户端+微信公众平台+新浪云SAE+Arduino+WS100(控制LED)

    第一步:准备 1.智能手机微信客户端或微信电脑版 2.注册微信公众平台 https://mp.weixin.qq.com 3.注册新浪账号 http://www.sinacloud.com 4.拥有一 ...

  8. 微信客户端+微信公众平台+新浪云SAE+Arduino+WS100(控制LED)

    第一步:准备 1.智能手机微信客户端或微信电脑版 2.注册微信公众平台 https://mp.weixin.qq.com 3.注册新浪账号 http://www.sinacloud.com 4.拥有一 ...

  9. android获取设备唯一标示

    概述 有时需要对用户设备进行标识,所以希望能够得到一个稳定可靠并且唯一的识别码.虽然Android系统中提供了这样设备识别码,但是由于Android系统版本.厂商定制系统中的Bug等限制,稳定性和唯一 ...

随机推荐

  1. JS的parent对象

    top: 该变更永远指分割窗口最高层次的浏览器窗口.如果计划从分割窗口的最高层次开始执行命令,就可以用top变量. parent: 该变量指的是包含当前分割窗口的父窗口.如果在一个窗口内有分割窗口,而 ...

  2. 兼容Firefox和IE的onpropertychange事件oninput

    原文 兼容Firefox和IE的onpropertychange事件oninput onpropertychange能够捕获每次输入值的变化.例如:对象的value值被改变时,onpropertych ...

  3. 【Linux】Vim编辑器-批量注释与反注释

    [-] vim编辑器---批量注释与反注释 方法一 块选择模式 插入注释 取消注释 方法二 替换命令 批量注释 取消注释 实例演示   vim编辑器---批量注释与反注释 在使用vim编写代码的时候, ...

  4. 【github课程】创建github仓库和库创建一个版本号,并添加到存储库文件的版本号

    首先,需要登录github注册一个帐号:https://github.com/ 注册帐号登录后,.在右上角,"新仓库": 然后会出现例如以下的界面: 仅仅须要输入仓库的名称,描写叙 ...

  5. HDU多赛学校9 HDU4969 Just a Joke 【数学积分】

    数学题目 意甲冠军:的男孩向圆上的女孩跑去,保持男孩女孩圆心在同一条直线上.这过程中,男孩女孩均匀速 给出男孩女孩速度,圆的半径,男孩最长能跑的距离 问男孩是否能跑到女孩那里 能够用积分来解这道题,我 ...

  6. Oracle分区表转换

    Oracle普通表—>分区表转换(9亿数据量) 背景介绍: 环境:Linux 5.5 + Oracle 10.2.0.4 某普通表T,由于前期设计不当没有分区,如今几年来的数据量已达9亿+, 空 ...

  7. VS2012编写C语言项目

    原文:VS2012编写C语言项目 这两天看了一下C语言方面的知识,大学的时候使用的Turbo C对于我来说已经是很久之前的事情了,编写C语言的还有VC++,不过这货在64的表现实现是很让人失望,还是用 ...

  8. Kafka集群在空载情况下Cpu消耗比较高的问题

    线上kafka与storm的空载情况下负载都比较高, kafka达到122%, storm平均负载达到, 20%,  当前是通过Ambari下管理kafka的, a. 先停止s5的kafka进程.b. ...

  9. C# ASP.NET CSV文件导入数据库

    原文:C# ASP.NET CSV文件导入数据库 using System; using System.Collections.Generic; using System.Text; using Sy ...

  10. JDK-windows7环境变量配置-亲测版本 以及HelloWorld

    1.下载并安装jdk,假设安装1.6.0_45版本到C:\Program Files\Java,则安装完毕后,目录结构为: C:\PROGRAM FILES\JAVA├─jdk1.6.0_45│ ├─ ...