[320i(f30) 코딩 백서 — Bimmercode 8회 완벽 정복] 4/8화: BMW 320i(F30) 안전 라이팅 코딩: 비상등·제동등·LED 컨버전 총정리
지난 시간, 그리고 오늘의 이야기
3화에서 DRL, 엔젤아이, 웰컴라이트까지 — 차에 다가갈 때부터 시동을 켤 때까지의 ‘인상’을 바꿔봤습니다. 오늘은 그다음 단계입니다. 달리는 동안, 그리고 멈추는 순간의 라이팅을 다룹니다.
솔직히 말하면 3화의 웰컴라이트나 엔젤아이가 ‘감성’이었다면, 4화는 ‘실용과 안전’입니다. 화려하진 않지만, 한 번 켜두면 “왜 이게 공장 출고 때 안 켜져 있었지?”라는 생각이 드는 항목들이죠.
특히 응급제동 시 비상등 자동 점멸은 이 시리즈 전체를 통틀어 제가 가장 강력하게 추천하는 코딩입니다. 과장 아닙니다.
그리고 우리 320i는 2018 MY LCI 모델이라 Full LED 헤드라이트가 표준입니다. 그래서 LED 컨버전 코딩이 언제 필요하고 언제 필요 없는지, 명확하게 정리해드리겠습니다.
응급제동 시 비상등 자동 점멸 — 이 시리즈 최고의 안전 코딩
왜 이게 중요한가
고속도로에서 급정거하는 상황을 떠올려보세요. 브레이크등이 들어오긴 하지만, 뒤차 운전자가 “앞차가 살짝 속도를 줄이는 건지, 풀 브레이킹을 하는 건지” 순간적으로 판단하기 어렵습니다.
이 코딩을 활성화하면, 급제동 시 비상등(hazard lights)이 자동으로 빠르게 점멸합니다. 유럽 고급차에서는 이미 표준인 기능인데, BMW는 코딩으로 숨겨뒀습니다.
Bimmercode 설정 경로
모듈: FEM_BODY (FEM_01)
- 항목명: Emergency brake flashing
- 설정값: aktiv (활성화)
- 기본값: nicht_aktiv (비활성)
이 한 줄이면 끝입니다. 코딩 난이도는 낮지만 실제 효과는 시리즈 전체에서 가장 큽니다.
동작 조건
- 일정 속도 이상(약 50km/h 이상)에서 급제동 시 작동
- ABS가 개입할 정도의 강한 제동이 감지되면 비상등이 빠르게 점멸
- 차량이 정지하면 비상등이 계속 켜진 상태로 유지
- 브레이크에서 발을 떼고 다시 가속하면 자동 해제
💡 개발자 시각: 이건 일종의 이벤트 드리븐 아키텍처입니다. ABS 모듈이 “급제동 이벤트”를 CAN 버스로 발행(publish)하면, FEM 모듈이 이를 구독(subscribe)해서 비상등을 트리거하는 구조죠. 코딩은 이 구독을 활성화하는 겁니다.

