Welcome to IP Phone Dev

The IP Phone Dev is an open development service platform for those who worked on communication software and hardware development. Developers can create applications like IP phone, voice gateway using the SDK. Applications are written in C/C++ and run on Protocol Platform, a OS transparency platform designed for communication development.

Based on the feature of OS transparency, you can develop the application on Windows, then deploy them to the target device. A version of IP Phone Dev is available for download. It was seperated into 2 parts: Windows Simulator and Hardware Phone. Along with the Protocol Platfrom libraries, it includes the source code of service and UI layer.

Developing on Windows (BP200 as sample)

To develop on Windows, we provide Windows Simulator - JPDA-Win. It has the same source code of service logic with Hardware Phone. With various tools on Windows, you can study and evaluate IP Phone Dev more easily.

The simulator has the same behaviour as the program running on Blackfin. You can also set the configuration by menu and web. For more about operations, please refer BP200 User Manual.

Here is a brief list of source code in the package:
Module File Description
AP Auto Provision
IPCC Inter-Process Communication Client
IPCS Inter-Process Communication Server
JPF Juphoon Phone Framework
SUA SIP User Agent
WS Web Server
JPDA jpda.c The entrance of program.
jpda_core*
jpda_line*
The main logic of phone actions.
jpda_db* Handle the configuration.
jpda_drv* Handle the user interface – input and display.
jpda_menu* Handle the menu actions.
web_* Handle the web actions.

Running on Blackfin

To run and debug on our target device - Blackfin, we provide Hardware Phone. Before you start, you should at least get a reference phone and build the JPhone development environment.

3 steps to run on Blackfin:

  • Compile: Generate the program binary using cross-compile tools.
  • Deploy: Download the binary from the host to the refernece phone or board.
  • Run and Debug: Reboot the phone to test the program, or debug using GDB.