Phone Platform firmware - 電話プラットフォームのファームウェア
.
Phone Platform firmware - 電話プラットフォームのファームウェア
2回路の電話ライン、1回路のマイク&スピーカー、ADC/DACとEthernetによる1回路のIP Phoneにより、擬似交換機を構築できます。
電話機を使ったインターホン、独自のIP電話システムなど、色々な応用が可能です。
電話ラインは比較的大きな負荷も駆動できるため、黒電話のベルも鳴らすことができます。
mbed 以外に、 LPCXpresso も搭載できます。
基板のサイズはタカチ電機工業のケース「PW-15-4-11」に収まるようデザインされています。
ボード詳細は mbed Phone Platform - 電話プラットフォーム
その mbed Phone Platform を、簡易交換機や独自のIP Phoneにするファームウェアです。
SIP でも H.323 でもなく、独自プロトコル使用。 考え方は NOTASIP に近いかもしれない。 8kHz(ksps) 8bit u-law 形式
Line、IpLine ハードウェアの制御は、だいたい Class としてプログラムしています。
設定や電話帳はファイルから読み込んで動作します。
腕に覚えのある方は、これを参考に VoIP のプロトコルを実装してください。
電話機を使わないのであればこの基板でなくとも、汎用基板を使い、ADC/DACの前にバッファを付けてイヤホン・マイクでIP Phoneができます。
簡易PBX | IP電話 |
---|---|
1台のPhone Platformへ2台の電話機を接続 ダイヤル番号 左:101、右:102 | Phone Platformへ電話機を接続したものを2セット それぞれLANケーブルで接続 ダイヤル番号 左:201、右:101 |
ダウンロード
http://mbed.org/users/okini3939/programs/PhonePlatform/latest
- Line1, Line2 の受発信・通話は完成 (ローカル同士なら擬似交換機・インターホンとして使える)
- IP Line の受発信・通話、ほぼ完成 (LAN経由で繋がります、時々暴走する)
テスト用 擬似IP端末プログラム (Windows用、通話の代わりに音声ファイルを送信・受信する)
- 送信ファイル: send.au 、受信ファイル: recv.au (0バイトで作成)
- MIT License (ソフトウェアを無償・無制限に使用できる、著作権表示は必要、無保証)
設定ファイル
mbedのUSBストレージに「phone.cfg」という設定ファイルがあれば電源ON時に自動的に読み込んで各種設定ができる。
IPADDRESS=192.168.0.123 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 NAMESERVER=192.168.0.1 DIAL[0]=101 TYPE[0]=1 ADDR[0]= DIAL[1]=102 TYPE[1]=2 ADDR[1]= DIAL[2]=103 TYPE[2]=3 ADDR[2]= DIAL[3]=201 TYPE[3]=1 ADDR[3]=192.168.1.151 DIAL[4]=301 TYPE[4]=2 ADDR[4]=192.168.1.152
項目 | 値 | デフォルト | 備考 |
---|---|---|---|
IPADDRESS | DHCP or IPアドレス | DHCP | IPアドレス(IPv4) |
NETMASK | テキスト | サブネットマスク | |
GATEWAY | テキスト | デフォルトルーター | |
NAMESERVER | テキスト | DNSサーバー | |
DIAL[n] | 数値 | ダイヤル番号(電話帳) | |
TYPE[n] | 数値 | 端末種別(1:Line1, 2:Line2, 3:IpLine) | |
ADDR[n] | IPアドレス | 相手先IPアドレス(省略時はローカル) |
不要な項目は省略可能
IPADDRESS を省略するとLANは使いません。
Note
暴走する原因は、クリティカルセッション処理中の割込みだと思う(Ethernet送信・受信の処理がかぶってる? 想像)
アナログにノイズが乗るので回路かソフトウェアにもう一工夫いる。
現状、電話機のダイヤル方式はパルスのみ対応。(DTMFも頑張ればできるはず)
Powerd by Galileo 7 Co., LTD.
Please log in to post comments.