Brake Force Display — 제동력을 시각적으로 알리기
개념 이해
응급제동 비상등과 비슷하지만 더 세밀합니다. 제동 강도에 따라 후방 라이팅의 표현 방식을 바꾸는 기능입니다. 살짝 밟으면 일반 브레이크등, 세게 밟으면 더 넓은 영역이 점등되거나 점멸하는 식입니다.
Bimmercode 설정 경로
모듈: FEM_BODY (FEM_01)
Brake Force Display 관련 항목이 여러 개 있습니다. 하나씩 살펴보겠습니다.
① 활성화 속도 (Activation Speed)
- 항목명: Brake Force Display — activation speed
- 설정 범위: 5 ~ 50 km/h
- 권장값: 10 km/h
- 의미: 이 속도 이상에서만 Brake Force Display가 동작합니다
왜 최저 속도를 설정하느냐면, 주차장에서 천천히 움직이다 브레이크 밟을 때마다 뒤에서 번쩍거리면 민폐니까요.
② 활성화 감속도 (Deceleration Threshold)
- 항목명: Brake Force Display — deceleration threshold
- 설정 범위:
| 설정값 | 감속도 | 체감 |
|---|---|---|
| 약 (Low) | 약 5 m/s² | 일반 제동에서도 반응 — 너무 민감할 수 있음 |
| 중 (Medium) | 약 7 m/s² | ✅ 권장 — 의미 있는 제동에서 반응 |
| 강 (High) | 약 8 m/s² | 거의 풀 브레이킹에서만 반응 |
참고로 일반적인 편안한 정차 제동이 약 3~4 m/s², 급정거가 8~10 m/s² 수준입니다. 중(Medium)으로 설정하면 “아, 앞차가 꽤 세게 밟았구나”라고 뒤차가 인지할 수 있는 적절한 임계값입니다.
③ 점멸 빈도 (Flashing Frequency)
- 항목명: Brake Force Display — flashing frequency
- 설정값:
| 설정값 | 설명 |
|---|---|
| 3회/초 | 차분한 점멸, 시인성은 약간 낮음 |
| 5회/초 | ✅ 권장 — 긴급함이 충분히 전달됨 |
④ 디스플레이 타입 (Display Type)
- 항목명: Brake Force Display — display type
- 설정값:
| 설정값 | 설명 |
|---|---|
| 영역 확장 (Area extension) | 제동력이 강할수록 더 넓은 후미등 영역 점등 |
| 점멸 (Flashing) | ✅ 권장 — 브레이크등이 빠르게 깜빡여 시인성 극대화 |
| 비활성 (Not active) | 기능 OFF |
권장 조합 정리
| 항목 | 권장값 |
|---|---|
| 활성화 속도 | 10 km/h |
| 감속도 | 중 (Medium, 7 m/s²) |
| 점멸 빈도 | 5회/초 |
| 디스플레이 타입 | 점멸 (Flashing) |
⚠️ 주의: Brake Force Display와 응급제동 비상등은 별개의 기능입니다. 둘 다 켜도 충돌하지 않습니다. Brake Force Display는 “중간 강도 이상의 제동”에서 동작하고, 응급제동 비상등은 “ABS 개입 수준의 급제동”에서 동작합니다. 계층적 안전망이라고 보시면 됩니다.
방향지시등 — 잠금/잠금해제 깜빡임
기능 설명
리모컨으로 차량을 잠그거나 잠금해제할 때, 방향지시등이 깜빡이는 횟수를 조절합니다. 별것 아닌 것 같지만, 넓은 주차장에서 내 차 위치를 확인하거나, 잠금이 정상적으로 됐는지 시각적으로 확인하는 데 꽤 유용합니다.
Bimmercode 설정 경로
모듈: FEM_BODY (FEM_01)
- 항목명: Turn signals — lock/unlock flash count
- 설정 범위: Off / 1회 / 2회 / 3회
- 기본값: 1회
- 권장값: 1회 (기본 유지) 또는 취향에 따라 2회
3회로 설정하면 살짝 과한 느낌이 있고, Off로 하면 잠금 확인이 안 돼서 불안합니다. 1~2회가 적당합니다.
잠금과 잠금해제 별도 설정
Bimmercode에서는 잠금(lock)과 잠금해제(unlock)의 깜빡임 횟수를 각각 별도로 설정할 수 있습니다.
- 잠금 시: 1회 (기본 유지 권장)
- 잠금해제 시: 2회 (잠금해제됐다는 걸 좀 더 명확하게)
이렇게 다르게 설정하면, 리모컨을 누른 뒤 1번 깜빡이면 “잠겼구나”, 2번 깜빡이면 “열렸구나”를 직관적으로 구분할 수 있습니다.
빗물·조도 센서 감도 조정
자동 와이퍼 감도
비 오는 날 자동 와이퍼가 너무 둔하거나 너무 민감한 적 있으시죠? 코딩으로 기본 감도를 조절할 수 있습니다.
모듈: FEM_BODY (FEM_01)
- 항목명: Rain sensor — sensitivity
- 설정 범위: 1 (둔감) ~ 10 (민감)
- 기본값: 5
- 권장값: 6~7 (한국 봄·여름 소나기 패턴에 맞게 약간 민감하게)
참고로 이 값은 기본 감도이고, iDrive나 와이퍼 레버에서 실시간으로 1단계 정도 조절할 수 있습니다. 코딩은 그 “중심축”을 옮기는 겁니다.
자동 라이트 감도
- 항목명: Light sensor — sensitivity
- 설정 범위: 1 (어두울 때만 점등) ~ 10 (조금만 어두워도 점등)
- 기본값: 5
- 권장값: 6~7
터널 진입 시 반응 속도가 체감될 수 있습니다. 너무 높이면 흐린 날 낮에도 라이트가 켜져서 배터리 소모가 약간 늘어납니다만, Full LED라서 사실상 무시할 수준입니다.

