VOLVO+開發故事 (9),A-SS OFF開發過程
這篇我想分享A-SS OFF開發的技術細節;裡面有些Hack汽車CAN Bus的思路可以參考
先找到觸發信號
想要A-SS在引擎發動後關閉,那就得在CAN Bus辨識引擎發動的訊息,發動後才能對A-SS動手腳。所以我得監聽CAN Bus,在上萬筆記錄裡大海撈針
我不可能寫信和VOLVO要他們CAN Bus規格(理我才怪),更沒有現成的VOLVO CAN Bus分析工具,我只能自製工具。以下是嘗試過的方法,沒有哪招特別靈驗,一般我只能用著堅忍不拔的毅力撐著分析下去
我大多透過Linux和CAN Bus打交道,這裡寫程式方便些;
找到關A-SS的封包
接下來要再找怎麼讓A-SS關燈
開發韌體 & 測試
找到引擎狀態和A-SS封包,寫韌體串起來,最後的精華是短短20行code
我不是專業做CAN Bus逆向工程,短短幾個步驟也花了幾百個鐘頭,不管怎樣,我搞定他了!現在發動汽車,我再也不用伸手去關A-SS,開心!!
致謝
文章最後,我要特別感謝協助測試A-SS功能的車友,沒你們幫忙,我驗證的極限只能是一輛XC60,感謝你們幫忙試用,協助完成這個專案
先找到觸發信號
想要A-SS在引擎發動後關閉,那就得在CAN Bus辨識引擎發動的訊息,發動後才能對A-SS動手腳。所以我得監聽CAN Bus,在上萬筆記錄裡大海撈針
我不可能寫信和VOLVO要他們CAN Bus規格(理我才怪),更沒有現成的VOLVO CAN Bus分析工具,我只能自製工具。以下是嘗試過的方法,沒有哪招特別靈驗,一般我只能用著堅忍不拔的毅力撐著分析下去
我大多透過Linux和CAN Bus打交道,這裡寫程式方便些;
- Linux有現成的can-utils套件,裡面的candump是所有工作的源頭,可以錄下記錄檔
- 直接讀記錄聽起來很笨,抓手感是必要的
- 錄下來的記錄可以搭配grep指令快速分析
- 或是candump也能監看特定封包
- 錄下的記錄,塞到Excel分析
- 也可以寫軟體對封包處理,進行可視化分析,找到引擎發動的信號
接下來要再找怎麼讓A-SS關燈
- 監控CAN Bus,測試各種場景按下A-SS的按鈕的封包。下面是我嘗試過的各種組態,盯著看完全看不懂的紀錄,在裡面找規則(總不能發信問VOLVO吧)
- 我做過不少開發工具。下圖是生產兼開發的設備,現在有個鋁盒,檔次高多了(笑)
- 外出精簡工具盒,我喜歡豐富的色彩,嬌小的體積,方便攜帶
- 對俄羅斯的產品逆向工程,分析封包。雖然不認識,但我覺得與他在心靈上有著高層次的交流(也許他不願意就是)
附帶一提,老婆是對的,做腸子鏡如果會流血,夜用型用就對了,洗床單很麻煩至於有人說這世界上有棉條可以用(這個就過份了>_<)
開發韌體 & 測試
找到引擎狀態和A-SS封包,寫韌體串起來,最後的精華是短短20行code
我不是專業做CAN Bus逆向工程,短短幾個步驟也花了幾百個鐘頭,不管怎樣,我搞定他了!現在發動汽車,我再也不用伸手去關A-SS,開心!!
致謝
文章最後,我要特別感謝協助測試A-SS功能的車友,沒你們幫忙,我驗證的極限只能是一輛XC60,感謝你們幫忙試用,協助完成這個專案
- 台北楊sir
- 新北黃sir,
- 桃園陳sir
- 新竹徐sir,張sir,張sir,陳sir
- 宜蘭張sir
- 高雄楊sir
留言