Mana Blog Next

自宅IoT、仕事と家庭、カメラ、筋トレ生活

Raspberry Pi にRaspbian(ラズビアン)を入れてSORACOM Airを使ってみた

Debian系のOS「Raspbian(ラズビアン)」を使ってみることにしました

f:id:mana-cat:20151031010138j:plain
Raspberry PiのOSにPidoraだけしか使えないと、誰かに教えたり寄稿したりするときに何かと不便です。
答えは簡単で、最もメジャーなRaspberry Pi用のOSは、Pidoraではなくて、Raspbian(ラズビアン)だからです
ちなみにこのRaspbianは、DebianベースのOSです。
Debian系・・・実は初めてです!ドキドキ。
20代のときサーバーエンジニアをしていた頃はSolarisメインで、あとはRHELとか、FreeBSDとか、HP-UXとかだったので・・・Debianと出会うことが無かったんですよね。ということで初挑戦!

SDカードを差し替えるだけで、Pidoraに戻ることができる。

Raspberry Piの良い所は、インストール先がSDカードという点ですね。
だから、他のOSをインストールしたSDカードと差し替えるだけでいいんです。夫婦でRaspberry Pi本体の共用だってできちゃいます。
今回、Raspbian用にトランセンドのSDカード(16GB)を1枚用意しただけですので、追加投資としては980円のみとなります。

SDカードも安くなったもんだ・・・

Raspbianの優れているところ

ちなみに、Raspbianの良い所は、サクッとインストールしたらすぐに使えることですね。初期設定がPidoraよりも簡単ですし、とっても使いやすい!
インストールも簡単ですので、比較的楽に導入できるかと思います。
今回紹介するのは、Raspbianインストール後の設定です。

お約束

コマンドについては実行したものをブログにペーストしているため、ほぼ自分用メモに近いです。
解説不足かもしれませんがご容赦願います&試してみるのは自己責任でよろしくお願いします。

キーボードの設定

デフォルトではUKになっていました。
私はUSキーボードを使用しているので、設定を変更しました。GUIでサクサクと変更できますよ。

US(English)に変更します。

無線LANの設定

GUIで起動したとき、右上の無線LAN設定画面をクリックして設定します。とりあえずサクッと繋いでみます。
無線LANに繋がったら、SSHでログイン。
ターミナルを開いてipコマンドで確認します。wlan0もしっかり出てきていますよ~。

pi@raspberrypi ~ $ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether b8:27:eb:4a:77:72 brd ff:ff:ff:ff:ff:ff
    inet 172.16.250.7/16 brd 172.16.255.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::ba27:ebff:fe4a:7772/64 scope link
       valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 80:1f:02:6e:e3:b8 brd ff:ff:ff:ff:ff:ff
    inet 172.16.250.8/16 brd 172.16.255.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::a636:a96a:4816:a9eb/64 scope link
       valid_lft forever preferred_lft forever

SORACOM AirをUSBモデム「L-02C」を使ってインターネットに接続する

以前、PidoraでSORACOM AirをRaspberry Piで使ってみるエントリーを書きました。

これのRaspbianバージョンができるか念のため確認!
結果、問題無く動作できました。

(1)L-02Cが認識されているか確認してみる

pi@raspberrypi ~ $ lsusb
Bus 001 Device 006: ID 1004:61dd LG Electronics, Inc.
Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. LAN9500 Ethernet 10/100 Adapter / SMSC9512/9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

dmesgで調べてみます。
なんと、L-02CはCD-ROM として誤認識されているようですね。

