좀 더 쉽게 Raspberry Pi에서 SORACOM Air 사용 (FS01BU USB 모뎀 사용)
개요
Raspberry Pi로 후지 소프트의 USB 모뎀 FS01BU를 사용해, SORACOM Air의 3G 통신을 할 수 있었습니다. USB의 빼고 꽂을 필요가 없고 간단한 순서로 접속할 수 있었으므로 소개합니다.
기본적으로 다음 페이지를 따랐습니다.
Raspberry Pi에서 SORACOM SIM 사용 (FS01BU)
입수
후지 소프트의 USB 모뎀 FS01BU는 현재 아마존에서 사용할 수 있습니다. SIM 카드 슬롯에는 표준 SIM 크기의 SORACOM Air가 들어갑니다.
3G USB 동글 (FS01BU) 8,880엔(2015년 10월 현재)
SORACOM Air SIM 카드 (데이터 통신 전용) (표준) 888엔(2015년 10월 현재)
절차
먼저 FS01BU를 Raspberry Pi에 연결합니다.
FS01BU 본체의 LED가 녹색으로 점멸하고 있으면 대기중이 되어 준비 OK입니다. 작업을 계속합시다.lsusb
명령으로 인식되는 USB 장치를 확인합니다.
$ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 006: ID 1c9e:6801 OMEGA TECHNOLOGY
FS01BU는 OMEGA TECHNOLOGY 사제입니다. Vender ID가 1c9e이고 Product ID가 6801임을 알 수 있습니다.
제품 ID가 6801이 아닌 98ff이면 장치가 잘 인식되지 않습니다.
ID 1c9e:98ff의 경우 잘 가지 않는 것 같다
lsusb 명령 표시 결과Bus 001 Device 006: ID 1c9e:6801 OMEGA TECHNOLOGY ←正しい
Bus 001 Device 004: ID 1c9e:98ff OMEGA TECHNOLOGY ←うまくいかない
제품 ID가 98ff이면 아무것도 인식하지 못했습니다. 조금 꼬집고 있었으므로 올바른 해결책인지 확실하지 않습니다만 ^^; sudo apt-get upgrade
를 실시하는 것으로 Product ID가 6801로 바뀌었습니다. 누군가 코멘트 주시면 도움이됩니다.
modprobe로 바삭 바삭한 장치 인식
그런 다음 다음 명령으로 tty 장치로 인식합니다.
$ sudo modprobe usbserial vendor=0x1c9e product=0x6801
/dev/에 ttyUSB? 장치가 표시되면 사용 가능하게 됩니다.
$ ls -l /dev/ttyU*
crw-rw---T 1 root dialout 188, 0 10月 4 00:54 /dev/ttyUSB0
crw-rw---T 1 root dialout 188, 1 10月 4 00:54 /dev/ttyUSB1
crw-rw---T 1 root dialout 188, 2 10月 4 00:54 /dev/ttyUSB2
쉽게 다이얼
wvdial
명령을 사용하여 쉽게 다이얼할 수 있습니다. 먼저 wvdial
를 설치하십시오.
$ sudo apt-get install wvdial
/etc/wvdial.conf
파일에 다음 연결 설정을 넣으십시오.
SORACOM의 APN, 사용자 이름, 비밀번호를 넣은 연결 설정입니다.
$ sudo vi /etc/wvdial.conf
/etc/wvdial.conf[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","soracom.io"
Dial Attempts = 3
Modem Type = Analog Modem
Dial Command = ATD
Stupid Mode = yes
Baud = 460800
New PPPD = yes
Modem = /dev/ttyUSB2
ISDN = 0
APN = soracom.io
Phone = *99***1#
Username = sora
Password = sora
Carrier Check = no
Auto DNS = 1
Check Def Route = 1
저장이 완료되면 sudo에서 wvdial을 실행하여 연결합니다.
$ sudo wvdial
--> WvDial: Internet dialer version 1.61
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","soracom.io"
AT+CGDCONT=1,"IP","soracom.io"
OK
--> Modem initialized.
--> Sending: ATD*99***1#
--> Waiting for carrier.
ATD*99***1#
CONNECT 14400000
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Sun Oct 4 01:15:49 2015
--> Pid of pppd: 3019
--> Using interface ppp0
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> local IP address 10.214.154.107
--> pppd: [18]F?
--> remote IP address 10.64.64.64
--> pppd: [18]F?
--> primary DNS address 169.254.0.53
--> pppd: [18]F?
자신의 IP 주소나 주 DNS의 IP 주소가 표시되면 정상적으로 연결되어 있습니다.
FS01BU 본체의 LED가 녹색으로 점등된 채로 있어 통신중의 상태를 나타냅니다.Ctrl+C
로 종료 가능합니다 (LED가 녹색으로 깜박임으로 돌아갑니다).
연결 확인
다른 콘솔 (Alt+F2
라든지 LAN 연결되어 있으면 다른 SSH 액세스 등)에서 pi 사용자로 로그인하고 ifconfig
명령으로 확인합니다.
$ ifconfig ppp0
ppp0 Link encap:Point-to-Pointプロトコル
inetアドレス:10.214.154.107 P-t-P:10.64.64.64 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 メトリック:1
RXパケット:8 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:9 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:3
RXバイト:152 (152.0 B) TXバイト:209 (209.0 B)
그리고 curl이나 ping 등을 치면 좋을 것입니다. 이름 확인도 확인할 수 있습니다.
$ curl http://www.yahoo.co.jp
$ ping www.yahoo.co.jp
s1.minimum(32Kbps)에서도 s1.fast(2Mbps)에서도 ping의 속도는 그다지 변하지 않는 것 같다.
마지막으로
이제 wvdial 명령을 한 번에 연결할 수 있지만 로그아웃하면 종료되고 다시 시작하면 다시 입력해야 합니다. 전자는 nohup 명령으로 실행하고, 후자는 스크립트를 작성해 systemd에 짜넣으면(자) 우선은 해결할 수 있을 것입니다.
그리고, 자동 기동이나 자동 재접속을 할 수 있는 테크닉을 가지고 계신 분은 꼭 Qiita에 투고 부탁드립니다!
메카 트랙스의 3GPI라는 선택도
세세한 설정 등이 힘들다고 생각하는 분은 메카트럭스사의 3GPI를 추천합니다.Network Manager를 사용하여 한 번 설정하면 자동 시작할 수 있도록 만들어졌습니다. 신뢰성이 높고 엔터프라이즈 용도에 추천합니다.
$ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 006: ID 1c9e:6801 OMEGA TECHNOLOGY
Bus 001 Device 006: ID 1c9e:6801 OMEGA TECHNOLOGY ←正しい
Bus 001 Device 004: ID 1c9e:98ff OMEGA TECHNOLOGY ←うまくいかない
$ sudo modprobe usbserial vendor=0x1c9e product=0x6801
$ ls -l /dev/ttyU*
crw-rw---T 1 root dialout 188, 0 10月 4 00:54 /dev/ttyUSB0
crw-rw---T 1 root dialout 188, 1 10月 4 00:54 /dev/ttyUSB1
crw-rw---T 1 root dialout 188, 2 10月 4 00:54 /dev/ttyUSB2
wvdial
명령을 사용하여 쉽게 다이얼할 수 있습니다. 먼저 wvdial
를 설치하십시오.$ sudo apt-get install wvdial
/etc/wvdial.conf
파일에 다음 연결 설정을 넣으십시오.SORACOM의 APN, 사용자 이름, 비밀번호를 넣은 연결 설정입니다.
$ sudo vi /etc/wvdial.conf
/etc/wvdial.conf
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","soracom.io"
Dial Attempts = 3
Modem Type = Analog Modem
Dial Command = ATD
Stupid Mode = yes
Baud = 460800
New PPPD = yes
Modem = /dev/ttyUSB2
ISDN = 0
APN = soracom.io
Phone = *99***1#
Username = sora
Password = sora
Carrier Check = no
Auto DNS = 1
Check Def Route = 1
저장이 완료되면 sudo에서 wvdial을 실행하여 연결합니다.
$ sudo wvdial
--> WvDial: Internet dialer version 1.61
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","soracom.io"
AT+CGDCONT=1,"IP","soracom.io"
OK
--> Modem initialized.
--> Sending: ATD*99***1#
--> Waiting for carrier.
ATD*99***1#
CONNECT 14400000
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Sun Oct 4 01:15:49 2015
--> Pid of pppd: 3019
--> Using interface ppp0
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> pppd: [18]F?
--> local IP address 10.214.154.107
--> pppd: [18]F?
--> remote IP address 10.64.64.64
--> pppd: [18]F?
--> primary DNS address 169.254.0.53
--> pppd: [18]F?
자신의 IP 주소나 주 DNS의 IP 주소가 표시되면 정상적으로 연결되어 있습니다.
FS01BU 본체의 LED가 녹색으로 점등된 채로 있어 통신중의 상태를 나타냅니다.
Ctrl+C
로 종료 가능합니다 (LED가 녹색으로 깜박임으로 돌아갑니다).연결 확인
다른 콘솔 (Alt+F2
라든지 LAN 연결되어 있으면 다른 SSH 액세스 등)에서 pi 사용자로 로그인하고 ifconfig
명령으로 확인합니다.
$ ifconfig ppp0
ppp0 Link encap:Point-to-Pointプロトコル
inetアドレス:10.214.154.107 P-t-P:10.64.64.64 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 メトリック:1
RXパケット:8 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:9 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:3
RXバイト:152 (152.0 B) TXバイト:209 (209.0 B)
그리고 curl이나 ping 등을 치면 좋을 것입니다. 이름 확인도 확인할 수 있습니다.
$ curl http://www.yahoo.co.jp
$ ping www.yahoo.co.jp
s1.minimum(32Kbps)에서도 s1.fast(2Mbps)에서도 ping의 속도는 그다지 변하지 않는 것 같다.
마지막으로
이제 wvdial 명령을 한 번에 연결할 수 있지만 로그아웃하면 종료되고 다시 시작하면 다시 입력해야 합니다. 전자는 nohup 명령으로 실행하고, 후자는 스크립트를 작성해 systemd에 짜넣으면(자) 우선은 해결할 수 있을 것입니다.
그리고, 자동 기동이나 자동 재접속을 할 수 있는 테크닉을 가지고 계신 분은 꼭 Qiita에 투고 부탁드립니다!
메카 트랙스의 3GPI라는 선택도
세세한 설정 등이 힘들다고 생각하는 분은 메카트럭스사의 3GPI를 추천합니다.Network Manager를 사용하여 한 번 설정하면 자동 시작할 수 있도록 만들어졌습니다. 신뢰성이 높고 엔터프라이즈 용도에 추천합니다.
$ ifconfig ppp0
ppp0 Link encap:Point-to-Pointプロトコル
inetアドレス:10.214.154.107 P-t-P:10.64.64.64 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 メトリック:1
RXパケット:8 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:9 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:3
RXバイト:152 (152.0 B) TXバイト:209 (209.0 B)
$ curl http://www.yahoo.co.jp
$ ping www.yahoo.co.jp
이제 wvdial 명령을 한 번에 연결할 수 있지만 로그아웃하면 종료되고 다시 시작하면 다시 입력해야 합니다. 전자는 nohup 명령으로 실행하고, 후자는 스크립트를 작성해 systemd에 짜넣으면(자) 우선은 해결할 수 있을 것입니다.
그리고, 자동 기동이나 자동 재접속을 할 수 있는 테크닉을 가지고 계신 분은 꼭 Qiita에 투고 부탁드립니다!
메카 트랙스의 3GPI라는 선택도
세세한 설정 등이 힘들다고 생각하는 분은 메카트럭스사의 3GPI를 추천합니다.Network Manager를 사용하여 한 번 설정하면 자동 시작할 수 있도록 만들어졌습니다. 신뢰성이 높고 엔터프라이즈 용도에 추천합니다.
3GPI(Raspberry Pi용 3G 통신 모듈) 29,800엔(부가세 포함 2015년 10월 현재)
3GPI의 접속 설정에 대해서는, 이하의 사이트에서 소개했습니다. 신경이 쓰이는 분은 봐 주세요.
Raspberry Pi로 SORACOM Air를 연결해 보았습니다! ~메카 트럭스 3GPI편~ 「커맨드 1발로 접속 OK!」
그럼! SORACOM Air에서 IoT를 즐기십시오
Reference
이 문제에 관하여(좀 더 쉽게 Raspberry Pi에서 SORACOM Air 사용 (FS01BU USB 모뎀 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/dietposter/items/bf3b0311a044eaf36df8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)