Abstract

Considering the fact that there is a lack of Controller Area Network( CAN) bus application-layer driver in Android system, a method was developed to transplant the CAN bus application-layer driver from Linux to Android system.SAE J1939 protocol was selected to be the protocol of Android CAN bus application-layer protocol and the linux-can-j1939project developed by Kurt Van Dijck and Pieter Beyens was ported to Android system. First, the authors analyzed the project structure and merged the corresponding files to Android kernel, then modified the header files and protocol implementation sources, and added the missing structures and functions in kernel. Finally, Android kernel was compiled after modifying the Makefile and Kbuild files. The experiment results show that the new kernel realizes the functions of SAE J1939 protocol such as address declaring, data packing and unpacking, and network management. Based on this porting, a variety of CAN-based Android applications can be developed with the help of Android application-layer interface.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call