pi@raspberrypi ~ $ dmesg
[16257.310887] usb 1-1.3: USB disconnect, device number 5
[16264.203197] usb 1-1.3: new high-speed USB device number 6 using dwc_otg
[16264.306363] usb 1-1.3: New USB device found, idVendor=1004, idProduct=61dd
[16264.306407] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[16264.306430] usb 1-1.3: Product: docomo L02C
[16264.306450] usb 1-1.3: Manufacturer: NTT DOCOMO, INC.
[16264.306469] usb 1-1.3: SerialNumber: 353168043369560
[16264.325042] usb-storage 1-1.3:1.0: USB Mass Storage device detected
[16264.330737] scsi host0: usb-storage 1-1.3:1.0
[16265.324933] scsi 0:0:0:0: CD-ROM            LG       Autorun          2.00 PQ: 0 ANSI: 0
[16265.373394] sr 0:0:0:0: [sr0] scsi-1 drive
[16265.373445] cdrom: Uniform CD-ROM driver Revision: 3.20
[16265.377296] sr 0:0:0:0: Attached scsi CD-ROM sr0
[16265.413520] sr 0:0:0:0: Attached scsi generic sg0 type 5

それを、いったんejectしてみて、もう一度lsusbコマンドを実行してみると、 ID 1004:618f LG Electronics, Inc. Ally/Optimus Oneと出てきます。

pi@raspberrypi ~ $ sudo -s
# eject sr0
# ls  /dev/ttyUSB*
ttyUSB0  ttyUSB1  ttyUSB2  ttyUSB3
# lsusb
Bus 001 Device 007: ID 1004:618f LG Electronics, Inc. Ally/Optimus One
省略

(2)ダイヤルアップツール「wvdial」をインストールし、ダイヤルする

まずはダイヤルアップツールをインストールし、設定ファイルを編集します。

pi@raspberrypi ~ $ sudo apt-get install wvdial
pi@raspberrypi ~ $ sudo vi /etc/wvdial.conf
[Dialer Defaults]
Init1 = ATZ
Init2 = ATH
Init3 = AT+CGDCONT=1,"IP","soracom.io"
Init4 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Dial Attempts = 3
Stupid Mode = 1
Modem Type = Analog Modem
Dial Command = ATD
New PPPD = yes
APN = soracom.io
Modem = /dev/ttyUSB2
Baud = 460800
ISDN = 0
Phone = *99***1#
Username = sora
Password = sora
Carrier Check = no

いったんデフォルトルート(wlan0)を消し、それからwvdialコマンドを実行します。

pi@raspberrypi ~ $ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gw              0.0.0.0         UG    303    0        0 wlan0
172.16.0.0      *               255.255.0.0     U     303    0        0 wlan0
pi@raspberrypi ~ $ sudo -s
# route del default
# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.16.0.0      *               255.255.0.0     U     303    0        0 wlan0
# wvdial

すかさず別窓でrouteコマンドを実行してみます。

# route
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         *               0.0.0.0         U     0      0        0 ppp0
10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
172.16.0.0      *               255.255.0.0     U     303    0        0 wlan0

ipコマンドでppp0の状態を確認します。

5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 3
    link/ppp
    inet 10.166.123.41 peer 10.64.64.64/32 scope global ppp0
       valid_lft forever preferred_lft forever

通信確認をしてみます。

pi@raspberrypi ~ $ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=55 time=132 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=55 time=141 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=55 time=142 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=55 time=135 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=55 time=144 ms
pi@raspberrypi ~ $ traceroute mana-cat.com
traceroute to mana-cat.com (216.239.32.21), 30 hops max, 60 byte packets
以下略

I2Cの使用

GUIのRaspbian ConfigurationでI2Cを有効化(Enabled)にして、OSを再起動します。

i2c-tools、python-smbusをインストールします。

pi@raspberrypi ~ $sudo apt-get install i2c-tools python-smbus

試しにセンサーを繋げて、i2cdetectを実行できるか試してみます。

pi@raspberrypi ~ $ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --

Raspbianでやってみたいこと

Raspbianにカメラを繋げて何か作ってみたりしたら楽しそう。
からあげさんのエントリーの赤外線カメラ自作も興味深いです。
karaage.hatenadiary.jp