How to control CWT_7046 VFD display

This display is HID device and therefore doesn't need any special drivers. Currently I know only how to use text mode. It's not clear if the device supports full graphic mode or not. Unfortunately the manufacturer ignores requests for documentation, so it's hard to find out. If someone has better luck, please let me know (sob @ hisoftware.cz).

CWT_7046 VFD

Known commands

The size of commands (I'm not sure if it's the proper HID terminology) is 8 bytes. For shorter commands, the unused bytes are zero. The basic format is <one byte command><size of parameters><one to six parameters>.

C0 01 01Clears display.
C1 03 @1 @2 @3Sets time (it's shown when idle).
@1 = hours, @2 = minutes, @3 = seconds.
C2 ## @1 @2 @3 @4 @5 @6Sets text for first line.
## = number of characters, @x = characters.
The command must be called multiple times for longer texts. Size of parameters must be total number of characters left (so it can be bigger than six). When the text is longer than can fit on display, the whole line scrolls.

Example:
C2 13 <T> <H> <I> <S> < > <I>
C2 0D <S> < > <S> <A> <M> <P>
C2 07 <L> <E> < > <T> <E> <X>
C2 01 <T>
C3 ## @1 @2 @3 @4 @5 @6Sets text for second line, same parameters as above.
C4 01 @1Sets position of volume indicator.
@1 = position in 00-0C range, @1 = 0D turns the indicator off
C5 01 @1Sets the state of mute icon.
@1 = 0/1 (off/on)
C6 ?? ?? ?? ?? ?? ?? ??Possibly undefined, but it's strange, because the command codes increase sequentially, so why would they skip this one?
C7 ?? ?? ?? ?? ?? ?? ??Unknown, but defined.
In MCE dll it's linked to function called SystemPowerHandle.
C8 01 01Clears display and shows clock.
MCE dll sometimes sends C8 01 00, but there doesn't seem to be any difference.
C9 01 @1Sets the state of REC icon.
@1 = 0/1 (off/on)
CA 01 @1Sets the state of wireless icon.
@1 = 0/1 (off/on)
CB 01 @1Sets the media type icon.
@1 = 0/1/2/3 (off/DVD/VCD/CD)
CC ## @1 @2 @3 @4Sets the playing state icon.
@1 = play, @2 = pause, @3 = ffwd, @4 ffrev, all 0/1 (off/on), ## = number of parameters used, only up to last with value of 1 are needed (just always use 4 if unsure).
Two or more icons can't be active at the same time.

Examples:
CC 04 00 00 00 00 (all off)
CC 04 01 00 00 00 (play)
CC 01 01 (play, shortened version)
CD ?? ?? ?? ?? ?? ?? ??Unknown, but defined (MCE dll uses it sometimes, but it gives no visual feedback)

Samples of observed values:
CD 06 6A EC 37 F0 5A 23
CD 06 E1 25 28 11 F2 4D
CE 01 00Some kind of keepalive. Normally display switches to showing clock after some time without any command.

Version 1, 2010-12-01

© 2000-2011 Sob <sob @ hisoftware.cz>