rfkill状態の確認

rfkillコマンドを実行します。

# rfkill list
0: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
1: brcmfmac-wifi: Wireless LAN
	Soft blocked: no
	Hard blocked: no
2: bcm43xx Bluetooth: Bluetooth
	Soft blocked: no
	Hard blocked: no
3: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

実行結果はOpenBlocks IoT BX1のものです。

OpenBlocks IoT BX1でbluetooth有効化

OpenBlocks IoT BX1でbluetoothを有効にするには下記のコマンドを入力します。

# bluetooth_rfkill_event &
[1] 2528
root@obsbx1:~# 1419774465.263297: idx 2 type 2 op 0 soft 1 hard 0

# rfkill unblock bluetooth
1419774477.241033: idx 2 type 2 op 2 soft 0 hard 0

# execute brcm_patchram_plus --use_baudrate_for_download --no2bytes --enable_fork --enable_lpm --enable_hci --baudrate 3000000 --patchram /etc/firmware/bcm43341.hcd --bd_addr XX:XX:XX:XX:XX:XX /dev/ttyMFD0
Done setting line discipline
1419774477.703569: idx 3 type 2 op 0 soft 0 hard 0

# hciconfig
hci0:	Type: BR/EDR  Bus: UART
	BD Address: 98:4F:EE:03:D8:58  ACL MTU: 1021:8  SCO MTU: 64:1
	UP RUNNING PSCAN 
	RX bytes:954 acl:0 sco:0 events:42 errors:0
	TX bytes:987 acl:0 sco:0 commands:42 errors:0

“bluetooth_rfkill_event &”を入力したら一度Enterキーを押してコンソールに戻ります。
続けて”rfkill unblock bluetooth”を入力した時にもEnterキーを押してコンソールに戻ります。

有効になっているかの確認のために”hciconfig”を実行します。

bluetoothの起動方法

# /etc/init.d/bluetooth start

bluetoothの停止方法

# /etc/init.d/bluetooth stop

bluetoothのデバイス確認方法

# hcitool dev

bluetoothのデバイススキャン

# hcitool scan

bluetoothのLE(ローエナジー)デバイススキャン

# hcitool lescan

OpenBlocks IoT BX1に開発・実行環境のインストール

OpenBlocks IoTに開発環境と実行環境をインストールします。

1. USB シリアルチップの制御

USB シリアルチップの電源を自動制御にすると 消費電力が35mA程度になるようなので、こちらに設定を変更します。
ただし自動制御にするとコンソールでのキー入力時に電源 OFF 状態から復帰時に最初のキー を取りこぼす場合があるようです。

# echo auto > /sys/devices/pci0000:00/0000:00:04.3/power/control

常時オンにする場合にはこちらの設定に戻します。

# echo on > /sys/devices/pci0000:00/0000:00:04.3/power/control

2.ntpのインストール

# apt-get install -y ntp

3.開発環境のインストール

# aptitude update
# apt-get install multipath-tools
# locale-gen en_US.UTF-8
# localedef -i en_US -f UTF-8 en_US.UTF-8
# export LANGUAGE=en_US.UTF-8
# export LANG=en_US.UTF-8
# export LC_ALL=en_US.UTF-8
# locale-gen en_US.UTF-8
# dpkg-reconfigure locales
# tasksel install standard ←en_US.UTF-8を選択します
# aptitude install build-essential

あわせてgitもインストールします。

# aptitude install -y git
# git --version
git version 1.7.10.4

4.実行環境のインストール

node.jsをインストールします。ソースからのインストールとなり、執筆時点でのnode.jsのバージョンは0.10.35です。

# aptitude update
# cd ~ 
# mkdir src
# cd src
# wget http://nodejs.org/dist/v0.10.35/node-v0.10.35.tar.gz
# tar xvzf node-v0.10.35.tar.gz
# cd node-v0.10.35
# ./configure
# make
# make install
# node --version
v0.10.35

Redisをインストールします。執筆時点でのRedisのバージョンは2.6.9です。

# aptitude install -y redis-server
# redis-server --version
Redis server v=2.6.9 sha=00000000:0 malloc=libc bits=32

# /etc/init.d/redis-server stop
# /etc/init.d/redis-server start
# /etc/init.d/redis-server status

サービス起動コマンド

# /etc/init.d/redis-server start

サービス停止コマンド

# /etc/init.d/redis-server stop

サービス状態確認コマンド

