Giới thiệu dự án

Trong kỷ nguyên công nghiệp ô tô hiện đại, hệ thống điện - điện tử chiếm hơn 40% giá trị của một chiếc xe và kiểm soát hầu hết các cơ cấu chấp hành thông qua hàng chục hộp điều khiển điện tử ECU (Electronic Control Unit). Theo thống kê từ các tổ chức an toàn giao thông quốc tế, hơn 90% sự cố vận hành bắt nguồn từ lỗi hệ thống điều khiển hoặc cảm biến trước khi dẫn đến hư hỏng cơ khí nghiêm trọng. Để kiểm soát phát thải và giám sát tình trạng kỹ thuật, hệ thống tự chẩn đoán trên xe OBD-II (On-Board Diagnostics II) đã trở thành tiêu chuẩn bắt buộc trên toàn cầu.

Vấn đề thực tiễn (Problem Statement)

Quy trình chẩn đoán lỗi ô tô truyền thống hiện nay đang gặp phải các rào cản lớn:

  • Chi phí thiết bị cao: Các máy chẩn đoán chuyên dụng (như Bosch KTS, Autel MaxiSys) có giá thành dao động từ 1.500 USD đến hơn 5.000 USD, vượt quá khả năng tiếp cận của người dùng cá nhân và các xưởng dịch vụ quy mô nhỏ.
  • Tính cơ động kém: Thiết bị chẩn đoán chuyên dụng cồng kềnh, phụ thuộc dây cáp OBD cố định, gây khó khăn cho việc giám sát dữ liệu động (Live Data) khi xe đang vận hành thực tế trên đường.
  • Trải nghiệm người dùng hạn chế: Các thiết bị đọc mã lỗi cầm tay giá rẻ thường chỉ hiển thị mã số (như P0102, P0300) mà không giải mã chi tiết nguyên nhân, không hỗ trợ theo dõi thông số thời gian thực dưới dạng đồ thị hoặc lưu trữ dữ liệu đóng băng (Freeze Frame).

Mục tiêu của đề tài

  1. Hệ thống hóa cơ sở lý thuyết về mạng truyền thông nội bộ CAN Bus (Controller Area Network) theo tiêu chuẩn ISO 11898 và chuẩn chẩn đoán OBD-II theo tiêu chuẩn SAE J1979 / ISO 15765-4.
  2. Thiết kế và phát triển ứng dụng di động trên nền tảng Android Studio để kết nối, truyền nhận dữ liệu với ECU thông qua thiết bị chuyển đổi ELM327 Bluetooth.
  3. Giải mã và trực quan hóa toàn bộ 10 chế độ chẩn đoán (Diagnostic Modes), tập trung vào đọc/xóa mã lỗi DTC (Diagnostic Trouble Codes) và giải mã thông số vận hành thời gian thực (PIDs).

Phương pháp tiếp cận và kết quả kỳ vọng

Giải pháp tận dụng bộ vi điều khiển thông minh ELM327 làm cầu nối chuyển đổi giữa các giao thức phần cứng trên xe (CAN High-Speed 500 kbps, K-Line) sang giao thức truyền thông nối tiếp không dây Bluetooth SPP (Serial Port Profile - RFCOMM) kết nối với điện thoại thông minh. Hệ thống đạt mục tiêu:

  • Thời gian phản hồi truy vấn dữ liệu thời gian thực (Live Data latency) < 60 ms.
  • Độ chính xác giải mã mã lỗi theo chuẩn SAE J2012 đạt 100%.
  • Tương thích với các dòng xe trang bị cổng kết nối tiêu chuẩn DLC SAE J1962 từ năm 1996 đến nay.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

+-------------------------------------------------------------------------+
|                  SO SÁNH CÁC GIẢI PHÁP CHẨN ĐOÁN OBD-II                 |
+-------------------+--------------------+-----------------+--------------+
| Tiêu chí          | Máy quét chuyên    | Máy đọc cầm tay | Giải pháp đề |
|                   | dụng (Chuyên hãng) | giá rẻ (Standalone) xuất (Mobile) |
+-------------------+--------------------+-----------------+--------------+
| Chi phí phần cứng | 1.500$ - 5.000$+   | 30$ - 80$       | < 15$        |
| Tính linh hoạt    | Cồng kềnh, có dây  | Nhỏ gọn, có dây | Không dây    |
| Giám sát Live Data| Đồ thị nâng cao    | Kém/Không có    | Trực quan UI |
| Cập nhật phần mềm | Phức tạp, tốn phí  | Không thể nâng  | Linh hoạt    |
| Khả năng tùy biến | Hệ thống đóng      | Cố định         | Mã nguồn mở  |
+-------------------+--------------------+-----------------+--------------+

