2011年11月13日 星期日

3G MU509

上個星期臨時被叫去處理一個號稱很緊急的事情

我們產品使用的 3G 模組在連續(隨機發生)的對它 power off, on 之後,會發生模組對上層的 AT command

不再有任何回應 除非我們再一次的 power off, on

原本處理的工程師解決的方式就是在上層 framework 加入 retry 的機制 (不好...)

事實上就算有 retry 機制,客戶還是需要自己去手動 power off, on

先就硬體設計上來看 module 有 reset pin 可以控制,但這邊設計的時候並沒有拉到 app processor 端

在軟體上面的 power 機制更是離譜,原先負責的人並沒有看過 spec 而是完全由硬體的人告知,該如何控制

當初負責 debug 的人,完全搞錯方向,把重點放在 framework 層

所以第一件事就是先根據 spec 上面的 power off, on timing sequence 去控制 pin

另外也請硬體工程師幫忙拉線方便可以透過示波器觀察訊號

接著就跑簡單的 script 連續的對 module 做開關機的動作,觀察 3G 模組行為

兩個大問題:

有可能發生 power off 變成 on, power on 變成 off 的反向行為,很不可思議,原廠 FAE 也不相信

直到我將圖形寄給他,他回報給大陸後,才承認大陸工程師說的確有這個問題,解決方式是 timing 要改

另一個問題是 AT command 會 "No respond" 的 timeout issue 則是請對方 FAE 去翻他家的 release note

果然新版的 firmware 有 highlight 該問題...

沒有留言:

張貼留言