[分享]改善Papago X3衛星導航延遲的問題

Papago X3圖資顯示會延遲的問題:
常看到有人發文說在HTC Touch HD上使用Papago X3圖資會延遲顯示的問題,因自己也有相同經驗,特將部份Xda的解決方案分享,自己改過後覺得雖然還無法達到圖資與實況完全吻合,但確實有明顯改善,提供給各位參考:

Xda原文及個人翻譯:


The HD has a buffer, where the hardware writes its values and where the software reads it from. The communication is done via COM-port (emulation maybe). That's the reason for the "lag":

HD有個暫存區位置(buffer),這是硬體(指GPS)寫入資料及軟體(指導航軟體)讀取資料的地方.其通訊閘道是透過COM-Port(也許是虛擬的port)來完成。這部份是造成會延遲的原因。

 

The buffer is by default 4kB (4096) in and out - both. That's "fat" for the some bytes of a geo point in degrees and min/sec/sub. Thats why the navi-prog comes a little late to the right point: the driver-buffer tells all the obsolete values until the buffer is empty.



這個暫存區寫入及輸出空間大小預設值為4KB(4096)。這個預設值大小對以度分秒計算的經緯數值來說是太大了。這是為何導航軟體會比較晚顯示到正確的位置點的原因;因為暫存區的已存的數值必須要全清空才能再補新數值


=========================================================================================


  改善1:刷HTC 新版Rom 1.59.709.0。 此版本Rom對GPS的定位速度有非常明顯的提升,建議使用官方版本的可先刷此版本來改善。刷Rom的方式與討論請另行爬文。


   改善2:執行Papago X3後進入GPRS的設定畫面,將傳輸速度baundrate開到最大115200。


   改善3:使用Resco Registry or RegEdit CE等修改Registry值的軟體:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\InputBufferSize = 512 (or 256更棒)


HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\OutputBufferSize = 512 (or 256更棒)

 

HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\RetryWaitonError = 1

HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\SleepOnNoData = 250

HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\GPSOneDevice\PollInterval = 1000 (or 500 works too or 3000 ...
)

 


  改完後將手機重新開機,就可以測試完成結果


P.S.


1.修改Registry有其風險,請做好備份工作或先記下未修改前的數值。


2.此篇僅進行圖資延遲改善的分享,Papago X3其他問題請勿筆戰。謝謝!


 


==================================================================
回應補充一:

1.此次原廠新版的Rom最大的改善也就在於定位速度,在晴朗室外空曠區域,定位可以在5秒內完成整個感覺只有一個"爽"字可以形容。當然其他HTC機型更新Rom是否有相同效果,還得各位自行測試。

2.因為寫程式的人應該知道serial port都會有FIFO Buffer............(恕刪)

沒錯,但是FIFO buffer的大小與每台手機GPS傳輸速度都並不相同,所以才需要實測調整。所以其他如Dimond or Dimond 2應該也可以試看看調整效果!

3.FIFO buffer的大小我上述寫的是256~512。個人另外試過128、64、32等數字,感覺上128以下的差異性就很小。各位有興趣也可以試看看這兩個Registry值的數字大小HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\InputBufferSize = 512 。(or 256更棒~~128 or 64 or 32)

HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\OutputBufferSize = 512 (or 256更棒~~128 or 64 or 32)
2009-05-14 17:45 發佈
感謝分享
馬上來試試看
我之前也認為X3會稍微延遲說
看看效果如何
是值得試一下, 但是我覺得效果應該有限...
因為寫程式的人應該知道serial port都會有FIFO Buffer,
所以通常會特別對這個問題處理...我想Papago的軟體工程師應該不至於沒注意到.
可以改的話 就不會很多人 還在用 R12 的版本了!!!

我是用diamond 機 很明顯的LAG現象!!!

現在都改用R12 順多了!!! 也比較精準!!

我想...應該改善不大!!!

不知道 有改的人 用的形況怎樣呢???

XD...
報告
我剛改好重開機後 去外面繞了一兩個小時的感想
恩 有差 但不明顯 可能我數值部分還能做調整
定位部分 差很多 定位不用五秒 執行程式 機器音念完 衛星定位中 居然馬上就接下去念
定位完成了 好快
廬山煙雨浙江潮,未到千般恨不消。及至到來無一事,廬山煙雨浙江潮
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?