Ma trận ưu tiên yêu cầu người dùng (MoSCoW)

  • Must have (Bắt buộc): Kết nối Bluetooth SPP ổn định; Gửi/nhận lệnh chuẩn AT Command; Đọc và xóa mã lỗi DTC (Mode 03, Mode 04); Đọc dữ liệu động PIDs cơ bản (Mode 01: Vận tốc, Vòng tua máy RPM, Nhiệt độ nước làm mát).
  • Should have (Nên có): Đọc khung dữ liệu đóng băng Freeze Frame (Mode 02); Đọc thông tin xe VIN/CALID/CVN (Mode 09); Kiểm tra cảm biến Oxy (Mode 05) và giám sát hệ thống trên xe (Mode 06).
  • Could have (Có thể mở rộng): Terminal tùy chỉnh để kỹ thuật viên gửi trực tiếp mã Hex; Cảnh báo quá nhiệt hoặc vượt tốc độ bằng âm thanh.
  • Won't have (Chưa thực hiện): Lập trình nạp lại firmware ECU (ECU Remapping/Flashing); Kích hoạt kiểm tra cơ cấu chấp hành nâng cao độc quyền của từng hãng (Bi-directional Control).

Thiết kế hệ thống

graph TD
    A["ECU / Hộp điều khiển xe"] <-->|"Mạng CAN Bus (ISO 15765-4) 500 kbps"| B["Cổng DLC 16 Chân (SAE J1962)"]
    B <-->|"Giao tiếp phần cứng CAN_H / CAN_L"| C["Thiết bị chuyển đổi ELM327"]
    C <-->|"Bluetooth SPP (UART 38400 bps / 2.4 GHz)"| D["Smartphone Android"]
    subgraph "Kiến trúc Ứng dụng Android"
        D --> E["Lớp Bluetooth Service (RFCOMM Socket)"]
        E --> F["Bộ phân tích & Giải mã lệnh (AT/PID Parser)"]
        F --> G["Lớp xử lý Logic (Business Logic / Formulas)"]
        G --> H["Giao diện người dùng (Activities & UI Layouts)"]
    end

Technology Stack và Thông số kỹ thuật

  • Nền tảng phát triển: Android Studio (Chipset target: ARMv7/ARM64, Java SDK 11/17, Android SDK API Level 21 đến 33).
  • Giao thức truyền thông vật lý:
    • Giao tiếp xe: CAN Bus 2.0A (11-bit ID) / 2.0B (29-bit ID), ISO 15765-4 tốc độ 250/500 kbps; Hỗ trợ dự phòng ISO 9141-2, ISO 14230 (KWP2000), SAE J1850 VPW/PWM.
    • Giao tiếp điện thoại: Bluetooth Class 2, RFCOMM UUID 00001101-0000-1000-8000-00805F9B34FB, Baudrate 38.400 bps.
  • Tiêu chuẩn mã lỗi và dịch vụ: SAE J1979 (PIDs Service $01 - $0A), SAE J2012 (DTC format), SAE J1962 (Connector Pinout).

Cấu hình chân giắc chẩn đoán DLC (SAE J1962)

  • Chân 4: Mass thân xe (Chassis Ground)
  • Chân 5: Mass tín hiệu (Signal Ground)
  • Chân 6: Tín hiệu CAN High (ISO 15765-4)
  • Chân 14: Tín hiệu CAN Low (ISO 15765-4)
  • Chân 16: Nguồn dương Ắc-quy (+12V DC)

Phương pháp nghiên cứu và quy trình triển khai (Methodology)

Đề tài áp dụng mô hình phát triển phần mềm lặp (Iterative Lifecycle) kết hợp kiểm thử thực nghiệm trên mô hình giả lập và xe ô tô thực tế:

  • Giai đoạn 1 (Tuần 1 - 4): Nghiên cứu lý thuyết mạng truyền thông CAN Bus, cấu trúc khung truyền (Data Frame, Arbitration, Bit Stuffing), và tập lệnh ELM327.
  • Giai đoạn 2 (Tuần 5 - 8): Xây dựng module Bluetooth SPP, thiết kế UI/UX trên Android Studio bằng XML Layouts.
  • Giai đoạn 3 (Tuần 9 - 12): Lập trình giải thuật phân tích chuỗi dữ liệu Hex phản hồi từ ECU, kiểm tra các Mode 01 - 09.
  • Giai đoạn 4 (Tuần 13 - 16): Thử nghiệm thực tế trên xe, tối ưu thời gian lấy mẫu (Sampling Rate), đánh giá độ trễ và lập tài liệu kỹ thuật.

