What is verified검증 범위
What this was tested against, what it cannot do, and what is implemented but unconfirmed. Written out so that nothing has to be inferred from silence. 무엇을 대상으로 검증했는지, 할 수 없는 일은 무엇인지, 구현했으나 확인하지 못한 것은 무엇인지 적었습니다. 침묵으로 미루어 짐작할 필요가 없도록 모두 밝힙니다.
In one line
- Verified on one headset: an INZONE H9, first generation, firmware
01.002.005, on macOS 26. - Reading, writing and the headset's notification stream all work on that hardware.
- The H7, other firmware, and three of the Bluetooth settings are implemented but have never met real hardware.
요약
- 검증한 하드웨어는 한 대입니다. INZONE H9 1세대, 펌웨어
01.002.005, macOS 26. - 해당 하드웨어에서 읽기, 쓰기, 헤드셋의 notification 수신이 모두 동작합니다.
- H7, 그 밖의 펌웨어, Bluetooth 설정 세 가지는 구현했으나 실제 하드웨어에서 확인하지 못했습니다.
Verified on hardware하드웨어에서 확인한 것
- Reading every setting, both in bulk and one at a time 모든 설정 읽기. 일괄 읽기와 개별 읽기 모두
- Writing volume, game/chat balance, sidetone, noise cancelling mode, ambient level, focus on voice, auto power off and the indicator setting 볼륨, 게임/채팅 밸런스, 사이드톤, 노이즈 캔슬링 모드, 주변 소리 레벨, 음성 집중, 자동 전원 꺼짐, 표시 램프 설정 쓰기
- Changes made on the headset itself arriving through its notification stream, in about 50 ms 헤드셋에서 직접 변경한 내용이 notification으로 약 50 ms 안에 도착하는 것
- Battery level and charging state, firmware versions for both the headset and the transceiver 배터리 잔량과 충전 상태, 헤드셋과 transceiver의 펌웨어 버전
- Reconnecting after the transceiver is unplugged and plugged back in, and noticing the headset being switched off transceiver를 뺐다 다시 꽂았을 때의 재연결, 그리고 헤드셋 전원이 꺼진 것을 인식하는 동작
Not supported, and will not be지원하지 않으며, 지원할 계획도 없는 것
- Equalizer, spatial sound, dynamic range control,
automatic gain control
이퀄라이저, 입체 음향, 다이내믹 레인지 제어, 자동
게인 제어
- These are not headset settings. On Windows they run as a software DSP in the audio pipeline, using the manufacturer's own coefficient files, before the audio reaches the headset. 헤드셋 설정이 아닙니다. Windows에서는 오디오가 헤드셋에 도달하기 전에, 제조사의 계수 파일을 사용하는 소프트웨어 DSP로 처리됩니다.
- Reproducing them on macOS would mean writing an AudioUnit, not sending a command. macOS에서 재현하려면 명령을 보내는 것이 아니라 AudioUnit을 작성해야 합니다.
- Control over Bluetooth
Bluetooth를 통한 조작
- The headset advertises only standard audio profiles, with no control service. This was confirmed by reading its SDP records directly. 헤드셋은 표준 오디오 profile만 제공하며 제어용 service가 없습니다. SDP record를 직접 읽어 확인했습니다.
- The USB transceiver is the only control channel, so nothing can be changed while it is unplugged. The app still shows whether this Mac is connected over Bluetooth. USB transceiver가 유일한 제어 경로이므로, 뽑혀 있는 동안에는 아무것도 변경할 수 없습니다. 이 Mac이 Bluetooth로 연결되어 있는지는 그래도 표시합니다.
- Muting the microphone from software
소프트웨어로 마이크 음소거
- The boom's physical position owns the mute, and a write to that setting goes unanswered by the headset. The app reports the state and does not try to set it. 붐 마이크의 물리적 위치가 음소거를 결정하며, 해당 설정에 쓰기를 보내도 헤드셋이 응답하지 않습니다. 앱은 상태만 표시하고 설정하지 않습니다.
- Firmware updates. Not implemented, and not planned. 펌웨어 업데이트. 구현하지 않았고 계획도 없습니다.
Models other than H9 and H7H9, H7 이외의 모델
- H5, H9 II and the Buds use HID rather than a serial port, and several payload layouts differ between models. H5, H9 II, Buds는 serial port가 아니라 HID를 사용하며, payload 구조도 모델마다 다른 부분이 있습니다.
- The protocol core here would be reusable, but the transport and the per-model layouts would not. They are not supported. 프로토콜 핵심부는 재사용할 수 있겠으나 transport와 모델별 구조는 그렇지 않습니다. 지원하지 않습니다.
Implemented but unverified구현했으나 확인하지 못한 것
- The H7
H7
- It shares the transceiver, the USB id and the payload layouts, and the manufacturer's own client treats both the same way. transceiver, USB id, payload 구조를 공유하며, 제조사의 자체 클라이언트도 두 모델을 같게 취급합니다.
- No H7 was available to test. It has no noise cancelling, so the ANC event ids are expected to go unanswered. 검증할 H7이 없었습니다. 노이즈 캔슬링이 없는 모델이므로 ANC 관련 event id는 응답하지 않을 것으로 봅니다.
- The three Bluetooth and startup settings
Bluetooth 및 전원 투입 관련 설정 세 가지
bt-mode,bt-startupandnc-startupare implemented from the manufacturer's own value tables and covered by tests against a virtual transceiver.bt-mode,bt-startup,nc-startup은 제조사의 값 표를 근거로 구현했고, 가상 transceiver를 대상으로 테스트로 덮었습니다.- They were never exercised against the headset. 실제 헤드셋에서는 시험하지 못했습니다.
- The indicator light
표시 램프
- Writing the setting works and the value persists. Whether the light physically turns on was never confirmed. 설정 쓰기는 동작하고 값도 유지됩니다. 램프가 물리적으로 켜지는지는 확인하지 못했습니다.
- Firmware other than
01.002.00501.002.005이외의 펌웨어- A firmware that does not implement the bulk reads falls back to reading each setting on its own. That fallback is covered by tests but has not been seen on real hardware. 일괄 읽기를 지원하지 않는 펌웨어에서는 설정을 하나씩 읽는 경로로 넘어갑니다. 해당 경로는 테스트로 덮여 있으나 실제 하드웨어에서 확인한 적은 없습니다.
- Running for a long time
장시간 실행
- Idle cost was measured at 0.1–0.3 % CPU with flat memory, and reconnection is handled in code, but neither has been left running for hours. 대기 상태에서 CPU 0.1~0.3 %, 메모리 증가 없음을 측정했고 재연결도 구현했으나, 어느 쪽도 몇 시간 단위로 돌려 보지는 않았습니다.
Known rough edges알려진 문제
- Turning the headset's volume dial can make the
value move back and forth by a step
헤드셋의 볼륨 다이얼을 돌리면 값이 한 단계씩
오갈 수 있습니다
- Every frame comes from the headset, so this is not the app rewriting values. 모든 frame이 헤드셋에서 오는 것으로 확인했으므로 앱이 값을 되돌리는 것은 아닙니다.
- The likely cause is the headset and macOS both driving the same volume with different step counts, since the transceiver is also an audio output device. Switching the system output to another device is the quickest way to tell the two apart. transceiver가 오디오 출력 장치이기도 해서, 헤드셋과 macOS가 서로 다른 단계 수로 같은 볼륨을 조정하는 것이 원인으로 보입니다. 시스템 출력을 다른 장치로 바꿔 보면 가장 빨리 구분됩니다.
- The battery level moves in coarse steps and can sit still for tens of minutes. The window shows how long ago it last changed, so a slow reading can be told apart from a stuck one. 배터리 잔량은 큰 단위로 변하며 수십 분간 그대로일 수 있습니다. 창에 마지막으로 변한 시점을 표시하므로, 느린 것인지 멈춘 것인지 구분할 수 있습니다.
- The package is unsigned, so macOS blocks the first launch. 패키지에 서명이 없으므로 macOS가 첫 실행을 차단합니다.