Server in China


什么是AR1688?
固件升级
固件升级大小
AR168F IP电话硬件特点
芯片特点
软件应用程序接口的内容
AR168F IP电话软件特点
AR168G IP话机
为什么支持ADPCM G.726 32k 编码?
iLBC编解码就绪
拨号映射
我们的商务模式
区域和语言选项
怎样修改MAC地址
调试常见问题

 

什么是AR1688?
AR1688是一种可编程芯片,我们用它作为低成本的IP话机解决方案。它替代PA1688。他们的基本结构一样,都是8比特控制器用于voip协议栈,24比特DSP用于语音压缩算法。同PA1688相比,AR1688具有更高的性能,更好的语音质量,更多的优点和BOM更小,成本更低。对于PA1688,我们继续提供完全的voip协议源码和第三方开发的用户接口。 芯片和解决方案的细节如下:
1. 控制器速度48MHz(PA1688是22MHz)
2. DSP运算速度60MIPS(PA1688是33MIPS)
3. 集成的高性能音频编解码器(PA1688需要额外的编解码芯片,WM9707)
4. 集成的大容量SRAM,不需要额外的SDRAM(PA1688需要1x16 额外的SDRAM)
5. RoHS 筹划中
6. 1472字节的ICMP响应(ping xxx.xxx.xxx.xxx -l 1472):10毫秒(PA1688 21ms)
7. TFTP服务器数据流量(tftp -i xxx.xxx.xxx.xxx put filename):140kbytes/s
8. MD5 48字节加密运算:4.8ms(PA1688 9.9ms)
9. 软件API使用开源的SDCC编译器(PA1688 使用商业版的Keil C51)

 

固件升级
今天对于IP话机什么是最重要的特征?我的答案是,升级。为什么?因为VOIP技术一直在变化并且变化很快!H.323太古老了,而且不能很好地穿透NAT。MGCP是传统电信的产物而且有违于互联网的精神。好吧,在互联网本地SIP和基于开源的IAX2上发生了什么?他们都尴尬的败给了基于私有协议的Skype。因此,你的IP电话不能容易的升级,那么你还期望他能维持多久? 我们在AR1688上做的第一件事是升级特点,它具有老款PA1688所有好的升级特点,而且我们已尽力去除PA1688中不利于升级的方面。
1.任何IP话机死机时,按*键进入安全模式。在安全模式,用户能够使用“本地 ”的方法再次升级话机。PA1688需要按住*键上电两次进入192.168.1.100。AR1688只需要按住*键上电一次即可进入192.168.1.200。为什么不是100?因为我们希望避免PA1688和AR1688同时进入安全模式。
2.使用AR1688 话机死机的概率大大降低。不像PA1688,AR1688话机即使在升级的过程中掉电,话机也不会死机。我们对于当前正在运行的程序和当前正在更新的固件使用了不同的flash程序空间。
3.“本地”升级方法从使用私有协议的Palmtool改为TFTP。在过去的多年中,我们已被要求过好多次支持linux的Palmtool版本。Linux 用户不必从我们这里下载客户端程序。在windows环境中命令行升级方法:tftp -i xxx.xxx.xxx.xxx put ar168f_sip_cn_000543.bin。
4.是的,文件名使用和PA1688一样的格式,以上的文件名意思是用sip协议,中文资源,0.00543版本,当前稳定的演示版,升级一个ar168f IP话机。
5.“本地”升级的速度快多了。PA1688使用Palmtool升级960k字节的文件需要68秒。AR1688使用TFTP方式,16秒升级640k字节的文件。
6.两个芯片都有HTTP升级,升级的速度提高的也很显著。

 

