<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
The DAC is common per connector (36 channels), so it is more efficient to loop over pulse size (outer loop) then channels (inner loop).  This way, the DAC/pulse_shape_memory needs be set only once.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
We cannot enable all the channels at once in pulse mode, because the pulser driver is not capable of driving them at the same time.  The bleaching is designed to be enabled at the same time (for all the 36 channels).</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Thanks.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
William</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Simona Malace <simona@jlab.org><br>
<b>Sent:</b> Thursday, March 2, 2023 11:18 AM<br>
<b>To:</b> Brian Eng <beng@jlab.org>; Bryan Moffit <moffit@jlab.org>; Aaron Brown <ambrown@jlab.org>; dsg-hallc_nps@jlab.org <dsg-hallc_nps@jlab.org><br>
<b>Cc:</b> William Gu <jgu@jlab.org>; Chris Cuevas <cuevas@jlab.org><br>
<b>Subject:</b> Re: [Dsg-hallc_nps] [EXTERNAL] NPS LED/VLD controller specs/information/summary</font>
<div> </div>
</div>
<div>
<div dir="auto" style="color:rgb(33,33,33); background-color:rgb(255,255,255)">Hello</div>
<div dir="auto" style="color:rgb(33,33,33); background-color:rgb(255,255,255)"><br>
</div>
<div dir="auto" style="color:rgb(33,33,33); background-color:rgb(255,255,255)">In pulse mode the dac, width, pulser type (periodic vs random) will be set per channel.</div>
<div dir="auto" style="color:rgb(33,33,33); background-color:rgb(255,255,255)"><br>
</div>
<div dir="auto" style="color:rgb(33,33,33); background-color:rgb(255,255,255)">Simona </div>
<div id="x_ms-outlook-mobile-signature" dir="auto">
<div><br>
</div>
Get <a href="https://aka.ms/AAb9ysg">Outlook for Android</a>
<div id="x_mail-editor-reference-message-container" dir="auto"><br>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" style="font-size:11pt"><strong>From:</strong> Dsg-hallc_nps <dsg-hallc_nps-bounces@jlab.org> on behalf of Brian Eng via Dsg-hallc_nps <dsg-hallc_nps@jlab.org><br>
<strong>Sent:</strong> Tuesday, February 28, 2023, 3:09 PM<br>
<strong>To:</strong> Bryan Moffit <moffit@jlab.org>; Aaron Brown <ambrown@jlab.org>; dsg-hallc_nps@jlab.org <dsg-hallc_nps@jlab.org><br>
<strong>Cc:</strong> William Gu <jgu@jlab.org>; Chris Cuevas <cuevas@jlab.org><br>
<strong>Subject:</strong> Re: [Dsg-hallc_nps] [EXTERNAL] NPS LED/VLD controller specs/information/summary<br>
</div>
<br>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
<span class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">Hi Bryan,</span>
<div class="x_elementToProof" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
<br class="x_ContentPasted0">
</div>
<div class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
For the channel mask PVs are there any issues with setting them multiple times or should they only be set once? I'm also assuming those PVs are just numbers that have each bit corresponding to a channel, e.g. bit 0 = chan 0, bit 1 = chan 1, etc?</div>
<div class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
<br>
</div>
<div class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
I ask because it would be easier on the EPICS screen if we could just have each channel represented by a boolean check box to enable/disable and update the mask PV each time a channel is changed.</div>
<div class="x_elementToProof" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
<br class="x_ContentPasted0">
</div>
<div class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
Simona,</div>
<div class="x_elementToProof" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">
<br class="x_ContentPasted0">
</div>
<span class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">For the rate and width PVs will they only be set once to the same value for all the cards or will those need to be settable on a per-card basis?</span><br>
</div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
<span class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)"><br>
</span></div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0); background-color:rgb(255,255,255)">
<span class="x_elementToProof x_ContentPasted0" style="font-size:12pt; margin:0px; background-color:rgb(255,255,255)">Thanks</span></div>
<div id="x_appendonsend"></div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Bryan Moffit <moffit@jlab.org><br>
<b>Sent:</b> Monday, February 13, 2023 10:07 AM<br>
<b>To:</b> Aaron Brown <ambrown@jlab.org>; dsg-hallc_nps@jlab.org <dsg-hallc_nps@jlab.org><br>
<b>Cc:</b> Brian Eng <beng@jlab.org>; William Gu <jgu@jlab.org>; Chris Cuevas <cuevas@jlab.org>; Robert Michaels <rom@jlab.org><br>
<b>Subject:</b> Re: [EXTERNAL] NPS LED/VLD controller specs/information/summary</font>
<div> </div>
</div>
<div class="x_BodyFragment"><font size="2"><span style="font-size:11pt">
<div class="x_PlainText">Hi Aaron.<br>
<br>
There have been updates since this last email.  I have added <br>
descriptions for PVs to control the VLD and channels.<br>
<br>
The IOC is running on nps-vme4 with<br>
   PORT=vme4<br>
