Apakah ada program terminal OS X yang dapat mengakses port serial?

101

Program apa yang dapat bertindak sebagai terminal dan mengakses port serial?

Ini bukan untuk akses terminal pada koneksi IP, ini agar saya dapat mengakses perangkat perangkat keras yang terhubung ke USB / serial converter yang berjalan di 9600/8 / N / 1.

Mark Harrison
sumber
2
Maksud Anda seperti port modem 20 tahun yang lalu?
nohillside
@ patrix, ya. Saya dapat memuat vmware, menjalankan windows, dan menggunakan dempul, tetapi sepertinya banyak kesulitan untuk melakukan tugas yang begitu sederhana.
Mark Harrison
1
Lol. 9600/8 / N / 1. seperti mantra bagiku. Anda dapat menggunakan zterm yang masih berfungsi setidaknya hingga 10.6. Itu perangkat lunak lama. Tetapi dibangun untuk mengkonfigurasi, berkomunikasi dengan modem dan mengirimkan file modem ke modem. dalverson.com/zterm
markhunte
Zterm terbaru bekerja dengan 10.9.
Dan Pritts

Jawaban:

54

Ada aplikasi Mac baru bernama Serial , tersedia di app store. Pengungkapan penuh - saya menulisnya. Keuntungan utama dibandingkan aplikasi lain adalah dapat bekerja dengan sebagian besar USB ke perangkat serial tanpa harus menginstal driver apa pun, karena memiliki driver sendiri bawaan. Ini juga melakukan emulasi terminal penuh sehingga Anda dapat menggunakannya untuk bekerja dengan Linux atau perangkat lain yang membutuhkannya. Anda dapat mencobanya secara gratis juga.

Juga, Apple mulai memasukkan driver mereka sendiri untuk perangkat berbasis FTDI di Mavericks (10.9). Jadi, jika Anda berada di 10.9 atau lebih baru dan perangkat Anda memiliki chip FTDI di dalamnya, Anda dapat menggunakan perintah layar bawaan di terminal untuk mengakses perangkat Anda tanpa khawatir tentang driver.

Chris K
sumber
6
Saya baru saja mencoba Serial hari ini. Sejauh ini, saya cukup terkesan. Saya akan membelinya hanya karena saya tidak perlu khawatir tentang USB ke driver serial. Saya tidak akan ketinggalan ssh'ing ke dalam kotak Linux saya untuk menjalankan minicom.
Daryl Spitzer
1
WOW, saya menggunakan Serial sekarang dan saya pikir ini adalah bagaimana setiap bagian dari perangkat lunak harus bekerja. Karena saya hanya memerlukannya untuk pekerjaan yang sangat spesifik dan ia datang dengan beberapa hari uji coba gratis, dan saya bangkrut, saya tidak akan mendapatkan versi lengkapnya ... jika salah satu dari ketiga syarat itu salah, saya akan mendapatkannya .. mereka layak mendapatkannya!
kikusin
Nah, begitu saya memilih baud rate untuk perangkat saya, saya tidak bisa membukanya lagi dengan nilai yang berbeda ... Jendela pemilihan tidak muncul dan saya macet di 9600 ...
JBernardo
8
fyi Serial tidak gratis
Szundi
2
Wow. sungguh wow. Saya telah menggunakan layar selama bertahun-tahun dan selalu menemukan ttys hanya .. menjengkelkan. Saya secara acak menemukan utas ini, seperti saya tidak membayar $ 30 untuk - oh tunggu ada persidangan. Jadi saya mencoba. 2 menit setelah saya membeli perangkat lunak cukup banyak terlepas dari seberapa sering saya membutuhkannya hanya untuk mendukung Chris, karena itu benar-benar luar biasa. Belum pernah melihat hal yang ditulis dengan baik seperti ini untuk sementara waktu.
Lukuk
105

Anda dapat menggunakan perintah terminal screenuntuk melakukan ini !!!

Seperti yang terlihat di ServerFault :

Saya suka menggunakan [layar] untuk menghubungkan ke konsol serial, yaitu

screen /dev/ttyS0 19200

Atau, jika Anda lebih suka petunjuk Mac OS X ...

