Wiimote HID Interface의 정리

User Experience 2007. 9. 28. 00:56
위(wiimote, 이하 위)와 통신하기 위해서는, - 어떤 상호간의 통신에서든지 - 프로토콜이 중요하다. 어떤 순서로 데이터를 보내고, 받는지 알아야, 위와 대화를 할 수 있는 것이다.

다음은 wiili.org와 wiibrew.org를 통해서 정리한 인터페이스에 대한 정리이다.

※ 여기 나오는 모든 숫자는 Hex코드이다.(쉽게 말해 16진수란 말이다.)



Data Reporting
  위에서 컴퓨터로 현재 위의 상태 정보를 보내는 형식을 지정하는 부분을 설명한다.

  형식
    12 TT MM
    - TT : [0x00, 0x04] : 계속적으로 상태정보를 보낼 것인지 정한다. 0x04로 설정된다면, 위모트의 상태가 바뀌던(버튼이 눌려진다든지...), 안바뀌던 주기적으로 상태정보를 보낸다.
    - MM : [0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3d, 0x3e/0x3d] : 상태 정보를 보낼 형식을 지정한다.
      - 0x30 : 핵심 버튼의 정보만 보낸다.
      형식 : 30 BB BB

Bit Mask First Byte Second Byte
0 0x01 D-Pad Left Two
1 0x02 D-Pad Right One
2 0x04 D-Pad Down B
3 0x08 D-Pad Up A
4 0x10 Plus Minus
5 0x20 Other uses Other uses
6 0x40 Other uses Other uses
7 0x80 Unknown Home


      - 0x31 : 핵심 버튼, 가속도 센서
      형식 : 31 BB bb AA AA AA

      - 0x32 : 핵심 버튼, 확장 컨트롤러
      형식 : 32 BB BB EE EE EE EE EE EE EE EE

      - 0x33 : 핵심 버튼, 가속도 센서, IR 센서
      형식 : 33 BB BB AA AA AA II II II II II II II II II II II

      - 0x34 : 핵심 버튼, 확장 컨트롤러
      형식 : 34 BB BB EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE

      - 0x35 : 핵심 버튼, 가속도 센서, 확장 컨트롤러
      형식 : 35 BB BB AA AA AA EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE

      - 0x36 : 핵심 버튼, IR 센서, 확장 컨트롤러
      형식 : 36 BB BB II II II II II II II II II II EE EE EE EE EE EE EE EE EE

      - 0x37 : 핵심버튼, 가속도 센서, IR 센서, 확장 컨트롤러
      형식 : 37 BB BB AA AA AA II II II II II II II II II II EE EE EE EE EE EE      - 0x3d :

      - 0x3d :
      형식 : 3d EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE EE

      - 0x3e/0x3f : 핵심 버튼, 가속도 센서(Interleaved), IR 센서
      형식 : 3e BB BB AA II II II II II II II II II II II II II II II II II II
               3f BB BB AA II II II II II II II II II II II II II II II II II II
posted by 스펜서.