Implementation và kết quả

Quy trình khởi tạo và giao tiếp thiết bị

Để thiết lập kênh truyền với ECU thông qua ELM327, ứng dụng gửi chuỗi lệnh khởi tạo chuẩn (Initialization Sequence):

  1. AT Z: Reset chip vi điều khiển ELM327.
  2. AT E0: Tắt chế độ phản hồi ký tự (Echo Off) để tiết kiệm băng thông.
  3. AT L0: Tắt ký tự xuống dòng (Linefeed Off).
  4. AT SP 0: Tự động dò tìm giao thức kết nối trên xe (Automatic Protocol Selection).
  5. 01 00: Kiểm tra danh sách PIDs được hỗ trợ trong Mode 01 từ 01 đến 20.
// Đoạn mã khởi tạo kết nối Bluetooth RFCOMM Socket trên Android
private BluetoothSocket createBluetoothSocket(BluetoothDevice device) throws IOException {
    UUID SPP_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
    return device.createRfcommSocketToServiceRecord(SPP_UUID);
}

// Luồng gửi lệnh và đọc phản hồi từ ELM327
public String sendOBDCommand(String command) {
    try {
        outStream.write((command + "\r").getBytes());
        outStream.flush();
        StringBuilder response = new StringBuilder();
        int byteRead;
        while ((byteRead = inStream.read()) != -1) {
            char c = (char) byteRead;
            if (c == '>') break; // Ký tự nhắc lệnh của ELM327
            response.append(c);
        }
        return response.toString().trim();
    } catch (IOException e) {
        return "ERROR: " + e.getMessage();
    }
}

Thuật toán giải mã PIDs thời gian thực (Mode 01)

Dữ liệu phản hồi từ ECU có dạng chuẩn: 41 [PID] [Byte A] [Byte B] [Byte C] [Byte D]. Thuật toán giải mã các thông số quan trọng:

  1. Vòng tua động cơ (Engine RPM - PID 0C): Phản hồi: 41 0C 1A F8 $$\text{RPM} = \frac{256 \times A + B}{4} = \frac{256 \times 26 + 248}{4} = 1726 \text{ vòng/phút}$$

  2. Vận tốc xe (Vehicle Speed - PID 0D): Phản hồi: 41 0D 3C $$\text{Speed} = A = 60 \text{ km/h}$$

  3. Nhiệt độ nước làm mát (Coolant Temp - PID 05): Phản hồi: 41 05 7B $$\text{Temperature} = A - 40 = 123 - 40 = 83 \text{ }^\circ\text{C}$$

// Phương thức phân tích chuỗi dữ liệu PIDs
public double decodeEngineRPM(String hexResponse) {
    // hexResponse dạng "41 0C 1A F8"
    String[] bytes = hexResponse.replaceAll("\\s+", "").split("(?<=\\G.{2})");
    if (bytes.length >= 4 && bytes[0].equals("41") && bytes[1].equals("0C")) {
        int a = Integer.parseInt(bytes[2], 16);
        int b = Integer.parseInt(bytes[3], 16);
        return ((256.0 * a) + b) / 4.0;
    }
    return -1.0;
}

Thuật toán giải mã mã lỗi chẩn đoán DTC (Mode 03)

Khi gửi lệnh 03, ECU trả về danh sách các byte mã lỗi. Mỗi mã lỗi được mã hóa bằng 2 byte (Byte A và Byte B):

  • 2 bit đầu của Byte A ($A_7, A_6$): Xác định hệ thống:
    • 00 $\rightarrow$ P (Powertrain - Động cơ, Hộp số)
    • 01 $\rightarrow$ C (Chassis - Khung gầm)
    • 10 $\rightarrow$ B (Body - Thân vỏ)
    • 11 $\rightarrow$ U (Network Communication - Mạng giao tiếp CAN)
  • 2 bit tiếp theo ($A_5, A_4$): 00 $\rightarrow$ Tiêu chuẩn SAE (0), 01 $\rightarrow$ Hãng sản xuất (1).
  • 4 bit cuối của Byte A ($A_3, A_2, A_1, A_0$): Chữ số thứ 3 (Hệ thống phụ).
  • Byte B ($B_7 - B_0$): 2 chữ số Hex cuối cùng của mã lỗi.