Saya sering harus melakukan konfigurasi router melalui port konsol, jadi saya menggunakan Adapter Serial Keyspan untuk mendapatkan akses. Dua masalah kemudian muncul: ZTerm adalah aplikasi Mac OS X yang mengerikan. Belum diperbarui dalam lima tahun atau lebih, dan bukan Binary Universal. Pengembang sepertinya tidak terburu-buru untuk memperbaiki situasi. Ini tidak sebanding dengan biaya shareware dalam bentuk saat ini. Minicom memerlukan instalasi Fink atau MacPorts dan terlalu rumit. Solusi: Gunakan layar, Terminal, dan sedikit AppleScripting.

Pertama, luncurkan Script Editor dan ketik / rekatkan dalam kode berikut:

tell application "Terminal"
  do script with command "screen /dev/tty.KeySerial1"
  set number of rows of window 1 to 100
  set number of columns of window 1 to 80
  set background color of window 1 to "black"
  set normal text color of window 1 to "green"
  set custom title of window 1 to "SerialOut"
end tell

Kompilasi dan simpan sebagai aplikasi dari dalam Script Editor, dan Anda memiliki aplikasi yang dapat diklik ganda untuk meluncurkan sesi Terminal serial. Anda mungkin ingin menyesuaikan ini sedikit - Anda dapat mengubah warna layar atau jumlah kolom atau baris. Anda juga mungkin perlu menyesuaikan perintah layar dengan nama perangkat yang berbeda jika Anda menggunakan sesuatu selain Adapter Serial Keyspan (lakukan ls tty * dari direktori / dev / untuk mendapatkan nama yang benar).

Layar menggunakan Control-A untuk mengambil perintah yang diarahkan padanya. Jadi ketik Control-A diikuti oleh Control- \ untuk keluar dari sesi layar Anda. Jika Anda gagal melakukan ini dan keluar dari sesi Terminal, Anda akan membiarkan sesi layar hidup dan sumber serial tidak tersedia sampai Anda membunuh sesi layar secara manual. man screen akan menampilkan perintah lebih lanjut untuk dikirim ke sesi layar.

Jika ada yang bisa membalas dengan tautan ke tutorial tentang cara membungkus Aplikasi Unix interaktif di Cocoa, itu akan menjadi langkah berikutnya - akan menyenangkan untuk melakukan ini tanpa melibatkan Terminal. Jika Anda lebih suka menggunakan Minicom, Anda masih bisa menggunakan AppleScript untuk membungkusnya menjadi aplikasi yang dapat diluncurkan - gunakan petunjuk yang lebih tua ini untuk menemukan perintah baris perintah yang tepat.

Banyak USB-Serial adapter menggunakan chip dari FTDI . Instal driver " Virtual COM Port " dan cari nama TTY yang tepat di /dev. Misalnya, pada PowerBook G4 muncul sebagai /dev/tty.usbserial-FTALKY8I.

Josh
sumber
1
Untuk adaptor USB-Serial dengan chip PL2303, lihat sourceforge.net/projects/osx-pl2303
Dan Pritts
Jelas jawaban terbaik: Terminal + layar + osx-pl2303 (digunakan produksi sejak… bertahun-tahun ☺).
dan
1
Layak untuk melihat jawaban Chris K di bawah ini; rupanya OS X dilengkapi dengan driver FTDI sejak 10.9 (setelah jawaban ini ditulis), jadi instalasi tidak diperlukan.
krs013
Layar (atau minicom dalam hal ini) tidak tepat. Kelihatannya bagus sampai Anda mencoba menjalankan nano atau vi. Itu tidak bisa menangani itu. Tombol panah dan tombol kembali menghasilkan sampah. Jika ada pengaturan di layar untuk memperbaikinya, beri tahu saya.
garyp
Saya suka layar tetapi: bagaimana Anda bisa menerjemahkannya ke crlf?
fearless_fool
25

Preferensi saya adalah cu. Saya menggunakannya untuk kesenangan terkait Arduino atau Bajak Laut Bus. Ini diinstal secara default dan mendukung pengaturan paritas di antara opsi lain (ketik man cuuntuk info lebih lanjut).

sudo cu -s 115200 -l /dev/tty.usbserial-A6005kdh

Untuk menyelamatkan saat Anda selesai, ketik ~.seperti yang Anda lakukan dengan SSH