LED 컨버전 코딩 — 우리 차에 필요한 것과 필요 없는 것
먼저 결론부터
우리 BMW 320i F30 LCI(2018 MY)는 Full LED 헤드라이트가 표준 사양입니다. 따라서 대부분의 LED 컨버전 코딩이 불필요합니다.
인터넷에 떠도는 “BMW F30 LED 코딩” 가이드 중 상당수는 Pre-LCI(할로겐/크세논) 모델을 기준으로 쓰여진 겁니다. 이걸 그대로 따라하면 오히려 기존에 잘 동작하던 기능이 꺼질 수 있습니다.
LED 컨버전이 필요한 경우 vs 불필요한 경우
| 교체 부위 | LED 컨버전 코딩 필요? | 이유 |
|---|---|---|
| 헤드라이트 (상향/하향) | ❌ 불필요 | 이미 Full LED 표준 |
| DRL (주간주행등) | ❌ 불필요 | 이미 LED |
| 엔젤아이 | ❌ 불필요 | 이미 LED |
| 후미등 (외측) | ❌ 불필요 | LCI 기본 LED |
| 후미등 (내측/트렁크) | ⚠️ 경우에 따라 | 내측 LED 업그레이드 시 REM_01 코딩 필요 |
| 번호판등 | ✅ 필요 | 할로겐→LED 교체 시 에러 방지 코딩 |
| 사이드 마커 | ✅ 필요 | 별도 LED 적용 시 저항값 변경 코딩 |
| 실내등 | ❌ 불필요 | 저항 내장 LED 벌브 사용 시 코딩 없이 교체 가능 |
| 안개등 | ⚠️ 경우에 따라 | LED 안개등으로 교체 시 FEM_01 코딩 |
💡 개발자 시각: LED 컨버전 코딩은 타입 시스템을 변경한 뒤 컴파일러 에러를 잠재우는 작업과 같습니다. 할로겐 벌브(기존 타입)를 LED(새 타입)로 교체하면, 차량의 전자 시스템이 저항값 차이를 감지해서 “벌브 고장” 에러를 띄웁니다. 코딩은 이 타입 체크를 새 타입에 맞게 조정하는 거죠. 이미 LED가 표준인 우리 차는 “타입이 이미 맞으니 수정할 필요가 없다”는 겁니다.
번호판등 LED 교체 시 코딩
가장 많이 하는 교체입니다. 번호판등은 기본이 할로겐인 경우가 많아서, LED 벌브로 교체하면 계기판에 “전구 고장” 경고가 뜹니다.
모듈: FEM_BODY (FEM_01)
- 항목명: License plate light — bulb monitoring
- 설정값: LED (기존: Halogen)
이 한 줄이면 에러가 사라집니다. 번호판등 LED 교체는 공구 하나 없이 5분이면 되고, 야간에 차량 후방이 훨씬 깔끔해 보이므로 추천합니다.
후미등 내측(트렁크 부분) LED 업그레이드 시
F30 LCI의 후미등 내측은 일부 트림에서 LED가 아닌 경우가 있습니다. 이때 LED 후미등 유닛으로 교체하면 REM_01 모듈에서 코딩이 필요합니다.
모듈: REM_01
- 항목명: Tail light inner — type
- 설정값: LED (기존: Conventional)
- 추가 항목: 좌/우 별도 설정 필요
⚠️ 3화에서 엔젤아이 코딩할 때처럼, 후미등도 좌/우 설정을 반드시 동일하게 맞춰야 합니다. 한쪽만 바꾸면 밝기 차이가 나서 정비소 방문 원인이 됩니다.
안개등 LED 교체 시
모듈: FEM_BODY (FEM_01)
- 항목명: Fog light — bulb type
- 설정값: LED (기존: H8 또는 H11)
안개등 LED 교체는 헤드라이트만큼 효과가 크진 않지만, 색온도 통일감을 원하시면 해볼 만합니다. 다만 안개등은 확산 패턴이 중요한데, LED로 교체하면 빔 패턴이 달라질 수 있으니 안개등 전용 LED 벌브를 사용하세요.
안개등 관련 추가 코딩
안개등 비활성화 (제거 시 에러 방지)
혹시 안개등을 아예 제거하셨거나, 안개등 없는 범퍼로 교체하신 분은 이 코딩이 필요합니다.
모듈: FEM_BODY (FEM_01)
- 항목명: Fog lights — installed
- 설정값: nicht_verbaut (미장착)
이렇게 하면 계기판의 안개등 관련 에러가 사라지고, iDrive에서도 안개등 메뉴가 숨겨집니다.
하이빔 ON 시 안개등 자동 OFF
이건 법규와도 관련된 항목입니다. 하이빔을 켤 때 안개등이 동시에 켜져 있으면 대향차에 눈부심을 줄 수 있습니다.
모듈: FEM_BODY (FEM_01)
- 항목명: Fog lights — deactivate with high beam
- 설정값: aktiv (활성화)
- 기본값: 차량에 따라 다름
이미 활성화되어 있을 가능성이 높지만, 확인 차원에서 체크해보세요.
실전 코딩 순서 가이드
오늘 다룬 항목을 실제로 적용하는 순서
3화에서도 말씀드렸지만, 코딩은 한 번에 몰아서 하는 것보다 모듈별로 나눠서, 각 모듈 코딩 후 테스트하는 게 안전합니다.
Step 1: FEM_BODY (FEM_01) — 안전 라이팅
가장 중요한 모듈부터 시작합니다.
- Bimmercode 연결 → FEM_BODY 선택 → 백업 확인
- Emergency brake flashing → aktiv
- Brake Force Display 4개 항목 설정
- 코딩 적용(Write)
- 시동 끄고 → 다시 시동 → 테스트 주행으로 확인
⚠️ 응급제동 비상등은 실제 급제동 상황에서만 동작하므로, 안전한 장소에서 테스트하세요. 넓은 주차장에서 약 50km/h까지 가속 후 급정거하면 동작을 확인할 수 있습니다.
Step 2: FEM_BODY (FEM_01) — 방향지시등 · 센서 · LED 컨버전
같은 모듈이므로 Step 1과 이어서 할 수 있습니다.
- Turn signals 잠금/잠금해제 깜빡임 설정
- Rain sensor / Light sensor 감도 조정
- (해당 시) 번호판등 LED 코딩
- (해당 시) 안개등 관련 코딩
- 코딩 적용(Write)
- 차량 잠금/잠금해제로 깜빡임 확인
Step 3: REM_01 — 후미등 (해당 시에만)
후미등 내측을 LED로 교체한 경우에만 진행합니다.
- REM_01 선택 → 백업
- Tail light inner — type → LED (좌/우 동일하게)
- 코딩 적용(Write)
- 미등 켜서 좌/우 밝기 동일 확인
총 소요 시간
| 단계 | 예상 시간 |
|---|---|
| Step 1 (안전 라이팅) | 10~15분 |
| Step 2 (방향지시등·센서·LED) | 10~15분 |
| Step 3 (후미등, 해당 시) | 5~10분 |
| 테스트 주행 | 15~20분 |
| 총합 | 약 40~60분 |
트러블슈팅 — 코딩 후 이런 증상이 나타나면
“전구 고장” 경고가 계속 뜬다
- 원인: LED 교체 후 bulb monitoring 타입을 변경하지 않았거나, 코딩이 적용되지 않은 경우
- 해결: 해당 항목의 bulb type이 LED로 정확히 변경되었는지 확인. 코딩 적용 후 시동을 완전히 끄고(ACC도 OFF) 30초 대기 후 재시동
Brake Force Display가 동작하지 않는 것 같다
- 원인: 활성화 속도 미달이거나 감속도 임계값이 너무 높게 설정된 경우
- 해결: 활성화 속도를 5 km/h로 낮추고, 감속도를 Low(5 m/s²)로 낮춰서 테스트. 동작 확인 후 원하는 값으로 재조정
빗물 센서가 너무 민감하다
- 원인: 감도를 너무 높게 설정한 경우
- 해결: 1~2단계 낮추기. 한국 기후 기준 6~7이 적당하며, 8 이상은 이슬비에도 와이퍼가 동작할 수 있음
좌우 후미등 밝기가 다르다
- 원인: REM_01에서 좌/우 중 한쪽만 LED로 변경한 경우
- 해결: 반드시 좌/우 모두 동일한 값으로 설정. 3화에서 엔젤아이도 같은 원리였죠 — 분산 시스템의 양쪽 노드에 같은 설정을 배포해야 정합성이 유지됩니다.
3화 vs 4화 — 외관 라이팅 전체 정리
3화와 4화에 걸쳐 외관 라이팅 코딩을 모두 다뤘습니다. 전체를 한눈에 정리해보겠습니다.
| 카테고리 | 회차 | 핵심 항목 | 만족도 |
|---|---|---|---|
| 감성 라이팅 | 3화 | DRL 밝기, 엔젤아이, 웰컴라이트 | ★★★★★ |
| 안전 라이팅 | 4화 | 응급제동 비상등, Brake Force Display | ★★★★★ |
| 편의 라이팅 | 3화+4화 | 코너링라이트, 방향지시등 횟수 | ★★★★☆ |
| 센서 최적화 | 4화 | 빗물·조도 센서 감도 | ★★★☆☆ |
| LED 컨버전 | 4화 | 번호판등, (해당 시) 후미등·안개등 | ★★★★☆ |
3화가 “보는 즐거움”이었다면, 4화는 “안심하는 즐거움”입니다. 특히 응급제동 비상등은 코딩 시리즈 전체에서 유일하게 “이건 안 하면 손해”라고 말할 수 있는 항목입니다.
코딩 시 주의사항 다시 한번
- 백업은 모듈별로: FEM_01, REM_01 각각 백업 파일이 생성됩니다. 2화에서 설명한 백업 위치를 확인하세요.
- 배터리 충전 상태: 코딩 중 배터리 전압이 떨어지면 모듈 통신 에러가 발생할 수 있습니다. 가급적 배터리 충전기를 연결하거나, 최소한 시동을 켠 상태에서 진행하세요.
- 한 모듈씩: FEM_01 코딩 → 테스트 → REM_01 코딩 → 테스트. 문제가 생겼을 때 원인을 특정하기 쉽습니다.
- 법규 확인: Brake Force Display의 점멸 기능은 대부분의 국가에서 합법이지만, 과도한 점멸(10회/초 이상)은 문제가 될 수 있습니다. Bimmercode 기본 제공 범위(3~5회/초) 내에서 설정하면 안전합니다.

