📡 RS-232のCTS/DSRでCWキーヤーを作ってみた
USBシリアル変換器のCTSとDSRをパドル入力として使って、PCからサイドトーンを出すモールスキーヤーをPythonで作ってみました。
🎯 目的
- 実際のCWパドルや縦振れキーをPCにつなぎたい
- USB接続だけでサイドトーンが出る環境を構築したい
- SDRやSSBキーヤーの練習用にも便利かも?
🔌 接続方法
- CTS = 短点(dit)
- DSR = 長点(dah)
- 縦振れキー版はCTSだけを使用
- USB-シリアル変換器で、接点を直接GNDに落とすだけでOK
🐍 ソフトウェア構成
- Pythonで作成(使用ライブラリ:
sounddevice,numpy,pyserial)
- 位相を維持してサイドトーンを出すので、クリック音なし
- モードは2つ用意:
CTS-Straight-Keyer.py:縦振れキー用
CTSDSR-Paddle-Keyer.py:Iambic A(スクイーズ対応)
✅ 使い方
pip install sounddevice pyserial numpypython CTSDSR-Paddle-Keyer.py # または Straight-Keyer.py
PORT = 'COM101' など、自分のシリアルポートに書き換えてください。
📎 ソースコード
GitHubに公開しています:
https://github.com/7m4mon/CTSDSR-Keyer
💭 感想・課題
- PythonでもCWキーヤーは意外と動く!
- サウンド遅延が気になる場合はハードウェアサイドトーンの併用もアリ
作ってみた方や試してみた方、感想や改善案があればぜひ教えてください!