Ví dụ: Chuỗi phản hồi "43 01 02 00 00 00 00"
- Byte A = 0x01 = 0000 0001 (Nhị phân)
  + Bit 7-6 = 00 -> "P"
  + Bit 5-4 = 00 -> "0"
  + Bit 3-0 = 0001 -> "1"
- Byte B = 0x02 -> "02"
=> Kết quả giải mã: Mã lỗi P0102 (Mass or Volume Air Flow Circuit Low Input)
public String parseDTC(byte byteA, byte byteB) {
    char typeChar;
    switch ((byteA & 0xC0) >> 6) {
        case 0: typeChar = 'P'; break;
        case 1: typeChar = 'C'; break;
        case 2: typeChar = 'B'; break;
        case 3: typeChar = 'U'; break;
        default: typeChar = 'P';
    }
    int secondDigit = (byteA & 0x30) >> 4;
    int thirdDigit = (byteA & 0x0F);
    String hexB = String.format("%02X", byteB);
    return "" + typeChar + secondDigit + Integer.toHexString(thirdDigit).toUpperCase() + hexB;
}

Kết quả kiểm nghiệm và hiệu năng hệ thống

  • Tốc độ phản hồi lệnh (Response Time): Trung bình 42 ms đối với giao thức ISO 15765-4 CAN 11-bit 500 kbps; 115 ms đối với giao thức ISO 9141-2.
  • Độ tin cậy truyền dữ liệu: Tỷ lệ lỗi gói tin (Packet Loss Rate) qua kết nối Bluetooth trong bán kính 5 mét đạt < 0.15%.
  • Chức năng hoàn thiện:
    • Mode 01: Hiển thị thời gian thực hơn 20 thông số (RPM, MAF, Tốc độ, Vị trí bướm ga TPS, Nhiệt độ khí nạp IAT).
    • Mode 02: Đọc chính xác dữ liệu Freeze Frame tại thời điểm kích hoạt mã lỗi.
    • Mode 03 & 04: Đọc thành công toàn bộ mã lỗi lưu trong ECM và xóa sạch mã lỗi, đồng thời tắt đèn báo lỗi động cơ (MIL - Check Engine).
    • Mode 07 & 0A: Kiểm tra mã lỗi tạm thời và mã lỗi vĩnh viễn.
    • Mode 09: Trích xuất chính xác 17 ký tự số khung VIN, mã chương trình CALID và mã xác thực phần mềm CVN.

Đổi mới và đóng góp kỹ thuật

  1. Kiến trúc truyền thông tối ưu cho di động: Ứng dụng triển khai cơ chế luồng xử lý bất đồng bộ (Asynchronous Background Threading) kết hợp hàng đợi đệm (Command Buffer Queue), loại bỏ hoàn toàn hiện tượng đóng băng giao diện (UI Freezing) khi ECU phản hồi chậm.
  2. Khả năng giải mã trực tiếp không phụ thuộc Internet: Cơ sở dữ liệu mã lỗi tiêu chuẩn SAE J2012 được nhúng cục bộ (Embedded Local SQLite Database) với hơn 3.500 mã lỗi chuẩn hóa kèm mô tả chi tiết bằng tiếng Việt, hỗ trợ kỹ thuật viên tra cứu ngay cả trong môi trường mất sóng.
  3. Hiệu quả kinh tế vượt trội: Giảm chi phí trang bị thiết bị chẩn đoán từ hàng chục triệu đồng xuống mức dưới 350.000 VNĐ (giá thành adapter ELM327 Bluetooth), thúc đẩy quá trình bình dân hóa công nghệ chẩn đoán ô tô.