and Slots indicated with e.g. (slot 17)<br>
   R=VLD17<br>
<br>
e.g. ModuleID:<br>
   vme4VLD17:ModuleID<br>
<br>
<br>
I'm admittedly inexperienced with EPICS drivers.  I will need more input <br>
on what the Controls GUI requires to function to proceed much further <br>
with development.<br>
<br>
There are examples scripts to operate a single module with calibration <br>
pulse mode, and to modify the square waveform parameters.<br>
<br>
On 19-Jan-23 1:52 PM, Bryan Moffit wrote:<br>
> Hi Aaron.<br>
> <br>
> I am out until Feb 1st.<br>
> <br>
> I will try to add an explanation of the PVs.<br>
> <br>
> <br>
> On 19-Jan-23 12:16 PM, Aaron Brown wrote:<br>
>> Hi Bryan et al,<br>
>><br>
>> Just wanted to follow up with regards to the LED controls programming.<br>
>> We have finished the layout of the control GUI.<br>
>> Brian and I have gone over the information in the Github.<br>
>> Is there any additional documentation detailing exactly what the PVs <br>
>> control.<br>
>> What is not obvious is if the pulse frequency is hard coded in the PV <br>
>> and exactly what channels are controlled by a PV.<br>
>> Is there a newer version beyond this beta version?<br>
>><br>
>> -- Aaron<br>
>> ------------------------------------------------------------------------<br>
>> *From:* Bryan Moffit <moffit@jlab.org><br>
>> *Sent:* Monday, December 5, 2022 7:57 AM<br>
>> *To:* Aaron Brown <ambrown@jlab.org>; Brad Sawatzky <brads@jlab.org>; <br>
>> dsg-hallc_nps@jlab.org <dsg-hallc_nps@jlab.org><br>
>> *Cc:* Brian Eng <beng@jlab.org>; William Gu <jgu@jlab.org>; Chris <br>
>> Cuevas <cuevas@jlab.org>; Robert Michaels <rom@jlab.org><br>
>> *Subject:* Re: [EXTERNAL] NPS LED/VLD controller <br>
>> specs/information/summary<br>
>> I've pushed a 'beta' version of the vld-epics driver to github:<br>
>><br>
>> <a href="https://github.com/JeffersonLab/vld-epics">https://github.com/JeffersonLab/vld-epics</a>
<br>
>> <<a href="https://github.com/JeffersonLab/vld-epics">https://github.com/JeffersonLab/vld-epics</a>><br>
>><br>
>> It has read/write support to the VLD parameters, but does not yet<br>
>> include 'automated' specific procedure support (bleaching, calibration<br>
>> pulse).<br>
>><br>
>> I'm starting to code up that procedure support into the vld library<br>
>> (which has also been updated).  We ought to talk about specifics for the<br>
>> bleaching / calibration pulse functionality and driver hooks to your UI.<br>
>><br>
>> On 22-Nov-22 5:36 PM, Aaron Brown wrote:<br>
>>> Hi Brad,<br>
>>><br>
>>> Brian will be on vacation from 11/24/2022 until 01/03/2023.<br>
>>> He will begin working on the control scripts that utilize the <br>
>>> existing Linux drivers and is confident that this can be completed by <br>
>>> early January 2023.<br>
>>> With regards to the "Beta quality GUI", the EPICS drivers would need <br>
>>> to be completed before we could finish this.<br>
>>> The layout of the GUI is done, we just need the PVs before we can <br>
>>> move to the testing/debugging phase.<br>
>>> for the EPICS drivers, it would be a good idea to see if someone from <br>
>>> the FE/DAQ group could complete the task.<br>
>>><br>
>>> Happy Thanksgiving!<br>
>>><br>
>>> -- Aaron<br>
>>> ------------------------------------------------------------------------<br>
>>> *From:* Brad Sawatzky <brads@jlab.org><br>
>>> *Sent:* Monday, November 21, 2022 6:42 PM<br>
>>> *To:* Bryan Moffit <moffit@jlab.org>; dsg-hallc_nps@jlab.org <br>
>>> <dsg-hallc_nps@jlab.org><br>
>>> *Cc:* Brian Eng <beng@jlab.org>; Aaron Brown <ambrown@jlab.org>; <br>
>>> William Gu <jgu@jlab.org>; Chris Cuevas <cuevas@jlab.org>; Robert <br>
>>> Michaels <rom@jlab.org><br>
>>> *Subject:* [EXTERNAL] NPS LED/VLD controller specs/information/summary<br>
>>> After recent discussions with Bryan and William, I volunteered to send<br>
>>> out a status/summary on the NPS LED/VLD needs for the near (Dec/Jan)<br>
>>> and medium term (Feb/Mar).<br>
>>><br>
>>><br>
>>> - Operational specs for the LED pulser are in William's directories.<br>
>>>     - His software libraries and test code can be found here:<br>
>>>          /group/da/distribution/coda/Hardwaremanual/VLD/<br>
>>>       or from the CODA web page.  The test software can be accessed from<br>
>>>          /daqfs/home/jgu/Triggersoftware/trigger.c, VLDtestN functions.<br>
>>>     There are docx files in the /group directory with specs and <br>
>>> technical<br>
>>>     details.  Ideally we would be running the software under linux <br>
>>> (intel<br>
>>>     vme computer), so any vxworks specific code should be updated to<br>
>>>     compile in that environment.<br>
>>>     - I am attaching what I think is the most recent spec document for<br>
>>>       easy access:  'VLD.docx'<br>
>>><br>
>>> - A Control/GUI requirements summary is attached as a text file.<br>
>>>     - See: 'LED-GUI-summary-21Nov2022.txt'<br>
>>><br>
>>> - Here is a link to some (intel controller) development code from Bryan<br>
>>>     Moffit: <br>
>>> <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=">
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=</a>
 <<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=">https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=</a>>
 <<a href=""></a>https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=
 <<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=">https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_JeffersonLab_vld&d=DwIDAw&c=CJqEzB1piLOyyvZjb8YUQw&r=TkJUDpm1-rWCci4nhe47n5XMOLWvRg1TNSqSgPyxyhs&m=1N3fMPIfm78FoxmXp_mXreXU8E0U2i30VAPa6A-PqDvhIBy5Wm1U9gzMBHv6iWyH&s=B6Fs97LKHZhH97IC2bajCCDXfhExhHaLYIvGerKATkM&e=</a>>><br>