固件升级大小
较小的固件升级文件显然有利于快速升级和自动升级。对于基于PA1688的话机,例如PA168S/T,其升级文件大小为960k字节。对于AR1688,我们已经将文件减小到640k字节。文件的减小主要从3个部分:
1.SDCC实际上不支持代码分页结构,为了写大于64k的代码,我们不得不进行手工分页,写详细的函数完成各页之间的相互调用。PA1688使用Keil C51编译器,其自动代码分页结构占用了50%的代码空间作为公用代码。而AR1688使用SDCC编译器,只使用了25%的代码空间作为公用代码。
2.DSP的存储结构得到改善。我们再也不用压缩DSP的代码,因此,AR1688的启动时间比PA1688快多了。实际上,因为启动时间慢,压缩PA1688上DSP代码是非常糟糕的办法。在AR1688中,我们把所有的公共DSP程序,例如LPC运算,都放到一起,这比压缩的效率高多了。
3.因为基于PA1688的无LCD的IP话机和1端口FXS网关设计的话机的存在,我们使用IVR提示终端用户必要的设备信息。在AR1688中,我们假定2x16 LCD是最低的显示配置,而且我们不再设计基于AR1688的网关,所以IVR功能不存在了,并且相应的文件大小也减小了。

 

AR168F IP电话硬件特点
AR168F IP电话硬件设计是基于AR1688芯片的第4版硬件设计,而且这也是我们提供给生产厂商的第一款基于AR1688的IP电话硬件设计。它符合蚂蚁规则:当厂商的数量像蚂蚁一样增长时,基于该设计的电话将变得便宜和无所不在。实际上,这就是为什么“中国制造”在当今世界如此普遍的关键所在。为了鼓励尽可能多的厂商参与进来,我们不收取额外的设计费用,任何购买该芯片的人都可以得到完整的硬件设计参考,即使只购买一片。 我们已经将很多设计文档放到 www.palmmicro.com.cn的下载网页上。为了方便那些不喜欢阅读大量PDF文档的人,这里总结了一些硬件特点:

1)基于AR1688的片上系统
2)2M字节的程序存储器
3)Realtek RTL8019AS 10Base-T以太网接口
4)可选的Realtek RTL8305SC 10/100Base-T 以太网卡交换机接口
5)带LED背光的2x16英文字符液晶显示
6)29键的键盘,包括12个数字键和17个功能键
7)带有LED指示灯的扬声器
8)2个额外的软件控制LED指示灯(消息和静音)
9)支持side-tone
很显然,因为以上这些特点,AR168F IP电话是一款具有超低器件成本的入门级设计。它将有助于VOIP系统用几乎相同的价格取代传统的PSTN电话系统。

 

芯片特点
低成本IP话机的关键是较低的主处理器成本。低成本的处理器依赖于数量。在过去的10年间VOIP设备数量较低,从一开始,几乎所有专门设计的VOIP芯片都被认为受限于低数量和高价格。这就是为什么Sipura在VCD/DVD芯片上取得成功和为什么越来越多的VOIP设备内建路由芯片的原因。DVD和路由器有很大的市场,在这方面处理器的价格很低。
AR1688也不是专门设计的VOIP芯片,很明显,它没有内置的有线或无线网卡。它源于巨大的消费市场。实际上通过查看芯片的特点就很容易猜到:

1)8-bit控制器,最高48Mhz,兼容Z80指令
2)24-bit定点DSP,最高60MIPS
3)116K字节的内部SRAM供控制器和DSP使用
4)内置20-bit数模转换器
5)内置18-bit模数转换器供麦克风和Line-in使用
6)内置DC-DC转换器为CPU核提供电源
7)支持UART
8)支持8-bit外部总线供flash/LCD/网卡使用
这有一个中文版的PPT文件有助于理解VOIP终端使用的芯片
http://www.chinavoip.net/cvc/2006-4/sponsor_file/15/ATCOM+Pa1688.rar

 

