1. 程式人生 > >Android藍芽韌體升級

Android藍芽韌體升級

首先要知道為什麼需要韌體升級,有什麼好處,韌體升級可以修復bug,增加功能等,相當於咱們的app升級,我們只需要將新韌體包放在後臺並提示使用者進行升級即可

整個流程也不難,公司可以定義自己的協議來升級,也可以使用晶片廠家的協議商定,區別應該是如果使用晶片廠家的,那麼如果換了晶片廠家,那麼整個升級勢必要換掉,因為不同晶片廠商其升級協議肯定是不同的,如果公司定義的升級,那麼晶片換了咱也不怕,但是肯定沒有直接使用現晶片廠家的協議來的快,可能有些公司用了幾家廠家的晶片,這種一般會定義自己的協議來升級

做一個新東西之前,肯定要查閱很多資料去了解他,知己知彼才能百戰不殆,但是這方面的資料不是很全,感謝這個部落格,雖然我用不了這個庫,但是給了我很大幫助,贊這種愛分享的人,因為分享所以強大

這是一個DFU升級庫,Nordic Semiconductor公司寫的,應該是針對他們的晶片,我也沒試過,因為我們公司的晶片不是這家公司的,之前還看見有人說升級是通用的..通用的..如果你的公司的晶片是這家的,那直接看這個文章就可以解決你的升級問題了

升級的流程(肯定有差別,但是大同小異)
1.一般首先會連線裝置,傳送指令,進入升級模式
2.進入升級模式後,可能name和mac地址或者uuid都會發生改變,如果name和mac地址不改變可能不會斷開連線,看硬體了,如果uuid換了的話,我們也需要重新搜尋
3.韌體包大致有幾種格式:zip、bin、hex還有一些廠家晶片的格式比如賽普拉斯的cy..,
你可以放在後臺去下載,可以放在本地,隨你大小便
4.然後就是往裝置寫資料了,這是一個互動過程,傳送-收到-傳送….我們公司的韌體包幾百k大概幾分鐘升級完成
5.升級完成,裝置會斷開連線,執行重啟,如果過程中升級失敗,裝置會回到升級前版本並退出升級模式,這個看硬體了

但是好煩升級,有些機型進入升級模式就自動斷開連線了,重連也連不上,不進入升級模式其他操作都是正常的,這個沒找到原因..求解惑
大家有遇到坑的一定要分享出來,歡迎交流,集大眾智慧,坑就不是坑了..