RandomInsano
sumber
1
Ini sepertinya awal dari jawaban yang bagus, tetapi menjalankannya sebagai root terasa salah; program lain tidak memerlukannya untuk mengakses /dev/tty.xxx atau /dev/cu.xxx program, namun cutampaknya gagal dengan kesalahan tentang file kunci, ketika dijalankan sebagai pengguna yang memiliki akses ke port itu sendiri. Mungkin instalasi default dari program ini salah konfigurasi?
user221106
Tidak? Izin harus ada di perangkat, bukan program. Saya sudah malas meneliti izin untuk jujur. Sudahkah Anda mencoba "/ dev / ttyS0" seperti dalam screensolusinya? Apakah cukemudian menyebabkan masalah izin?
RandomInsano
Masalah menyenangkan dengan ini yang saya tekan akhir pekan ini adalah bahwa jika Anda memerlukan pengaturan umpan baris yang berbeda, Anda harus mempelajari perintah stty untuk mengatur konsol Anda.
RandomInsano
24

Program terbaik yang saya tahu untuk ini adalah minicom, tersedia dari Homebrew, fink, dan macports.

Minicom adalah program komunikasi serial. Ini adalah tiruan Unix dari program MS-DOS Telix yang terkenal. Ini memiliki warna ANSI, direktori panggilan, daftar putar, dan bahasa scripting.

nohillside
sumber
1
Kunci meta adalah Esc. Jadi Esc-Q untuk keluar, Esc-O untuk opsi, dll. Saya menemukan minicom (dan Serial.app) menjadi yang terbaik dalam menangani pemutusan / menghubungkan kembali yang pada dasarnya tersirat ketika menjalankan pengembangan LinkitOne (all Arduino?). Sebagian besar aplikasi lain rusak atau kehilangan koneksi dan tidak dapat terhubung kembali hingga diluncurkan kembali.
owenfi
18

Jika Anda memilih untuk tidak bekerja di Terminal, Anda mungkin ingin mencoba CoolTerm (gratis). Gulirkan sedikit ke bawah untuk deskripsi dan unduh. Jangan biarkan fakta yang tertulis di RealBasic membuat Anda pergi ... Saya telah menggunakannya untuk menghubungkan ke komplotan, papan Arduino dan printer penerimaan melalui USB Keyspan <-> Adaptor Serial.

myhd
sumber
Sudah menjadi pengguna CoolTerm, hanya mencari fitur "kirim dalam HEX" membawa saya kembali ke utas ini. CoolTerm begitu hebat dan bahkan memiliki fitur ini termasuk dalam Menu "Connection> Send String ..." kemudian beralih ke HEX untuk mengirim format!
andreas-supersmart
Saya tidak pernah mengerti use case "send in HEX". Bisakah Anda mencerahkan saya? Saya hanya pernah menggunakannya untuk input / output ASCII.
frakman1
15

Anda harus melihat ZOC , apa yang saya pikir sebagai program emulasi terminal terbaik yang tersedia untuk Mac. Saya menggunakannya setiap hari untuk pekerjaan saya. Ini memiliki kemampuan untuk melakukan komunikasi langsung dengan port serial. Tentu saja cara kerjanya lebih dari sekadar komunikasi serial.

ZOC adalah klien SSH / telnet profesional dan emulator terminal. Dengan daftar emulasi yang mengesankan, Anda dapat dengan mudah terhubung ke host dan mainframe, menggunakan metode komunikasi seperti secure shell, telnet, kabel serial atau modem / isdn.

Antarmuka pengguna yang ramping memiliki banyak cara untuk membuat hidup Anda lebih mudah. Dengan caranya sendiri, ini adalah pisau tentara swiss klien tipis: serbaguna, kuat, terbukti.

Fitur utama:
- Sesi tab dengan thumbnail
- Dapat disesuaikan untuk memenuhi preferensi dan kebutuhan Anda
- Fitur skrip dan otomatisasi
- Kompatibel dengan Windows 7 dan OS X Lion
- Ramah administrator (penyebaran, konfigurasi)
- Sekarang $ 79,99 dengan diskon massal yang menarik