软件应用程序接口的内容
我们为所有的了AR1688IP电话厂商和最终用户提供应用程序接口。该接口包括了部分源码和目标文件。这些源码是在GPL许可下提供的。基于该接口,用户可以为IP话机定制自己的升级二进制文件。我们不提供完全的源码,因为我们不希望这些内容应用于同AR1688竞争的芯片上。我们希望看到基于我们实现上的改进,但不欢迎完全的改变,这是典型的中国文化,已经延续了5000多年。
为了更好的理解应用程序接口,我将在下面列出详细内容并解释。
应用程序接口文件SDCC.rar。它解压缩到SDCC目录。我们假定该文件夹已经解压缩到D:盘。如果不是,需要改变sdcc\src\makefile的第一行
当前有5个文件夹在SDCC下面:
1)bin-SDCC开放源码编译器二进制文件和我们自己专用工具的二进制文件。我们使用SDCC2.6.0稳定版。你可以直接从SDCC官方网站(http://sdcc.sourceforge.net/)下载这些文件。SDCC.exe文件比官方网站上的小,因为我们只编译了Z80 部分。GNU的make.exe也在这。
2)include-.h文件。我们只使用SDCC编译器,没有使用任何的包含文件和库文件。所有的.h文件都是我们自己写的,同标准的C运行程序相比有一点参数上的不同。不是所有的C运行程序都包含近来,只有那些需要的在这里。这是从性能上考虑。
3)lib-它不是真正的“库”,而是目标文件夹。这些目标文件从源码编译而来,该源码不是应用程序接口源码。这些目标文件同其他文件在链接阶段被链接在一起。同“include”一样,在我们的工程中没有标准的SDCC库。
4)src-开放源码文件,包括makefile和批处理文件,用于生成升级的二进制文件。所有相关的用户接口和VOIP协议的实现都提供源码。从代码数量来看,在用户接口程序中超过80%是开放源码。
5)tool-在bin目录中的专用工具的完全开放代码,在一个MSVisualC++6.0工程中。
关于应用程序接口的更多信息可以下载我们的开发指南。
http://www.palmmicro.com.cn/download/English/documents/AR1688DevelopManual_US.pdf

 

AR168F IP电话软件特点
北京微掌电子技术有限公司实际上是一个软件公司。近年来我们一直致力于开发和调试基于IP的语音和视频软件。它就像游戏,我们总是玩相同的比较熟悉的部分,只不过每次的方式不一样。同样这一次AR1688的软件也是从一张空白页开始。它不是基于任何的开放源码或其他软件,它甚至不是基于PA1688软件。每一行代码都是全新的。当我们宣布AR1688替代PA1688时,只是意味着AR1688将取代PA1688占领低端市场。 对我们来说,写出一长串AR168F的软件特点是非常容易的事情。
网络
1. 支持DHCP自动分配IP地址
2. 可通过HTTP自动升级话机配置信息和程序
3. 可通过HTTP方式更新配置、电话本、音乐铃声和升级话机程序
4. 可通过TFTP命令方式更新配置、电话本、音乐铃声和升级话机程序
5. 可通过SNTP协议自动获取日期和时间
6. 支持DNS
7. 响应ICMP ping请求消息

语音
8. 支持G711 a law和mu law
9. 支持GSM 6.10
10. 支持iLBC
11. 支持G.726-32
12. 支持Speex *
13. 支持G.729 **
14. 支持G.723.1 **
15. 符合G.165/G.168 16ms 回声抵消
16. 200ms回声抵消 *
17. 动态语音检测 *
18. 舒适噪声生成 *
19. 自动增益控制和噪声抑制 *
20. 自适应去抖动缓冲技术 *
21. 生成标准DTMF

电话
22. 支持呼叫保持,呼叫转移,呼叫前转
23. 支持3方会议通话*
24. 4组快速拨号
25. 留言服务号码快速呼叫
26. 支持重拨功能
27. 支持闪断功能
28. 支持静音功能
29. 听筒音量和扬声器音量可以独立调节
30. 话机自带完整的菜单项,可使用键盘在LCD上设置话机配置
31. 可更新音乐铃声
32. 100组号码容量电话本
33. 可记录已拨电话、已接电话和未接电话各10个
34. 支持热线功能
35. 支持寻呼和会议的自动应答
36. 支持呼叫前缀
37. 留言指示灯
38. 静音指示灯
39. 免提模式指示灯
40. LCD背景灯

