Pogoplug Classic

Pogoplug ClassicをAsterisk + chan_mobile(Bluetooth)で遊ぶ。

目次

コンセプト

自宅に交換機(Asterisk)を置いて遊ぶ為の筺体を選定する。以下の条件にあったもの。

  • 安い
  • 入手性が良い
  • 見た目がイケてる(?)
  • インストール/設定が比較的容易
  • chan_mobileが動くスペック
  • セルフコンパイル出来ること
  • 他にも遊べる余地がある

コスト

Pogoplug本体(3000円~) + Sandisk Cruzer Fit 16G(1000円~) + Planex BT-MicroEDR2X(1000円~)

スペック

CPU:Marvell Kirkwood 1.2GHz(ARMv5te)
ブート:GNU uboot
メモリ:256MB
NAND:128MB
インターフェース:USB 2.0*4/Giga Ether 1
価格:3000円~

特徴

sheevaplugの類。玄箱Proとスペックが近い、仲間?。玄箱Pro同様にNANDのみの構成が可能。
製品自体、本来はプライベートクラウドストレージというもの。USBに接続したHDDやFlashメモリなどを外部経由や
ローカルで使用する。見た目が個性的、かわいい(!?)、旧製品で値崩れしているので安い、おっさんGeek(?)のお小遣いで買える。
比較的に入手製がよい。海外ではHackが盛んな為、英語ソースだが情報豊富。
本体は某カメラでは3,980-でした。

シリアルポート

殻割するとSerialのPinが既に立っている。独自uboot hackなどはJTAG/SerialConsole必須。海外ではnetconsoleを使用しているものも多い。
とりあえずnetconsoleを設定してみることをお勧め。console見れるとubootの挙動も確認出来るので面白いです。

初期設定

Pogoplugの初期化を実施してSSHでログインできる状態にしてください。

Debianインストール

SSHでログインできるようになったら次はDebian化をします。以下の海外サイトで素晴らしいScriptでDebian化されていますのでそちらを参照してください。

How to install Debian Linux on your Dockstar, GoFlex or Pogoplug NAS
http://projects.doozan.com/debian/

適当なUSB Flashを用意してましょう。1G以上はあった方が良いでしょう。当方はなるべく小型でそこそこ速度がでるものを使用しました。
Cruzer Fit USB Flash Driveがおススメです。海外パッケージですが価格も激安です。

Wheezy installerはうまく動作しませんでしたので、ここではSqueezeを使用してDebian化しましょう。

各種インストール

Debian化したあとは色々インストール/設定していきます。

  • aptitudeインストール
#apt-get install aptitude
  • update
#aptitude update
  • タイムゾーンの設定
#dpkg-reconfigure tzdata

メニュー形式で地域を選んでタイムゾーンを指定します。これでJSTになりました。

  • ntpインストール
#aptitude install ntp

/etc/ntp.confを編集します。

# pool.ntp.org maps to about 1000 low-stratum NTP servers.  Your server will
# pick a different set every time it starts up.  Please consider joining the
# pool: <http://www.pool.ntp.org/join.html>
#server 0.debian.pool.ntp.org iburst
#server 1.debian.pool.ntp.org iburst
#server 2.debian.pool.ntp.org iburst
#server 3.debian.pool.ntp.org iburst

こんな風にコメントアウトして以下を挿入します。 ntp.nict.jpとmfeedを設定します。

server ntp.nict.jp
server ntp1.jst.mfeed.ad.jp
server ntp2.jst.mfeed.ad.jp
server ntp3.jst.mfeed.ad.jp

Bluetoothインストール

メインのbluetoothスタックをインストールします。

  • bluezのインストール
#aptitude install bluez libbluetooth-dev

libbluetooth-devはAsteriskをconfigure時chan_mobileを選択する為に必要になります。

Asteriskインストール

Debian ARMではAsteriskパッケージが存在しますが今回は光電話patchuなどを当てたいのでSourceからコンパイルします。
このPogoplugでセルフビルドしてもそこそこパワーある為、問題ありません。

  • まずは開発環境のインストール
#aptitude install install build-essential gcc make linux-headers-2.6.32-5-kirkwood libxml2-dev libncurses5-dev
  • 次に最新版Asteriskをダウンロードして展開後、解凍しディレクトリを移動
#cd
#wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.16.0.tar.gz
#tar zxvf asterisk-1.8.16.0.tar.gz
#cd asterisk-1.8.16.0
  • そしてconfigureを実行
#./configure
  • configureで問題なければ次はchan_mobileを有効化します。
#make menuselect
  • Add-onsを選択
                                     **************************************************
                                         Asterisk Module and Build Option Selection
                                     **************************************************

                                                     Press 'h' for help.

                                               --->  Add-ons (See README-addons.txt)
                                                     Applications
                                                     Bridging Modules
                                                     Call Detail Recording
                                                     Channel Event Logging
                                                     Channel Drivers
                                                     Codec Translators
                                                     Format Interpreters
                                                     Dialplan Functions
                                                     PBX Modules
                                                     Resource Modules
                                                     Test Modules
                                                     Compiler Flags
                                                     Voicemail Build Options
                                                     Utilities
                                                     AGI Samples
                                                     Module Embedding
                                                     Core Sound Packages
                                                     Music On Hold File Packages
                                                     Extras Sound Packages
  • スペースキーを押してchan_mobileを有効化
                                     **************************************************
                                         Asterisk Module and Build Option Selection
                                     **************************************************

                                                     Press 'h' for help.

                                                        --- extended ---
                                                    [*] chan_mobile
                                                    [ ] chan_ooh323
                                                    [ ] format_mp3
                                                    XXX res_config_mysql
                                                        --- deprecated ---
                                                    XXX app_mysql
                                                    [ ] app_saycountpl
                                                    XXX cdr_mysql
  • ESCキーを押してSキーで保存して終了
                                     **************************************************
                                         Asterisk Module and Build Option Selection
                                     **************************************************

                                                     Press 'h' for help.

                                               ARE YOU SURE?
                                                  --- It appears you have made some changes, and
                                                  you have opted to Quit without saving these changes!

                                                    Please Enter Y to exit without saving;
                                                    Enter N to cancel your decision to quit,
                                                       and keep working in menuselect, or
                                                    Enter S to save your changes, and exit
  • そしてコンパイル、インストール、設定ファイル、起動スクリプトのインストール
#make
#make install
#make samples
#make config
  • boot時にAsteriskを起動する設定
#update-rc.d asterisk defaults