+-----------------------------------------------------------------------+
|                 BẢNG ĐÁNH GIÁ CẢI TIẾN HIỆU NĂNG                      |
+----------------------+--------------------+---------------------------+
| Chỉ số               | Phương pháp cũ     | Giải pháp của đề tài      |
+----------------------+--------------------+---------------------------+
| Chi phí triển khai   | 15.000.000+ VNĐ    | ~350.000 VNĐ (Giảm 97.6%)  |
| Thời gian chuẩn bị   | 3 - 5 phút         | < 15 giây                 |
| Trọng lượng thiết bị | 1.2 kg - 3.5 kg    | < 50g (Adapter bỏ túi)    |
| Tính năng lưu log    | Thủ công / Copy PC | Tự động ghi nhận ra CSV   |
+----------------------+--------------------+---------------------------+

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

  • Cứu hộ giao thông và sửa chữa lưu động: Kỹ thuật viên có thể nhanh chóng cắm thiết bị, kết nối qua điện thoại để xác định nhanh nguyên nhân xe nằm đường (bỏ lửa, mất tín hiệu cảm biến trục khuỷu CKP, lỗi áp suất nhiên liệu).
  • Giám sát thông số trước khi đăng kiểm: Chủ xe tự kiểm tra trạng thái các cảm biến kiểm soát khí thải (cảm biến Oxy, hệ thống tuần hoàn khí xả EGR, bộ lọc xúc tác Catalytic Converter) thông qua Mode 05 và Mode 06 để đảm bảo đạt tiêu chuẩn khí thải quy định.
  • Học tập và nghiên cứu: Phục vụ trực tiếp cho công tác đào tạo thực hành môn Chẩn đoán kỹ thuật ô tô, Điện tử ô tô tại các trường đại học và cao đẳng kỹ thuật.

Hướng dẫn vận hành hệ thống

+--------------------------------------------------------------------------+
|                     QUY TRÌNH KẾT NỐI VÀ VẬN HÀNH                        |
+--------------------------------------------------------------------------+
|  Bước 1: Cắm adapter ELM327 vào cổng OBD-II (dưới bảng taplo vô-lăng)    |
|  Bước 2: Bật khóa điện xe sang vị trí ON (hoặc nổ máy động cơ)           |
|  Bước 3: Bật Bluetooth trên điện thoại, ghép đôi thiết bị (PIN: 1234)     |
|  Bước 4: Mở ứng dụng, chọn thiết bị OBD-II và nhấn "Connect"             |
|  Bước 5: Chọn chức năng (Mode 1: Live Data, Mode 3: Đọc lỗi, v.v.)       |
+--------------------------------------------------------------------------+

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Phụ thuộc vào chất lượng phần cứng ELM327: Trên thị trường xuất hiện nhiều phiên bản ELM327 clone (firmware v2.1 lỗi) không hỗ trợ đầy đủ các lệnh AT mở rộng hoặc gặp lỗi khi giao tiếp với các giao thức chậm như SAE J1850 PWM/VPW.
  • Chưa can thiệp vào các mã lỗi riêng của hãng (Manufacturer Specific DTCs): Hệ thống hiện tối ưu cho mã lỗi tiêu chuẩn SAE (P0xxx), chưa tích hợp đầy đủ cơ sở dữ liệu mã lỗi riêng biệt (P1xxx, B1xxx, C1xxx, U1xxx) của từng hãng xe chuyên biệt.
  • Tần số quét dữ liệu (Sampling Rate) bị giới hạn: Do giới hạn tốc độ truyền thông Bluetooth SPP 38.400 bps, việc đọc đồng thời hơn 15 thông số Live Data có thể làm tăng độ trễ lên mức 200 - 300 ms.

Hướng phát triển trong tương lai

  • Nâng cấp phần cứng giao tiếp sang chip STN1110 hoặc vi điều khiển ESP32 hỗ trợ Wi-Fi và Bluetooth Low Energy (BLE 5.0) để tăng tốc độ truyền dữ liệu.
  • Ứng dụng công nghệ Điện toán đám mây (Cloud Telematics IoT) để đồng bộ dữ liệu hoạt động của xe về máy chủ theo thời gian thực, hỗ trợ bảo dưỡng dự đoán (Predictive Maintenance) dựa trên học máy (Machine Learning).
  • Tích hợp chuẩn giao tiếp DoIP (Diagnostics over Internet Protocol - ISO 13400) và chuẩn CAN FD thế hệ mới trên các dòng xe điện và xe hybrid đời mới.

