yokoro13 / MLDPTerminal-Android

MLDP Terminal for Android can use the basic escape sequence.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MLDP-Terminal

Microchip社のRN4020 Bluetooth Low Energy Moduleを通じてAndtoid上で動作するターミナルエミュレータ.
通信にはMLDP(Microchip Low Energy Data Profile)を使用する.

RN4020 初期化

TeC7b(Tokuyama Educational Computer Ver.7b)に搭載されたRN4020は,ボード上のジャンパを二本横差しすることで工場出荷時までリセットすることができる.

RN4020 初期設定

  1. Macにシリアル通信ソフトCoolTermをインストールする.(screenコマンドでも可能)
  2. TeC7bのジャンパをDEMO1に設定し,MacとUSBケーブルで接続する.
  3. CoolTermを起動し,以下のように設定する.
  [options] → [Serial Port] → [Port] → TeC7bを接続しているUSB Serialポートを選択
  [options] → [Terminal] → [Enter Key Emulation] → CRを選択  
  
  ※ TeC7bのファームウェアが最新版(2018/12/1時点)でない場合はさらに
      [options] → [Serial Port] → [Baudrate] → 11520を選択
    の設定が必要になる.
  1. CoolTermに'+'とEnterキーを入力する.Echo Onと出力されれば,接続成功.
  2. CoolTermに以下のコマンドを打ち込む.
  SF,2           // 工場出荷状態までリセット
  SR,32104C00    // RN4020起動時に自動アドバタイズおよびMLDPモードとして動作するように設定
  R,1            // 再起動
  
  ※ TeC7bのファームウェアが最新版(2018/12/1時点)でない場合は再起動の前に
      SB,1       // ボーレートを9600に設定
    を実行する.

※ RN4020が正常に動作していればSF,SRに対してAOKと返ってくる. R,1の実行後,CMDが表示されると設定が終了する.

使い方

TeC7bに搭載されているTacOSのターミナルとして使用する. また,FreeBSDなどCUIのOSとTeC7bを接続,設定することで各OSのターミナルとしても使用できる.前回接続したBluetoothモジュールには自動で接続することができる.

使用可能なエスケープシーケンス

記法 内容
\e[nA カーソルを上にn移動
\e[nB カーソルを下にn移動
\e[nC カーソルを右にn移動
\e[nD カーソルを左にn移動
\e[nE カーソルをn行下の先頭に移動
\e[nF カーソルをn行上の先頭に移動
\e[nG 現在位置と関係なくカーソルを左からnの場所に移動
\e[n;mH
\e[n;mf
現在位置と関係なくカーソルを上からn,左からmの場所に移動
\e[nH 画面消去
0 … カーソルより後ろを消去
1 … カーソルより前を消去
2 … 画面全体を消去
\e[nK 行消去
0 … カーソルより後ろを消去
1 … カーソルより前を消去
2 … 行全体を消去
\e[nm 文字色を変更
30 … 黒
31 … 赤
32 … 緑
33 … 黄
34 … 青
35 … マゼンタ
36 … シアン
37 … 白

TERMCAP設定

 tec7b-term:\
     :do=2\E[B:cl=50\E[H\E[J:\
     :le=2\E[D:bs:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\
     :ce=3\E[K:cd=50\E[J:\:nw=2\E[E:ho=E[H:\
     :UP=2\E[%DA:DO=2\E[%dB:RI=2\E[%dC:\
     :LE=2\E[%dD:cr=\E[G:\
     :ac=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyuzz{{||:\
     :ku=\EOA:kd=\EOB:kr=EOC:kl=\EOD:kb=\177:\
     :k0=\EOy:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:k5=\EOt:\
     :k6=\EOu:k7=\EOv:k8=\E0l:k9=\EOw:k;=\EOx:@8=\EOM:\
     :K1=\EOq:K2=\EOr:K3=\EOs:K4=\EOp:K5=\EOn:pt:xn:\

※ FreeBSD 11.2-RELEASE での動作確認時の設定

ttys設定

 ttyU0   "/usr/libexec/getty 3wire.9600" tec7b-term   on secure

※ FreeBSD 11.2-RELEASE での動作確認時の設定

動作環境

android7.0以上

iOS版

https://github.com/yokoro13/MLDPTerminal-iOS

About

MLDP Terminal for Android can use the basic escape sequence.

License:Apache License 2.0


Languages

Language:Kotlin 98.5%Language:Java 1.5%