Advertisement
Guest User

Untitled

a guest
May 16th, 2016
4,372
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.37 KB | None | 0 0
  1. BKM-10R Protocol
  2. Version 1 - May 16, 2016
  3. License: CC0
  4.  
  5. The BKM-10R is a remote control used for Sony BVM CRT televisions. It is
  6. required to control some CRTs without built in control, such as the BVM-20F1U.
  7.  
  8. The protocol is vaguely similar to the one used to control Sony VCRs:
  9. ftp://ftp.sgi.com/sgi/video/rld/vidpage/s9pin.html
  10.  
  11. This document currently only applies to the CONTROL connection, not to the
  12. REMOTE 1 input/output, though it's expected that they are similar.
  13.  
  14. == Pinout ==
  15.  
  16. The remote control and CRT are connected with straight through male-male DE9
  17. cable.
  18.  
  19. Female DB-9, BKM-10R side:
  20. 1. GND
  21. 2. /TXD
  22. 3. RXD
  23. 4. GND
  24. 5. +5V
  25. 6. GND
  26. 7. TXD
  27. 8. /RXD
  28. 9. GND
  29.  
  30. Since a straight through cable is used, TXD on the remote side is RXD on the
  31. CRT side. +5V is supplied from the CRT to power the remote.
  32.  
  33. == Protocol ==
  34.  
  35. Full duplex RS-422, 38400 baud, 8N1 (the Sony VCR protocol uses odd parity, but
  36. that seems not to be the case here). If you only want to control the CRT,
  37. half duplex RS-485 is electrically compatible.
  38.  
  39. == Bank ==
  40.  
  41. There are multiple "banks" that can be switched via 3 byte commands:
  42. 0x49 0x45 0x4E - "IEN" - encoders
  43. 0x49 0x53 0x57 - "ISW" - switches
  44. 0x49 0x4C 0x45 - "ILE" - leds
  45. 0x49 0x43 0x43 - "ICC" - ??
  46. 0x49 0x4d 0x54 - "IMT" - ??
  47.  
  48. The remote lazily switches banks when needed.
  49.  
  50. == Keypresses ==
  51.  
  52. Each keydown sends 0x44, then group, then mask.
  53. 0x44 <group> <mask>
  54.  
  55. The SHIFT key is "just another key" - state is kept on the CRT. Shifted labels
  56. are listed after non-shifted labels.
  57.  
  58. You must be in the "ISW" bank first.
  59.  
  60. <group> <mask> - label
  61. 0x03 0x01 - SHIFT
  62. 0x03 0x02 - OVERSCAN / 16:9
  63. 0x03 0x04 - HORIZ SYNC VIEW / SYNC
  64. 0x03 0x08 - VERT SYNC VIEW / BLUE ONLY
  65. 0x03 0x10 - MONO / R
  66. 0x04 0x01 - APT / G
  67. 0x04 0x02 - COMB / B
  68. 0x04 0x04 - F1 / F3
  69. 0x04 0x08 - F2 / F4
  70. 0x04 0x10 - SAFE AREA / ADDRESS
  71. 0x02 0x40 - UP
  72. 0x02 0x80 - DOWN
  73. 0x02 0x10 - MENU
  74. 0x02 0x20 - ENTER
  75. 0x02 0x08 - PHASE MANUAL
  76. 0x02 0x04 - CHROMA MANUAL
  77. 0x02 0x02 - BRIGHT MANUAL
  78. 0x02 0x01 - CONTRAST MANUAL
  79. 0x00 0x01 - 0
  80. 0x00 0x02 - 1
  81. 0x00 0x04 - 2
  82. 0x00 0x08 - 3
  83. 0x00 0x10 - 4
  84. 0x00 0x20 - 5
  85. 0x00 0x40 - 6
  86. 0x00 0x80 - 7
  87. 0x01 0x01 - 8
  88. 0x01 0x02 - 9
  89. 0x01 0x04 - Del
  90. 0x01 0x08 - Ent
  91. 0x01 0x10 - POWER (but see below)
  92. 0x01 0x20 - DEGAUSS
  93.  
  94. == POWER ==
  95.  
  96. You only need to send a POWER keypress to turn on the monitor, but for some
  97. reason the remote does more.
  98.  
  99. Power sends five 3-byte sequences:
  100. 0x49 0x53 0x57 - switch bank
  101. 0x44 0x01 0x10 - POWER switch
  102. (1s pause)
  103. 0x49 0x43 0x43 - CC bank?
  104. 0x49 0x4d 0x54 - MT bank?
  105. 0x44 0x33 0x31 - switch?
  106.  
  107. CRT responds with:
  108. 0x49 0x43 0x43 - CC bank?
  109. <full led state report>
  110. 0x49 0x4d 0x54 - MT bank?
  111. <full led state report>
  112.  
  113. == Encoders ==
  114.  
  115. Dials are rotary encoders that send 3 bytes:
  116. 0x44 <encoder id id> <ticks>
  117.  
  118. Ticks is a two's complement byte indicating how far the dial has turned since
  119. the last message. The remote sends messages about every 100ms when the dial
  120. is turning.
  121.  
  122. You must be in the "IEN" bank first.
  123.  
  124. 0x03 - PHASE
  125. 0x02 - CHROMA
  126. 0x01 - BRIGHT
  127. 0x00 - CONTRAST
  128.  
  129. == LEDs ==
  130.  
  131. LEDs use the same groups and masks as keypresses. Every time the CRT needs to
  132. change the lights, it changes to the LED bank:
  133.  
  134. 0x49 0x4c 0x45
  135.  
  136. then sends changed switch groups:
  137.  
  138. 0x44 <group> <mask>
  139.  
  140. where <mask> is all of the active LED masks OR'd together.
  141.  
  142. == Memory Card ==
  143.  
  144. Nobody cares.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement