2026 개정판 · 1차 8월 8일 공개전체 커리큘럼 →
TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 41 READS

측색계 화면에 바로 RAL 색상을 띄우는 펌웨어 개조, WebUSB로 5분

측색계 화면에 바로 RAL 색상을 띄우는 펌웨어 개조, WebUSB로 5분
SOURCE IMAGE · HACKER NEWS

3nh의 CR4501은 색을 꽤 정확하게 재는 측색계지만, 정작 그 색이 어떤 RAL 톤인지는 알려주지 않는다. 제조사가 의도한 방식은 스마트폰 앱을 열고 블루투스로 기기와 페어링해 확인하는 것이다. 도장·건축 자재·품질 검사처럼 현장에서 반복적으로 색을 재고 RAL 번호로 소통해야 하는 실무자에게는 이 한 단계가 은근히 성가시다. 최근 공개된 한 개조 프로젝트는 이 답을 기기 자체 화면에 직접 띄운다. 측정이 끝날 때마다 가장 가까운 RAL Classic 톤의 이름과 일치도를 화면에 표시해, 재고 읽고 넘어가는 흐름을 만든다.

방식은 크롬이나 엣지 브라우저의 WebUSB 기능을 이용한 펌웨어 플래싱이다. 서버로 아무것도 올라가지 않고, 기기의 펌웨어가 사용자 컴퓨터를 벗어나지 않는다는 점을 개발자는 강조한다. 도구가 업데이트 모드 진입, 드라이버 확인, 백업, 플래싱, 확인의 순서를 단계별로 안내하며, 전체 과정은 되돌릴 수 있게 설계됐다. 덤으로 공장 펌웨어가 측정 화면에서 막아둔 좌·우·확인 버튼의 기능도 풀려, 조작이 상식적으로 동작하게 된다.

업데이트 모드 진입의 감각

실제로 손이 가는 유일한 까다로운 대목은 업데이트 모드로 넣는 과정이다. 먼저 측정 버튼을 눌러 기기를 완전히 끈 뒤, 아무것도 건드리지 말고 최소 5초를 기다려야 한다. 이 멈춤이 없으면 기기가 반응하지 않는다. 이후 측정 버튼을 링이 붉게 깜빡일 때까지 다시 누르거나(즉시 손을 뗀다), 측정 버튼과 확인 버튼을 로커 중앙을 누르듯 함께 눌러 붉은 깜빡임을 유도한다. 링이 붉게 깜빡이면 준비된 상태이며, 화면이 어두운 채로 있는 것은 정상이다.

윈도우 환경에서는 걸림돌이 하나 더 있다. 업데이트 모드에서 브라우저가 접근할 수 있는 드라이버가 기본 제공되지 않기 때문이다. 이때 Zadig로 드라이버를 한 번만 설치해 해결하는데, 반드시 WinUSB여야 한다. libusbK나 libusb-win32는 dfu-util로는 동작하지만 브라우저가 기기를 인식하지 못한다. 개발자가 가장 흔한 실수로 꼽는 부분이다.

어디에 쓰고, 어디는 건드리지 않는가

이 개조가 신뢰를 얻는 핵심은 쓰기 범위를 좁게 제한한다는 데 있다. 변경은 애플리케이션 영역(0x08004000~0x0802FFFF) 안의 일곱 군데, 5킬로바이트 남짓에 그친다. 0x08030000 위쪽은 손대지 않는데, 여기에는 스플래시 화면과 설정, 무엇보다 공장 교정값이 들어 있다. 교정값은 기기마다 다르며, 남의 것을 덮어쓰면 기기가 영구히 잘못 측정하게 되고 그것을 알아채기도 어렵다. 도구는 이 영역에 대한 쓰기 접근을 아예 거부한다.

RAL 매핑 데이터는 216개 RAL Classic 톤을 각각 세 번씩 측정해 만들었고, 반복 측정 편차는 평균 0.08 ΔE, 최악의 경우 0.50 ΔE였다. 측정에는 세미매트 마감의 정품 RAL K5를 썼다. 색 패널이 팬덱보다 넓어 8mm 조리개가 패널 안쪽에 안정적으로 놓이고 가장자리를 물지 않는다는 설명이다. 개발자는 오히려 액세서리 시장의 복제 색상 카드가 수 ΔE씩 벗어나고 서로 일관성도 없다고 지적한다. 판독값이 그런 카드와 어긋난다면 대개는 카드 쪽이 문제라는 것이다.

데이터 구조도 자원 제약 아래에서 다듬어졌다. 항목당 10바이트로 L·a·b를 100배한 정수와 RAL 번호, 화면 표시용 색상값을 담고, 색 이름은 반복 대신 단어 조각을 공유하고 참조하는 별도 블록으로 두었다. 그렇게 하지 않으면 남은 메모리에 들어가지 않았기 때문이다. 개조 도구(werkzeug/)에는 216색을 차례로 재고 산포와 중복 측정을 점검한 뒤 사용자 자신의 백업으로부터 완성 펌웨어를 만드는 프로그램도 포함돼, 다른 팬덱이나 자기 기기로 값을 새로 뽑을 수 있다.

실무적으로 어디까지 믿을 것인가

개발자는 이 데이터가 팬덱 하나와 기기 하나에서 나온 값임을 솔직히 밝힌다. 팬덱은 시간이 지나며 누렇게 변색되고 측색계마다 고유한 교정값을 가진다. 따라서 이 개조는 '대략 어떤 RAL인가'를 현장에서 즉시 알기에는 적합하지만, 최종 승인이나 클레임 처리처럼 근거가 필요한 상황에서는 여전히 팬덱을 꺼내야 한다. 복원 시에는 -t 옵션을 쓰지 말고 영역 전체를 한 번에 써야 하는데, 부트로더가 첫 쓰기 명령에서 전체를 지우고 완전한 이미지를 기대하기 때문이다. 메모리 맵과 버튼 체계, USB 프로토콜, 영구 메모리 기록 방식은 doku/ 문서(독일어)에 정리돼 있으며 모든 주소는 실기기나 플래시 덤프에서 검증됐다고 한다. 결국 이것은 보증 없는 주말 프로젝트이지만, 백업으로 돌아갈 길을 확보한 채 교정값은 건드리지 않는다는 원칙 위에 서 있다는 점이 이 개조의 성격을 잘 보여준다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/hallko1234/cr4501-ral-hack
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기
처리 중...