Posted Tue, 20 Aug 2024 18:40:17 GMT by King, Robert
I am looking for a programmatic way to control turning on/off the individual digital channels. See the attached screenshot for how this is done manually using the touch screen.

I am able to turn on/off the entire digital channel (all bits) using the command:

DIS:GLO:CH5:STATE OFF
DIS:GLO:CH5:STATE ON

But these commands don't seem to be able to work for individual digital (bit) channels like:

DIS:GLO:CH5_D4:STATE OFF
DIS:GLO:CH5_D4:STATE ON

What command can I use for this purpose? Surely this should be available using the programming interface?
Posted Tue, 20 Aug 2024 21:40:06 GMT by Oshatz, Elijah
Robert, 

I think you are looking for the DISplay:WAVEView:CH_D:STATE? command, found in the '4, 5, 6 Series MSO Programmer Manual' in section 2-549, or page 573 in a PDF viewer. To confirm, I ran these commands on my scope, using python and it turned the specified channels on and off.

scope.write('Dis:Waveview1:CH1_D7:State 0')
scope.write('Dis:Waveview1:CH1_D6:State 1')
scope.write('Dis:Waveview1:CH1_D5:State 0')

Other useful sections of the programmer manual for manipulating digital pins are the Digital Command Group, Display Command Group, and the Bus Command Group. 

Also, I am unsure what your application is, but I noticed you are using the display:global command. This may cause complications in your program as it becomes more complex, so I would recommend using the "Display:Waveview1:Ch<x>:State  " command if you are simply turning channels on and off. 
Posted Wed, 21 Aug 2024 17:19:28 GMT by King, Robert
Thanks Elijah!

You must be signed in to post in this forum.