协议
41. 支持IAX2协议
42. 支持SIP协议

对于标注*的内容,目前还没有实现,我们正在开发中。
对于标注**的内容,目前还没有实现,将来可能需要支付额外的编码许可费给专利持有者。

 

AR168G IP话机
迪迈特(www.adigimate.com)已经成为继Yuxin(www.yntx.com)和High-Link(www.high-link.cn)公司后第3个提供基于AR1688方案的 IP话机的公司。我们期望在未来10个月有超过10个的制造商加入。

来自于迪迈特的GP1260 IP话机是基于我们的AR168G参考设计的。不像免费的AR168F,使用AR168G需要支付额外的费用。它使用132×64点阵显示,用户界面比2×16字符的LCD更有吸引力,能够支持中文字符和其它在标准ascii码表中不存在的特殊字符。AR168G还支持更多的按键,例如,最多10组快速拨号键。

 

为什么支持ADPCM G.726 32k 编码?
AR1688软件开发较慢。我们花了4周时间将软件从0.06版升级到0.07版,但0.07版本仍不能提供iLBC编码。然而,我们在该版本中增加了支持G.726 32k 编码。以前我们并未在PA1688中支持过G.726,因为我们认为它不重要。对于AR1688我们依然认为G.726不重要。我们之所以增加对G.726的支持,是因为我们在iLBC上遇到了很多意想不到的问题,我们不得不运行一些简单的东西去测试AR1688的DSP核。基于G.711,GSM6.10,ADPCM G.726和LMS的回声抵消算法在AR1688上运行稳定。我们已经至少发现了3个关于DSP指令的问题:
1. af=reg+const 指令不能给出正确的结果,而且不能正确的设置标志
2. 当使用圆周缓存时,m寄存器不能被设置成负值
3. cntr将被马上压入计数器栈中,而不是等到“do”指令执行,这与标准的ADSP21xx不相符
我们希望不再出现坏消息并能很快就能发布支持iLBC的版本。好消息是,很多用户反映AR1688语音质量比PA1688好。而且在我们内部测试中,它不仅具有更好的语音质量,还具有更小的硬件延时和稳定性。

 

iLBC编解码就绪
终于我们完成了!我们许诺了几个月的iLBC 编解码今天终于可以在AR1688芯片上运行了。在我们做完开发整理和内部测试后我们将发布0.08版本的固件。很有希望在这个周末将它放到网站上。
有人问我为什么要把iLBC放到G.729之前开发。最重要的理由是iLBC是免费使用的。因为AR1688芯片的价格不包含任何专利费,所以如果生产厂商要使用ITU-T的G.729和G.723.1这两个标准编解码,就需要为这两种标准付专利费。于是乎就会增加IP话机的价格。我们的AR1688 IP话机的设计目标几乎和IAX2协议一样,就是让终端尽可能的简单,用世界上最便宜的芯片制造一种质优价廉的IP话机,同普通的PSTN话机竞争。我们最不愿意看到的就是要为各种各样的算法付专利费。当然我们还将继续努力提供对G.729和G.723.1的支持,但是我们会把它们作为一个可选项,可以从标准的固件中去掉。同样,我们也会将支持Speex编解码,因为它也是免费的。
当然先实现iLBC也有其它的理由。首先G.729标准已经有12个年头了,它最初是为电路交换系统设计的,为的是更好的利用标准的64K pcm信道。G.729没有考虑IP网络通信的特点,而iLBC编解码是为互联网语音通信量身定做的。当有IP包丢失时,iLBC比G.729工作的更好。
G.729今天已被广泛的应用于转接PSTN呼叫和IP呼叫的中继网关上。在我们作决定之前已经充分认识到这一点,因为我们知道,去年思科已经在中继网关上增加了对iLBC的支持。可是我们还是听到了很多关于iLBC不能呼叫PSTN的抱怨。作为一个经常升级固件的开发者,我的确低估了升级一个思科中继网关固件的难度。

 