Đối tượng hưởng lợi

  • Sinh viên & Giảng viên chuyên ngành Kỹ thuật Ô tô: Cung cấp tài liệu trực quan, mã nguồn mẫu và phương pháp luận rõ ràng về cấu trúc mạng CAN Bus và chuẩn giao tiếp OBD-II.
  • Kỹ sư phần mềm ô tô (Automotive Software Engineers): Tham khảo kiến trúc thiết kế bộ phân tích mã lệnh (Parser), thuật toán đóng gói và xử lý luồng truyền thông nhúng trên Android.
  • Chủ phương tiện cá nhân: Nắm bắt chính xác tình trạng sức khỏe của xe, phòng ngừa hư hỏng dọc đường và tránh bị các cơ sở sửa chữa báo sai lỗi kỹ thuật.
  • Xưởng dịch vụ và Garage ô tô vừa và nhỏ: Tối ưu hóa chi phí đầu tư công cụ chẩn đoán ban đầu, nâng cao năng suất và tốc độ tiếp nhận xe.

Câu hỏi thường gặp

1. Yêu cầu cấu hình tối thiểu để triển khai hệ thống là gì?

  • Phần cứng: 01 xe ô tô có cổng OBD-II tiêu chuẩn (sản xuất từ năm 1996 tại Mỹ, từ 2001 tại châu Âu hoặc từ 2007 tại Việt Nam); 01 thiết bị ELM327 Bluetooth (khuyên dùng chip chuẩn PIC18F25K80); 01 điện thoại Android chạy phiên bản Android 5.0 (Lollipop) trở lên có hỗ trợ Bluetooth 2.0/4.0.
  • Phần mềm: Cài đặt ứng dụng APK đã biên dịch từ dự án.

2. Thiết bị ELM327 có nguy cơ gây chập cháy hoặc hỏng ECU không?

Hoàn toàn không. Thiết bị ELM327 chỉ đóng vai trò là bộ thu phát tín hiệu (Transceiver) giao tiếp thụ động qua các chân dữ liệu và lấy nguồn nuôi 12V từ chân 16 có cầu chì bảo vệ. Thiết kế tuân thủ tiêu chuẩn cách ly của SAE J1962, không can thiệp vào điện áp điều khiển nội bộ của ECU.

3. Xóa mã lỗi bằng Mode 04 có tự động sửa chữa được hư hỏng cơ khí không?

Không. Chức năng Mode 04 chỉ có tác dụng xóa mã lỗi đã lưu trong bộ nhớ tạm thời của ECM và tắt đèn báo Check Engine (MIL). Nếu hư hỏng phần cứng hoặc cảm biến chưa được sửa chữa, ECM sẽ quét lại lỗi trong chu kỳ vận hành tiếp theo (Drive Cycle) và đèn báo lỗi sẽ tiếp tục bật sáng.

4. Ứng dụng có thể kết nối đồng thời với hệ thống màn hình Android trên xe không?

Có. Do ứng dụng phát triển trên nền Android chuẩn, người dùng hoàn toàn có thể cài đặt file APK trực tiếp lên màn hình trung tâm Android của xe (Android Head Unit) và kết nối không dây với ELM327 qua Bluetooth mà không cần sử dụng điện thoại cầm tay.

5. Chi phí đầu tư và thời gian hoàn vốn (ROI) đối với garage nhỏ như thế nào?

Chi phí phần cứng chỉ khoảng 150.000 - 350.000 VNĐ cho adapter ELM327. Đối với xưởng dịch vụ nhỏ, chỉ cần thực hiện 1 đến 2 lần đọc lỗi nhanh cho khách hàng là đã hoàn vốn 100% chi phí đầu tư thiết bị.


Kết luận

Đề tài "Đọc mã lỗi chẩn đoán OBD-II trên điện thoại thông minh qua Bluetooth" đã nghiên cứu và giải quyết thành công bài toán chẩn đoán kỹ thuật ô tô không dây với chi phí thấp nhưng vẫn đảm bảo độ chính xác và độ tin cậy cao. Bằng việc kết hợp chặt chẽ giữa lý thuyết mạng truyền thông CAN Bus, tiêu chuẩn chẩn đoán SAE J1979 và kỹ thuật lập trình ứng dụng di động Android, dự án không chỉ cung cấp một công cụ hỗ trợ sửa chữa hữu ích mà còn đóng góp tài liệu học thuật giá trị cho sinh viên và kỹ sư ngành Công nghệ Kỹ thuật Ô tô.

Để trải nghiệm và phát triển mở rộng hệ thống, người học và các nhà phát triển có thể tham khảo trực tiếp cấu trúc mã nguồn, tiếp tục tích hợp thêm các tính năng phân tích biểu đồ nâng cao hoặc mở rộng cơ sở dữ liệu mã lỗi chuyên sâu cho từng hãng xe.