앱 「승인해줘」 요청 → 아래에서 승인해야 스마트키(BLE) 사용 가능 · 승인 해제 시 권한 회수 · 서버(docker) 재시작 시 승인 전부 초기화 (다시 CMS에서 승인 필요)
ign,acc,batt_mV,rpm,spd — ACC Report 경유
엔진·변속기·제동 계통 고장 여부 — 코드가 표시되면 정비 점검을 권장합니다.
END 업링크로 수집된 IMEI 목록입니다. 차량번호를 입력한 뒤 저장하면 Android 앱 선택 목록에 표시됩니다. 삭제 시 등록된 차량번호만 제거됩니다.
| IMEI | 상태 | 차량번호 | 관리 |
|---|---|---|---|
| IMEI 대기 중… | |||
앱 「승인 요청」 → 관리자가 승인해야 스마트키(BLE) 사용 가능. 승인 해제 시 앱 IMEI 비활성.
END→Server MQTT 업링크 간격(초). 저장 시 END NVS 반영 + MQTT downlink · 기본 주행 2분 · 주차 5분
주행 중(spd>1.5 또는 rpm+ign/acc) 차문·배터리 명령 불가 · JSON→END→ACC
App 승인 중 원격 차문 시 자동 승인 해제 (RSSI 충돌 방지)
완료까지 최대 END ACK 140초 + uplink 확인 90초 — 주차 Report 주기(5분)와 무관
END 배터리 GPIO · 주행 중 명령 불가 · 차단 후에만 연결 필요
ACK 대기 최대 20초 — 주차 Report 주기와 무관
📋 pipe 프로토콜 요약 (로그 읽기용 · | split 인덱스 0부터)
Topic car/a/{LTE IMEI} · 구분자 | · 인덱스는 split('|') 0부터
업링크 v3 = END·서버·펌웨어(neo_6m) 공통 · 하향 pipe = 별도 레거시(필드 번호 다름)
템플릿: —
| # | 필드 | 예 | 의미 |
|---|
| # | 필드 | 예 | 의미 |
|---|
↑ buildUplinkV3() / END neo_6m.c / mqtt-test-publish.js 와 동일 · 구버전 v2/v1tail 자동 인식
하향 예 (업링크 [10]=속도 와 다름 — [10]=door):
1|car/a/{IMEI}|1|1|1|000000|0|0|0|00000000|1| ← [4]=1 배터리유지 [10]=1 문열기
1|car/a/{IMEI}|1|1|0|000000|0|0|0|00000000|0| ← [4]=0 배터리차단
플랫폼(올림포스·에스카·모비먼트) ↔ rawdata HTTP 연동 로그입니다. uplink fan-out은 car/{letter}/ 채널당 해당 SaaS 1곳만 전송합니다 (car/a→올림포스, car/b→에스카, car/c→모비먼트). 아래 「전체」는 허브 디버그용 조회이며, 타 SaaS로 데이터가 브로드캐스트되지 않습니다.