LTEの送受信機の場所を減らすため再度、UX302NCを接続してみることにしました。(マニュアルはここ)
もっともお世話になったサイトがガジェライブ!さんのRaspberry PiでSIMフリーのUSBモデムUX302NCを使用する方法
同様の手順を書きます。ひっかかったところは赤字で書いてます。
sudo apt install usb-modeswitch
でUX302NC(SIMはセットしておいてね)を差し込んで、lsusbをすると
Bus 001 Device 007: ID 11f6:1035 Prolific NCXX UX302NC
と出るはずです。
UX302NCの設定を調べていると必ず遭遇するSoracomのセットアップスクリプトを参考にしてもいいですが、いろいろsoracomになるので手動をオススメします。
sudo nano /etc/udev/rules.d/99-ux302nc.rules
をひらいて、以下をコピペ。
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="11f6", ATTRS{idProduct}=="1035", RUN+="/usr/sbin/usb_modeswitch -v 11f6 -p 1035 -M '55534243123456780000000080000606f50402527000000000000000000000'" ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="11f6", ATTRS{idProduct}=="1034", RUN+="/bin/bash -c 'modprobe option && echo 11f6 1034 > /sys/bus/usb-serial/drivers/option1/new_id'" KERNEL=="ttyUSB*", ATTRS{../idVendor}=="11f6", ATTRS{../idProduct}=="1034", ATTRS{bNumEndpoints}=="03", ATTRS{bInterfaceNumber}=="01", SYMLINK+="modem", ENV{SYSTEMD_WANTS}="ifup@wwan0.service"
書き込んだらリブート。なんだかデバイスが更新されなかったことがありました。
再起動後、
ls -l /dev/ttyUSB*
をやると
crw-rw---- 1 root dialout 188, 0 7月 25 22:28 /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 1 7月 25 22:30 /dev/ttyUSB1 crw-rw---- 1 root dialout 188, 2 7月 25 22:28 /dev/ttyUSB2 crw-rw---- 1 root dialout 188, 3 7月 25 22:28 /dev/ttyUSB3
という感じで認識されています。
これででデバイスとしては動作しているようですー。
次にダイアルアップモデムとして設定します。
wvdialをインストールします。
sudo apt install wvdial
インストールが終了すると設定ファイルのテンプレができていますから編集します。
sudo nano /etc/wvdial.conf
[Dialer Defaults]
Phone = *99***1#
APN = i-aeonmobile.com
Username = user
Password = 0000
New PPPD = yes
Stupid Mode = yes
Init1 = ATZ
Init2 = AT+CGDCONT=1,"IP","i-aeonmobile.com"
Init3 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Dial Attempts = 3
Modem Type = Analog Modem
Modem = /dev/modem
Dial Command = ATD
Baud = 460800
変更すべきところは、APN=, Username=, Password=, Init2=のプロバイダー名, Modemです。
上の定義をテンプレにして変更したほうがいいでしょう。
(OCN One 旧契約) APN=lte-d.ocn.ne.jp
(OCN One 新契約) APN=ocn.ne.jp
(AEON Mobile) APN=i-aeonmobile.com (OCN) Username=mobileid@ocn (OCN) Password=mobile (AEON) Username=user (AEON) Password=0000 (OCN旧契約 init2) Init2 = AT+CGDCONT=1,"IP","lte-d.ocn.ne.jp" (OCN新契約 init2) Init2 = AT+CGDCONT=1,"IP","ocn.ne.jp" (AEON init2) Init2 = AT+CGDCONT=1,"IP","i-aeonmobile.com"
phoneにかかれている電話番号はこのままでいいのです。なまじっか正しいSIMカードの電話番号を設定し、Errorとなりしばらく悩みまくりました。
ここで
sudo wvdial
とすると、ダイアルアップで繋がり、ifconfigで見ると
ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1464 inet xxx.xxx.xxx.xxx netmask 255.255.255.255 destination 10.64.64.64 ppp txqueuelen 3 (Point-to-Pointプロトコル) RX packets 2001 bytes 1950304 (1.8 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1658 bytes 209267 (204.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
とppp0ができているはずです。
あとは自動起動させるために
sudo nano /etc/systemd/system/ux302nc.service
と新たにファイルを開き
[Unit] Description = UX302NC Service [Service] ExecStart = /usr/bin/wvdial [Install] WantedBy = multi-user.target
と記載します。
あとは、
sudo systemctl start ux302nc.service #サービススタート sudo systemctl status ux302nc.service #サービスのステータス sudo systemctl enable ux302nc.service #自動スタート登録
これで次回のリブートから自動的にUX302NCが繋がります。
UX302NCは企業で使われていたせいか、ヤフオクで3000円ちょいで結構見かけます。
中古品ですが、機械的に動くところがUSBコネクターのヒンジ部分だけですから写真をよく見て、あまりくたびれてなさそうなものを選べば程度がいいものが手に入るのではないでしょうか。
こうやって繋がると4GPIのアラが目立ちます。
- わざわざ別途、12V電源が別途必要
- ラズパイのピンも使う
- 結局USBポートからのシリアル通信(ケーブルが邪魔)
- 高価
- フルサイズのSIMカードが必要でイマドキじゃない
設計者のスキルが低いんでしょうね。
唯一いい点は日本人が大好きな「サポートがある」ということだけです。
実用上はUSBトングルがオススメ。
ついで
Raspberry Piでwifiオフ
sudo iwconfig wlan0 txpower off
オン
sudo iwconfig wlan0 txpower auto
残念ながらOCNがグローバルIPでの運用を止めたので、OCNは使えません。
しかし、小さいMVNOからグローバル固定IPのSIMが提供されています。メジャーなのはインターリンクとイプシムのようです。(イプシムは2024年4月時点では「simカードがない」とかいう理由で新規加入できません。また、技術的に不安が残るので、私はインターリンクを契約しています)