# /etc/init.d/redis-server status

OpenBlocks IoT BX1のネットワーク設定

OpenBlocks IoTのネットワークを設定するためにWifiとIPアドレスの設定を行います。

1. Wifi設定
wpa_passphrase コマンドでwpa.confを作成し、SSIDとPASSWORDを指定します。
作成されたwpa.confを編集して行を追加します。

# cd /etc/wpa_supplicant
# wpa_passphrase SSID PASSWORD > wpa.conf ← SSIDとパスワードを指定します
# chmod 600 wpa.conf

# vi /etc/wpa_supplicant/wpa.conf

ctrl_interface=/var/run/wpa_supplicant ← 追加します
ap_scan=1             ← 追加します
network={
	key_mgmt=WPA-PSK    ← 追加します
	proto=WPA WPA2      ← 追加します
	pairwise=CCMP TKIP    ← 追加します
	group=CCMP TKIP     ← 追加します
	ssid="SSID"
	#psk="PASSWORD"    ← 平文パスワードは削除します
	psk="XXXXXXXXXXXXXX"
}

# /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 -D nl80211,wext -c /etc/wpa_supplicant/wpa.conf

2.IPアドレスの設定
使用環境に合わせて固定IPアドレス(またはDHCP)やデフォルトゲートウェイ等を指定します。

# vi /etc/network/interfaces

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

auto lo
iface lo inet loopback

#auto wlan0
#iface wlan0 inet dhcp

auto wlan0
iface wlan0 inet static
     address 192.168.254.254
     network 192.168.254.0
     netmask 255.255.255.0
     broadcast 192.168.254.255
     gateway 192.168.254.253        ←default g/wを追加します
        wpa-conf /etc/wpa_supplicant/wpa.conf ←これを追加します

3.DNSの設定
DNSサーバを指定します。

# vi /etc/resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4

4.ネットワークの再起動
ネットワークを再起動して正しく設定されるかを確認します。

# ifdown wlan0
# ifup wlan0

あとはSSHでログイン出来るようになります

$ ssh root@IPADDRESS

root@obsbx1:~#

OpenBlocks IoT BX1にscreen接続

1. screen接続

screenコマンドを使用してOpenBlocks IoTに接続します。

screenshot_1423

ターミナルを起動して”ls /dev/cu.usbserial*”と入力すると”/dev/cu.usbserial-AJ035GOQ”のように接続先が表示されます。

$ screen /dev/cu.usbserial-AJ035GOQ 115200 -L

*接続先は環境によって異なります。

2. ログイン

接続されると画面がクリアされるので”Enter”キーを1度押します。

screenshot_1439

そうするとログインプロンプトが表示されますので”root”(パスワードも”root”)でログインしてください。

# opkg install redis
Debian GNU/Linux 7 obsbx1 ttyMFD2

obsbx1 login: root
Password: 
Last login: Sat Jan  1 00:00:38 JST 2000 on ttyMFD2
Linux obsbx1 3.10.17-poky-edison+ #5 SMP PREEMPT Tue Dec 16 14:47:16 JST 2014 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@obsbx1:~# 

3.時刻設定

日付がデフォルト値になっているためまずは手動で設定します。

# opkg install redis
# date 122810002014 ←月日時分年の順で指定します
# hwclock --systohc --directisa

 

4.補足

Macでシリアル接続するためにドライバが必要な場合には下記よりダウンロードしてインストールしてください。

screenshot_1441

http://www.ftdichip.com/Drivers/VCP.htm

 

OpenBlockes IoT BX1先行開発キット開封

年内の発送が難しそうだと連絡が入っていたぷらっとホームさんのOpneBlocks IoT BX1 先行開発キットがなんとか最終日に届きましたので開封。

IMG_7193

パッケージはこんな感じです。

IMG_7194

箱を開けると小さなOpenBlocks IoTが入っています。

先行開発キットには開発ボードもついてます。ただ3Gは使えないです。

IMG_7195

同梱されているパッケージはこんな感じです。本体は小さいですね。しかも軽いです。

IMG_7196

拡張ボードに足をつけてBX1と合体しました。

今日はここまでです。後日ゆっくりとセットアップをしていきたいと思います。

ハンズオンにも参加させてもらっているのでインテルEdisonボートとの違いも理解しています。

大きくはOSがDebianなので、node.jsなどのパッケージのインストールが必要です。

それも順に情報公開していきます。