cms-gem-daq-project / ctp7_modules

0 stars 13 forks source link

[feature request] Create a remote callable method for confCalPulseLocal #129

Closed bdorney closed 5 years ago

bdorney commented 5 years ago

Brief summary of issue

After discussing with @jsturdy we will need to have a remote callable method for confCalPulseLocal. This should go only in the legacy branch, e.g. release/v1.1.X.

Types of issue

Expected Behavior

https://github.com/cms-gem-daq-project/ctp7_modules/blob/develop/src/calibration_routines.cpp#L39

Have a remote callable method, called confCalPulse, for the local function confCalPulseLocal.

Current Behavior

No remote callable method exists.

Context (for feature requests)

When trying to develop a script similar to set_scanParams_latency.py but for scurves via tracking data path we will need a way to start/stop calibration pulses to a given set of channels.

ram1123 commented 5 years ago

Hi @bdorney,

I added the remote callable function as below:

void confCalPulse(const RPCMsg *request, RPCMsg *response)
{
    GETLOCALARGS(response);

    uint32_t ohN = request->get_word("ohN");
    uint32_t mask = request->get_word("mask");
    uint32_t ch = request->get_word("ch");
    bool toggleOn = request->get_word("toggleOn");
    bool currentPulse = request->get_word("currentPulse");
    uint32_t calScaleFactor = request->get_word("calScaleFactor");

    confCalPulseLocal(&la, ohN, mask, ch, toggleOn, currentPulse, calScaleFactor);
    LOGGER->log_message(LogManager::DEBUG, stdsprintf("Finished configuring the calibration pulse."));

    rtxn.abort();
}

Also, I modified the corresponding header file.

Its compiling without any error. How I can run this and see if the calibration pulse is configured correctly or not?

bdorney commented 5 years ago

Reserve time on the coffin setup and use the same approach you used when testing the SCA ADC interface.

You can read back registers using the gem_reg.py tool. e.g. try to use your function to write registers and then use gem_reg.py to see if your changes were applied.