拨号映射
过去我们在PA1688上实现了7种通信协议,其中大部分协议没有带来可观的效益,MGCP就是其中一个。但是实现MGCP的工作却产生了可以应用于其它协议的功能。目前AR1688上SIP和IAX2协议都支持同MGCP相似的拨号映射的功能。
RFC3435的2.1.5节有关于拨号映射的详细解释。拨号映射会根据预先定义的匹配准则来判断用户什么时候完成拨号。在MGCP中,IP话机中的拨号映射规则是从服务器消息里得到的。在我们的SIP和IAX2实现中,用户或者系统可以预先定义好拨号规则,这些拨号规则和话机设置存储在一起,并且可以同话机设置一起自动更新。
在我们提供的API中 ,使用"sdcc\bin\getopt.bat xxx.xxx.xxx.xxx"命令,options.txt文件会弹出来,其包含[settings]和[digitmap] 两个部分。拨号映射列在[digitmap]下面。用户也可以通过网页浏览器访问话机的IP地址去浏览和修改拨号映射。
SipPhone (www.sipphone.com)是我经常测试的网站之一。部分测试号码如下:

**

重复你的SIPphone号码

*0

测试你的路由器SIP适应性

411

语音激活的Tellme信息服务

1-747-474-ECHO
1-747-474-3246

回声测试-重复你说的话

1-747-474-5000

SIPphone欢迎录音

1-747-XXX-XXXX

呼叫一个SIPphone用户


对应这些号码的拨号映射规则是:

*x

 对应 ** *0.

4xx

 对应 411.

1xxxxxxxxxx

 对应 1-xxx-xxx-xxxx 号码.

x.T

 对应其它号码


如果没有使用拨号映射,用户必须在拨完号之后按下呼叫键“call”,就像使用移动电话一样。在VOIP的早些时候,许多软件和硬件使用“#”键呼出。今天随着VOIP同PSTN的融合,由于“#”键在PSTN系统中被广泛用于补充服务,所以使用“#”键作为呼叫功能不再是一个好主意了。

