82 / 100
차량 건강 점수
배터리 80% · 주행가능 320km
⚠️
고장 현황
모든 시스템 정상
›
🔵
타이어
정상 · FL 240kPa
›
🔧
소모품
교체 임박 1건
›
🏠
대시보드
⚠️
고장
🔵
타이어
🔧
정비
📱
연결
🚗 BYD DiLink 전용 · Android

차량 상태를
한눈에 확인

고장 코드 23종을 한국어로 번역하고, 타이어 공기압과 소모품 교체 주기까지 차량 내장 디스플레이에서 바로 확인합니다.

지원 모델
Atto 3SealSealion 6Sealion 7Dolphin

앱 구성

세 가지 컴포넌트

차량, 서버, 스마트폰이 유기적으로 연결되어 동작합니다.

🚗

차량용 앱

BYD DiLink 헤드유닛 설치

BYD HAL OpenAPI를 직접 연동해 차량 센서 데이터를 실시간으로 읽고, 고장 코드·타이어·소모품 상태를 차량 디스플레이에 표시합니다. CRITICAL 고장 감지 시 서버로 알림을 전송합니다.

Kotlin Jetpack Compose Hilt · Room
☁️

중계 서버

Railway 클라우드 배포

6자리 페어링 코드를 발급해 차량-스마트폰을 안전하게 연결합니다. 차량 앱에서 수신한 고장 알림을 PostgreSQL에 저장하고, 페어링된 스마트폰(iOS/Android)으로 즉시 push를 전송합니다. DiLink에 GMS가 없으므로 FCM/APNs 발송은 서버에서 처리합니다.

Node.js PostgreSQL Firebase Admin
📱

컴패니언 앱

iOS · Android 스마트폰 설치

운전자 스마트폰에 설치하는 앱입니다. 차량 앱에서 표시된 6자리 페어링 코드를 입력해 차량과 연결한 뒤, CRITICAL 고장 발생 시 즉시 push 알림을 수신하고 알림 이력을 언제든지 조회할 수 있습니다. iOS는 APNs, Android는 FCM으로 동작합니다.

Flutter iOS APNs Android FCM

동작 방식

고장을 감지하면 즉시 알림

차량 → 서버 → 스마트폰으로 이어지는 실시간 알림 파이프라인.

🔗
최초 1회 — 페어링 설정
차량 앱 "연결" 탭 → 컴패니언 앱에서 코드 입력
  • 차량 앱이 서버에서 6자리 코드 발급 (5분 유효)
  • 컴패니언 앱에서 코드를 입력하면 accessToken 발급 및 저장
  • 이후 시동 ON/OFF 후에도 연결 상태 유지
↓ 페어링 완료 후 평상시 동작
🚗
BYD DiLink 차량용 앱
android/ · Kotlin + Jetpack Compose
  • BYD HAL OpenAPI로 센서 데이터 실시간 감지
  • 고장 코드 23종 분석 및 긴급도 분류
  • CRITICAL 고장 → 1시간 쿨다운, 3회 재시도로 서버 전송
  • 차량 디스플레이에 고장·타이어·소모품 상태 표시
↓ HTTP POST /alert
☁️
Railway 중계 서버
server/ · Node.js + PostgreSQL
  • 알림 이력을 PostgreSQL에 영구 저장
  • 등록된 iOS 기기 전체에 APNs push 전송
  • 등록된 Android 기기 전체에 FCM push 전송 (500개 배치)
  • 만료 토큰 자동 정리 (매주)
↓ APNs / FCM
🍎
iOS 컴패니언
iPhone · APNs
  • 백그라운드 포함 즉시 수신
  • 알림 이력 조회
🤖
Android 컴패니언
스마트폰 · FCM
  • GMS 기기에서 즉시 수신
  • 알림 이력 조회

컴패니언 앱

스마트폰에서 바로 확인

페어링 코드 한 번으로 차량과 연결하고, 고장 알림을 실시간으로 받습니다.

① 최초 1회 — 페어링
9:41●●●
BYD Health Monitor
🔗
차량과 연결하기
차량 앱 "연결" 탭에서 확인한
6자리 코드를 입력하세요
4
8
2
·
9
5
1
연결하기
코드는 5분간 유효합니다
② 이후 — 실시간 알림 수신
9:41●●●
BYD Health Monitor
↻
🚨
엔진 냉각수 온도 초과
긴급
냉각수 온도가 임계값을 초과했습니다. 즉시 점검하세요.
2026.09.21 14:32
⚠️
배터리 셀 불균형
주의
일부 배터리 셀 전압 편차가 큽니다.
2026.09.20 09:15
ℹ️
PM2.5 실내 농도 상승
정보
실내 PM2.5 농도가 높습니다.
2026.09.19 18:44

