電子工作や開発をしていく上で今でも便利に使うシリアル通信。最近のパソコンにはレガシーポートがなくなり、代わってUSBシリアル変換の出番が多くなってきた。USBに接続したら、仮想COMポートが自動的に割り当てられ、あたかもシリアル通信をしている様に振る舞う。
定番のUSBシリアルモジュールやarduinoなどを利用していると、いつの間にやらCOMポート番号が二桁台になってCOM24やCOM25といった番号まで増えてしまった。
ポート番号がこのまま増え続けるのはどうもスマートではない。すでに使わない番号もある。使わないCOMポート番号を削除すれば良いのだが、それには少々手順が必要だ。今回は、その整理方法を紹介する。
通常のデバイスマネージャーでは、使用されていないデバイスは非表示になっている。
簡単に説明すれば、
windowsキー+R 以降、コマンドをタイプしてEnterを押下
CMD
注)windows7以降では、すべてのプログラム→アクセサリ→コマンドプロンプトの部分で右クリックして管理者として実行が必要
2019/5/3追記 Windows10は左下スタートより、よく使うアプリのWの項目のWindowsシステムツールをクリック→コマンドプロンプト右クリック→その他をポイント→管理者として実行を行う。
2020/9/20追記 windows10で更に素早く起動させる場合は、
Winキー+ R 押下後、cmdと入力し、更にShiftとCtrlキーを同時に押しながらEnterを押下することで、管理者として実行が可能となる。
set devmgr_show_nonpresent_devices=1
start devmgmt.msc
※コピーしてコンソール上で貼り付けでもOK
そして、表示→非表示デバイスの表示 で接続されていないすべてのデバイスが表示される。
COM1~25、LPT1がある。さすがに25は多い。パソコンの裏などに搭載されている物理COMポートとLPT1以外のUSB何とかという部分は全部消去できそうだ。Bluetooth関係や使わなくなった携帯COMポートもとりあえず全部消してしまう。右クリックして消去を選ぶだけである。
消去はDELキーでも同様に行えるので、大量に消したい場合は重宝する。
そして削除直後。一旦「x」で終了して、念のため再起動。
念のため再起動してから、いつも使用するUSBシリアルのデバイスを差し込んで認識させていった。たったこれだけの数に収まり随分とスッキリした。
ところで、この操作をする前に、復元ポイントは作っておいた方が無難だろう。復元の作成は、
Windows XPの場合、大抵は
スタート→プログラム→アクセサリ→システムツール→システムの復元
をたどれば、復元ダイアログが表示されて、復元ポイントの作成や、復元ができる。
私の場合、再起動した時に
というメッセージがでて、デスクトップが標準表示になってしまい、マイドキュメントが見えなくなったので、復元を使って復元を少し前の自動保存を使用して元に戻った。
このCOMポートの削除が原因か分からないのだが、備えあれば憂いなしということで、前準備をしておいた方が無難だろう。
これで暫くはCOMポートが二桁にならないで使える。
追記
ある程度のパソコン知識が必要で、この操作前にファイルなどのバックアップを取ることと、自己責任で運営することになるが、COM番号に限らず、ヒューマンインターフェスや記憶域ボリュームなどの使用されていない部分の削除や、今では使わなくなった携帯やモニターなどのデバイスの整理もこれで出来るようになる。もしUSBメモリーや外付けUSBハードディスクなどの調子が良くない時や、認識しなくなったものがあったら整理してみるのも試す価値がある。
更に追記
ツールを使って整理する方法もある。
「接続されていないポートも表示する」にチェックを入れ、全てのデバイスが表示し、「ポート名」をダブルクリックするとプロパティが開くので、「ドライバ」の「削除」で削除する。
デバイスを選択して右クリック「Uninstall Selected Devices」でデバイスを消去できる。デバイスの詳細を知るには良いツールであるが、COM番号がリストでは分かららない。日本語対応ファイルがある。上級者向けツール。
以前、マザーボード交換してオンチップLANのドライバを消すのに苦労した記憶が蘇ります。