公式ページの通りインストールするだけなのだけど、念の為記録。
環境
- Ubuntu22.04
- PX-Q3PE4
他のPLEXカードも同様なはず。
作業内容
より
1. ファームウェアの抽出とインストール
2. ドライバのインストール
3. 確認
を進めていきます。
DKMS の設定
今回、
- ドライバのインストール
では
「DKMSを使用する場合」
を選択したたため、以下の追加作業を行っています。
/etc/apt/source.list
の
# newer versions of the distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ jammy main restricted
# deb-src http://jp.archive.ubuntu.com/ubuntu/ jammy main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
# deb-src http://jp.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
↓
# newer versions of the distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ jammy main restricted
deb-src http://jp.archive.ubuntu.com/ubuntu/ jammy main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
deb-src http://jp.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
変更して
$sudo apt update
してから
$ sudo apt-get source linux-image-$(uname -r)
$ sudo apt install linux-headers-$(uname -r)
とします。
インストール後の確認
$ lsmod | grep -e ^px4_drv
で何も表示されなかったので再起動したら認識しました。
$ lsmod | grep -e ^px4_drv
px4_drv 192512 0
デバイスファイルもできています。
$ ls /dev/px4video*
/dev/px4video0 /dev/px4video2 /dev/px4video4 /dev/px4video6
/dev/px4video1 /dev/px4video3 /dev/px4video5 /dev/px4video7
recpt1 を新たにインストール
recpt1 PLEX版、SZ版などがあるらしい。
SZ版を使用。
事前に automake をインストールしておきます。
$ sudo apt install automake
https://github.com/stz2012/recpt1
からクローン
$ git clone https://github.com/stz2012/recpt1.git
$ cd recpt1/recpt1
$ ./autogen.sh
$ ./configure --enable-b25
$ make
$ sudo make install
pcsc インストール
$ sudo apt install pcscd pcsc-tools libpcsclite-dev
B-CASカードを刺して、以下のようになればOK
$ pcsc_scan
Using reader plug'n play mechanism
Scanning present readers...
0: NTT Communications Corp. SCR3310-NTTCom USB SmartCard Reader [Vendor Interface] 00 00
Sun Oct 1 00:51:51 2023
Reader 0: NTT Communications Corp. SCR3310-NTTCom USB SmartCard Reader [Vendor Interface] 00 00
Event number: 0
Card state: Card inserted,
ATR: 3B F0 12 00 FF 91 81 B1 7C 45 1F 03 99
ATR: 3B F0 12 00 FF 91 81 B1 7C 45 1F 03 99
+ TS = 3B --> Direct Convention
+ T0 = F0, Y(1): 1111, K: 0 (historical bytes)
TA(1) = 12 --> Fi=372, Di=2, 186 cycles/ETU
21505 bits/s at 4 MHz, fMax for Fi = 5 MHz => 26881 bits/s
TB(1) = 00 --> VPP is not electrically connected
TC(1) = FF --> Extra guard time: 255 (special value)
TD(1) = 91 --> Y(i+1) = 1001, Protocol T = 1
-----
TA(2) = 81 --> Protocol to be used in spec mode: T=1 - Unable to change - defined by interface bytes
TD(2) = B1 --> Y(i+1) = 1011, Protocol T = 1
-----
TA(3) = 7C --> IFSC: 124
TB(3) = 45 --> Block Waiting Integer: 4 - Character Waiting Integer: 5
TD(3) = 1F --> Y(i+1) = 0001, Protocol T = 15 - Global interface bytes following
-----
TA(4) = 03 --> Clock stop: not supported - Class accepted by the card: (3G) A 5V B 3V
+ Historical bytes:
+ TCK = 99 (correct checksum)
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B F0 12 00 FF 91 81 B1 7C 45 1F 03 99
Japanese Chijou Digital B-CAS Card (pay TV)