Tukang gerobak
sumber
3
80 $ untuk emulator terminal sepertinya agak curam jika dia hanya membutuhkan fitur itu!
Agos
2
Harga tidak disebutkan sebagai kriteria dalam pertanyaan. Tolong jangan mengurangi jawaban hanya karena Anda tidak setuju dengan harga.
Carter
1
Saya kedua komentar Agos. Dia tidak "mengurangi" jawaban Anda, hanya mengatakan bahwa ia berpikir bahwa ZOC bukanlah solusi yang baik mengingat semuanya (biaya, fitur, dll.)
cyphunk
Juga, dikombinasikan dengan jawaban lain di atas, tampaknya (dari deskripsi yang dikutip) seperti satu-satunya perbedaan antara ZOC dan Terminal adalah thumbnail tab (dan harga).
Matt
11

C-Kermit hidup dan sehat di Brew, dan dapat diinstal dengan:

brew install c-kermit

Tentu Anda akan memerlukan Brew untuk diinstal terlebih dahulu. Anda dapat menemukan informasi tentang cara melakukan ini di sini: http://brew.sh

Atau gunakan Macports

sudo port install kermit

Ini juga mengharuskan Anda untuk menginstal Macports

Zach
sumber
7

Dan kemudian masih ada ZTerm lama yang sama tuanya seperti yang terlihat menyarankan namun itu menyelesaikan pekerjaan dengan baik dan tersedia secara gratis. Bekerja dengan baik dengan adaptor serial USB Prolific (PL 2303) dan FTDI.

MacLemon
sumber
1
Wow, ZTerm hidup! Membawa banyak memori dan Mac lama.
lhf
Baru saja mengunduh ZTerm ... dan ini seburuk yang saya ingat ... CRASH ... CRASH ... CRASH ... (hapus ZTerm).
geowar
4

Saya telah sukses dengan cutecom di Ubuntu 16.04

Didukung di OSX: http://cutecom.sourceforge.net/

gatorback
sumber
Selamat Datang di Tanya Berbeda! Tolong jangan berikan jawaban hanya tautan. Kami sedang mencari jawaban yang memberikan penjelasan mengapa itu menjawab pertanyaan dan juga mengapa itu adalah jawaban terbaik. Tautan dapat berubah seiring waktu dan kemudian kita akan kehilangan konteks tanya jawab. Lihat Cara Menjawab untuk info tentang apa yang membuat jawaban yang bagus. - Dari Ulasan -
fsb
Sayangnya itu membutuhkan versi Qt yang sangat lama untuk diinstal pada sistem Anda untuk membangunnya.
Oscar
3

Terminal serial lain untuk Mac OS X adalah Cornflake !

Ini fitur Pemilihan Perangkat dengan Tombol Refresh, Kecepatan Baud & Jenis Paket & Pemilihan Kontrol Aliran, Kontrol Port dan Filter Tampilan untuk melihat data yang masuk sebagai ASCII, ASCII +, Integer atau HEX.

maccid
sumber
1

SerialTools di App Store (gratis). Baik untuk saya

Trieu Tu Long
sumber
1

Saya gunakan screenuntuk terhubung ke port serial router saya di Mac saya.

Setelah menginstalnya - menggunakan macports atau homebrew tergantung pada preferensi Anda - gunakan sintaks berikut:

sudo screen /dev/(serialDevice) (baudRate) (TransmissionRate) (flowControl)

Untuk terhubung ke router MikroTik RB4011, screenperintah saya adalah:

sudo screen /dev/ttyUSB0 115200 cs8 ixoff

" cs8 " menjadi bit rate router dan " ixoff " yang menentukan "No Flow Control". " 115200 " adalah baud rate router. Pengaturan alternatif adalah "cs7" untuk 7 bukannya 8 bit dan "ixon" jika kontrol aliran didukung oleh perangkat serial Anda. man screen

Semua "HowTo" untuk digunakan screenuntuk membuat koneksi serial di 'internet saya telah menemukan Googling mengabaikan parameter yang diperlukan ini, jadi itu sebabnya Anda akan menemukan screentidak berfungsi jika Anda telah mencobanya hanya melewati baud rate saja.

BTW, minicom -s(yang juga perlu diinstal melalui macports atau homebrew) juga berfungsi dengan baik, tapi saya lebih suka layar karena saya tidak harus melalui menu pengaturan- Saya hanya bisa mengirimkan parameter koneksi serial langsung ke perintah layar.

F1Linux
sumber