RUNCO VX2C Module

For some reason the module doesn't compile? This is from the UI mod:
DEFINE_DEVICE
	
(***********************************************************)
(*               CONSTANT DEFINITIONS GO BELOW             *)
(***********************************************************)

POWER_ON_BTN = 1
POWER_OFF_BTN = 2
IS_COMPOSITE_BTN = 3
IS_SVIDEO1_BTN = 4
IS_SVIDEO2_BTN = 5
IS_COMPONENT_BTN = 6
IS_HD1_BTN = 7
IS_HD2_BTN = 8
IS_DVI1_BTN = 9
IS_DVI2_BTN = 10
IS_CYCLE_BTN = 11
AR_ANAMORPHIC_BTN = 12
AR_NORMAL_BTN = 13
AR_LETTERBOX_BTN = 14
AR_WIDESCREEN_BTN = 15
AR_CYCLE_BTN = 16
PRESET_NIGHT_BTN = 17
PRESET_DAY_BTN = 18
PRESET_CUSTOM1_BTN = 19
PRESET_CUSTOM2_BTN = 20
WARM_COOL_BTN = 21
BRIGHT_UP_BTN = 22
BRIGHT_DN_BTN = 23
CONTRAST_UP_BTN = 24
CONTRAST_DN_BTN = 25
COLOR_UP_BTN = 26
COLOR_DN_BTN = 27
TINT_UP_BTN = 28
TINT_DN_BTN = 29
SHARP_UP_BTN = 30
SHARP_DN_BTN = 31
DATA_INITIALZIED_BTN = 32
DEVICE_ONLINE_BTN = 33

BRIGHT_LEVEL = 1
CONTRAST_LEVEL = 2
COLOR_LEVEL = 3
TINT_LEVEL = 4
SHARP_LEVEL = 5

WARM_COOL_TXT = 1
BRIGHT_TXT = 2
CONTRAST_TXT = 3
COLOR_TXT = 4
TINT_TXT = 5
SHARP_TXT = 6

#INCLUDE 'SNAPI.axi'
(***********************************************************)
(*              DATA TYPE DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_TYPE



Then there's:
CHANNEL_EVENT[vdvDEVICE, LAMP_WARMUP_COOLDN_FB]
{
	ON:
                ....... and so on..............

But the constant LAMP_WARMUP_COOLDN_FB isn't defined any where. Actual if you look above we have no constants just devices defined.

I looked in the Word Doc and I think the value that should be assign to LAMP_WARMUP_COOLDN_FB if it were deifined should be 253 but I'm not all that sure. The value isn't set anywhere that I can see so it must assigned in the com module. Although I defined the constants as constants and define LAMP_WARMUP_COOLDN_FB with the value of 253 I still get no feedback at all from comms. The module does control the Proj/processor and I get strings returned but I'm not sure what the comm module is doing cuz the ain't nothing coming out the back end.

I really don't want to write it from scratch especially since it's to be operational by Tuesday and there are other things I was planning to do.

Maybe if this new Duet module wasn't on the website months ago when I looked I would have written one myself when I had time but now that the projector just got installed and I had a chance to slap in the module I get bitten once more. When am I going to learn! I don't mind so much when a module has quircks but how can they put this out to programmers when it can't even compile on its own. Let alone work properly!

Comments

  • Still don't get any feedback and in diagnostic there's some sort of Duet Java exception thrown. I was looking further at the DATA_EVENTS and the UI module is sending commands to the virtual device comm module via SEND_COMMANDs and the UI has a COMMAND event handler to recieve strings from the COMM mudule which normally would be a STRING_EVENT handler so I switch it around and still not a peep from the COMM module.

    I sent STRING & COMMAND "PASSBACK" to the virtual and nothing. So I'm starting from scratch. The Runco protocol for sending to the device is very straight forward via 40-50 commands but they don't specify anything about a returned format. Nothing to tell me what I should expect from the Projector/Processor when I send it a command or query. OK, so I set up a DATA_EVENT handler and buffers and alll that, opened up notifications to watch what's getting passed back and forth but I don't see any logical structure to what the device is replying with. I thought I could just send a command or query and see what it responds with but I can't make heads or tails out of it. F.....!

    Any body got a more detailed protocol for this thing or possibly a working module. Hopefully it's just cuz I'm aggrevated that I can't see any sense in the returned strings and when I start fresh tomorrow it will be perfectly clear. Or not!
  • DHawthorne
    DHawthorne Junior Member
    The actual Runco protocol is extremely simple; I have been using variations of the same module for all Runco projectors for years. Here is the VX-2C version, field tested and in use; it should be fairly easy to adapt if you need to add more than the basic functions I already have in there (power, input, and aspect control). The manual from Runco is included, protocol in the back.
  • Thanks Dave! I'm almost done with my version and I agree the send command protocol is very straight forward. I just haven't figured out how to figure out what it's sending back. I know -> is bad command received and +> means good but the other stuff has me presently confused. Especially the queries!
    Line     13 :: VXC2 DEV:5001:2:1, Mod Rcvd:  A$09$0D$0A16:9$0A$0D+> . <-Line-<289>$0D$0A - 10:45:00
    Line     14 :: VXC2 DEV:5001:2:1, Mod Rcvd:  A - 10:45:26
    Line     15 :: VXC2 DEV:5001:2:1, Mod Rcvd:  A$0D$0AAnamorphic$0A$0D+> . <-Line-<289>$0D$0A - 10:45:29
    Line     16 :: VXC2 DEV:5001:2:1, Mod Rcvd:  V$08$82$0A. <-Line-<289>$0D$0A - 10:45:57
    Line     17 :: VXC2 DEV:5001:2:1, Mod Rcvd:  V$08$82$0A+> . <-Line-<289>$0D$0A - 10:45:57
    

    I'll look at your module for help. I also found a newer protocol on the Runco site which now let me control the 2.35 virtual wide.
  • eriklhayes
    eriklhayes Junior Member
    Runco VX2C Module

    Thank you for the module. I am a little unclear on how to interface the the touchpanel buttons. Can you clarify for me?
    Thanks,
    Erik
  • DHawthorne
    DHawthorne Junior Member
    eriklhayes wrote: »
    Thank you for the module. I am a little unclear on how to interface the the touchpanel buttons. Can you clarify for me?
    Thanks,
    Erik

    I don't generally incorporate the UI within my device modules. It's strictly command line to the virtual interface, and the main program handles buttons and uses SEND_COMMAND to the virtual to trigger actions. Projector states are passed back as channels on the virtual device (input, aspect and ISF), and the virtual also uses a SEND_STRING to pass back the lockout (which is my way of showing the projector is warming or cooling and the interface won't accept power commands).