290 likes | 521 Views
How to Build an Embedded Asterisk IP-PBX. Topics. IP-PBX and Asterisk Why Embedded? IP PBX Hardware 101 Free Telephony Project and Open Hardware Status The Future Opportunities. IP-PBX and Asterisk. A open source PABX (PBX) that can route calls between the PSTN and VOIP
E N D
Topics • IP-PBX and Asterisk • Why Embedded? • IP PBX Hardware 101 • Free Telephony Project and Open Hardware • Status • The Future • Opportunities
IP-PBX and Asterisk • A open source PABX (PBX) that can route calls between the PSTN and VOIP • Usual FOSS advantages – low cost and open • VOIP experiencing massive growth • Primary sponser Digium but many contributors • Hence alternatives such as FreeSwitch, CallWeaver, etc, etc
Introduction • Typical installation x86 PC plus PCI card to connect to the telephone lines/telephones. • Paradigm shift away from x86/PCI cards • History: Embedded = IP-only and no DSP (Echo cancellation and codecs not possible) • Analog Devices Blackfin Processor has challenged this paradigm!
Why Embedded • Small size (DSL router) • Low power < 5W (battery, solar)! • No moving parts (fans or disks) • Quiet • Reliability (parts count, connectors) • Low cost (a few hundred $ street) • Just plain cool!
Blackfin Processor • A powerful DSP (1 GMAC) • AND runs uClinux • Breaks the two processor (host/DSP) paradigm • Low cost ($5 - $15 each) • Well supported by vendor and community • Open hardware and software
IP-PBX Hardware 101 Host PC PCI Card Asterisk Device Driver PCI Bridge FXO Port x86 CPU Ethernet Card DSP hardware FXS Port
IP-PBX Hardware 101 Embedded PBX Asterisk Blackfin CPU FXO Port DSP software Device Driver FXS Port
IP-PBX Hardware 101 • Many redundant parts removed • Lower cost • Smaller size • Lower power • Enhanced reliability • Don’t need “hardware” DSP – Blackfin CPU is a DSP
Challenges • Complex development environment • Cross compiler & tool-chain • Customized kernel and apps • Learning Curve • Low memory ~64MB • uClinux (offset by partial MMU) • Care and feeding of the cache
Who is working on Blackfin Asterisk? • Several individuals and companies working on Blackfin Telephony products. • Expect to see many embedded Telephony products in the near future • This presentation focuses on the activities of the Free Telephony Project
Free Telephony Project Goals • Build a completely open embedded telephony platform. • Hardware designs are open. • Full design and manufacture information available for download. • Schematics, PCB layouts, HDL code, unit tests
Motivation • Various motivations across the people and companies involved in the project. • Obvious business potential in a $200 IP-PBX with multiple ports. • Enabler for service models. • My motivation is Social & Geeky rather than Business.
Motivation • I like building stuff • Would like to use my hardware/DSP skills to improve the world a little • Open software like Linux and Asterisk has been a great thing for the World. • Craig Newmark (Craigslist) : Nerd values “Get yourself comfortable, then do something fun to change the world a little”
Open Hardware • The designs are free as in speech • A community exists that are sharing designs and helping each other. • Build better hardware faster using open development models. • Opportunities for small business. • It’s working!
Hardware Projects (so far) • BlackfinOne DSP Motherboard (mature) • 4-8 port FXO/FXS Analog (mature) • E1/T1(prototype hardware and driver) • BRI-ISDN (stalled) • IP04 $100 IP-PBX (mature)
How to Hack Telephony Hardware in Linux • Schematic Entry (gschem) • PCB Design (PCB) • Verilog HDL (Icarus)
Design Process Flow Design Schematics (gschem) Write Verilog Code (Icarus) Design PCBs (PCB) Assemble Prototype Hardware Debug and Test Hardware Port Asterisk to Blackfin (gcc) Integrate and Test system
Hardware Hacking is Getting Easier!! • Build sophisticated surface mount circuits. • Order strange parts on-line e.g. Digikey • Prototype PCB costs dropping • Stereo Microscope + soldering tools < $500 • Open hardware designs • Free CAD tools • Help from on-line communities
Status Develop DSP Motherboard Sep 2005 Sep 2006 Jan 2007 Port Asterisk to Blackfin Develop Analog Hardware IP04Prototypes May 2007 Port driver to Blackfin Production Engineering Volume Manufacture Q3 2007
Performance • 500 MIPs Available (1 GMACs) • G729A (8 MIPs) • Speex (15-30 MIPs) • Simultaneous SIP Calls (approx 50) • Echo Can • Depends on tail • 12-24 ports depending on tail
Opportunities • Business • Individuals • End Users
Opportunities for Business • Massive Differentiation • Cost/Margin advantages • New products we haven’t even thought of: • Asterisk ATA or fax • Asterisk in an very smart IP-phone • T1 IP-PBX in an ATA form factor for $200 • ?
Opportunities for Individuals • It’s open. All of it. Hardware and software. Even the CAD tools! • Exciting project in early stages • Chance to really contribute • It’s very different from x86/PCI • Helped needed: Hardware, software, Asterisk config
Opportunities for End Users • Lower end user cost – a $300 (street) 4-port IP-PBX in 2008? • IP-PBX functionality in the home rather than current ATA. • Bring telephony to developing countries. • Small, fan-less lets you reach markets like SOHO that don’t want a PC for their phone system.
Getting Started • Buy a Blackfin STAMP Card ($226) • Buy a 2 FXO 2 FXS port Analog Starter Kit ($299) • Start Hacking
Questions? For more information http://rowetel.com/ucasterisk geda.seul.org blackfin.uclinux.org