>>><br>
>>><br>
>>> ---------------------------------------------<br>
>>> Near Term Requirements (ie. late-Dec/early-January)<br>
>>> ---------------------------------------------<br>
>>> - We don't need a full working GUI, but we do need a clear, student-<br>
>>>     accessible way to run specific tests.<br>
>>>     * I am imagining a set of pre-compiled, special-case binaries or<br>
>>>       script(s) that are run from a command-line running on the VME<br>
>>>       contoller(s)<br>
>>><br>
>>> - The scripts should be able to do the following:<br>
>>>     A.  Turn all LED on in bleach mode<br>
>>>       * This should also set the Trg_out NIM ouput logic HI *first*<br>
>>>         and that needs to be tied into the HV interlock circuit.<br>
>>><br>
>>>     B.  Pulse one or more specified LEDs when a pulse is seen on the VLD<br>
>>>         Trg/Clk input.<br>
>>>         - The list of LEDs to be activated, pulse characteristics, <br>
>>> etc can<br>
>>>           either be hardcoded, or read-in via a config file.  Doesn't <br>
>>> have<br>
>>>           to be perfect, just needs to work.  We can fine-tune later.<br>
>>><br>
>>><br>
>>> ---------------------------------------------<br>
>>> 'Beta' quality GUI (Feb, early-March)<br>
>>> ---------------------------------------------<br>
>>> - NPS installation begins this spring -- that will come very soon!<br>
>>><br>
>>> * We will need at least a 'beta' quality (ie. feature complete, but may<br>
>>>     be buggy) GUI by Feb/early-March so we can test and fix bugs before<br>
>>>     the systems is disassembled and moved to the Hall.  It will be a <br>
>>> while<br>
>>>     before it is working again in the Hall and we definitely do not want<br>
>>>     to leave testing this critical system to the summer.<br>
>>><br>
>>> -- Brad<br>
>>><br>
>>> -- <br>
>>> Brad Sawatzky (he/him), PhD <brads@jlab.org> -<>- Jefferson <br>
>>> Lab/SciComp/F272<br>
>>> Ph: 757-269-5947  -<>-  Fax: 757-269-5235  -<>- Pager: <br>
>>> brads-page@jlab.org<br>
>>> The most exciting phrase to hear in science, the one that heralds new<br>
>>>     discoveries, is not "Eureka!" but "That's funny..."   -- Isaac <br>
>>> Asimov<br>
</div>
</span></font></div>
<br>
</div>
</div>
</div>
</body>
</html>