기능

차량 건강을 한 곳에서

BYD HAL OpenAPI를 직접 연동해 실시간 차량 데이터를 가져옵니다.

⚠️

고장 코드 번역

23종 고장 코드를 한국어 설명과 권장 조치로 변환. CRITICAL · WARNING · INFO 긴급도 분류.

🔵

타이어 대시보드

4개 타이어 압력(kPa), 온도 상태, 공기 누출 여부, TPMS 시스템 상태를 차량 조감도 위에 표시.

🔧

소모품 관리

엔진오일 · 브레이크액 · 냉각수 · 타이어 · 에어컨필터 · 브레이크패드 교체 주기 추적. 교체 이력 기록.

📊

건강 점수 게이지

고장 심각도와 소모품 상태를 종합해 0~100점으로 표시. 카운트업 애니메이션 포함.

🔔

CRITICAL 알림

긴급 고장 코드 감지 시 상태바 알림 자동 발송. 중복 발송 방지 로직 내장.

📈

배터리 · 주행거리

배터리 잔량(%), 전기 주행 가능 거리(km)를 대시보드에서 즉시 확인.

🌙

다크 테마 전용

야간 주행과 차량 내부 조명 환경에 최적화된 BYD 다크 팔레트. 눈부심 없는 UI.

🔌

Mock 모드

실기기 없이도 전체 UI 동작 확인 가능. BYD OpenAPI 미지원 기기에서 자동으로 Mock 데이터로 전환.

🔗

페어링 코드 연결

차량 앱에서 6자리 코드를 발급하고, 컴패니언 앱에서 한 번 입력하면 차량-스마트폰이 연결됩니다. 이후 시동 재시작 후에도 연결 상태가 유지됩니다.

🔄

앱 내 자동 업데이트

새 버전이 GitHub Releases에 출시되면 앱 안에서 바로 업데이트. 차량용 앱은 APK를 직접 다운로드·설치, 컴패니언 앱은 릴리즈 페이지로 안내합니다.


건강 점수

점수가 낮으면 조치하세요

여러 지표를 종합해 차량 상태를 단 하나의 숫자로 표현합니다.

82
양호
소모품 교체 임박 1건
80점 이상 — 양호
50~79점 — 주의
50점 미만 — 위험

점수 산정 공식

시작 점수 100점
긴급 고장 (CRITICAL) 1건당 −40점
주의 고장 (WARNING) 1건당 −15점
소모품 교체 초과 1건당 −10점
최솟값 0점

요구 사항

설치 전 확인하세요

BYD DiLink 탑재 차량과 Android 개발 환경이 필요합니다.

차량
BYD DiLink 탑재 모델
OS
Android API 23 이상
화면
가로 (Landscape) 고정
빌드 도구
Android Studio / Gradle
BYD OpenAPI
실기기 ADB 추출 또는 Mock 모드
권한
알림 (CRITICAL 고장 알림)

설치

APK 다운로드 또는 직접 빌드

빌드 없이 APK를 직접 받아 설치하거나, 소스에서 빌드할 수 있습니다.

⚡ 간편 설치 — GitHub Releases에서 APK 다운로드

빌드 없이 바로 설치합니다. 업데이트도 앱 안에서 자동으로 안내됩니다.

1

APK 다운로드

GitHub Releases 최신 버전에서 byd-vehicle-vX.X.X.apk를 다운로드합니다.

2

차량 IP 확인

디링크 설정 → 개발자 옵션에서 무선 ADB 활성화 후 차량 IP를 확인합니다.

3

ADB로 설치

adb connect <차량_IP>:5555 adb install byd-vehicle-vX.X.X.apk
4

컴패니언 앱 설치 (스마트폰)

동일 Releases 페이지에서 byd-companion-android-vX.X.X.apk를 받아 스마트폰에 설치합니다.

⚠️

아직 실차 테스트가 충분히 진행되지 않았습니다. 차종/DiLink 버전에 따라 동작 여부가 다를 수 있습니다. 설치해보신 분들의 피드백을 기다립니다!

🛠 개발자용 — 소스에서 직접 빌드

BYD DiLink 차량에 USB로 연결하거나 무선 ADB로 설치합니다.

1

저장소 클론

git clone https://github.com/GeyuongGongPark/BYD-Health-Monitor.git cd BYD-Health-Monitor
2

Android Studio에서 열기

File → Open에서 클론한 폴더를 선택합니다. Gradle 동기화가 자동으로 시작됩니다.

3

DiLink에 APK 설치

./gradlew :android:installDebug
ℹ️

BYD OpenAPI jar 없이도 Mock 모드로 전체 UI 동작 확인이 가능합니다. 실기기 연결 전 에뮬레이터나 일반 Android 기기에서 먼저 테스트해보세요.