이번 회차 코딩 요약 체크리스트
오늘 다룬 모든 코딩 항목을 체크리스트로 정리합니다. 하나씩 체크하면서 진행하세요.
| ✅ | 모듈 | 항목 | 권장값 | 중요도 |
|---|---|---|---|---|
| ☐ | FEM_01 | Emergency brake flashing | aktiv | ★★★★★ |
| ☐ | FEM_01 | Brake Force Display — 활성화 속도 | 10 km/h | ★★★★☆ |
| ☐ | FEM_01 | Brake Force Display — 감속도 | Medium (7 m/s²) | ★★★★☆ |
| ☐ | FEM_01 | Brake Force Display — 점멸 빈도 | 5회/초 | ★★★★☆ |
| ☐ | FEM_01 | Brake Force Display — 타입 | Flashing | ★★★★☆ |
| ☐ | FEM_01 | Turn signals — 잠금 깜빡임 | 1회 | ★★★☆☆ |
| ☐ | FEM_01 | Turn signals — 잠금해제 깜빡임 | 2회 | ★★★☆☆ |
| ☐ | FEM_01 | Rain sensor 감도 | 6~7 | ★★★☆☆ |
| ☐ | FEM_01 | Light sensor 감도 | 6~7 | ★★★☆☆ |
| ☐ | FEM_01 | 번호판등 LED (교체 시) | LED | ★★★★☆ |
| ☐ | FEM_01 | 안개등 + 하이빔 OFF | aktiv | ★★★☆☆ |
| ☐ | REM_01 | 후미등 내측 LED (교체 시) | LED (좌/우 동일) | ★★★★☆ |
마치며 — 다음 회차 예고
외관 라이팅 2부작이 끝났습니다. 3화에서 시각적 감성을, 4화에서 안전과 실용을 다뤘으니, 이제 밖에서 볼 수 있는 변화는 거의 완성입니다.
다음 5화부터는 차 안에서 매일 체감하는 변화로 넘어갑니다. 리모컨으로 창문 여닫기, 사이드미러 자동 폴딩, 출발 후 자동 잠금… 한 번 쓰면 절대 못 돌아가는 기능들의 향연입니다.
특히 잠금 시 사이드미러 자동 폴딩은 한국 주차 환경에서 만족도가 압도적으로 높은 코딩입니다. 왜 BMW가 이걸 기본으로 안 켜놨는지 진심으로 의문이 들 겁니다.
오늘의 코딩 1줄 요약: 안 보이던 안전 옵션을 깨우고, LED 교체 시 에러 방지
위험도: ★★☆☆☆
원복 가능: ✅ 백업으로 가능
다음 회 예고: 편의 기능 — 한 번 쓰면 못 돌아가는 코딩 베스트셀러
이미지는 Leonardo AI 로 생성되었습니다.
이미지는 Claude AI 로 생성되었습니다.
◀ 이전 3화 (다음 차수는 아직 게시되지 않았습니다)


