![見出し画像](https://assets.st-note.com/production/uploads/images/87637078/rectangle_large_type_2_88dc7079f3dadd961a96f725e07d9434.png?width=1200)
Photo by
poconen
Windows Terminalでシリアル接続を行う方法
はじめに
Windows Terminalというターミナルソフトを常用するようになって、しばらく経ちました。Microsoftの自信作だけあって、よくできたツールだと思うのですが、SSH接続が主体のようです。
シリアル接続をするにはどうすればよいのでしょうか?
それが本記事の目的となります。
![](https://assets.st-note.com/img/1664101092768-ZZrS4cFcRw.jpg?width=1200)
PowerShellスクリプトをダウンロードする
シリアル接続を実現するプログラム(PowerShellスクリプト)を下記からダウンロードします。
Ubuntuのシリアル接続設定
GRUBの設定変更
# cd /etc/default
# diff grub.org grub
7,8c7,8
< GRUB_TIMEOUT_STYLE=hidden
< GRUB_TIMEOUT=0
---
> #GRUB_TIMEOUT_STYLE=hidden
> GRUB_TIMEOUT=30
10,11c10,15
< GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
< GRUB_CMDLINE_LINUX=""
---
> #GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
> #GRUB_CMDLINE_LINUX=""
> GRUB_TERMINAL="serial console"
> GRUB_SERIAL_COMMAND="serial --unit=0 --speed=38400"
> GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,38400"
設定の反映
# update-grub
COMポート接続
Windows Terminalにプロファイルを追加して、コマンドラインを以下のように指定します。
pwsh -NoProfile -executionpolicy remotesigned -file C:\hoge\serial_terminal.ps1 -port com3
以下、例です。
![](https://assets.st-note.com/img/1664102151302-OophJjItTC.png?width=1200)
Virtual Box上のUbuntuにCOMポート接続するやり方について説明します。一台のPCでつなぐには、PCに仮想COMデバイスを構築する必要があります。
Free Virtual Serial Portsが使いやすくておすすめですが、商用利用禁止になっています。
ここでは、COM2とCOM3をループバック接続したとします。Virtual BoxにはCOM2を指定します。
![](https://assets.st-note.com/img/1664102592924-POCqUCrpCX.png?width=1200)
Windows TerminalではCOM3に接続すると、Ubuntuのシリアルコンソールにつなぐことができます。
名前付きパイプ接続
Windows Terminalにプロファイルを追加して、コマンドラインを以下のように指定します。
pwsh -NoProfile -executionpolicy remotesigned -file C:\hoge\serial_terminal.ps1 -pipe -port com1 -connretry
Virtual Boxには以下のように設定します。
![](https://assets.st-note.com/img/1664103249921-ZmQWOxKAbj.png?width=1200)
おわりに
名前付きパイプのバッファ管理がいまひとつで、ときどきUnicodeの文字が文字化けするので、今後改善していこうかなと思っています。
いいなと思ったら応援しよう!
![Yutaka Hirata](https://assets.st-note.com/production/uploads/images/167301772/profile_030bfcb1b25366bde515a1b0851ab5c3.jpg?width=600&crop=1:1,smart)