举例说明上述的内容,假设我们已有拨号映射规则如下:
(xxxxxxx|x11)
同时已按下拨号串“41”,此时如果继续按“1”,则拨叫号码变为“411”。我们既部分的匹配“xxxxxxx”规则,同时完全的匹配“x11”规则,因此我们呼叫号码“411”。
下面的拨号映射例子更为精确:
(0[12].|00|1[12].1|2x.#)
如果拨“0”,则因为(“.”)允许前面的结构出现0而马上满足匹配。拨“00”则不符合数字映射规则。
如果拨“1”,则只是部分匹配。拨“12”也是仅仅部分匹配,可是拨“11”和“12”都是匹配的。
如果拨“2”,则是部分匹配。拨"23", "234", "2345"等也只是部分匹配。只有拨“#”才会产生一个完全匹配。例如“2345#”。拨“2#”也是一个匹配。
数字映射按照某种规则简单的定义了一种代码序列的匹配方式。尽管这里定义的数字映射只用于DTMF输入,但是扩展包也可以这样定义以至于数字映射可以用于其它类型的输入,这些输入可以用事件代码表示,这些代码满足已为它们定义的数字映射的语法(例如,“1”或“T”)。在使用扩展包的地方,特别的事件定义应该在包定义中明确的声明。
由于数字映射在大小上没有限制,因此建议网关至少支持每个终端2048字节的数字映射。

 

我们的商务模式
AR1688IP话机解决方案已经上市半年多了。从那时起,我已经回答了很多关于我们商务模式的邮件。本文集合了这些问题和回答。
我们不是兼职的开源软件开发者。我们的收入来自AR1688芯片的销售和相关的设计费用。
我们使用开源的SDCC编译器去编译和发布GPL许可的API软件,希望帮助终端用户制造他们自己的IP话机。对于我来说,修改软件并看到它马上运行起来是很有趣的事,我相信对其它人也是这样。我们希望所有人都可以修改她或他自己的IP话机,这能减少我们客服的工作量。最重要的是,有这么多有天赋的程序员一直关注我们的软件并完善它,我们更愿意把工作做好而不仅仅是将代码保密起来。
我们还没有把所有的东西都包含到免费发布的API源代码中。DSP部分是二进制文件,底层的寄存器控制,以太网mac层和IP层,基本的UDP和TCP连接实现都是以SDCC目标文件的形式提供。我们也愿意以合理的价格提供这些源代码,如果某些牛人认为真的很必要。
对于基本的话机参考设计我们不收任何费用。例如AR168F IP话机设计,只要购买芯片我们就会免费提供。每片付费76元人民币(大约10美元),我们就会提供所有东西,包括国内的运费。这个策略可以帮助制造商加快IP话机业务而几乎不需要投资。用这种方式,我们希望鼓励尽可能多的制造商进入到这个业务领域,制造足够便宜的IP话机同PSTN话机竞争。
可是,AR168F IP话机硬件参考设计是提供给直接生产IP话机的厂商的。它不允许硬件开发者增加或修改某些地方。我们也不支持这种开发。我们对于其它的要求,例如拨号上网,GSM模块,FXS/FXO,LCD等要收取额外的费用。在下面我会通过AR168G IP话机的诞生把这一点讲得更清楚一点。
DigiMate原来从事mp3/mp4业务,在VOIP业务上是新手。它不喜欢我们的设计,主要因为我们使用2x16 字符的LCD。在mp3上,使用点阵已经很长时间了。所以DigiMate付费给我们支持点阵显示。今天,支持132x64显示的AR168G IP话机硬件参考设计也可以提供给其它制造商,但要求付80,000人民币(约10,366美元)前期设计费。

 

区域和语言选项
在PA1688中,我们支持30多种语言。我们当中没有一个人懂得除了汉语和英语以外的语言,是全球的志愿者帮助我们完成了所有本地化的工作。我相信,在AR1688中我们可以将这项工作完成的更好,因为从现在开始它就被计划好了。
今天我们将发布0.10版本。在0.09版本后完成了所有SIP/IAX2协议,在这一版中,我们已经完成了所有用户界面。当然我们会继续改进和修改程序中的bug。但是,开发者可以在这一版的基础上进行区域和语言定制而不用担心以后会有什么大的变化。
基于0.10版的软件应用程序接口,请按照以下的步骤增加客户自己的语言支持:
1. 从SDCC\inc\version.h开始,找到RES_XX部分,检查你的区域码是否列在其中。其中“XX”码符合ISO3166标准(http://www.iso.ch/iso/en/prods-services/iso3166ma/index.html)。如果它已经存在,你可以直接跳到第3步。如果没有,则增加新的区域码。你可以选择进行下一步,或者发邮件给我们,support@palmmicro.com.cn,告诉我们你的改变地方,让我们来做第2步,你可以跳到第3步。
2. 增加本地的DTMF频率和间隔到SDCC\src\dtmf.c中,如果你需要修改代码的指导,可以在文件中查找“RES_US”。
3. 基于web_us,检查SDCC\src\res,把英文网页翻译成你自己的母语。
4. 翻译SDCC\src\ui_str.c中的字符串。这里有中文字符串,你可能读不了它。不过增加你自己的语言翻译即可。在2x16的LCD上,仍只显示英文,但是我们可以用点阵LCD显示其他语言字体。
5. 打开SDCC\src\time.c,改变时间和日期的显示。如果你的地区使用夏时制记录时间,一定要增加它,或把你的要求发到技术支持邮箱support@palmmicro.com.cn。中国已经不使用夏时制了,目前只实现了美国的夏时制计时方式,确认“根据夏时制自动调节时钟”选项在设置中已经被选中。

 

怎样修改MAC地址
基于PA1688的设备mac地址可以通过Palmtool轻松的修改,并且我们花费了很多精力帮助厂商和终端用户解决复杂的MAC问题。当我们设计AR1688软件时,从一开始就尽力避免这个问题,MAC地址在大多数时候是不允许修改的。但仍有一些需要更改MAC地址的要求我们无法拒绝,所以有了本文。 可是,这不是一个简单的指南,读者必须是一个高级用户。如果你不知道怎样通过TFTP升级,不知道如何进入安全模式,或不知道MAC地址为何物,你可以跳过一下部分。
1. 确认你有最新的AR1688 API,如果没有,发邮件到support@palmmicro.com.cn可以得到。
2. 也可以发邮件到support@palmmicro.com.cn说明你需要改变MAC地址指定的固件,请提供相关信息,如硬件类型,协议和语言,以便于我们给你寄送正确的固件。
3. 按住*键加电,AR1688 IP话机进入安全模式。
4. 使用API SDCC\bin中的命令行工具,“getopt 192.168.1.200”,当命令结束,options.txt文件将弹出来。
5. 在options.txt中,找到类似这样的一行"mac_address=0x00,0x18,0x1f,0x10,0xa0,0xb8",改变你需要的MAC地址。
6. 保存options.txt文件,使用“setopt 192.168.1.200”,改变后话机将重新启动。
7. 使用命令行升级第二步中我们邮寄的指定固件,通常使用"tftp -i xxx.xxx.xxx.xxx put ar168f_sip_us_017037.bin",文件大小为640k。
8. 使用命令行升级第二步中我们邮寄的安全模式固件,通常使用"tftp -i xxx.xxx.xxx.xxx put ar168f_none_us_017037.bin",文件大小64k。
完成这些步骤之后,可以在MAC地址更改之后使用和升级固件。

 

调试常见问题
我们准备采用多种技术支持的方式,包括电话,MSN和电子邮件。电话方式在国内比较好,因为我们大部分人英语说得不如美国人和印度人。昨天我接了几个从印度打来的电话,一多半的时间我在猜另一边在说什么,另一边也有一半的时间在猜我在说什么。我喜欢MSN,因为我是同微软一起成长的,但是我发现好多人讨厌微软,经常拒绝我使用MSN的建议。我们还是很幸运的,还有电子邮件作为通信工具,欢迎随时发邮件到support@palmmicro.com.cn。 请在调试邮件中包含以下内容:
1. 硬件类型,例如GP1260/1266(DigiMate),GF302(High-link),YWH201/601(Yuxin)
2. 软件版本,目前我们发布了最新的0.16版
3. 协议,SIP或IAX2
4. 语言,cn、us、fr和其他语言
5. OEM标签,如果话机有OEM标签。
6. 话机.html格式设置。用户可以使用internet浏览器的“另存为”功能保存web设置为html格式文件。由于安全的原因,这个保存的文件不能被整个浏览,但我们可以使用html编辑器阅读它,像Microsoft Word。
7. 详细的问题描述,最好有测试说明,帮助我们重现问题。
8. 在测试过程中使用的其他硬件和软件。请把测试中使用的软件发给我们,有助于我们重现问题。
9. 截获的任何格式的以太网数据包
10. Plamtool调试输出信息。必须激活AR1688设置中的调试选项,将该信息以纯文本形式发给我们。
11. 在一些特殊情况中,我们要求用户运行下面的命令,然后把page0.dat和page1.dat发给我们。
tftp -i xxx.xxx.xxx.xxx get page0.dat
tftp -i xxx.xxx.xxx.xxx get page1.dat

固件0.16调试常见问题:
1. 电话中没有音频:检查CODEC选项,确认G.723.1和Speex没有被选中。
2. 电话中没有输出音频:
a. 检查RTP端口设置是否非零。从IAX2协议变为SIP协议时,RTP端口会被设置为0;
b. 检查“语音帧数”参数值是否为1-7之间的数字;



Copyright 2006-2008 北京微掌电子技术有限公司