DMS Level Sync
sonny
Posts: 208
Greetings...I have a system that has two DMS keypads controlling one zone of audio, and am trying to keep the levels in sync. I've tried a hard-coded SEND_LEVEL, as well as COMBINE_LEVELS with little luck. I don't fully know what goes on in the DMS Comm Module, but I am reading/writing to the virtual device....
For example
LEVEL_EVENT [myVirtual, level1]
{
SEND_LEVEL someOtherVirtual, level1, LEVEL.VALUE
}
From a combine level standpoint, I tried combining the virtual devices and the actual DMS device with a virtual level, but neither worked.
Thoughts, ideas and experiences appreciated...
Thanks...Sonny
For example
LEVEL_EVENT [myVirtual, level1]
{
SEND_LEVEL someOtherVirtual, level1, LEVEL.VALUE
}
From a combine level standpoint, I tried combining the virtual devices and the actual DMS device with a virtual level, but neither worked.
Thoughts, ideas and experiences appreciated...
Thanks...Sonny
0
Comments
You have to change pages.
I once came accross this but didn't have time to fix it by code.
There is a command which I haven't tested which should allow you to directly update the bargraph, or maybe refresh the page:
SEND_COMMAND<DEV>"?SET-
[<TITLE>,<SM#>,<SV#>,<SN#>,<SX#>,<SS#>]?"
Variables:
TITLE - title of page
SM# - Mode Number, BARGRAPH = 1, TEXT = 2,
TEMPERATURE = 3
SV# - Value, -255 to 255
SN# - Minimum, -255 to 255
SX# - Maximum, -255 to 255
SS# - Step, 0-100
Example String Return: "'SET-<SV#>',<CR>"
Please reply with the exact string you send to make it work
champ
Kevin D.
That command is actually the old way of doing DMS's, before Keypad Builder. You had to create all the menus in code!! So that command would just create a level page. A SEND_LEVEL / "'PAGE-(CURRENT)'" combo will refresh it. You basically send the new level and change pages to the same page.
Kevin D.
INTEGER AS8VOL1 //variable in which to store the level value
CREATE_LEVEL vdvAS8,1,AS8VOL1
BUTTON_EVENT[vdvDMS_Dining,101] //Volume Up
{
PUSH:
{
OFF[vdvAS8,3] //MUTE Off Zone First just in case it is muted
SEND_LEVEL vdvDMS_Dining,1,((AS8VOL1*100)/255)
WAIT 1
{
SEND_COMMAND vdvDMS_Dining, "'PAGE-Volume'"
}
}
}
// SENDS THE LEVEL TO THE AS8
LEVEL_EVENT [vdvDMS_Dining,1]
{
SEND_COMMAND vdvAS8, "'S1L',ITOA(LEVEL.VALUE),'%'"
}