電波文化祭(1)「インターネットでモールス通信 - DitDahChat」

以下の記事は昨年の2023年10月1日(日)に開催された「電波文化祭⚡️サイクル1」向けに書いた記事です。

オリジナルは次のURLをご覧ください。

scrapbox.io

「インターネットでモールス通信 - DitDahChat」

DitDahChatとは

DitDahChatは、インターネット上でモールス通信を楽しめるウェブアプリです。ブラウザが動作する端末であれば、スマートフォンタブレット、パソコンのいずれでも動作します。
モールス通信を楽しむにはアマチュア無線の資格の取得や、無線機やアンテナの準備が必要だと思っていませんか。DitDahChatならいつでもどこでも、すぐに楽しむことができます。

https://ditdah.jp/ditdah-chat/

DitDahChatの特徴

DitDahChatはできるだけ手軽にモールス通信を楽しんでいただけるようにしています。

  • 無料でご利用いただけます
  • IDやパスワード等のアカウント情報の登録はありません
  • 無線従事者免許、無線局免許は不要です
  • 電鍵を接続できます
  • ルームを作成できます。交信内容は同じルームの人のみに聴こえます
  • すべてのルームがオープンです。誰でもご自由に入室できます

このような方におすすめ

  • モールス通信の初心者
    • 免許の取得、無線機とアンテナの準備の前にモールス通信を体験してみたい
    • 他にワッチしている人がいないところで練習したい
    • 無線で交信する前に不安や緊張を和らげたい
  • 手軽にモールス通信がしたい
    • 無線でなくてもよいので、モールス符号で会話したい
    • お空のコンディションの良くないときでもモールス通信を楽しみたい
    • 海外にいる人と手軽にモールス通信したい
    • いつでもどこでも寝転がりながらでもモールス通信を楽しみたい
  • 和文好き
    • 和文を始めたいが実際の交信の前に練習してみたい
    • 海外在住で和文が恋しいが相手が見つからない
  • 様々な理由で無線ができない
    • 事情があり、無線機とアンテナを設置できない
    • 無線局を廃止した
    • 免許を切らしてしまった

(例)モールス通信初心者の練習風景

符号は覚えても実際のモールス通信デビューは不安なものです。とくに無線では他の人が聴いている可能性があり、恥ずかしさもあると思います。DitDahChatなら気心の知れた人と、他の人が聴いていない状態で練習することができます。

youtu.be ギタリストHaruka JJ1ROEのハムライフ / 😊🎸ギタリストHarukaの交信動画【第98回】JR0BAQ-JJ1ROE (2022/4/27)🍀(掲載許可済み)

いつでもどこでもモールス通信

無線では難しい時間帯や場所からでも、DitDahChatなら簡単にオンエアーできます。
インターネットで繋がっているので当たり前ですが、海外との交信ができたときは感動しました。

  • 通勤電車
  • 会社の昼休み
  • ネットカフェ
  • 旅行先のホテル
  • 飛行機
  • 東北新幹線(盛岡あたりでトンネルが多く、途切れ途切れ)
  • 船上から(名古屋港?)
  • タイのビーチ
  • サウスカロライナ州に在住の方が日本の局と和文交信

(例)海外からの交信風景

タイのビーチから和文(?)交信

(掲載許可済み)

(例)スマホを使った打鍵

youtu.be

(例)電鍵接続(シリアル接続)

お使いのブラウザがChromeの場合、パソコンのシリアルインタフェースに電鍵を接続できます。シリアルインタフェースがない機種の場合、USB-シリアル変換ケーブルを利用して接続してください。

DitDahChatはシリアルインタフェースの2つのピン、DTRとDSRをスイッチとして使用します。2つのピンを短絡すると信号が送出され、切断すると信号の送出が停止します。

DB-9オスコネクタの場合は、次の図の黒丸の位置にあるピンを使用します。

⚪⚪⚪⚫⚪
 ⚫⚪⚪⚪

私はハンダ付けが苦手なので、ジャンパー線で雑に繋げています。

開発のきっかけ

  • 遠隔操縦に使える映像・音声を伝送する技術を探していた
  • WebRTCにたどり着く
  • ブラウザが内部に持っているオシレーターの音をマイクからの音声の代わりに流せばモールス通信できるのではと思った

試作品

youtu.be

これまでの流れ

  • 2021-01-17 試作品(映像をTwitterで公開)
  • 2021-01-23 テスト公開
  • 2021-01-24 テスト公開(Twitter
  • 2021-01-25 テキストチャット機能
  • 2021-01-27 ルーム参加者表示機能
  • 2021-02-28 任意のルームを作成する機能
  • 2021-04-17 匿名ルーム機能
  • 2021-07-28 電鍵シリアル接続機能
  • 2021-11-28 モールス符号デコード機能

※ 多くの機能がA1 CLUBの方々からのリクエスト、ご意見から生まれました。ありがとうございました。
※ ご意見、不具合報告等をいただきました皆さま、ありがとうございました。

使用技術

使用外部サービス

DitDahChat は通信基盤として、NTT Communications の SkyWay を使用しています。

打鍵方式

  • はじめは画面上のボタンを押すか、上下矢印キーで打鍵のみ
  • 電鍵の接続は公開当初から望まれていた
  • マウス経由で電鍵を接続する人が現れる
    • 遅延が大きい
    • 外付けエレキーのサイドトーンを聴くので、アプリのサイドトーンを消す機能をリクエストされる
  • シリアル接続が可能に(Chromeのみ)

インターネットでモールス通信できる他のサービス

  • CWCom
    • サーバは動作しているものの、公式サイトが消滅
    • クライアントアプリはミラーサイトからダウンロード可能
  • VBand
    • WebSocketで打鍵のタイミング(スペースとマーク)を送受信している(?)
  • Peanut
  • iCW (Internet CW)

モールス通信を体験してみたい方へ

DitDahChatを使ったモールス通信の体験や練習の相手をお探しの方は、次のページに記載の連絡先までご連絡ください。
Profile - JI1JDI - Amateur radio station

DitDahChatがモールス通信を楽しむきっかけとなって、技能の向上にもお役に立てるとうれしいです。

プログラミングをはじめてみたい方へ

これからプログラミングをはじめてみたい方は、ブラウザを使ったプログラミングはいかがでしょうか。
OSやハードウェアに依存しない次のような道具が揃っていて、本格的なアプリ開発を楽しめます。

  • 映像、画像処理(Canvas API, WebGL
  • 音声処理(Web Audio API
  • シリアル通信(Web Serial API
  • カメラ、マイク(MediaDevices)
  • コミュニケーション(WebRTC)
  • 位置情報(Geolocation API
  • 双方向データ通信(WebSocket)
  • AI/機械学習(ブラウザ上で動作する Tensorflow.js など)
  • その他多数

マニュアル

DitDahChat モールス通信ウェブアプリ(簡易マニュアル) https://ji1jdi.hatenablog.com/entry/2021/12/29/152305

Tiny DitDahChat(開発中)

DitDahChatは商用サービスとそのSDK(SkyWay)を利用していますが、いずれは特定のWebRTCサービスに依存しない自前のサービスにしたいと考えています。その第一歩として、シグナリングサーバーとWebRTCクライアントの部分を自作してみました。